RepoJournal
Rails

@rails

Ruby on Rails - Shopify, Basecamp, GitHub all run on it

Keep up with Rails 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: Ruby Full archive →

The Wire · Showcase

RAILS HARDENS ERROR HANDLING FOR PUSH NOTIFICATIONS, REVERTS SCHEMA DUMP BREAKING CHANGE

By RepoJournal · Filed · About Rails

Action Push Native shipped structured provider errors with retry semantics while Rails core pulled back a migrations filter removal that broke existing workflows.

The action_push_native gem now surfaces what push providers already tell us: all errors inherit from a new `ActionPushNative::Error` base carrying `service`, `status`, `reason`, and `retry_after` [1]. This means APNs failures now expose numeric HTTP status codes and parsed reason tokens like `TooManyRequests` and `BadDeviceToken`, letting you build intelligent retry logic instead of scraping error messages. Existing error rescuers stay intact because the message remains the first positional argument.

Meanwhile, Rails core reverted a recent commit that removed the migrations filter from schema dumps [2], a change that broke existing workflows for teams relying on the filtered behavior. Xavier Noria merged the revert alongside a deprecation for positional arguments in the `insert` method [3], clarifying that `pk`, `id_value`, and `sequence_name` should now use keyword arguments with `returning:` for cleaner semantics. The core team also fixed test flakiness by making sure ActiveRecord tests don't rely on implicit MVCC-based ordering [4], catching issues with the new `pg_disorder` extension in reverse mode.

Dependabot kept the ecosystem moving with updates to googleauth 1.17.3 [5], httpx 1.7.6 [6], and rubocop 1.86.1 [7] across the push native and sanitizer repos. This period saw 15 commits and 12 PRs across 4 repos.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Structured provider errors, push instrumentation, and Retry-After-aware retries ↗ rails/action_push_native
  2. [2] Merge pull request #58332 from rails/fxn/revert rails/rails
  3. [3] Deprecate positional `pk`, `id_value`, and `sequence_name` for `#insert` rails/rails
  4. [4] `activerecord`: make sure tests do not rely on implicit `SELECT` order ↗ rails/rails
  5. [5] Bump googleauth from 1.16.1 to 1.17.3 ↗ rails/action_push_native
  6. [6] Bump httpx from 1.6.3 to 1.7.6 ↗ rails/action_push_native
  7. [7] Bump rubocop from 1.82.1 to 1.86.1 ↗ rails/action_push_native

Quick answers

What shipped in Rails on August 1, 2026?
Action Push Native shipped structured provider errors with retry semantics while Rails core pulled back a migrations filter removal that broke existing workflows. In total, 15 commits and 12 pull requests landed.
Who contributed to Rails on August 1, 2026?
6 developers shipped this update, including jeremy, dependabot, viralpraxis, Xavier Noria, Ryuta Kamizono, and Mike Dalessio.
What were the notable Rails updates?
Structured provider errors, push instrumentation, and Retry-After-aware retries, Merge pull request #58332 from rails/fxn/revert, and Deprecate positional `pk`, `id_value`, and `sequence_name` for `#insert`.

More from @rails

Daily updates, in your inbox

Follow Rails

Keep up with Rails 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?