The Wire · Showcase
ELIXIR TIGHTENS XREF EXCLUSIONS, PARSER DIAGNOSTICS GET SMARTER
By RepoJournal · Filed · About Elixir & Phoenix
Elixir is deprecating the xref exclude syntax and shipping a wave of diagnostic improvements that catch more bugs earlier in the compilation pipeline.
The Elixir team deprecated `xref: [exclude: ...]` configuration [1], signaling a shift in how cross-reference checking will work going forward. This is paired with three targeted fixes that improve error reporting across the language. The parser now correctly specifies its input contract [2], matching what the runtime actually receives as a 4-tuple with indentation data. More importantly, Elixir now collects diagnostics across all rescue clauses [3] instead of stopping at the first one, meaning you'll catch multiple errors in exception handling in a single compile pass. The compiler also infers signatures across application boundaries [4], letting it track types and catch mismatches that previously slipped through. Meanwhile, Phoenix Live View clarified how JS display defaults work [5], fixing subtle behavior in client-side interactions.
Action items
- → Review xref exclusion configuration now - plan migration away from deprecated syntax elixir-lang/elixir [plan]
- → Update to latest Elixir to get cross-boundary signature inference in your next build elixir-lang/elixir [plan]
- → Check Phoenix Live View JS display behavior if using ph-show or ph-hide in rescue flows phoenixframework/phoenix_live_view [monitor]
References
- [1] Deprecate xref: [exclude: ...] elixir-lang/elixir
- [2] Fix parse_error input spec (#15393) elixir-lang/elixir
- [3] Collect diagnostics across clauses in rescue, closes #15307 elixir-lang/elixir
- [4] Infer signatures across application boundaries, closes #15360 elixir-lang/elixir
- [5] Clarify JS display defaults ↗ phoenixframework/phoenix_live_view
FAQ
- What changed in Elixir & Phoenix on May 17, 2026?
- Elixir is deprecating the xref exclude syntax and shipping a wave of diagnostic improvements that catch more bugs earlier in the compilation pipeline.
- What should Elixir & Phoenix teams do about it?
- Review xref exclusion configuration now - plan migration away from deprecated syntax • Update to latest Elixir to get cross-boundary signature inference in your next build • Check Phoenix Live View JS display behavior if using ph-show or ph-hide in rescue flows
- Which Elixir & Phoenix repositories shipped on May 17, 2026?
- elixir-lang/elixir, phoenixframework/phoenix_live_view