Happy Thanksgiving weekend everyone! This is Vipul bringing you the latest from this week’s changes in the Rails codebase.
ErrorReporter#unexpected to report in production but raise in development
This change adds
ErrorReported#unexpected to report precondition violations.
Rails.error.unexpected("[BUG] Attempting to edit a published article, that shouldn't be possible")
The above will raise an error in development and test, but only report the error in production.
Make with_routing test helper work for integration tests
with_routing test helper support has now been added to
ActionDispatch::IntegrationTest to allow usage in integration tests.
Support nested elements inside button tag in Active Storage uploads
This change addresses a potential issue that could arise when a button or an input of type submit contains child elements, such as spans, icons, or other HTML elements.
This PR is an ongoing effort to remove all deprecated code, marked as deprecated for Rails 7.2. Checkout the PR for all things going away and if you are handling them already!
Handle case in MySQL where the ActiveRecord.db_warnings_action is not called even when a DB query has warnings
This change handles cases where MySQL returns
warning_count greater than zero, but returns no warnings when the
SHOW WARNINGS query is executed,
ActiveRecord.db_warnings_action proc will still be called with a generic warning message rather than silently ignoring the warning(s).
Delay validation of registered Active Record adapters and allow aliasing of adapters
This change is from an ongoing effort to allow aliasing of DB adapters by name. The end state here is to allow
mysql to be mapped to either
mysql2 at an application level.
ActiveStorage::Representations::ProxyController not returning the proper
preview image variant for previewable files.
You can view the whole list of changes here.
We had 20 contributors to the Rails codebase this past week!
Until next time!
Subscribe to get these updates mailed to you.