Upgrading Shopify to Rails 5 - Shopify
Jun 20, 2017

Summary
This post details Shopify's experience upgrading its monolith from Rails 4.2 to Rails 5.0. Key contributions include the strategy of 'dual boot' and 'dual CI' to maintain compatibility with both versions during the upgrade process, the use of conditional logic to manage version-specific code, and the discovery of issues related to serialized data in cache and deprecation warnings impacting performance. It also highlights the importance of keeping gems upgraded and the challenges of fixing tests and dealing with legacy code. The post concludes with lessons learned, emphasizing early removal of deprecated features, proactive gem upgrades, and the necessity of dual boot/CI for large applications.