From 1781563594bcfe3878e40f74edf64b7ec3932d48 Mon Sep 17 00:00:00 2001 From: Paul Mucur Date: Tue, 12 Dec 2023 08:31:19 +0000 Subject: [PATCH] Precompile native gems for Ruby 3.3.0-preview3 Use [rake-compiler-dock 1.4.0.rc1](https://github.com/rake-compiler/rake-compiler-dock/releases/tag/1.4.0.rc1) to precompile a native gem for Ruby 3.3 and test it on all supported platforms. This won't be safe to release until Ruby 3.3's ABI is guaranteed not to change (the recently released 3.3.0-rc1 shows the first sign of ABI stability but that isn't supported by rake-compiler-dock yet). --- .github/workflows/tests.yml | 16 +++++++++------- Rakefile | 2 +- re2.gemspec | 4 ++-- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 837ee5c8..9bd7991d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -134,6 +134,8 @@ jobs: runs-on: "windows-2022" - ruby: "3.2" runs-on: "windows-2022" + - ruby: "3.3" + runs-on: "windows-2022" runs-on: ${{matrix.runs-on}} steps: - uses: actions/checkout@v4 @@ -176,7 +178,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.6", "2.7", "3.0", "3.1", "3.2"] + ruby: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -198,7 +200,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.6", "2.7", "3.0", "3.1", "3.2"] + ruby: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -220,7 +222,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["3.1", "3.2"] + ruby: ["3.1", "3.2", "3.3"] runs-on: windows-2022 steps: - uses: actions/checkout@v4 @@ -260,7 +262,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.6", "2.7", "3.0", "3.1", "3.2"] + ruby: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -282,7 +284,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.6", "2.7", "3.0", "3.1", "3.2"] + ruby: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -301,7 +303,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.6", "2.7", "3.0", "3.1", "3.2"] + ruby: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] runs-on: macos-latest steps: - uses: actions/checkout@v4 @@ -320,7 +322,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: ["2.6", "2.7", "3.0", "3.1", "3.2"] + ruby: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] runs-on: ubuntu-latest container: image: "ruby:${{matrix.ruby}}-alpine" diff --git a/Rakefile b/Rakefile index 47127973..a80ec2f0 100644 --- a/Rakefile +++ b/Rakefile @@ -33,7 +33,7 @@ Gem::PackageTask.new(RE2_GEM_SPEC) do |p| p.need_tar = false end -CROSS_RUBY_VERSIONS = %w[3.2.0 3.1.0 3.0.0 2.7.0 2.6.0].join(':') +CROSS_RUBY_VERSIONS = %w[3.3.0 3.2.0 3.1.0 3.0.0 2.7.0 2.6.0].join(':') CROSS_RUBY_PLATFORMS = %w[ aarch64-linux arm-linux diff --git a/re2.gemspec b/re2.gemspec index 08a7db05..18c15780 100644 --- a/re2.gemspec +++ b/re2.gemspec @@ -38,8 +38,8 @@ Gem::Specification.new do |s| "spec/re2/set_spec.rb", "spec/re2/scanner_spec.rb" ] - s.add_development_dependency("rake-compiler", "~> 1.2.1") - s.add_development_dependency("rake-compiler-dock", "~> 1.3.0") + s.add_development_dependency("rake-compiler", "~> 1.2.5") + s.add_development_dependency("rake-compiler-dock", "~> 1.4.0.rc1") s.add_development_dependency("rspec", "~> 3.2") s.add_runtime_dependency("mini_portile2", "~> 2.8.5") # keep version in sync with extconf.rb end