From 07b2dfe530fded4534abc0455a89735413cdae98 Mon Sep 17 00:00:00 2001 From: Hamed Asghari Date: Sun, 28 Dec 2025 09:22:56 -0700 Subject: [PATCH] chore: Add Ruby 4.0 to test matrix --- .github/workflows/ruby.yml | 1 + .tool-versions | 2 +- Gemfile.lock | 40 +++++++------ gemfiles/activerecord_7.2.0.gemfile.lock | 40 +++++++------ gemfiles/activerecord_8.0.0.gemfile.lock | 40 +++++++------ gemfiles/activerecord_8.1.0.gemfile.lock | 75 ++++++++---------------- 6 files changed, 90 insertions(+), 108 deletions(-) diff --git a/.github/workflows/ruby.yml b/.github/workflows/ruby.yml index e3ad1b1..7e4b35d 100644 --- a/.github/workflows/ruby.yml +++ b/.github/workflows/ruby.yml @@ -13,6 +13,7 @@ jobs: - '3.2' - '3.3' - '3.4' + - '4.0' activerecord: - '7.2.0' - '8.0.0' diff --git a/.tool-versions b/.tool-versions index 3f03c7a..97c86d6 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -ruby 3.4.7 +ruby 4.0.0 diff --git a/Gemfile.lock b/Gemfile.lock index ff90c1d..3d8d7ff 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -50,14 +50,14 @@ GEM thor (>= 0.14.0) ast (2.4.3) base64 (0.3.0) - bigdecimal (3.3.1) + bigdecimal (4.0.1) builder (3.3.0) coderay (1.1.3) combustion (1.5.0) activesupport (>= 3.0.0) railties (>= 3.0.0) thor (>= 0.14.6) - concurrent-ruby (1.3.5) + concurrent-ruby (1.3.6) connection_pool (3.0.2) crass (1.0.6) database_cleaner-active_record (2.2.2) @@ -68,12 +68,12 @@ GEM diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) - erb (6.0.0) + erb (6.0.1) erubi (1.13.1) - i18n (1.14.7) + i18n (1.14.8) concurrent-ruby (~> 1.0) - io-console (0.8.1) - irb (1.15.3) + io-console (0.8.2) + irb (1.16.0) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) @@ -81,12 +81,13 @@ GEM language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) - loofah (2.24.1) + loofah (2.25.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) method_source (1.1.0) mini_portile2 (2.8.9) - minitest (5.27.0) + minitest (6.0.1) + prism (~> 1.5) nokogiri (1.18.10) mini_portile2 (~> 2.8.2) racc (~> 1.4) @@ -99,11 +100,12 @@ GEM pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.6.0) - pry (0.15.2) + prism (1.7.0) + pry (0.16.0) coderay (~> 1.1) method_source (~> 1.0) - psych (5.3.0) + reline (>= 0.6.0) + psych (5.3.1) date stringio racc (1.8.1) @@ -133,7 +135,7 @@ GEM zeitwerk (~> 2.6) rainbow (3.1.1) rake (13.0.3) - rdoc (6.17.0) + rdoc (7.0.3) erb psych (>= 4.0.0) tsort @@ -153,7 +155,7 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-support (3.13.6) - rubocop (1.81.7) + rubocop (1.82.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -161,12 +163,12 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) + rubocop-ast (>= 1.48.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.48.0) + rubocop-ast (1.49.0) parser (>= 3.3.7.2) - prism (~> 1.4) + prism (~> 1.7) rubocop-rspec (3.8.0) lint_roller (~> 1.1) rubocop (~> 1.81) @@ -181,15 +183,15 @@ GEM simplecov_json_formatter (~> 0.1) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) - stringio (3.1.9) + stringio (3.2.0) thor (1.4.0) - timeout (0.5.0) + timeout (0.6.0) tsort (0.2.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (3.2.0) unicode-emoji (~> 4.1) - unicode-emoji (4.1.0) + unicode-emoji (4.2.0) uri (1.1.1) useragent (0.16.11) zeitwerk (2.6.18) diff --git a/gemfiles/activerecord_7.2.0.gemfile.lock b/gemfiles/activerecord_7.2.0.gemfile.lock index ee546f7..5c57e50 100644 --- a/gemfiles/activerecord_7.2.0.gemfile.lock +++ b/gemfiles/activerecord_7.2.0.gemfile.lock @@ -53,7 +53,7 @@ GEM ast (2.4.3) base64 (0.3.0) benchmark (0.5.0) - bigdecimal (3.3.1) + bigdecimal (4.0.1) builder (3.3.0) cgi (0.5.1) coderay (1.1.3) @@ -61,7 +61,7 @@ GEM activesupport (>= 3.0.0) railties (>= 3.0.0) thor (>= 0.14.6) - concurrent-ruby (1.3.5) + concurrent-ruby (1.3.6) connection_pool (3.0.2) crass (1.0.6) database_cleaner-active_record (2.2.2) @@ -72,12 +72,12 @@ GEM diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) - erb (6.0.0) + erb (6.0.1) erubi (1.13.1) - i18n (1.14.7) + i18n (1.14.8) concurrent-ruby (~> 1.0) - io-console (0.8.1) - irb (1.15.3) + io-console (0.8.2) + irb (1.16.0) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) @@ -85,12 +85,13 @@ GEM language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) - loofah (2.24.1) + loofah (2.25.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) method_source (1.1.0) mini_portile2 (2.8.9) - minitest (5.27.0) + minitest (6.0.1) + prism (~> 1.5) nokogiri (1.18.10) mini_portile2 (~> 2.8.2) racc (~> 1.4) @@ -103,11 +104,12 @@ GEM pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.6.0) - pry (0.15.2) + prism (1.7.0) + pry (0.16.0) coderay (~> 1.1) method_source (~> 1.0) - psych (5.3.0) + reline (>= 0.6.0) + psych (5.3.1) date stringio racc (1.8.1) @@ -138,7 +140,7 @@ GEM zeitwerk (~> 2.6) rainbow (3.1.1) rake (13.0.3) - rdoc (6.17.0) + rdoc (7.0.3) erb psych (>= 4.0.0) tsort @@ -158,7 +160,7 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-support (3.13.6) - rubocop (1.81.7) + rubocop (1.82.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -166,12 +168,12 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) + rubocop-ast (>= 1.48.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.48.0) + rubocop-ast (1.49.0) parser (>= 3.3.7.2) - prism (~> 1.4) + prism (~> 1.7) rubocop-rspec (3.8.0) lint_roller (~> 1.1) rubocop (~> 1.81) @@ -186,15 +188,15 @@ GEM simplecov_json_formatter (~> 0.1) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) - stringio (3.1.9) + stringio (3.2.0) thor (1.4.0) - timeout (0.5.0) + timeout (0.6.0) tsort (0.2.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (3.2.0) unicode-emoji (~> 4.1) - unicode-emoji (4.1.0) + unicode-emoji (4.2.0) useragent (0.16.11) zeitwerk (2.6.18) diff --git a/gemfiles/activerecord_8.0.0.gemfile.lock b/gemfiles/activerecord_8.0.0.gemfile.lock index e2316fe..afeb5ce 100644 --- a/gemfiles/activerecord_8.0.0.gemfile.lock +++ b/gemfiles/activerecord_8.0.0.gemfile.lock @@ -51,14 +51,14 @@ GEM ast (2.4.3) base64 (0.3.0) benchmark (0.5.0) - bigdecimal (3.3.1) + bigdecimal (4.0.1) builder (3.3.0) coderay (1.1.3) combustion (1.5.0) activesupport (>= 3.0.0) railties (>= 3.0.0) thor (>= 0.14.6) - concurrent-ruby (1.3.5) + concurrent-ruby (1.3.6) connection_pool (3.0.2) crass (1.0.6) database_cleaner-active_record (2.2.2) @@ -69,12 +69,12 @@ GEM diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) - erb (6.0.0) + erb (6.0.1) erubi (1.13.1) - i18n (1.14.7) + i18n (1.14.8) concurrent-ruby (~> 1.0) - io-console (0.8.1) - irb (1.15.3) + io-console (0.8.2) + irb (1.16.0) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) @@ -82,12 +82,13 @@ GEM language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) - loofah (2.24.1) + loofah (2.25.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) method_source (1.1.0) mini_portile2 (2.8.9) - minitest (5.27.0) + minitest (6.0.1) + prism (~> 1.5) nokogiri (1.18.10) mini_portile2 (~> 2.8.2) racc (~> 1.4) @@ -100,11 +101,12 @@ GEM pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.6.0) - pry (0.15.2) + prism (1.7.0) + pry (0.16.0) coderay (~> 1.1) method_source (~> 1.0) - psych (5.3.0) + reline (>= 0.6.0) + psych (5.3.1) date stringio racc (1.8.1) @@ -134,7 +136,7 @@ GEM zeitwerk (~> 2.6) rainbow (3.1.1) rake (13.0.3) - rdoc (6.17.0) + rdoc (7.0.3) erb psych (>= 4.0.0) tsort @@ -154,7 +156,7 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-support (3.13.6) - rubocop (1.81.7) + rubocop (1.82.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -162,12 +164,12 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) + rubocop-ast (>= 1.48.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.48.0) + rubocop-ast (1.49.0) parser (>= 3.3.7.2) - prism (~> 1.4) + prism (~> 1.7) rubocop-rspec (3.8.0) lint_roller (~> 1.1) rubocop (~> 1.81) @@ -182,15 +184,15 @@ GEM simplecov_json_formatter (~> 0.1) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) - stringio (3.1.9) + stringio (3.2.0) thor (1.4.0) - timeout (0.5.0) + timeout (0.6.0) tsort (0.2.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (3.2.0) unicode-emoji (~> 4.1) - unicode-emoji (4.1.0) + unicode-emoji (4.2.0) uri (1.1.1) useragent (0.16.11) zeitwerk (2.6.18) diff --git a/gemfiles/activerecord_8.1.0.gemfile.lock b/gemfiles/activerecord_8.1.0.gemfile.lock index e4d60e9..994707a 100644 --- a/gemfiles/activerecord_8.1.0.gemfile.lock +++ b/gemfiles/activerecord_8.1.0.gemfile.lock @@ -50,14 +50,14 @@ GEM thor (>= 0.14.0) ast (2.4.3) base64 (0.3.0) - bigdecimal (3.3.1) + bigdecimal (4.0.1) builder (3.3.0) coderay (1.1.3) combustion (1.5.0) activesupport (>= 3.0.0) railties (>= 3.0.0) thor (>= 0.14.6) - concurrent-ruby (1.3.5) + concurrent-ruby (1.3.6) connection_pool (3.0.2) crass (1.0.6) database_cleaner-active_record (2.2.2) @@ -68,12 +68,12 @@ GEM diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) - erb (6.0.0) + erb (6.0.1) erubi (1.13.1) - i18n (1.14.7) + i18n (1.14.8) concurrent-ruby (~> 1.0) - io-console (0.8.1) - irb (1.15.3) + io-console (0.8.2) + irb (1.16.0) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) @@ -81,26 +81,15 @@ GEM language_server-protocol (3.17.0.5) lint_roller (1.1.0) logger (1.7.0) - loofah (2.24.1) + loofah (2.25.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) method_source (1.1.0) - minitest (5.27.0) - nokogiri (1.18.10-aarch64-linux-gnu) - racc (~> 1.4) - nokogiri (1.18.10-aarch64-linux-musl) - racc (~> 1.4) - nokogiri (1.18.10-arm-linux-gnu) - racc (~> 1.4) - nokogiri (1.18.10-arm-linux-musl) - racc (~> 1.4) - nokogiri (1.18.10-arm64-darwin) - racc (~> 1.4) - nokogiri (1.18.10-x86_64-darwin) - racc (~> 1.4) - nokogiri (1.18.10-x86_64-linux-gnu) - racc (~> 1.4) - nokogiri (1.18.10-x86_64-linux-musl) + mini_portile2 (2.8.9) + minitest (6.0.1) + prism (~> 1.5) + nokogiri (1.18.10) + mini_portile2 (~> 2.8.2) racc (~> 1.4) ostruct (0.6.3) parallel (1.27.0) @@ -108,20 +97,15 @@ GEM ast (~> 2.4.1) racc pg (1.6.2) - pg (1.6.2-aarch64-linux) - pg (1.6.2-aarch64-linux-musl) - pg (1.6.2-arm64-darwin) - pg (1.6.2-x86_64-darwin) - pg (1.6.2-x86_64-linux) - pg (1.6.2-x86_64-linux-musl) pp (0.6.3) prettyprint prettyprint (0.2.0) - prism (1.6.0) - pry (0.15.2) + prism (1.7.0) + pry (0.16.0) coderay (~> 1.1) method_source (~> 1.0) - psych (5.3.0) + reline (>= 0.6.0) + psych (5.3.1) date stringio racc (1.8.1) @@ -151,7 +135,7 @@ GEM zeitwerk (~> 2.6) rainbow (3.1.1) rake (13.0.3) - rdoc (6.17.0) + rdoc (7.0.3) erb psych (>= 4.0.0) tsort @@ -171,7 +155,7 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-support (3.13.6) - rubocop (1.81.7) + rubocop (1.82.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -179,12 +163,12 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.47.1, < 2.0) + rubocop-ast (>= 1.48.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.48.0) + rubocop-ast (1.49.0) parser (>= 3.3.7.2) - prism (~> 1.4) + prism (~> 1.7) rubocop-rspec (3.8.0) lint_roller (~> 1.1) rubocop (~> 1.81) @@ -199,30 +183,21 @@ GEM simplecov_json_formatter (~> 0.1) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) - stringio (3.1.9) + stringio (3.2.0) thor (1.4.0) - timeout (0.5.0) + timeout (0.6.0) tsort (0.2.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (3.2.0) unicode-emoji (~> 4.1) - unicode-emoji (4.1.0) + unicode-emoji (4.2.0) uri (1.1.1) useragent (0.16.11) zeitwerk (2.6.18) PLATFORMS - aarch64-linux - aarch64-linux-gnu - aarch64-linux-musl - arm-linux-gnu - arm-linux-musl - arm64-darwin - x86_64-darwin - x86_64-linux - x86_64-linux-gnu - x86_64-linux-musl + ruby DEPENDENCIES activerecord (~> 8.1.0, < 8.2)