RepoJournal
Elixir & Phoenix

Elixir & Phoenix

Elixir, Phoenix, LiveView, and Ecto - the BEAM web stack

Keep up with Elixir & Phoenix in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Elixir & Phoenix Full archive →

The Wire · Showcase

ELIXIR CUTS EXPONENTIAL GROWTH IN BDD INTERSECTIONS, PHOENIX LIVE VIEW SKIPS CLONES ON STABLE LISTS

By RepoJournal · Filed · About Elixir & Phoenix

The compiler just got smarter about preventing exponential blowup in type intersection logic, while Phoenix Live View stops wastefully copying keyed comprehensions that aren't moving.

Elixir's BDD intersection optimizer [1] now preserves shared unions only when absorption removes all residual terms, normalizing other equal-head intersections eagerly to prevent the exponential growth that was crushing compile times on complex types. This is a quiet but significant win for anyone working with heavy union logic. On the Phoenix side, Live View [2] [3] clones keyed state only when a diff actually moves entries now, letting stable-position updates merge in place instead of copying the entire cached render tree. The payoff is real: you skip the clone operation entirely when list items stay put, which matters in high-frequency list updates. Meanwhile, IEx got two fixes to stop reporting garbage memory numbers in process_info [4] and to handle module reloads correctly when multiple modules live in the same file . The :pid info assertion removal [5] cleans up test noise upstream.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Optimize equal-head BDD intersections elixir-lang/elixir
  2. [2] Avoid cloning keyed comprehensions without moves ↗ phoenixframework/phoenix_live_view
  3. [3] Avoid cloning keyed comprehensions without moves (#4328) phoenixframework/phoenix_live_view
  4. [4] Fix IEx.Helpers.process_info/1 heap and stack memory calculation (#15628) elixir-lang/elixir
  5. [5] Remove :pid from info assertions elixir-lang/elixir

Quick answers

What shipped in Elixir & Phoenix on July 18, 2026?
The compiler just got smarter about preventing exponential blowup in type intersection logic, while Phoenix Live View stops wastefully copying keyed comprehensions that aren't moving. In total, 13 commits and 3 pull requests landed.
Who contributed to Elixir & Phoenix on July 18, 2026?
4 developers shipped this update, including José Valim, Alexander Gubarev, preciz, and SteffenDE.
What were the notable Elixir & Phoenix updates?
Optimize equal-head BDD intersections, Avoid cloning keyed comprehensions without moves, and Avoid cloning keyed comprehensions without moves (#4328).

More from Elixir & Phoenix

Daily updates, in your inbox

Follow Elixir & Phoenix

Keep up with Elixir & Phoenix in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?

We use privacy-friendly analytics (Google Analytics, IP-anonymized) to see which pages help readers. No ads, and we never sell your data. See our Privacy Policy.