From 8f0eb33e3bb33d83c74f7e5533cd5c4fe95a2665 Mon Sep 17 00:00:00 2001 From: Henrique Medeiros Date: Tue, 14 Oct 2025 10:30:42 -0300 Subject: [PATCH 1/3] Add ruby 3.4 CI and gem base64 listed --- .github/workflows/main.yml | 16 ++++++++++++++-- Gemfile | 1 + 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 65d20da..2466a4c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,7 +9,7 @@ jobs: strategy: matrix: os: [ubuntu] - ruby-version: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3"] + ruby-version: ["2.6", "2.7", "3.0", "3.1", "3.2", "3.3", "3.4"] steps: - uses: actions/checkout@v2 - name: Setup Ruby ${{ matrix.ruby-version }} @@ -19,6 +19,18 @@ jobs: bundler-cache: true - name: Build and run tests run: | - gem install bundler -v 2.4.6 + RUBY_VERSION_STR="${{ matrix.ruby-version }}" + case "$RUBY_VERSION_STR" in + 2.6*) BUNDLER_CONSTRAINT=">= 2.2.0, < 2.4.22" ;; + 2.7*) BUNDLER_CONSTRAINT="2.4.22" ;; + 3.0) BUNDLER_CONSTRAINT=">= 2.4.0, < 2.7.2" ;; + 3.1) BUNDLER_CONSTRAINT=">= 2.4.0, < 2.7.2" ;; + 3.2) BUNDLER_CONSTRAINT=">= 2.7.2, < 4" ;; + 3.3) BUNDLER_CONSTRAINT=">= 2.7.2, < 4" ;; + 3.4) BUNDLER_CONSTRAINT=">= 2.7.2, < 4" ;; + esac + + gem install bundler -v "$BUNDLER_CONSTRAINT" + echo "Bundler installed: $(bundle -v)" bundle install --jobs 4 --retry 3 bundle exec rake diff --git a/Gemfile b/Gemfile index 6412983..61d8408 100644 --- a/Gemfile +++ b/Gemfile @@ -7,6 +7,7 @@ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" } # Specify your gem's dependencies in skunk.gemspec gemspec +gem "base64", "~> 0.3.0" if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.4") gem "reek", "~> 6.1" gem "rubocop", "~> 1.48" gem "vcr", "~> 6.1.0" From c381784bdd2361cca869bbfc58861766fee11548 Mon Sep 17 00:00:00 2001 From: Henrique Medeiros Date: Tue, 14 Oct 2025 11:50:58 -0300 Subject: [PATCH 2/3] Add changelog to report ruby 3.4 compatibility --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5af544c..4cbe885 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * [FEATURE: Add Skunk HTML Report](https://github.com/fastruby/skunk/pull/123) * [FEATURE: Add Skunk::Config class](https://github.com/fastruby/skunk/pull/123) +* [FEATURE: Add Ruby 3.4 compatibility](https://github.com/fastruby/skunk/pull/124) ## v0.5.4 / 2025-05-05 [(commits)](https://github.com/fastruby/skunk/compare/v0.5.3...v0.5.4) From 630de305d8ebcdf180e943393e24d62b6733d3cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juan=20V=C3=A1squez?= Date: Tue, 14 Oct 2025 10:25:10 -0600 Subject: [PATCH 3/3] testing --- .github/workflows/main.yml | 14 +------------- .gitignore | 2 ++ Gemfile | 1 - skunk.gemspec | 1 + 4 files changed, 4 insertions(+), 14 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2466a4c..7f98f8e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -19,18 +19,6 @@ jobs: bundler-cache: true - name: Build and run tests run: | - RUBY_VERSION_STR="${{ matrix.ruby-version }}" - case "$RUBY_VERSION_STR" in - 2.6*) BUNDLER_CONSTRAINT=">= 2.2.0, < 2.4.22" ;; - 2.7*) BUNDLER_CONSTRAINT="2.4.22" ;; - 3.0) BUNDLER_CONSTRAINT=">= 2.4.0, < 2.7.2" ;; - 3.1) BUNDLER_CONSTRAINT=">= 2.4.0, < 2.7.2" ;; - 3.2) BUNDLER_CONSTRAINT=">= 2.7.2, < 4" ;; - 3.3) BUNDLER_CONSTRAINT=">= 2.7.2, < 4" ;; - 3.4) BUNDLER_CONSTRAINT=">= 2.7.2, < 4" ;; - esac - - gem install bundler -v "$BUNDLER_CONSTRAINT" - echo "Bundler installed: $(bundle -v)" + gem install bundler -v 2.4.22 bundle install --jobs 4 --retry 3 bundle exec rake diff --git a/.gitignore b/.gitignore index 912b873..3ca70ad 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,5 @@ .ruby-version .tool-versions + +Gemfile.lock diff --git a/Gemfile b/Gemfile index 61d8408..6412983 100644 --- a/Gemfile +++ b/Gemfile @@ -7,7 +7,6 @@ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" } # Specify your gem's dependencies in skunk.gemspec gemspec -gem "base64", "~> 0.3.0" if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.4") gem "reek", "~> 6.1" gem "rubocop", "~> 1.48" gem "vcr", "~> 6.1.0" diff --git a/skunk.gemspec b/skunk.gemspec index 732e68b..15d9cf4 100644 --- a/skunk.gemspec +++ b/skunk.gemspec @@ -38,6 +38,7 @@ Gem::Specification.new do |spec| spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } spec.require_paths = ["lib"] + spec.add_dependency "base64", "~> 0.3.0" spec.add_dependency "rubycritic", ">= 4.5.2", "< 5.0" spec.add_dependency "terminal-table", "~> 3.0"