Rails Rails 5.2.0 Released

springwq · 2018年04月10日 · 最后由 MortMortSu 回复于 2019年03月31日 · 4897 次阅读

强烈推荐,有了bootsnap真的很快

webpacker 4 没来及 release 算是遗憾

simple_form 卡住了 upgrade

huacnlee 回复

那个早荒废了吧。。。我自己魔改了下 form_builder 可以达到一样效果。。。

huacnlee 回复

已经有个 PR 了

大侠分享一下 bootsnap 使用心得啊,开发环境和生产环境各能多少秒内启动啊?

我现在用的 5.1.6 本地开发环境启动需要 3 秒左右,服务器用的阿里云,装在 docker 里,docker 容器重启后启动需要 5 秒左右,加上 bootsnap 的话能不能提升啊

gaicitadie 回复

能的把,我之前公司里的项目,我之前公司的项目开rails console要 10s,使用之后只要5s,关键是配置很方便,你可以试下

升级到了 ruby2.5.1 + rails 5.2.0 时,碰到各种小问题,其中一个是启动 rails 时,出现一个报错信息bin/rails: No such file or directory - busybox。不知道这个错误是什么原因,但是它不影响 puma 正常启动。

...
/Users/my/my_prj/bin/rails: No such file or directory - busybox
=> Booting Puma
=> Rails 5.2.0 application starting in development 
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.11.4 (ruby 2.5.1-p57), codename: Love Song
* Min threads: 5, max threads: 5
...

另外碰到的一个坑就是如果用 mysql 数据库的话,mysql2 必须升级到最新版,不然 rails 启动不起来。

# Use mysql as the database for Active Record
gem 'mysql2', "0.5.1"

还有一个 gem: delayed_job_active_record没法用了。

samport 回复

Why you still use delayed_job? Why not sidekiq?

samport 回复

我是用 rails 5.2 新建的项目,把目录下的文件全拷贝到老项目下,逐个文件对比,连 .gitignore 都升级了。

samport 回复

应该是用了一个 net/ping 的 gem 吧

HTTP/2终于来啦

glorysnoopy 回复

原因是我的网站访问量极小,以前总是感觉不值得再启动一个 redis 服务。看来这次只能改用sidekiq了。

gzhi1992 回复

我也是用的这种办法,先用rails new temp_prj命令创建一个干净的 5.2 版本的项目,然后逐一对比 Gemfile 及其它 Config 文件,将新版本的设置复制到现有项目中。

我感觉这种升级的办法不正规,应该有什么命令可以让老项目的 rails 版本直接升级到最新版吧。

zouyu 回复

缘分啊,我也用了net-ping这个 gem。从 Gemfile 去掉以后,果然就不报bin/rails: No such file or directory - busybox这个错误了。

samport 回复

一個方式是使用 rails app:update

另一個方式就是看這網站上的 diff http://railsdiff.org/5.1.4/5.2.0 比肉眼比對省事很多

samport 回复

您好,我想问一下,启动 rails server 之后,应该访问什么网址,Rails 5.2.0 application starting in development 之后没有给出网址? 来自刚入坑 ruby on rails 的小白

需要 登录 后方可回复, 如果你还没有账号请 注册新账号