From 520b22aa61a9b4e2a399d55f5f943e96f6a8d877 Mon Sep 17 00:00:00 2001 From: Scott Ries Date: Wed, 18 Sep 2024 16:02:37 -0400 Subject: [PATCH 1/4] ci: pin Chrome (#405) When running CI on [another PR](https://github.com/dequelabs/axe-core-gems/pull/404), Selenium would consistently fail with ``` Failure/Error: $driver.get fixture "/index.html" Selenium::WebDriver::Error::InvalidSessionIdError: invalid session id ``` This [appears to be due to resourcing issues for new versions of Chrome](https://stackoverflow.com/questions/56002701/selenium-webdriver-error-invalid-session-id); pinning the Chrome version in CI consistently fixes the issue. No QA needed. --- .circleci/config.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 6bb370fe..7cb45a77 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -14,7 +14,9 @@ commands: description: Install dependencies and bootstrap packages steps: - checkout - - browser-tools/install-browser-tools + - browser-tools/install-browser-tools: + chrome-version: 126.0.6478.182 + replace-existing-chrome: true - node/install: node-version: "16.13" - run: gem install bundler # setup bundler From 1a5838a130dec3c889eab9e201e50faaa5088516 Mon Sep 17 00:00:00 2001 From: Scott Ries Date: Thu, 19 Sep 2024 12:10:12 -0400 Subject: [PATCH 2/4] chore: Install ostruct alongside virtus (#406) Closes #402 Background: ostruct (aka OpenStruct) is part of Ruby's standard library, but it's being pulled out of the standard library and into a gem. For now, both versions are available. If you require the version from the standard library, Ruby 3.3.5 will print a warning urging you to switch over to using the gem version. In Ruby 3.5.0, the standard library version will not exist. The warning looks like this: ``` /Users/mjacobson/.rbenv/versions/3.3.5/lib/ruby/gems/3.3.0/gems/virtus-2.0.0/lib/virtus.rb:1: warning: /Users/mjacobson/.rbenv/versions/3.3.5/lib/ruby/3.3.0/ostruct.rb was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.5.0. You can add ostruct to your Gemfile or gemspec to silence this warning. Also please contact the author of virtus-2.0.0 to request adding ostruct into its gemspec. ``` Because axe-core-gems uses virtus, and virtus uses ostruct, users of axe-core-gems will start to see this warning when they upgrade to Ruby 3.3.5. Ideally, virtus itself would add ostruct to its gemspec, but virtus is discontinued and has not received an update in years and is not likely to receive one again. Given that, I suggest axe-core-gems adds ostruct to its gemspecs, to make sure the gem version is installed and used. That way, no warning will be printed and the gem should be compatible with Ruby 3.5.0. Note: this is a fork of https://github.com/dequelabs/axe-core-gems/pull/403 that allows CI to run. No QA required. Co-authored-by: Max Jacobson --- packages/axe-core-api/axe-core-api.gemspec | 3 +++ packages/axe-core-cucumber/axe-core-cucumber.gemspec | 3 +++ packages/axe-core-rspec/axe-core-rspec.gemspec | 3 +++ 3 files changed, 9 insertions(+) diff --git a/packages/axe-core-api/axe-core-api.gemspec b/packages/axe-core-api/axe-core-api.gemspec index 1a543e30..fa2d7f93 100644 --- a/packages/axe-core-api/axe-core-api.gemspec +++ b/packages/axe-core-api/axe-core-api.gemspec @@ -24,6 +24,9 @@ Gem::Specification.new do |spec| ] spec.add_dependency "dumb_delegator" + # used by virtus; including it to make sure we install the gem and do not + # rely on the standard library version, which will be removed in 3.5.0 + spec.add_dependency "ostruct" spec.add_dependency "virtus" spec.add_development_dependency "bundler", "~> 2.1" diff --git a/packages/axe-core-cucumber/axe-core-cucumber.gemspec b/packages/axe-core-cucumber/axe-core-cucumber.gemspec index 2c623078..5342f094 100644 --- a/packages/axe-core-cucumber/axe-core-cucumber.gemspec +++ b/packages/axe-core-cucumber/axe-core-cucumber.gemspec @@ -23,6 +23,9 @@ Gem::Specification.new do |spec| ] spec.add_dependency "dumb_delegator" + # used by virtus; including it to make sure we install the gem and do not + # rely on the standard library version, which will be removed in 3.5.0 + spec.add_dependency "ostruct" spec.add_dependency "virtus" # pin to a specific version of axe-core-api spec.add_dependency "axe-core-api", AxeCoreGems::VERSION diff --git a/packages/axe-core-rspec/axe-core-rspec.gemspec b/packages/axe-core-rspec/axe-core-rspec.gemspec index a7e9ecd6..8b82d08e 100644 --- a/packages/axe-core-rspec/axe-core-rspec.gemspec +++ b/packages/axe-core-rspec/axe-core-rspec.gemspec @@ -23,6 +23,9 @@ Gem::Specification.new do |spec| ] spec.add_dependency "dumb_delegator" + # used by virtus; including it to make sure we install the gem and do not + # rely on the standard library version, which will be removed in 3.5.0 + spec.add_dependency "ostruct" spec.add_dependency "virtus" # pin to a specific version of axe-core-api spec.add_dependency "axe-core-api", AxeCoreGems::VERSION From 7a03090d0bc1f0cb994e6f04b3fff2ddf87ac974 Mon Sep 17 00:00:00 2001 From: Michael Date: Mon, 30 Sep 2024 13:18:38 -0400 Subject: [PATCH 3/4] ci: remove `PR_TEMPLATE` from sync workflow (#408) no qa required --- .github/workflows/sync-master-develop.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/sync-master-develop.yml b/.github/workflows/sync-master-develop.yml index 3df440bf..275b1190 100644 --- a/.github/workflows/sync-master-develop.yml +++ b/.github/workflows/sync-master-develop.yml @@ -16,4 +16,3 @@ jobs: pr-title: "chore: merge master into develop" pr-team-reviewers: axe-api-team pr-labels: chore - pr-template: .github/PULL_REQUEST_TEMPLATE.md From ad969a3444b0865dd796d46a918d731f41bb3cdc Mon Sep 17 00:00:00 2001 From: API Team CI User Date: Mon, 7 Oct 2024 18:17:44 +0000 Subject: [PATCH 4/4] chore: RC v4.10.1 --- CHANGELOG.md | 2 ++ package.json | 2 +- version.rb | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d3ff5a8..a0b9342e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines. +## [4.10.1](https://github.com/dequelabs/axe-core-gems/compare/v4.10.0...v4.10.1) (2024-10-07) + ## [4.10.0](https://github.com/dequelabs/axe-core-gems/compare/v4.9.1...v4.10.0) (2024-08-13) diff --git a/package.json b/package.json index 2d068a4f..769888ac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "axe-core-gems", - "version": "4.10.0", + "version": "4.10.1", "license": "MPL-2.0", "private": true, "repository": { diff --git a/version.rb b/version.rb index 9f24dbc3..0ca477fd 100644 --- a/version.rb +++ b/version.rb @@ -1,5 +1,5 @@ # this version is used by all the packages module AxeCoreGems - VERSION = "4.10.0" + VERSION = "4.10.1" end