From a0dc9d9c0975446160865298d0b9f0c54307db9a Mon Sep 17 00:00:00 2001 From: Flora Briand Date: Thu, 2 Apr 2026 14:20:59 +0200 Subject: [PATCH 1/2] chore: upgrade Ruby from 3.2.1 to 3.4.8 Bumps Ruby version to 3.4.8 for EOL compliance (Ruby 3.2 EOL March 2026). Updates Dockerfile base image and gemspec minimum required version accordingly. Co-Authored-By: Claude Sonnet 4.6 --- .ruby-version | 2 +- Dockerfile | 2 +- pg_index_benchmark.gemspec | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.ruby-version b/.ruby-version index e4604e3..7921bd0 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.2.1 +3.4.8 diff --git a/Dockerfile b/Dockerfile index 09e8c16..afd5047 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:3.2.1 +FROM ruby:3.4.8 WORKDIR /usr/src/app ADD Gemfile Gemfile.lock pg_index_benchmark.gemspec /usr/src/app/ diff --git a/pg_index_benchmark.gemspec b/pg_index_benchmark.gemspec index 18ed6a6..368ffe1 100644 --- a/pg_index_benchmark.gemspec +++ b/pg_index_benchmark.gemspec @@ -8,7 +8,7 @@ Gem::Specification.new do |s| Pg-index-benchmark helps to benchmark the index changes you could do on Aurora PostgreSQL instances. DESCRIPTION s.platform = Gem::Platform::RUBY - s.required_ruby_version = ">= 3.2.1" + s.required_ruby_version = ">= 3.4" s.authors = ["Emmanuel Quincerot"] s.email = "emmanuel.quincerot@doctolib.com" s.files = Dir.glob("{lib}/**/*", File::FNM_DOTMATCH) From 859753121eba91c58f44163a71fafa540a7caa3c Mon Sep 17 00:00:00 2001 From: Flora Briand Date: Sat, 4 Apr 2026 01:27:46 +0200 Subject: [PATCH 2/2] fix(DODO-5263): update pg_query, minitest, mocha for Ruby 3.4 compatibility - pg_query 2.2.1 fails to compile on Ruby 3.4; bumped constraint to >= 4.0, < 7.0 - minitest 5.18.0 requires mutex_m removed from Ruby 3.4 stdlib; updated to 5.27.0 - mocha 2.0.2 uses removed MiniTest constant; updated to 2.8.2 - google-protobuf updated as a pg_query dependency Co-Authored-By: Claude Sonnet 4.6 --- Gemfile.lock | 28 ++++++++++++++++++---------- pg_index_benchmark.gemspec | 2 +- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 317f2b0..a351034 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,7 +7,7 @@ PATH json (>= 2.6.2, < 3.0) optparse (>= 0.2.0, < 1.0) pg (>= 1.4.5, < 2.0) - pg_query (>= 2.2.0, < 3.0) + pg_query (>= 4.0, < 7.0) rainbow (>= 2.2.2, < 4.0) rake (~> 13.0) set (>= 1.0.3, < 2.0) @@ -21,24 +21,31 @@ GEM i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) + bigdecimal (4.1.0) concurrent-ruby (1.2.2) digest (3.1.1) - google-protobuf (3.22.2-aarch64-linux) - google-protobuf (3.22.2-arm64-darwin) docile (1.4.0) - google-protobuf (3.22.2-x86_64-linux) + google-protobuf (4.34.1-aarch64-linux-gnu) + bigdecimal + rake (~> 13.3) + google-protobuf (4.34.1-arm64-darwin) + bigdecimal + rake (~> 13.3) + google-protobuf (4.34.1-x86_64-linux-gnu) + bigdecimal + rake (~> 13.3) i18n (1.12.0) concurrent-ruby (~> 1.0) json (2.6.3) - minitest (5.18.0) - mocha (2.0.2) + minitest (5.27.0) + mocha (2.8.2) ruby2_keywords (>= 0.0.5) optparse (0.3.1) pg (1.4.6) - pg_query (2.2.1) - google-protobuf (>= 3.19.2) + pg_query (6.2.2) + google-protobuf (>= 3.25.3) rainbow (3.1.1) - rake (13.0.6) + rake (13.3.1) ruby2_keywords (0.0.5) set (1.0.3) simplecov (0.22.0) @@ -54,6 +61,7 @@ GEM PLATFORMS aarch64-linux arm64-darwin-21 + arm64-darwin-24 x86_64-linux DEPENDENCIES @@ -63,4 +71,4 @@ DEPENDENCIES simplecov (~> 0.22) BUNDLED WITH - 2.3.7 + 2.7.2 diff --git a/pg_index_benchmark.gemspec b/pg_index_benchmark.gemspec index 368ffe1..b2f9956 100644 --- a/pg_index_benchmark.gemspec +++ b/pg_index_benchmark.gemspec @@ -25,7 +25,7 @@ DESCRIPTION s.add_runtime_dependency('json', '>= 2.6.2', '< 3.0') s.add_runtime_dependency('optparse', '>= 0.2.0', '< 1.0') s.add_runtime_dependency('pg', '>= 1.4.5', '< 2.0') - s.add_runtime_dependency('pg_query', '>= 2.2.0', '< 3.0') + s.add_runtime_dependency('pg_query', '>= 4.0', '< 7.0') s.add_runtime_dependency('set', '>= 1.0.3', '< 2.0') s.add_runtime_dependency('yaml', '>= 0.2.0', '< 1.0') s.add_runtime_dependency('rake', '~> 13.0')