Hello everyone! This is Vipul from Rainy Pune ☔ , cozying up with a ☕, bringing you a recap of the changes that made it to Rails this week. If you too want to contribute to Rails, head over to the issues to help us out!
Previously Rails auto-generated alt text for an image from the file name if it was not provided with an image_tag. This generation could be distracting and fatiguing for screen reader users if not considered properly.
After this change, if authors leave images without alt text, Rails will not pre fill it anymore, leaving screen readers to prompt authors to fix the issue.
Previously Rails would end up setting database connection timezone twice, once if passed via configuration in configure_connection and secondly while setting default timezone.
This change removes setting timezone on database twice if timezone is already passed via configuration variables.
This PR adds TransactionTimeout error to the MySQL adapter, which handles the error: Lock wait timeout exceeded; try restarting transaction (MySQL error 1205)
Rails now embeds the expiry within the written cookie payload. This way Rails isn't reliant on clients to honor the expiry, but can verify it independently server-side.
Previously rails dev:cache failed to restart the Rails server when it was started with a custom pid file path. With this change, restart no longer fails for a custom pid file and successfully restarts Rails server on dev:cache changes.
This change does a quick fix for an error with display_image in System tests, which is used for screenshots, that used to raise an error when trying to modify a frozen string.