#ruby-on-rails #ruby
#ruby-on-rails #ruby
Вопрос:
Я обновил Ruby с 2.7.1 до 3.0.0 и rails с 6.0.3 до 6.1.0 на новой машине разработки.
После запуска rake db: create у меня появляется следующая ошибка
rake прерван! Ошибка имени: неинициализированная константа RSpec::Rails::Railtie::SourceAnnotationExtractor /Users/lonh/projects/codesign/config/application.rb:7:в <top (required)>' /Users/lonh/projects/codesign/Rakefile:4:in
require_relative’ /Users/lonh/projects/codesign/Rakefile:4:в `<top (обязательно)>’
Вызвано: Ошибка имени: неинициализированная константа RSpec::Rails::Railtie::SourceAnnotationExtractor /Users/lonh/projects/codesign/config/application.rb:7:в <top (required)>' /Users/lonh/projects/codesign/Rakefile:4:in
require_relative’ /Users/lonh/projects/codesign/Rakefile:4: в `<top (обязательно)>’ (Посмотрите полную трассировку, запустив задачу с помощью —trace)
Мой контекст Gemfile приведен ниже
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
ruby '3.0.0'
# FOUNDATION
gem 'rails', '6.1.0'
gem 'dotenv-rails', require: 'dotenv/rails-now'
gem 'pg', '>= 0.18', '< 2.0'
gem 'coffee-rails', '~> 5.0'
gem 'webpacker'
# PERFORMANCE
gem 'bootsnap', '>= 1.1.0', require: false
gem 'dalli'
gem 'memcachier'
gem 'turbolinks', '~> 5'
gem 'puma', '~> 3.11'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'sinatra', :require => nil # for sidekiq UI
gem 'sidekiq-status'
gem 'sidekiq'
gem 'redis-rails'
gem 'redis-objects'
gem 'redis-namespace'
# TOOLS
gem "sentry-raven"
gem 'devise'
gem 'jbuilder'
gem 'rack-cors', :require => 'rack/cors'
gem 'postmark-rails'
gem 'google-webfonts', require: 'google/webfonts/rails'
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
gem 'letter_opener'
gem 'rspec-rails', '~> 3.6.0'
gem "factory_bot_rails", "~> 4.10.0"
end
group :development do
# Access an interactive console on exception pages or by calling 'console' anywhere in the code.
gem 'rename'
gem "better_errors"
gem "binding_of_caller"
gem 'web-console', '>= 3.3.0'
gem 'listen', '>= 3.0.5', '< 3.2'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
gem 'spring-commands-rspec'
end
group :test do
# Adds support for Capybara system testing and selenium driver
gem 'capybara', '>= 2.15'
gem 'selenium-webdriver'
# Easy installation and use of chromedriver to run system tests with Chrome
gem 'chromedriver-helper'
gem 'database_cleaner-active_record'
gem 'shoulda-matchers', '~> 4.0'
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
Моей машиной разработки является Macbook Pro M1. Я гость, это может быть причиной проблемы.
Комментарии:
1. пожалуйста, поделитесь своим файлом cofig / application.rb
2. @HafizAbdulRehman: спасибо за вашу помощь. Я обновляю Gemfile и application.rb
3. Gemfile
Ответ №1:
Я нашел решение обновить rspec до последней версии