Skip to content

chore: fill in the 0.5.0 changelog from git history - #52

Merged
MikaAK merged 1 commit into
mainfrom
chore/changelog-0-5-0
Aug 16, 2026
Merged

chore: fill in the 0.5.0 changelog from git history#52
MikaAK merged 1 commit into
mainfrom
chore/changelog-0-5-0

Conversation

@MikaAK

@MikaAK MikaAK commented Aug 16, 2026

Copy link
Copy Markdown
Owner

Walked git log 523a121..main (the 0.4.9 version bump to now) and diffed every touched file against the 0.5.0 entry. Four commits landed in that range; three of them were only partly written up.

Commit In the changelog before this PR
7ad44ee route sandbox_sleep_ms through Cache.Config yes, under 0.4.9
043ddbe support Elixir 1.20 (#47) no
9caae9c MultiLayer cross-node coherence (#49) no
c7765ce adapter-aware term encoding (#48, includes #50 and #51) yes, except the RefreshAhead half

Added

Features

  • feat(multi_layer) — the Coordinator, the :pg group, broadcast_mode: :invalidate | :replicate, broadcast_layers, and the best-effort delivery contract (TTLs stay the correctness floor).
  • feat — Elixir 1.20 support, including what changed in the generated code: one adapter_options!/1 clause per configured opts shape instead of a clause per shape plus a catch-all, and the {:error, _} branches 1.20 proves unreachable dropped from the generated get/1.

Performance

Breaking Changes

  • Minimum Elixir is now ~> 1.15, up from ~> 1.11. A consumer on 1.11 currently finds this out from a compile error.

Chores (new section)

  • :credo 1.7.13 -> 1.7.18 in the lock — 1.7.13 crashes on 1.20's sigil token format, and the newer one flagged a length/1 > 0 check now written !== [].
  • :faker dropped — it does not compile on 1.20 (raw U+0085 is a hard syntax error there); three random-string helpers moved to test/support.
  • :preferred_cli_env moved into def cli/0.
  • The RefreshAhead global-lock test race, which was the red Test run on main from 2026-08-02.

Coverage check

Every file changed since the 0.4.9 bump now maps to an entry:

cache.ex, term_encoder.ex, agent.ex, con_cache.ex, counter.ex, dets.ex, ets.ex, persistent_term.ex, redis.ex, sandbox.ex → the encoding entries. multi_layer.ex + multi_layer/coordinator.ex → the new feature entry. refresh_ahead.ex → the new perf line. mix.exs → the Elixir requirement and the Chores section. config.ex + sandbox_registry.ex → the existing 0.4.9 entry.

One thing to decide

Hex's latest published version is 0.4.8 — 0.4.9 was never tagged or released, so its section ships together with 0.5.0 whenever 0.5.0 goes out. Worth deciding whether to fold the 0.4.9 entry into 0.5.0 or leave both headings. I left them as they are.

Three things shipped since 0.4.9 that the entry never mentioned: the
MultiLayer cross-node coordinator (#49), Elixir 1.20 support (#47), and
the RefreshAhead side of the adapter-aware encoding work.

Also records what 1.20 support cost — the minimum Elixir moved to ~> 1.15,
credo moved to 1.7.18 and :faker is gone — under Breaking Changes and a
new Chores section, since a consumer on 1.11 finds out at compile time
otherwise.
@codecov

codecov Bot commented Aug 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.87%. Comparing base (c7765ce) to head (3db6b2b).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #52   +/-   ##
=======================================
  Coverage   83.87%   83.87%           
=======================================
  Files          24       24           
  Lines         707      707           
=======================================
  Hits          593      593           
  Misses        114      114           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@MikaAK
MikaAK merged commit 3c6c060 into main Aug 16, 2026
7 checks passed
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.

1 participant