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.
Unreleased
0.4.4 - 2026-08-24
Added
@primary_keynow accepts the enhanced:nulland:enforceoptions to control the generated primary key typespec, e.g.@primary_key {:id, :binary_id, autogenerate: true, null: false}(#61, closes #42)timestamps/1now honors the enhanced:nulland:enforceoptions, sotimestamps(null: false)generates non-nullable timestamp typespecs (#60, closes #29)
Fixed
- Compilation crash (
FunctionClauseError) forEcto.Enumfields with empty or non-literal:values: a::type override now always takes precedence over inference, and empty or non-literal values fall back toany()instead of crashing (#62, closes #57) - Deprecation warnings and dependency incompatibilities on Elixir 1.19/1.20
(
preferred_cli_envmoved todef cli, credo updated), thanks @saleyn (#58) - README example showed non-nullable timestamps; the actual (and intended) default is nullable (#60)
Changed
- CI now tests Elixir 1.14 through 1.20 with OTP 24 through 29 (#59)
0.4.3 and earlier
No changelog was kept up to and including 0.4.3. See the GitHub releases and the git history for what changed in earlier versions.