Skip to main content

Command Palette

Search for a command to run...

Rails 7.0 schema.rb changes

Updated
1 min read
Rails 7.0 schema.rb changes
T

10+ years most with Ruby on Rails and JavaScript frontend and some Go. My first language is C for 3 years in university.

During a recent (and first) upgrade of Rails to 7.0, I found a lot of changes in the schema.rb file.

There is the self explanatory one: add versioning to the schema file.

And the noisy change of every single datatime field's precision attribute.

Looking at this, I find out that the precision default to 6. It explains why some attributes got precision: nil and some other got their precision: 6 removed.

https://github.com/rails/rails/blob/aed8feae3b7a3f7df59de69355cc3bda1d5479d6/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb#L1322

This was a change made in 2019 and released from Rails 7.0 in December 2021. So, 2.5 years after but I'm happy to discover that and sharing it.

https://github.com/rails/rails/commit/57015cdfa2083351f64a82f7566965172a41efcb#diff-868f1dccfcbed26a288bf9f3fd8a39c863a4413ab0075e12b6805d9798f556d1R714-R716

For people following here, Rails 7.1 is already planned and is already passing the entire test suite. Hopefully, it won't take long.

Cheers!

More from this blog

Thomas Brennetot

21 posts

10+ years experienced software engineer living in Tokyo.