Skip to content

Commit

Permalink
ext: update rake-compiler-dock to 1.7.0.rc1 and add ruby 3.4
Browse files Browse the repository at this point in the history
  • Loading branch information
flavorjones committed Dec 14, 2024
1 parent a4e81ee commit dac3f71
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 24 deletions.
36 changes: 19 additions & 17 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,14 @@ on:
- '*'

jobs:
ruby_versions:
outputs:
setup_ruby: "['3.1', '3.2', '3.3', 'head']"
image_tag: "['3.1', '3.2', '3.3', '3.4-rc']"
runs-on: ubuntu-latest
steps:
- run: echo "generating rubies ..."

#
# basic tests
#
Expand Down Expand Up @@ -45,12 +53,12 @@ jobs:
- run: bundle exec rake test

test:
needs: basic
needs: [basic, ruby_versions]
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
ruby: ["3.3", "3.2", "3.1"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
syslib: [enable, disable]
include:
# additional compilation flags for homebrew
Expand Down Expand Up @@ -117,12 +125,12 @@ jobs:
bundle exec rake test
sqlcipher:
needs: basic
needs: [basic, ruby_versions]
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
ruby: ["3.3", "3.1"] # oldest and newest
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
include:
- { os: windows, ruby: mingw }
- { os: windows, ruby: mswin }
Expand Down Expand Up @@ -207,13 +215,13 @@ jobs:
retention-days: 1

install_source_linux:
needs: build_source_gem
needs: [build_source_gem, ruby_versions]
name: "test source"
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
ruby: ["3.3", "3.2", "3.1"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
syslib: [enable, disable]
include:
# additional compilation flags for homebrew
Expand Down Expand Up @@ -270,7 +278,7 @@ jobs:

test_architecture_matrix:
name: "${{ matrix.platform }} ${{ matrix.ruby }}"
needs: build_native_gem
needs: [build_native_gem, ruby_versions]
strategy:
fail-fast: false
matrix:
Expand All @@ -283,7 +291,7 @@ jobs:
- x86-linux-musl
- x86_64-linux-gnu
- x86_64-linux-musl
ruby: ["3.3", "3.2", "3.1"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.image_tag) }}
include:
# declare docker image for each platform
- { platform: aarch64-linux-musl, docker_tag: "-alpine", bootstrap: "apk add build-base &&" }
Expand Down Expand Up @@ -315,25 +323,18 @@ jobs:
test_the_rest:
name: "${{ matrix.platform }} ${{ matrix.ruby }}"
needs: build_native_gem
needs: [build_native_gem, ruby_versions]
strategy:
fail-fast: false
matrix:
os: [windows-latest, macos-13, macos-14]
ruby: ["3.3", "3.2", "3.1"]
ruby: ${{ fromJSON(needs.ruby_versions.outputs.setup_ruby) }}
include:
- os: macos-13
platform: x86_64-darwin
- os: macos-14
platform: arm64-darwin
- os: windows-latest
ruby: "3.1"
platform: x64-mingw-ucrt
- os: windows-latest
ruby: "3.2"
platform: x64-mingw-ucrt
- os: windows-latest
ruby: "3.3"
platform: x64-mingw-ucrt
runs-on: ${{ matrix.os }}
steps:
Expand All @@ -360,6 +361,7 @@ jobs:
- { ruby: "3.2", flavor: "alpine3.19" }
- { ruby: "3.3", flavor: "alpine3.18" }
- { ruby: "3.3", flavor: "alpine3.19" }
- { ruby: "3.4-rc", flavor: "alpine" }
runs-on: ubuntu-latest
container:
image: ruby:${{matrix.ruby}}-${{matrix.flavor}}
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ group :development do
gem "minitest", "5.25.4"

gem "rake-compiler", "1.2.8"
gem "rake-compiler-dock", "1.5.2"
gem "rake-compiler-dock", "1.7.0.rc1"

gem "ruby_memcheck", "3.0.0" if Gem::Platform.local.os == "linux"

Expand Down
2 changes: 1 addition & 1 deletion bin/test-gem-file-contents
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ Minitest::Reporters.use!([Minitest::Reporters::SpecReporter.new])

puts "Testing '#{gemfile}' (#{gemspec.platform})"
describe File.basename(gemfile) do
let(:supported_ruby_versions) { ["3.1", "3.2", "3.3"] }
let(:supported_ruby_versions) { ["3.1", "3.2", "3.3", "3.4"] }

describe "setup" do
it "gemfile contains some files" do
Expand Down
10 changes: 5 additions & 5 deletions rakelib/native.rake
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,19 @@ require "rake/extensiontask"
require "rake_compiler_dock"
require "yaml"

cross_rubies = ["3.3.0", "3.2.0", "3.1.0"]
cross_rubies = ["3.4.0", "3.3.5", "3.2.0", "3.1.0"]
cross_platforms = [
"aarch64-linux-gnu",
"aarch64-linux-musl",
"arm-linux-gnu",
"arm-linux-musl",
"arm64-darwin",
"x64-mingw-ucrt",
"x86-linux-gnu",
"x86-linux-musl",
"x86_64-darwin",
"x86_64-linux-gnu",
"x86_64-linux-musl"
"x86_64-linux-musl",
"arm64-darwin",
"x86_64-darwin",
"x64-mingw-ucrt"
]
ENV["RUBY_CC_VERSION"] = cross_rubies.join(":")

Expand Down

0 comments on commit dac3f71

Please # to comment.