Merge pull request #158 from samsonjs/ruby-4

Update to Ruby 4.0.0
This commit is contained in:
Sami Samhuri 2026-01-02 12:06:56 -08:00 committed by GitHub
commit 005b7a33c5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 56 additions and 84 deletions

View file

@ -1,82 +0,0 @@
version: 2.1
executors:
ruby:
parameters:
version:
description: "Ruby version number"
default: "3.4.1"
type: string
docker:
- image: cimg/ruby:<< parameters.version >>
commands:
bundle_install:
description: Install Ruby dependencies with Bundler
parameters:
version:
description: "Ruby version number"
default: "3.4.1"
type: string
steps:
- restore_cache:
keys:
- bundle-v1-{{ arch }}-<< parameters.version >>
- run:
name: Install Ruby Dependencies
command: |
gem install bundler -v 2.6.2 --conservative --no-document
bundle config --local path vendor/bundle
bundle check || (bundle install --jobs=4 --retry=3 && bundle clean)
- save_cache:
paths:
- ./vendor/bundle
key: bundle-v1-{{ arch }}-<< parameters.version >>-{{ checksum "Gemfile.lock" }}
jobs:
rubocop:
executor: ruby
steps:
- checkout
- bundle_install
- run: bundle exec rubocop
test:
parameters:
version:
description: "Ruby version number"
default: "3.4.1"
type: string
executor:
name: ruby
version: << parameters.version >>
steps:
- checkout
- bundle_install:
version: << parameters.version >>
- run: bundle exec rake test
- store_test_results:
path: ./reports
workflows:
version: 2
commit-workflow:
jobs:
- rubocop
- test:
matrix:
parameters:
version: ["3.2.6", "3.3.6", "3.4.1"]
cron-workflow:
jobs:
- rubocop
- test:
matrix:
parameters:
version: ["3.2.6", "3.3.6", "3.4.1"]
triggers:
- schedule:
cron: "0 13 * * 6"
filters:
branches:
only:
- main

53
.github/workflows/ci.yml vendored Normal file
View file

@ -0,0 +1,53 @@
name: CI
on:
push:
branches:
- main
pull_request:
jobs:
rubocop:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: 4.0.0
- name: Cache Ruby gems
uses: actions/cache@v3
with:
path: vendor/bundle
key: ${{ runner.os }}-bundle-4.0.0-${{ hashFiles('Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-bundle-4.0.0-
- name: Install dependencies
run: |
bundle config set --local path vendor/bundle
bundle install --jobs 8 --retry 3
- name: Run RuboCop
run: bundle exec rubocop
test:
runs-on: ubuntu-latest
strategy:
matrix:
ruby-version: ["3.2.9", "3.3.10", "3.4.8", "4.0.0"]
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
- name: Cache Ruby gems
uses: actions/cache@v3
with:
path: vendor/bundle
key: ${{ runner.os }}-bundle-${{ matrix.ruby-version }}-${{ hashFiles('Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-bundle-${{ matrix.ruby-version }}-
- name: Install dependencies
run: |
bundle config set --local path vendor/bundle
bundle install --jobs 8 --retry 3
- name: Run tests
run: bundle exec rake test

View file

@ -1 +1 @@
3.4.1
4.0.0

View file

@ -70,6 +70,7 @@ PLATFORMS
arm64-darwin-22
arm64-darwin-23
arm64-darwin-24
arm64-darwin-25
x86_64-linux
DEPENDENCIES
@ -86,4 +87,4 @@ DEPENDENCIES
wordexp!
BUNDLED WITH
2.6.2
4.0.3