我的公司目前正在尝试将我们的射门基地更新为ruby2.7,以便为进一步更新ruby3.x做准备。
目前,我们所有的项目都在使用ruby2.5。
它们中的很多都很容易更新,但是我必须处理一个很久以前在内部开发的非常老的gem (在另一个主要项目中使用),它在非常过时的版本上运行干式rb宝石。
我做了一次非常直截了当的尝试,没有多大希望,只是升级到最新版本,并试图修复在运行规范时发生的错误,但正如预期的那样,这并不是很好,因为最新版本所需的不仅仅是替换几个调用,而是更大的重做。
以下是the规范和the文件的样子:
金斯派克
Gem::Specification.new do |s|
#......
s.add_runtime_dependency 'activesupport', '~> 5.2.4'
s.add_dependency 'dry-configurable', '<0.13'
s.add_dependency 'dry-container', '<0.8'
s.add_dependency 'dry-struct', '~> 0.5.0'
s.add_dependency 'dry-types', '~> 0.13.0'
s.add_dependency 'dry-validation', '~> 0.12.0'
s.add_dependency 'geo_coord', '~> 0.1'
s.add_dependency 'i18n', '~> 1.0'
s.add_dependency 'proj4rb', '~> 3.0'
s.add_dependency 'psych', '~> 3.1'
s.add_dependency 'ruby-netcdf', '~> 0.7'
s.add_runtime_dependency 'thor', '~> 1.0', '~> 1.0.1'
endGemfile
source 'https://rubygems.org'
gemspec
gem 'dry-validation'
group :development, :test do
gem 'bundler-audit'
gem 'dry-validation-matchers', '~> 1.1.0'
gem 'hashdiff'
gem 'pry', '~> 0.11'
gem 'railties', '> 0', require: false
gem 'rake', '~> 12.3'
gem 'rspec', '~> 3.7'
gem 'rspec-dry-struct', '~> 0.3.0'
gem 'rspec-prof'
gem 'rubocop', '~> 0.62.0'
gem 'simplecov', '~> 0.16'
gem 'yard', '~> 0.9'
end我对这类事情有点迷茫,不知道从哪里开始。如果有人有任何经验升级干宝石,任何想法的第一个兼容版本的这些宝石与红宝石2.7或任何程序,我可以遵循,以减少痛苦,这将是真正的赞赏!
谢谢!
https://stackoverflow.com/questions/71603727
复制相似问题