fix: Handle version specifiers with operators in Gemfile

The eval_version function now properly handles versions that already
include operators like ~>, >=, etc. This fixes CI failures where
ACTIVEADMIN_VERSION was passed with '~> 3.0' format.
Этот коммит содержится в:
Gleb Tv
2025-09-23 21:37:22 +03:00
родитель 21d1395b77
Коммит 826a3dee1c

Просмотреть файл

@@ -5,7 +5,13 @@ source 'https://rubygems.org'
def eval_version(dependency, version) def eval_version(dependency, version)
return [dependency] if version.empty? return [dependency] if version.empty?
version.count('.') < 2 ? [dependency, "~> #{version}.0"] : [dependency, version] # Handle versions that already have operators like ~>, >=, etc.
if version.match?(/^[~<>=]/)
[dependency, version]
else
# Add ~> operator and ensure version has at least 2 dots
version.count('.') < 2 ? [dependency, "~> #{version}.0"] : [dependency, "~> #{version}"]
end
end end
if ENV['DEVEL'] == '1' if ENV['DEVEL'] == '1'