All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.2.0 - 2026-06-09

Added

  • SafeAtom.Ecto.Enum — parameterized Ecto type with required values: for string-backed atom enum fields; cast, load, and dump use SafeAtom.cast/2 without unsafe atom creation on external binaries.
  • Optional {:ecto, "~> 3.11"} dependency for apps that use the Ecto type.

0.1.0 - 2026-05-19

Added

  • SafeAtom.cast/2 for whitelist-based casting of binaries and atoms without growing the atom table from untrusted input.
  • SafeAtom.cast!/2 and SafeAtom.Error for raising on failed casts.
  • Telemetry event [:safe_atom, :cast, :rejected] when cast/2 returns an error.