RAILS: невозможно изменить замороженный SystemStackError (FrozenError) после обновления до Ruby 2.5.3 - PullRequest
0 голосов
/ 30 ноября 2018

Ошибка появляется после обновления с Ruby 2.2 до последней Ruby 2.5.3 для моего приложения Rails 4.2.0.Стоит ли использовать более старую версию Ruby?

DEPRECATION WARNING: The factory_girl gem is deprecated. Please upgrade to factory_bot. See https://github.com/thoughtbot/factory_bot/blob/v4.9.0/UPGRADE_FROM_FACTORY_GIRL.md for further instructions. (called from <top (required)> at C:/D/code/rails_proj/cis/config/application.rb:7)
=> Booting WEBrick
=> Rails 4.2.0 application starting in development on http://localhost:3000

Traceback:

    DEPRECATION WARNING: The factory_girl gem is deprecated. Please upgrade to factory_bot. See https://github.com/thoughtbot/factory_bot/blob/v4.9.0/UPGRADE_FROM_FACTORY_GIRL.md for further instructions. (called from <top (required)> at C:/D/code/rails_proj/cis/config/application.rb:7)
Exiting
Traceback (most recent call last):
        15: from bin/rails:4:in `<main>'
        14: from bin/rails:4:in `require'
        13: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>'
        12: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
        11: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server'
        10: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap'
         9: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:80:in `block in server'
         8: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands/server.rb:75:in `start'
         7: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-4.2.0/lib/rails/commands/server.rb:125:in `print_boot_information'
         6: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/rack-1.6.11/lib/rack/server.rb:291:in `server'
         5: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/rack-1.6.11/lib/rack/handler.rb:16:in `get'
         4: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/rack-1.6.11/lib/rack/handler.rb:90:in `try_require'
         3: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:274:in `require'
         2: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:240:in `load_dependency'
         1: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:274:in `block in require'
C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:274:in `require': cannot load such file -- rack/handler/d (LoadError)

Вот корзина / рельсы:

#!/usr/bin/env ruby.exe
APP_PATH = File.expand_path('../../config/application', __FILE__)
require_relative '../config/boot'
require 'rails/commands'      <==caused error above

1 Ответ

0 голосов
/ 30 ноября 2018

Вы можете попробовать либо обновить до последней версии Rails 4.2 , либо использовать версию Ruby, более раннюю, чем 2.3 ( введение Frozen_string_literal pragma ).Если ни один из этих способов не работает, посмотрите на трассировку стека и попытайтесь определить, пытаетесь ли вы изменить замороженный объект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...