Skip to content

Loosen elixir requirement to ~> 1.16#1

Merged
dannote merged 1 commit into
dannote:masterfrom
gilbertwong96:loosen-elixir-1.16
Jun 15, 2026
Merged

Loosen elixir requirement to ~> 1.16#1
dannote merged 1 commit into
dannote:masterfrom
gilbertwong96:loosen-elixir-1.16

Conversation

@gilbertwong96

Copy link
Copy Markdown
Contributor

Summary

  • Loosen the elixir: Mix project requirement from ~> 1.20 to ~> 1.16.
  • Bump version 0.1.40.1.5.
  • Add a CHANGELOG entry.

Why

The current ~> 1.20 floor blocks downstream projects (notably pi_bridge) on Elixir 1.16–1.19 from resolving json_codec at mix deps.get time. The codec macros (use JSONCodec, defstruct rewriting, generated from_map/dump) and runtime helpers do not use any 1.20+ features — the strict requirement was set higher than the code needs.

Compatibility notes

  • No source-level changes; only mix.exs elixir: field and the version bump.
  • The runtime dep jason ~> 1.4 and dev deps are untouched.
  • Existing 0.1.x dependents on ~> 0.1.3 or ~> 0.1.4 are unaffected by the version bump since ~> 0.1.x still resolves to 0.1.5. To pick up the new floor, dependents must explicitly pin ~> 0.1.5 (or >= 0.1.5).

Follow-up

  • pi_bridge (elixir-vibe/pi-elixir#5) loosens its own elixir: to ~> 1.16 and will pin this new json_codec version once published.

Checks

Local mix deps.get and mix compile succeed on Elixir 1.20.0-otp-29 against the looser constraint. CI for this repo is not present, so a release-time mix test should be run before publishing 0.1.5 to hex.

Downstream projects on Elixir 1.16–1.19 (notably pi_bridge) need
to resolve json_codec, but the current "~> 1.20" constraint blocks
mix deps.get on those releases. The codec macros and generated
codec code do not use any 1.20+ features, so loosen the floor to
"~> 1.16".

Bump to 0.1.5 so downstream mix.exs can pin the new version.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants