这两天刚好也在折腾,准备把一个 rails5 升级到 rails6.1
我使用的是直接新建一个同名项目然后把一些文件拷贝过去
过程中主要的问题是前端的改变,升级后有 webpacker 管理
但原先项目是前后端一起的,没找到文档要怎么改才能兼容
参考一下 lz 的帖子试试直接升到 7 好了~
ruby 我用的 3.0,看来还是改回用 2.74
我这段时间也在折腾,将 几个 Rails 4、5 时候的项目都升级到 Rails 最新的版本了,由于写了测试,升级起来还是挺方便安全的,就是对比,然后替换文件。整体来说,值得升级。
官方提供了正经的教程啊。也有正经的命令bin/rails app:update
网址是 https://guides.rubyonrails.org/upgrading_ruby_on_rails.html
小版本不要跳过,一个个升级就行了,还蛮好玩的。
7.0.0.alpha2 的一堆之前累积的deprecations还没移除呢,sprockets 也是,autoloading 也是,所以严格来说,这版本都不算 7.0,应该是 6.2,兼容性当然好。。
后面出的 beta 才是真正的 Rails 7。
设置了 MALLOC_ARENA_MAX=2
,使用 3.1.0-preview1
的时候我的 Rails 项目有一个常驻进程会持续内存泄漏,降级到 3.0.3
后这个现象就消失了。
另外之前用 3.1.0-preview1
的时候我需要禁用 newrelic_rpm
。
当时我需要添加 4 个 gem:
gem 'digest', '~> 3.1.0.pre2', require: false
gem 'net-imap', '~> 0.2.2', require: false
gem 'net-pop', '~> 0.1.1', require: false
gem 'net-smtp', '~> 0.3.0', require: false