Skip to content

chore(gemspec): wire gemspec URLs through PROJECT_URL #28

chore(gemspec): wire gemspec URLs through PROJECT_URL

chore(gemspec): wire gemspec URLs through PROJECT_URL #28

Workflow file for this run

# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
#
# Created: 15th August 2026
# Updated: 19th August 2026
#
name: Ruby
on:
push:
branches:
- master
- dev
- boilerplate
- idiomatic
- rc1
- rc2
- rc3
pull_request:
permissions:
contents: read
defaults:
run:
shell: bash
jobs:
test:
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
ruby-version:
# - head
- '3.4'
- '3.3'
- '3.2'
- '3.1'
- '3.0'
- '2.7'
- '2.6'
include:
- os: ubuntu-latest
ruby-version: '2.5'
- os: ubuntu-latest
ruby-version: '2.4'
- os: ubuntu-latest
ruby-version: '2.0'
- os: windows-latest
ruby-version: mingw
runs-on: ${{ matrix.os }}
steps:
- name: Checking out code
uses: actions/checkout@v7
- name: Remove Gemfile.lock
shell: bash
run: rm -f Gemfile.lock
- name: Set up Ruby v${{ matrix.ruby-version }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
# Bundler 4 honours Gemfile `lockfile false`, so no Gemfile.lock
# is written. bundler-cache cats that file after `bundle lock`
# and fails on Windows 3.2+ (setup-ruby installs Bundler ~> 4).
bundler-cache: false
- name: Install gems
run: bundle install
- name: Show Ruby version
run: ruby -v
- name: Run tests
run: bundle exec rake test
- name: Gem build and install smoke
shell: bash
run: |
gem build libpath-ruby.gemspec
gem install --local libpath-ruby-*.gem
ruby -e "require 'libpath/version'; abort('VERSION missing') unless defined?(LibPath::VERSION); puts LibPath::VERSION"
warnings:
name: Warnings
runs-on: ubuntu-latest
steps:
- name: Checking out code
uses: actions/checkout@v7
- name: Remove Gemfile.lock
shell: bash
run: rm -f Gemfile.lock
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4'
bundler-cache: false
- name: Install gems
run: bundle install
- name: Show Ruby version
run: ruby -v
- name: Run unit tests with warnings
run: ./run_all_unit_tests.sh --lib --warnings