Bundler no pudo encontrar versiones compatibles para GEM, actualización de la aplicación Rails
-
28-10-2019 - |
Pregunta
Después de crear una aplicación nueva de Rails siguiendo el blog oficial de Rails correo, intentar convertir aplicaciones a Rails 3.2.0.RC2 produce lo siguiente
Updated Gemfile to depend on rails ~> 3.2.0.rc2
gem 'rails', '~>3.2.0.rc2'
Updated Gemfile to depend on sass-rails ~> 3.2.3
gem 'sass-rails', '~> 3.2.3'
$ bundle install
Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "activesupport":
In snapshot (Gemfile.lock):
activesupport (3.1.1)
In Gemfile:
rails (~> 3.2.0.rc2) ruby depends on
activesupport (= 3.2.0.rc2) ruby
Running `bundle update` will rebuild your snapshot from scratch, using
only the gems in your Gemfile, which may resolve the conflict.
$bundle update
Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "railties":
In Gemfile:
coffee-rails (~> 3.1.1) ruby depends on
railties (~> 3.1.0) ruby
rails (~> 3.2.0.rc2) ruby depends on
railties (3.2.0.rc2)
¿Cuál es exactamente el problema?
Especificaciones del sistema:
Mac OS 10.7.2, Xcode 4.2.1, RVM 1.10.1 Uso de Ruby 1.9.3p0 (revisión 2011-10-30 33570) [x86_64-darwin11.2.0
Solución
Lo resolví eliminando la cerradura rm Gemfile.lock
y de nuevo corriendo bundle install
:
$ rm Gemfile.lock
$ bundle install
Using rake (0.9.2.2)
Using i18n (0.6.0)
Using multi_json (1.0.4)
Using activesupport (3.2.0.rc2)
Using builder (3.0.0)
Using activemodel (3.2.0.rc2)
Using erubis (2.7.0)
Using journey (1.0.0)
Using rack (1.4.0)
Using rack-cache (1.1)
Using rack-test (0.6.1)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.1.2)
Using actionpack (3.2.0.rc2)
Using mime-types (1.17.2)
Using polyglot (0.3.3)
Using treetop (1.4.10)
Using mail (2.3.0)
Using actionmailer (3.2.0.rc2)
Using arel (3.0.0)
Using tzinfo (0.3.31)
Using activerecord (3.2.0.rc2)
Using activeresource (3.2.0.rc2)
Using bundler (1.0.21)
Using coffee-script-source (1.2.0)
Using execjs (1.2.13)
Using coffee-script (2.2.0)
Using rack-ssl (1.3.2)
Using json (1.6.4)
Using rdoc (3.12)
Using thor (0.14.6)
Using railties (3.2.0.rc2)
Using coffee-rails (3.2.1)
Using jquery-rails (2.0.0)
Using rails (3.2.0.rc2)
Using sass (3.1.12)
Using sass-rails (3.2.3)
Using sqlite3 (1.3.5)
Using uglifier (1.2.2)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
Esta es una forma de fuerza bastante bruta de solucionar el problema. Si este es un proyecto establecido, puede encontrarse con otros problemas después de eliminar el Gemfile.lock
Como las versiones de dependencia ya no están bloqueadas. Sin embargo, si este es un nuevo proyecto, es poco probable que tenga problemas para adoptar este enfoque.
Otros consejos
Tanto como sass-rails
, necesitas aumentar la versión de coffee-rails
También depende (3.2.1 debería hacerlo)
Si su versión de Bundler no es la misma que la Bundled en la última línea de su GemFile.Lock, puede ocurrir 'no podría encontrar versiones compatibles para Gem Gemname' solo después de agregar nueva gema a su archivo gem.
Ve así: gem 'activeadmin', github: 'gregbell/active_admin'
En Da Gemfile. Soporte de administrador activo para Rails 4 fusionados en la rama maestra Instalación de administrador activo con rieles 4