From 826a3dee1cd7c48d33b68ccfa592679758850784 Mon Sep 17 00:00:00 2001 From: Gleb Tv Date: Tue, 23 Sep 2025 21:37:22 +0300 Subject: [PATCH] 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. --- Gemfile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index 54f99f7..6be1646 100644 --- a/Gemfile +++ b/Gemfile @@ -5,7 +5,13 @@ source 'https://rubygems.org' def eval_version(dependency, version) 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 if ENV['DEVEL'] == '1'