$ the-wire · showcase
Calendar.ISO datetime shifts get ~1.5x faster
By RepoJournal · Filed · About Elixir & Phoenix · Composed from the cited sources · methodology
A quiet day on elixir-lang/elixir: one hot-path optimization in Calendar.ISO, two xref traversal cleanups, and a fix that stops the compiler reporting empty function arities as badarity.
Avoid repeated conversions when shifting Calendar.ISO datetimes elixir-lang/elixir
Shifting a Calendar.ISO datetime now combines seconds and microseconds into a single shift after the months are applied, and inlines the duration arithmetic and sets precision up front to tail-call the shift helper. The PR reports roughly 1.5x faster execution and lower memory use, with existing precision semantics preserved, so callers that lean on datetime shifting in bulk should see the gain...
Do not report empty function arities as badarity elixir-lang/elixir
fun_normalize now reuses the BDD traversal from fun_other_non_empty_arities when deciding between :badfun and {:badarity, _}, so a call against an empty function arity no longer surfaces as badarity. The author notes the tradeoff plainly: error cases are no longer O(1).
Remove redundant visited state from xref traversal (#15923) elixir-lang/elixir
The xref traversal drops its second visited map and the tuple threading around it, since source_tree's result map already holds identical keys and can serve as the visited check. Traversal order, cycle handling, and the distinction between missing vertices and empty adjacency lists are preserved.
Remove redundant visited state from xref traversal elixir-lang/elixir
The same cleanup, landed: the separate state existed only because traversal also filtered dependencies, and that filtering is gone. Nothing changes for callers of xref, but there is one less map to keep in sync per vertex.