From 9c84f8d19d00d25ab16ebbcd12f0499309002bcc Mon Sep 17 00:00:00 2001 From: Mike Dalessio Date: Wed, 22 Apr 2026 10:13:58 -0400 Subject: [PATCH 1/2] dep: relax some dev requirements - so we can use Bundler 4 - so minitest 6 and prism can be used without errors --- rake-compiler-dock.gemspec | 2 +- test/rcd_test/Gemfile | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/rake-compiler-dock.gemspec b/rake-compiler-dock.gemspec index 450f3342..dec0eee2 100644 --- a/rake-compiler-dock.gemspec +++ b/rake-compiler-dock.gemspec @@ -28,7 +28,7 @@ Use rake-compiler-dock to enter an interactive shell session or add a task to yo spec.test_files = spec.files.grep(%r{^(test|spec|features)/}) spec.require_paths = ["lib"] - spec.add_development_dependency "bundler", ">= 1.7", "< 3.0" + spec.add_development_dependency "bundler" spec.add_development_dependency "rake", ">= 12" spec.add_development_dependency "test-unit", "~> 3.0" end diff --git a/test/rcd_test/Gemfile b/test/rcd_test/Gemfile index 5f292f24..e7c3d0c0 100644 --- a/test/rcd_test/Gemfile +++ b/test/rcd_test/Gemfile @@ -5,7 +5,7 @@ source "https://rubygems.org" # No rcd_test gem, since "bundle package" fails on bundler-2.7+, if the extension isn't built # gemspec -gem "rake", "~> 13.0" +gem "rake" gem "rake-compiler" gem "rake-compiler-dock", path: "../.." -gem "minitest", "~> 5.0" +gem "minitest" From 29a215306a9a7ae808a80b0a0d727893678a21f1 Mon Sep 17 00:00:00 2001 From: Mike Dalessio Date: Wed, 22 Apr 2026 12:41:32 -0400 Subject: [PATCH 2/2] ci: install ruby-dev and compiler toolchain in docker images so that we can compile Prism as a C extension when needed --- .github/workflows/ci.yml | 9 +++++---- test/env/Dockerfile.alpine | 2 +- test/env/Dockerfile.debian | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 690db5bd..ec56f9ae 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -239,10 +239,10 @@ jobs: # declare rubygems for each ruby version - { ruby: "3.0", rubygems: "3.5.23" } # declare docker image for each platform - - { platform: aarch64-linux-musl, runon: "ubuntu-24.04-arm", docker_tag: "-alpine" } - - { platform: arm-linux-musl, runon: "ubuntu-24.04-arm", docker_tag: "-alpine" } - - { platform: x86-linux-musl, runon: "ubuntu-latest", docker_tag: "-alpine" } - - { platform: x86_64-linux-musl, runon: "ubuntu-latest", docker_tag: "-alpine" } + - { platform: aarch64-linux-musl, runon: "ubuntu-24.04-arm", docker_tag: "-alpine", bootstrap: "apk add build-base &&" } + - { platform: arm-linux-musl, runon: "ubuntu-24.04-arm", docker_tag: "-alpine", bootstrap: "apk add build-base &&" } + - { platform: x86-linux-musl, runon: "ubuntu-latest", docker_tag: "-alpine", bootstrap: "apk add build-base &&" } + - { platform: x86_64-linux-musl, runon: "ubuntu-latest", docker_tag: "-alpine", bootstrap: "apk add build-base &&" } - { platform: x86_64-linux, runon: "ubuntu-latest" } - { platform: x86_64-linux-gnu, runon: "ubuntu-latest" } # declare docker platform for each platform @@ -267,6 +267,7 @@ jobs: docker run --rm -v $PWD:/work -w /work \ ${{ matrix.docker_platform}} ruby:${{ matrix.ruby }}${{ matrix.docker_tag }} \ sh -c " + ${{ matrix.bootstrap }} if test -n '${{ matrix.rubygems }}' ; then gem update --system ${{ matrix.rubygems }} ; fi && gem install --local *.gem --verbose && cd test/rcd_test/ && diff --git a/test/env/Dockerfile.alpine b/test/env/Dockerfile.alpine index 54b2d28e..37c5cebb 100644 --- a/test/env/Dockerfile.alpine +++ b/test/env/Dockerfile.alpine @@ -2,7 +2,7 @@ ARG from_image FROM ${from_image} RUN uname -a -RUN apk add ruby ruby-rake git +RUN apk add ruby ruby-dev ruby-rake git build-base RUN ruby --version RUN gem env diff --git a/test/env/Dockerfile.debian b/test/env/Dockerfile.debian index 2336dd2e..5ae880c7 100644 --- a/test/env/Dockerfile.debian +++ b/test/env/Dockerfile.debian @@ -8,7 +8,7 @@ RUN uname -a RUN apt-get update -qq && \ apt-get install -yq \ -o Dpkg::Options::='--force-confnew' \ - ruby \ + ruby ruby-dev build-essential \ git RUN ruby --version