This week in Rails - The 2019 edition

Hello, this is Prathamesh bringing you first issue of This week in Rails of the new year and new decade.
In this issue, we will go over the major changes that happened last year to the Rails codebase.

Happy new year!

494 contributors to Rails in 2019

There have been 494 contributors to Rails in 2019. Wow, that’s a staggering number! Thank you all for making Rails better.

Rails 6.0 released

Rails 6 includes headline features such as parallel testing, multi database support, new Zeitwerk autoloader along with new frameworks added to the Rails family.

Two new frameworks added to Rails

Action Mailbox and Action Text made their way to the Rails codebase during the Rails 6 release. Action Mailbox will help you accept the incoming emails and Action Text brings rich text content and editing to Rails.

Other releases

Apart from Rails 6, 2019 also saw release of Rails 5.2.4 series and 5.1.7.

The party is still rocking in 2020. 18 people contributed to Rails in new year so far! Check out the detailed list of all changes.

Happy new year again!

Ruby 2.7.0, Rails 6.0.2.1 and more

Hello, this is Wojtek reporting on last month additions to Rails codebase.

Ruby 2.7.0 released

The last minor version of Ruby 2.7 before 3.0 release in the next year. Rails codebase is constantly updated to support Ruby 2.7 without any warnings.

Rails 6.0.2 released

Followed by security fix releases 5.2.4.1 and 6.0.2.1

Track Active Storage variants in the database

Optimization and bug fix by avoiding existence checks in the storage service.

Conditional values in Tag Builder

Handy addition to clean up common use case with constructing class names when creating content tags.

Add class_names view helper

As a follow-up to conditional values in Tag Builder, to ease even more constructing class names on views.

Deep merge of shared configuration in config_for method

From now on config_for will deeply merge shared configuration section with environment specific one.

76 people contributed to Rails since last time. Check out the detailed list of all changes.
Happy new year!

Rails 5.2.4.1 has been released!

Hi everyone,

I am happy to announce that Rails 5.2.4.1 has been released. This is a complementary release to rack in order to address CVE-2019-16782.

CHANGES since 5.2.4

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

5.2.4.1 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 5.2.4.1:

$ shasum -a 256 *-5.2.4.1.gem
95531ad4731ff341e0df4bff722bc28cf534ca9ed9e00d8a4949474225abe5fb  actioncable-5.2.4.1.gem
aad99ddae83c22162ba580fc0efe10611bb407832605c21e3ff540ef071e7cb5  actionmailer-5.2.4.1.gem
5f9cfff904e6d8ed5bd9439a76639e22393308a295c13d663a4622e085a9b738  actionpack-5.2.4.1.gem
327e504aea3cfd7484c9ec059b7e58faad96be65379a2da959ee336444f7d342  actionview-5.2.4.1.gem
2141876d50219726ea17b9d8aa8604e6a8fc555fb6230d7987a422e6981b924c  activejob-5.2.4.1.gem
a1df0522b937364f1ff7f748457644de1863dfba4b4bf01386fd8270bef7e169  activemodel-5.2.4.1.gem
2fdbe670205b040f0de64198bdbb4093857a32a409e37ba9ade08c20af6965dc  activerecord-5.2.4.1.gem
ee841d3c038cc45f393bc384be8afc8f4629587411f3eb6b396821b4429aa835  activestorage-5.2.4.1.gem
57874366b06882ad0c0a0557640851aef13afec19bd4d6c2ee286c9d4eb7b452  activesupport-5.2.4.1.gem
402c80f8533052bb9f62e9c61aad9a559b96c04961ddda93151852b8f8572885  rails-5.2.4.1.gem
0b6b0ec65aedae1f3627b05091d63a55bfabd214f483389a9096332dbdc71ac7  railties-5.2.4.1.gem

As always, huge thanks to the many contributors who helped with this release.

Rails 6.0.2.1 has been released!

Hi everyone,

I am happy to announce that Rails 6.0.2.1 has been released. This is a complementary release to rack in order to address CVE-2019-16782.

CHANGES since 6.0.2

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

6.0.2.1 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 6.0.2.1:

$ shasum -a 256 *-6.0.2.1.gem
3eedea1285b08d40762a14a122dc5a9c1d6226526f8380dc4ac0d0f4ef086dbe  actioncable-6.0.2.1.gem
6132861d7706cefed207817d6a097e3e991e5656bdefd5b2c927e88465b957f7  actionmailbox-6.0.2.1.gem
13e6eb571bc3764859982d5b3f19f43c88969e99cf5fa4b42696d962b85d2d84  actionmailer-6.0.2.1.gem
df65fc4db1eb21dad71a0c73b9acf21373644580787e2eecd68fb6244af95ebd  actionpack-6.0.2.1.gem
7857e4f1242ca2064d0b24154fb1d2d05537e24ec78b31ccd51eab7549459c09  actiontext-6.0.2.1.gem
ccc69763b6d02069a2c5fef62a08d247620e0f9213ce3eaaa79118384141230c  actionview-6.0.2.1.gem
11dc8701c7d5b80572786e928e264f42cb1ab75b07957955f41d4d367074b0cd  activejob-6.0.2.1.gem
6d138b1e3e5f009b5fa9a0587f65f25ff58ef42e6a95a3f720fc53caa2aaf84b  activemodel-6.0.2.1.gem
083928e6fda8b886f24c198d37a6e9e0a077c1bf178ae76668a973175b6b578b  activerecord-6.0.2.1.gem
e88e5ae590df2fcf7fe3cf4bdd1822dc95841dd1c10fcb5fe26cb66799ce235a  activestorage-6.0.2.1.gem
817e19e0ce4bc8c6afc63ed064ea84d0e3c8a2ee3d8fb1bb86ab39670c7ca6b5  activesupport-6.0.2.1.gem
32a07bc27a22c80752847936aa52497c5d97de9c577b1120a2e897dda77f93b0  rails-6.0.2.1.gem
8f6b9622975fc0f4807770b0633c9998c54ff59a98045a78f6fab110d87bcd66  railties-6.0.2.1.gem

As always, huge thanks to the many contributors who helped with this release.

Rails 6.0.2 has been released!

Hi everyone,

I am happy to announce that Rails 6.0.2 has been released.

CHANGES since 6.0.1

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

6.0.2 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 6.0.2:

$ shasum -a 256 *-6.0.2.gem
f26e7cb2f47745881de3a88866dae9d40f28f0b3a810ebf3eb84f394cbedcf36  actioncable-6.0.2.gem
5f6801d013d9b4ba4acc85560c16710c37b6954e9e0e6bc315c81b8098649787  actionmailbox-6.0.2.gem
25b6d7033df2e191f3becfcedd31d8b73ed7cb78f03c7b8bb1a8c6b5c8209079  actionmailer-6.0.2.gem
0bf8831ba14cb9b79845a36377e87d9440f789999e99694da46b062ee536e97d  actionpack-6.0.2.gem
1871a9fe66fa1edf6d46203c208dbe7048ce38ff13b483542e839376bd1f9ca9  actiontext-6.0.2.gem
64df3b97fd0e366c5f85a96472aeef93695e0edccadc260d3387a164c74fd0ad  actionview-6.0.2.gem
f11a99a25869c6f3180dc1bd483d0a6d8e5e0cdf3f170af51fe7d76c3b250e2e  activejob-6.0.2.gem
80428f2eb4392125f94d9e950a7a6e4b4c4fefaf6e31c459590ef41448d4e726  activemodel-6.0.2.gem
e4970c40936d9e90337ea0f2961e5e3704016b8da9ba1ef55dd921f4a6ddc0f0  activerecord-6.0.2.gem
ba4d646de7916bd06ebd2af906bec7d0a3e656ddd21b8edb71984e26b3875263  activestorage-6.0.2.gem
ff7f8b1f6054e604a0e7a35fa3636555cddebf1867c9e51b866271556fb934af  activesupport-6.0.2.gem
b5223754088b3adfca6608a1901fbd7813b4b994af4ec514accd0b3b5ce05d0b  rails-6.0.2.gem
8a7105ed97b5605c2443dea3c6f2b9c87bcbe01aed6cc7abe982bccdd7e1ff52  railties-6.0.2.gem

As always, huge thanks to the many contributors who helped with this release.

Rails 6.0.2.rc2 has been released!

Hi everyone,

I am happy to announce that Rails 6.0.2.rc2 has been released.

If no regressions are found, expect the final release on Friday, December 12, 2019. If you find one, please open an issue on GitHub and mention me (@rafaelfranca) on it, so that we can fix it before the final release.

CHANGES since 6.0.1

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

6.0.2.rc2 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 6.0.2.rc2:

$ shasum -a 256 *-6.0.2.rc2.gem
201051352bd868c379fc76d59b847766ea0af4b168af808ba1e0269d6b939583  actioncable-6.0.2.rc2.gem
a158bc7909e33fee990e41fe0c010fd2750b3ae33d71668fd2e9b8985277e6bd  actionmailbox-6.0.2.rc2.gem
35dcd9231ba61ad072d2123d6aa2cac67cce4d8393530d5d8cd4916b16e3801c  actionmailer-6.0.2.rc2.gem
23b23cbf12cb8ec1b1373276ee37f7f32691500667fd9e14c0bb4848057bd15b  actionpack-6.0.2.rc2.gem
a6246e525e110de4bea18e82da4d3b7538fdc308949dde250df986175b911d8e  actiontext-6.0.2.rc2.gem
215cf27ebe42d8991bf4151fc02e4fd043b7a486890cec7faa15387b6847d074  actionview-6.0.2.rc2.gem
47959894de499ea57043c77d06fc492b29f2b448e65c76cda779968a43b24aaa  activejob-6.0.2.rc2.gem
042f0409d8b109d96246b45f255515d0a98533bab44bc15af7c511c8f4893486  activemodel-6.0.2.rc2.gem
123a2959e6dc9f87e7b39ca436248dac7a40415e6d2b6a9266418bb24bcb02ca  activerecord-6.0.2.rc2.gem
2e652d35e7bca6ea5e72a979c6d08534cb53e9ff647bf7e05f4ba2c525a8b721  activestorage-6.0.2.rc2.gem
007f106c1419b6cfdc0a82cac72550f302821d53ca74a1ffafaf11eb93fb0ef3  activesupport-6.0.2.rc2.gem
5cb22ec58dd58fb79fa1f3da50adff4692a41cf19ff4a2fa6cde482885d9f310  rails-6.0.2.rc2.gem
c33a3986cfc1dda1f561abb92a2ef9826fa0b574db42bb2b2f51b01f0cf0517b  railties-6.0.2.rc2.gem

As always, huge thanks to the many contributors who helped with this release.

Rails 6.0.2.rc1, 5.2.4, and something different…

Hey readers! This is Kasper bringing you the latest news in Rails. I’m writing from deep winter-like Copenhagen, starting on the last month of the decade.

Speaking of progress, Rails recently crossed 75.000 commits on GitHub. Last time we marked commit progress was over 4 years ago for 50.000. I happened to write that issue too, you can read it here.

Rails 6.0.2.rc1 released

As always, this release is loaded with fixes and improvements. It’s currently set to ship Monday Dec 2 and so far no regressions have been found as far as I know. Final day to test the release candidate on your app, try it out ✌️

Rails 5.2.4 released

The final bug fix release of Rails 5.2, now it’ll only get security releases from here on out. Good time to plan a Rails 6 upgrade.

Something different this issue…

For the most part we highlight particular interesting commits in this newsletter, but there’s usually other stuff we don’t get to. Stuff that could help you make sense of Rails itself. This week I’d like to try to remedy that.

Here’s all changes since last time. Visit the link and each time you see “Merge pull request #12345”, click ‘em. Feel free to see Files Changes and on particularly interesting files, you can try “View File” and read some surrounding code. This can be overwhelming so go easy. But that’s pretty much a fine way to start reading Rails’ actual code. It’s all Ruby all the way down.

Now, some of the people in the list are on certain Rails teams. You’ll likely interact with some of them if you submit a pull request. Here’s who’s in the current change list, but not the full teams.

carlosantoniodasilva, eileencodes, georgeclaghorn, kaspth (that’s me), rafaelfranca are on Rails Core. gmcgibbon, jhawthorn, kamipo and y-yagi have commit access. Meanwhile eugeneius and vipulnsward are on the issues team, so they can triage issues and merge documentation PRs.

That’s it for now, hope it’s useful 🙌

Also 41 people contributed since last time including several first time contributors.

Hope you dig it. See ya next time! 👋🏻

Rails 5.2.4 has been released!

Hi everyone,

I am happy to announce that Rails 5.2.4 has been released.

CHANGES since 5.2.3

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

5.2.4 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 5.2.4:

$ shasum -a 256 *-5.2.4.gem
0ba74e3b94e4712f3d754125e494f45e5240af8f4c8c8f0f167dff3b0e0a3a96  actioncable-5.2.4.gem
c85a6f665f5d6ed48104c9984a928851dd490a49e2ef866a71530c5a62dfd87c  actionmailer-5.2.4.gem
0ccecdc86c8c98adf5a16e2a5bf55379a16e845db94bc12899f052d25ad48d91  actionpack-5.2.4.gem
19b1a9c0a26bb8d0c1cfec353784e518a61dd7e218a29f5e309c4c7d7bc5beac  actionview-5.2.4.gem
8f4baa59887eafb63b7a9f0fc194101e4c996a3210815a151270d08a0d2f22d8  activejob-5.2.4.gem
f87e407f1fc3b04c3ee680278a5af5c2b3263d2d87f8e96d555249c7bbe3f479  activemodel-5.2.4.gem
cd6eca48d5cb6859c5e09dea5ec11677791af26218c269cef8936bc0b4923a18  activerecord-5.2.4.gem
1fae89ac78f965f590d6867b3bc1546fb662b5fde780f38789ac3ad61ed8e40c  activestorage-5.2.4.gem
b826f53ae52f1250edf56d254a839ca5df7c0a9d8e8c9334629d6bbd0eb61bce  activesupport-5.2.4.gem
3abc0d1c5a6a87821ed73d0f523fbb63e09610dbdfd7f8b948e14a15f7749481  rails-5.2.4.gem
5c3a7788700b99c75be9041cab79d92a89d8c76173b232753d7ea7e6e43233ee  railties-5.2.4.gem

As always, huge thanks to the many contributors who helped with this release.

Rails 6.0.2.rc1 has been released!

Hi everyone,

I am happy to announce that Rails 6.0.2.rc1 has been released.

If no regressions are found, expect the final release on Monday, December 2, 2019. If you find one, please open an issue on GitHub and mention me (@rafaelfranca) on it, so that we can fix it before the final release.

CHANGES since 6.0.1

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

6.0.2.rc1 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 6.0.2.rc1:

$ shasum -a 256 *-6.0.2.rc1.gem
f7f620f3042bc73f8e461deab8005f089dc58adcbcf5ab8112878245ad62db75  actioncable-6.0.2.rc1.gem
98860fedcb06a53bf0bb6367810f148bfd387fab2461aaa3511966c332ccaba7  actionmailbox-6.0.2.rc1.gem
30c442e289504fd4847341c702a2096954218107b8dd033c9e460ab6fb812e28  actionmailer-6.0.2.rc1.gem
8ef626574ee988c0d59fcf03b6e60202fda2797bc387cf85922011053bcb7951  actionpack-6.0.2.rc1.gem
4fa0062cdc66ca2fa30d28d1681b22fa245cbd4fe1cc7219573bc790131f3f95  actiontext-6.0.2.rc1.gem
5760324a0ea085391c97cd072dd39a3aa352f40935308344f2e19ac7f244b772  actionview-6.0.2.rc1.gem
48c91cf9ee11ba60519cd7daca0914c0310491b69b1c03b5ca5a0383af29f863  activejob-6.0.2.rc1.gem
694d5c84aa0cc7a8b438dc6ecb18b8b22b69773aced6d5982b00941d5f905dfe  activemodel-6.0.2.rc1.gem
399098bb60e1ee3897ee82db7ec98152d8465a08917f3e5dcccb4085fcb06904  activerecord-6.0.2.rc1.gem
c8ce7396d623e794bb2568b6c2d6f7b8b2c26b0246547b9f7e91c3c55f56be36  activestorage-6.0.2.rc1.gem
c1ba538d3ac80e1a3aaf2c8ff36db215f0a1fcd7a1908df8de5cad56f711efd0  activesupport-6.0.2.rc1.gem
64981b76140ca930e008f8e58879ec963a8ad5386fb894d58e655b491a7bd1fd  rails-6.0.2.rc1.gem
37f224e83d39408dbc240549ab866b11bb53409563cb677ee65bd58bc39cfcef  railties-6.0.2.rc1.gem

As always, huge thanks to the many contributors who helped with this release.

Rails 5.2.4.rc1 has been released!

Hi everyone,

I am happy to announce that Rails 5.2.4.rc1 has been released.

This is going to be the last bug fix release of the 5.2 series, so please test the releases candidates and report regressions so we can fix before the final release.

If no regressions are found, expect the final release on Wednesday, November 27, 2019. If you find one, please open an issue on GitHub and mention me (@rafaelfranca) on it, so that we can fix it before the final release.

CHANGES since 5.2.3

To view the changes for each gem, please read the changelogs on GitHub:

To see a summary of changes, please read the release on GitHub:

5.2.4.rc1 CHANGELOG

Full listing

To see the full list of changes, check out all the commits on GitHub.

SHA-256

If you’d like to verify that your gem is the same as the one I’ve uploaded, please use these SHA-256 hashes.

Here are the checksums for 5.2.4.rc1:

$ shasum -a 256 *-5.2.4.rc1.gem
71c875fc798edf11372e801319dc0f85b22a6c3b15ee269f7e354bbd0b525df3  actioncable-5.2.4.rc1.gem
c623597a1ca76930cb28e5d07085b0ce5e89d465fbc5784753344633898d5118  actionmailer-5.2.4.rc1.gem
45393dfd757daa4e375846199fde5fce6713eb85793e441cc7b2cd091f543a14  actionpack-5.2.4.rc1.gem
74a0508940d34bad7c3f84668c20d0277f9cbdffc13c3cf55ee754c33afa1612  actionview-5.2.4.rc1.gem
12baf95010f778044d70ae2b3fae5755dc89113576082dbfc76f88b2a32ee70b  activejob-5.2.4.rc1.gem
7cd8ac1e7739181c83ad63e164a4e92d058f5b57dc040e2f03a724243dc6cb2a  activemodel-5.2.4.rc1.gem
088d6ebe600b8147ca0764c688ea5c184c3127dd8dfc4c41d36778335c8e4d85  activerecord-5.2.4.rc1.gem
0cc29d1439c4302f7515a9f703a4672b7a1764b67650074cd00c83914106daab  activestorage-5.2.4.rc1.gem
138926da539471bb91fd8270ded2f44aeafafcf45ede8ee68dee63873b1d0b4e  activesupport-5.2.4.rc1.gem
c9f9a2381a465888619736d6dd5108c795bbffabf0f1cd7cf49fbac26e4e88c8  rails-5.2.4.rc1.gem
e455f200dd872c710684db8e45b982a5d9de6c7e481c397715d1a232918a95db  railties-5.2.4.rc1.gem

As always, huge thanks to the many contributors who helped with this release.