performant-software / Annotation-Studio

An online annotation platform for teaching and learning in the humanities.
http://www.annotationstudio.org
GNU General Public License v2.0
4 stars 1 forks source link

Upgrade to Ruby 3.1 and Rails 6.1 #452

Closed camdendotlol closed 1 year ago

camdendotlol commented 1 year ago

Summary

This PR includes some long-overdue deferred maintenance to keep COVE up to date.

Testing

Steve gave this a general regression test on Thursday, but there are still some features to test on our end:

Upgrades

Nearly every gem has been upgraded to support the new versions of Ruby and Rails. There's potential for bugs everywhere!

I avoided upgrading gems wherever possible, but "wherever possible" ended up being almost nowhere. Please review the diff to see how the Gemfile changed. Keep in mind that Gemfile.lock will be difficult to compare because the newer version of bundler updated it to a new format.

Removals

Changes

Notes

The previous versions of Ruby and Nokogiri did not have native Apple Silicon versions, so setting up a local build was a big headache for people with newer Macs. These newer versions of Ruby and Nokogiri have proper Apple Silicon support, so you should be able to set up with bundle install like a normal project, with no weird C header errors to contend with.

Apartment::Tenant.switch

The Apartment::Tenant.switch method from the apartment gem now requires a do block and will crash otherwise. To get the old behavior, use Apartment::Tenant.switch! with the exclamation point.

Future work

Just some "nice to have" items and things that might block future upgrades.