Palladium / LEGACY RAILS MAINTENANCE + UPGRADES

Keep the existing Rails app. Upgrade its foundation

Upgraded an existing application from Ruby 3.1.4 and Rails 6.1.7.6 to Ruby 3.4.4 and Rails 7.2, resolving 27 documented compatibility issues.

Palladium: Rails upgrade
ClientPalladium
Work deliveredRuby & Rails Upgrade
Business result3.4.4 · Ruby upgraded to

Upgrading an established Rails application

We updated Palladium's Ruby and Rails stack while addressing compatibility issues in its existing codebase.

Legacy Rails maintenance means working through dependencies and framework changes in the codebase you already have. An incremental upgrade preserves that investment and creates a path forward without rebuilding the application.

Ruby & Rails upgrade

The application used PostgreSQL, Sidekiq and GraphQL. We upgraded Ruby first, then Rails, to isolate issues.

What needed to change

Older Ruby versions faced Heroku deprecation. Dependencies and legacy code needed changes to work with the upgraded stack.

Ruby & Rails Upgrade for Palladium

Improve the product. Keep the business moving

  1. 01

    Resolve dependencies and startup failures

    We updated dependencies and resolved test, asset compilation and application startup failures.

  2. 02

    Adapt code loading and framework behavior

    We addressed Zeitwerk loading and framework compatibility. Read the detailed upgrade log.

Palladium: delivered ruby & rails upgrade

Rails upgrade: the results

Ruby upgraded to3.4.4
Rails upgraded to7.2
Documented compatibility issues resolved27

The application worked on Ruby 3.4.4 and Rails 7.2 after resolving 27 documented compatibility issues, including dependencies, assets, code loading and framework behavior.

Initial improvements observed during validation: faster Rails server startup, quicker and more accurate console autocompletion, and apparently faster HTTP responses on Heroku. These were qualitative observations; the article reports that production rollout and performance measurements were still pending.

Earlier detection of loading issues: Zeitwerk's stricter conventions helped expose code-loading problems. We adapted the existing structure while preserving job class names to avoid breaking queued jobs.

Contributions beyond the project: the upgrade also led to a dry-auto_inject issue report and a RuboCop pull request.

Need a team to maintain and upgrade your legacy Rails application?

Need someone to take over your Rails app? We maintain, stabilize and improve existing Rails applications, from production issues and upgrades to new features and infrastructure. Keep your product moving without unnecessary rewrites or rebuilding your engineering team.

If your Rails developer left, we can help you understand the inherited codebase and prioritize an old Rails app rescue, maintenance, and upgrades.

Discuss your Rails app Legacy Rails maintenance and modernization →Explore existing Rails app takeover
Back to TopBack to Top