Skip to content

Commit d847924

Browse files
authored
chore(release): v4.9.0 (#4380)
## [4.9.0](v4.8.4...v4.9.0) (2024-03-25) ### Features - adding the wcag131 tag to the aria-hidden-body rule ([#4349](#4349)) ([dd4c3c3](dd4c3c3)), closes [#4315](#4315) - **checks:** deprecate aria-busy check ([#4356](#4356)) ([be0b555](be0b555)), closes [#4347](#4347) [#4340](#4340) - **color:** add color channel values and luminosity, saturation, clip functions ([#4366](#4366)) ([9e70199](9e70199)), closes [/github.com//pull/4365/files#r1517706612](https://github.com/dequelabs//github.com/dequelabs/axe-core/pull/4365/files/issues/r1517706612) - **i18n:** add Greek Translations ([#3836](#3836)) ([3ea9a48](3ea9a48)) - **i18n:** Add Italian translation ([#4344](#4344)) ([de1baa9](de1baa9)) - **i18n:** Add Simplified Chinese translation ([#4379](#4379)) ([bda7c8d](bda7c8d)) - **i18n:** Add Taiwanese Mandarin translation ([#4299](#4299)) ([c5e11de](c5e11de)) ### Bug Fixes - Add LICENSE-3RD-PARTY.txt file ([#4304](#4304)) ([daa0fe6](daa0fe6)) - add Object.values polyfill for node <=6 ([#4274](#4274)) ([5eb867b](5eb867b)) - **aria-required-children:** avoid confusing aria-busy message in failures ([#4347](#4347)) ([591607d](591607d)), closes [#fail13](https://github.com/dequelabs/axe-core/issues/fail13) [#4340](#4340) - avoid reading element-specific node properties of non-element node types ([#4317](#4317)) ([b853b18](b853b18)), closes [#4316](#4316) [#4316](#4316) - **color-contrast:** handle text that is outside `overflow: hidden` ancestor ([#4357](#4357)) ([bdb7300](bdb7300)), closes [#4253](#4253) - **color-contrast:** support color blend modes hue, saturation, color, luminosity ([#4365](#4365)) ([7ae4761](7ae4761)) - **d.ts:** RawNodesResult issues ([#4229](#4229)) ([d660518](d660518)) - **d.ts:** RunOptions.reporter can be any string ([#4218](#4218)) ([e53f5c5](e53f5c5)) - **i18n:** update Italian translations ([#4377](#4377)) ([4d65d4b](4d65d4b)) - **listitem:** clarify roleNotValid message ([#4374](#4374)) ([0f8a9af](0f8a9af)) - **scrollable-region-focusable:** missing wcag213 tag ([#4201](#4201)) ([0080a72](0080a72)) - **target-size:** always pass 10x targets (avoid perf bottleneck) ([#4376](#4376)) ([be327c4](be327c4)) - **target-size:** do not crash for nodes with many overlapping widgets ([#4373](#4373)) ([1dbea83](1dbea83)), closes [#4359](#4359) [#4359](#4359) [#4360](#4360) - **utils/get-selector:** ignore 'xmlns' attribute when generating a selector ([#4303](#4303)) ([938b411](938b411)) This PR was opened by a robot 🤖 🎉
2 parents 9ba9d05 + 3a6ce3c commit d847924

File tree

313 files changed

+11957
-4531
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

313 files changed

+11957
-4531
lines changed

.circleci/config.yml

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@ defaults: &defaults
55

66
unix_box: &unix_box
77
docker:
8-
- image: cimg/node:16.18-browsers
8+
- image: cimg/node:18.18-browsers
99

1010
unix_nightly_box: &unix_nightly_box
1111
docker:
1212
- image: cimg/node:lts-browsers
1313

1414
orbs:
1515
puppeteer: threetreeslight/[email protected]
16-
browser-tools: circleci/[email protected].4
16+
browser-tools: circleci/[email protected].8
1717

1818
set_npm_auth: &set_npm_auth
1919
run: npm config set "//registry.npmjs.org/:_authToken" $NPM_AUTH
@@ -33,9 +33,7 @@ restore_build: &restore_build
3333
commands:
3434
browser-tools-job:
3535
steps:
36-
- browser-tools/install-browser-tools:
37-
# TODO: remove when chromedriver downloads are fixed
38-
chrome-version: 116.0.5845.96
36+
- browser-tools/install-browser-tools
3937

4038
jobs:
4139
# Fetch and cache dependencies.
@@ -243,15 +241,15 @@ jobs:
243241
- <<: *restore_dependency_cache_unix
244242
- run: npm run test:rule-help-version
245243

246-
# Test node API
247-
test_node:
244+
# Test jsdom API
245+
test_jsdom:
248246
<<: *defaults
249247
<<: *unix_box
250248
steps:
251249
- checkout
252250
- <<: *restore_dependency_cache_unix
253251
- <<: *restore_build
254-
- run: npm run test:node
252+
- run: npm run test:jsdom
255253

256254
# Release a "next" version
257255
next_release:
@@ -363,7 +361,7 @@ workflows:
363361
- test_rule_help_version:
364362
requires:
365363
- build_unix
366-
- test_node:
364+
- test_jsdom:
367365
requires:
368366
- build_unix
369367
# Verify the sri history is correct
@@ -388,7 +386,7 @@ workflows:
388386
- test_virtual_rules
389387
- build_api_docs
390388
- test_rule_help_version
391-
- test_node
389+
- test_jsdom
392390
- verify_sri
393391
filters:
394392
branches:
@@ -406,7 +404,7 @@ workflows:
406404
- test_virtual_rules
407405
- build_api_docs
408406
- test_rule_help_version
409-
- test_node
407+
- test_jsdom
410408
filters:
411409
branches:
412410
only: develop

.eslintrc.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ module.exports = {
22
root: true,
33
extends: ['prettier'],
44
parserOptions: {
5-
ecmaVersion: 2021
5+
ecmaVersion: 2023
66
},
77
env: {
88
node: true,

.github/dependabot.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
version: 2
2+
3+
updates:
4+
- package-ecosystem: 'github-actions'
5+
directory: '/'
6+
schedule:
7+
interval: 'monthly'
8+
open-pull-requests-limit: 10
9+
commit-message:
10+
prefix: 'chore'
11+
groups:
12+
# Any updates not caught by the group config will get individual PRs
13+
gha-low-risk:
14+
update-types:
15+
- 'minor'
16+
- 'patch'
17+
18+
- package-ecosystem: 'npm'
19+
directory: '/'
20+
schedule:
21+
interval: 'monthly'
22+
open-pull-requests-limit: 10
23+
commit-message:
24+
prefix: 'chore'
25+
ignore:
26+
# Prevent updates to ESM-only versions
27+
- dependency-name: 'chalk'
28+
versions: ['>=5.0.0']
29+
- dependency-name: 'execa'
30+
versions: ['>=6.0.0']
31+
- dependency-name: 'inquirer'
32+
versions: ['>=9.0.0']
33+
- dependency-name: 'chai'
34+
versions: ['>=5.0.0']
35+
# Prevent Webpack error caused by v0.11+ of esbuild
36+
# @see https://github.com/dequelabs/axe-core/issues/3771
37+
- dependency-name: 'esbuild'
38+
versions: ['>=0.11.0']
39+
groups:
40+
# Any updates not caught by the group config will get individual PRs
41+
npm-low-risk:
42+
update-types:
43+
- 'minor'
44+
- 'patch'

.github/workflows/format.yml

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,21 @@ jobs:
66
prettier:
77
runs-on: ubuntu-latest
88
steps:
9-
- uses: actions/checkout@v3
9+
- uses: actions/checkout@v4
1010
with:
1111
ref: ${{ github.event.pull_request.head.ref }}
1212
- name: Install dependencies
1313
run: npm ci
14-
- name: Cache node_modules
15-
uses: actions/cache@v3
16-
with:
17-
path: |
18-
./node_modules
19-
key: npm-workspace-cache-${{ runner.os }}-${{ hashFiles('./package-lock.json') }}
20-
- uses: actions/setup-node@v1
14+
- uses: actions/setup-node@v4
2115
with:
2216
node-version: 16
17+
cache: 'npm'
2318
# Workflows are not allowed to edit workflows. As result, we need to prevent Prettier from formatting them.
2419
- name: Prevent workflows from being formatted
25-
run: echo ".github" >> .prettierignore
20+
run: echo ".github" >> .prettierignore && cat .prettierignore
2621
- run: npm run fmt
2722
# Prevent the prettierignore change from being committed.
2823
- run: git checkout .prettierignore
29-
- uses: stefanzweifel/git-auto-commit-action@v4
24+
- uses: stefanzweifel/git-auto-commit-action@8756aa072ef5b4a080af5dc8fef36c5d586e521d # tag=v5
3025
with:
3126
commit_message: ':robot: Automated formatting fixes'

.github/workflows/label-extension-linter-issues.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ jobs:
1111
issues: write
1212
steps:
1313
- name: Label Extension Issues
14-
uses: andymckay/labeler@1.0.4
14+
uses: andymckay/labeler@e6c4322d0397f3240f0e7e30a33b5c5df2d39e90 # tag=1
1515
if: contains(toJson(github.event.issue.body), '### Product\n\naxe Extension\n\n')
1616
with:
1717
add-labels: 'extension'
1818
repo-token: ${{ secrets.GITHUB_TOKEN }}
1919
- name: Label Linting Issues
20-
uses: andymckay/labeler@1.0.4
20+
uses: andymckay/labeler@e6c4322d0397f3240f0e7e30a33b5c5df2d39e90 # tag=1
2121
if: contains(toJson(github.event.issue.body), '### Product\n\naxe Linter\n\n')
2222
with:
2323
add-labels: 'linting'

.github/workflows/release.yml

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,13 @@ jobs:
77
name: Create release
88
runs-on: ubuntu-latest
99
steps:
10-
- uses: actions/checkout@v3
10+
- uses: actions/checkout@v4
1111
with:
1212
fetch-depth: 0
13-
- uses: actions/cache@v3
14-
with:
15-
path: ./node_modules
16-
key: npm-cache-${{ runner.os }}-${{ hashFiles('./package-lock.json') }}
17-
- uses: actions/setup-node@v3
13+
- uses: actions/setup-node@v4
1814
with:
1915
node-version: 16
16+
cache: 'npm'
2017
- name: Run release script and open PR
2118
run: |
2219
git config user.name "API Team CI User"
@@ -42,11 +39,9 @@ jobs:
4239
--output-indicator-new=! CHANGELOG.md | egrep '^!' | awk -F'^[!]' '{print $2}' | sed -e 's/\n/$0A/g'
4340
)
4441
45-
echo "chore(release): v$Version" > /tmp/pr.txt
46-
echo "" >> /tmp/pr.txt
4742
echo "$ReleaseNotes" >> /tmp/pr.txt
4843
echo "" >> /tmp/pr.txt
4944
echo "This PR was opened by a robot :robot: :tada:" >> /tmp/pr.txt
50-
hub pull-request --file /tmp/pr.txt --base master
45+
gh pr create --title "chore(release): v$Version" --body-file "/tmp/pr.txt" --base master
5146
env:
5247
GITHUB_TOKEN: ${{ secrets.PAT }}

.github/workflows/test.yml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Tests
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches:
7+
- master
8+
- develop
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-latest
13+
timeout-minutes: 5
14+
steps:
15+
- uses: actions/checkout@v4
16+
- uses: actions/setup-node@v4
17+
with:
18+
node-version: 20
19+
cache: 'npm'
20+
- run: npm ci
21+
- run: npm run build
22+
# v4 download seems to have some flakiness with the download of artifacts so pinning to v3 for now
23+
# @see https://github.com/actions/download-artifact/issues/249
24+
- uses: actions/upload-artifact@v3
25+
with:
26+
name: axe-core
27+
path: axe.js
28+
retention-days: 1
29+
30+
test_node:
31+
strategy:
32+
matrix:
33+
node: [6, 18, 20]
34+
runs-on: ubuntu-latest
35+
timeout-minutes: 5
36+
needs: build
37+
steps:
38+
- uses: actions/checkout@v4
39+
- uses: actions/setup-node@v4
40+
with:
41+
node-version: ${{ matrix.node}}
42+
- uses: actions/download-artifact@v3
43+
with:
44+
name: axe-core
45+
- run: npm run test:node

.github/workflows/update-generated-files.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
runs-on: ubuntu-latest
1414
steps:
1515
- name: Checkout
16-
uses: actions/checkout@v3
16+
uses: actions/checkout@v4
1717
with:
1818
fetch-depth: 0
1919

.husky/pre-commit

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,2 @@
1-
#!/usr/bin/env sh
2-
. "$(dirname -- "$0")/_/husky.sh"
3-
41
npx grunt configure
52
npx lint-staged

.jsdoc.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"destination": "./doc/api",
1313
"encoding": "utf8",
1414
"recurse": true,
15-
"template": "./node_modules/minami"
15+
"template": "./node_modules/clean-jsdoc-theme"
1616
},
1717
"plugins": ["plugins/markdown"]
1818
}

0 commit comments

Comments
 (0)