RepoJournal

$ cat elixir/week/2026-09-21.log

Elixir & Phoenix

Elixir & Phoenix

the week in review · Sep 21 – Sep 27, 2026

Calendar.ISO shift work lands ~1.5x faster

By RepoJournal · composed from the cited sources · human-reviewed weekly · methodology

♥

Phoenix also fixes phx.gen.cert certificates that Chrome refused to load, and LiveView stops erroring on dangling asset symlinks.

35 commits 28 PRs merged 1 releases 6 briefings covered

all elixir reviews →

Restore NULL parameters on phx.gen.cert's public key algorithm (#6848) phoenixframework/phoenix

by Gaurav Vijay Jadhav

The generated certificate's rsaEncryption AlgorithmIdentifier was missing the NULL parameters field, so Chrome rejected it with ERR_SSL_PROTOCOL_ERROR while curl and OpenSSL accepted it. The fix restores the parameters field; any cert you generated with mix phx.gen.cert before this week should be regenerated if you load it in a browser.

Avoid repeated conversions when shifting Calendar.ISO datetimes elixir-lang/elixir

by preciz

Shifts now combine seconds and microseconds into a single shift after months are applied, inlining the duration arithmetic and setting precision up front. The measured result is roughly 1.5x faster with less memory, and the existing precision semantics are preserved.

Optimize Calendar.ISO microsecond-to-time conversion elixir-lang/elixir

by preciz

Microsecond-to-time conversion now uses bounded reciprocal multiplication to compute minutes and total seconds within an hour, recovering seconds and microseconds with bit masking and subtraction. Roughly 1.5x faster with fewer allocations, which shows up in any code path that parses or normalizes times of day at volume.

Avoid repeated conversions when shifting Calendar.ISO times elixir-lang/elixir

by preciz

Replaces the duration options and reduction with tuple dispatch, folding whole seconds into the time tuple and applying microseconds in one shift, with a fast path kept for zero shifts. Same ~1.5x faster, less memory profile as the rest of the Calendar.ISO work this period.

Optimize UTC-offset adjustment in Calendar.ISO parsing elixir-lang/elixir

by preciz

Nonzero UTC offsets are now normalized directly in seconds and run through seconds_to_time/1 instead of routing through day-fraction conversions. Around 1.3x faster, less memory, and parsed microseconds and precision are unchanged.

Avoid traversing untouched tails in Enum.reverse_slice/3 (#15938) elixir-lang/elixir

by Barna Kovacs

Walks the prefix and selected slice directly, returns the input for zero- and one-element reversals, and reuses the untouched suffix instead of reversing and counting the whole list. The PR notes it is faster in most cases but carries tradeoffs, so treat it as a win on memory rather than a universal speedup.

Fix Date.from_gregorian_days/2 (#15940) elixir-lang/elixir

by Kip Cole

The function was passing {days, 0} to from_iso_days/2, an invalid day fraction that Calendar.ISO silently ignores, so the bug only surfaced with non-Calendar.ISO calendars. The fraction is now passed as {0, 86_400}.

Handle outdated or dangling symlinks for colocated assets phoenixframework/phoenix_live_view

by SteffenDE

Colocated asset handling no longer chokes when a symlink is outdated or dangling. Alongside: Phx.New.Calendar.ISO's UTC-offset parser, coverage summary generation, Mix.Compilers.Elixir dependency passes, xref traversal, Inspect.Algebra, and badarity reporting for empty function arities all picked up further optimization or correctness work.

$ ls elixir/week/ # the briefings behind this review

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

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

all elixir reviews →