diff --git a/.circleci/config.yml b/.circleci/config.yml index d162756b..7b2316bb 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -18,7 +18,7 @@ commands: # TODO: remove when chromedriver downloads are fixed chrome-version: 116.0.5845.96 - node/install: - node-version: '16.13' + node-version: "16.13" - run: gem install bundler # setup bundler - run: rake bootstrap # bootstrap packages @@ -86,7 +86,7 @@ jobs: steps: - checkout - node/install: - node-version: '16.13' + node-version: "16.13" - bootstrap - run: bash .circleci/print_license.sh @@ -104,6 +104,7 @@ workflows: branches: only: - develop + - release - production_release: requires: - test diff --git a/.github/scripts/prepare_release.sh b/.github/scripts/prepare_release.sh old mode 100644 new mode 100755 index 594f5e21..5bcd2103 --- a/.github/scripts/prepare_release.sh +++ b/.github/scripts/prepare_release.sh @@ -6,7 +6,15 @@ set -e releaseLevel="$1" oldVersion="$(node -pe 'require("./package.json").version')" -npx standard-version --release-as "$releaseLevel" --skip.commit=true --skip.tag=true + +# If no release level is specified, let commit-and-tag-version handle versioning +if [ -z "$releaseLevel" ] +then + npx commit-and-tag-version --skip.commit=true --skip.tag=true +else + npx commit-and-tag-version --release-as "$releaseLevel" --skip.commit=true --skip.tag=true +fi + newVersion="$(node -pe 'require("./package.json").version')" sed -i -e "s/ VERSION\\s*=\\s*\"$oldVersion\"/ VERSION = \"$newVersion\"/" version.rb diff --git a/.github/workflows/auto-assign-issues.yml b/.github/workflows/auto-assign-issues.yml deleted file mode 100644 index 832601f0..00000000 --- a/.github/workflows/auto-assign-issues.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: Auto assign axe-core integration issues to Axe API team project board - -on: - issues: - types: [opened] -env: - MY_GITHUB_TOKEN: ${{ secrets.MY_GITHUB_TOKEN }} - -jobs: - assign_one_project: - runs-on: ubuntu-latest - name: Auto assign axe-core integration issues to Axe API team project board - steps: - - name: Auto assign axe-core integration issues to Axe API team project board - uses: srggrs/assign-one-project-github-action@1.2.1 - with: - project: https://github.com/orgs/dequelabs/projects/53 - column_name: 'Ungroomed' diff --git a/.github/workflows/auto-patch-release.yml b/.github/workflows/auto-patch-release.yml deleted file mode 100644 index ec752eb6..00000000 --- a/.github/workflows/auto-patch-release.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Automatically create patch release every 2 weeks -on: - workflow_dispatch: -jobs: - create_patch_release: - name: Create release - runs-on: ubuntu-latest - steps: - - name: Determine if we skip cancel checks - id: skip-checks - shell: bash - # Skip checks if we are not a scheduled run - run: echo value=$(test ${{ github.event_name }} != schedule && echo true || echo false) >> "$GITHUB_OUTPUT" - - - name: Create release - uses: dequelabs/axe-api-team-public/.github/actions/auto-patch-release-v1@main - with: - token: ${{ secrets.GITHUB_TOKEN }} - skip_checks: ${{ steps.skip-checks.outputs.value }} - project_token: ${{ secrets.GH_PROJECT_TOKEN }} - slack_webhook: ${{ secrets.SLACK_WEBHOOK }} - odd_release: 'true' - release-command: bash .github/scripts/prepare_release.sh - release-branch: master - default-branch: develop diff --git a/.github/workflows/create-release-candidate.yml b/.github/workflows/create-release-candidate.yml new file mode 100644 index 00000000..6321f034 --- /dev/null +++ b/.github/workflows/create-release-candidate.yml @@ -0,0 +1,24 @@ +name: Create release candidate + +on: + workflow_dispatch: + inputs: + version-locked: + type: boolean + description: Prevent this action from creating a minor or major release + default: true + +jobs: + create-release-candidate: + runs-on: ubuntu-latest + timeout-minutes: 5 + steps: + - uses: dequelabs/axe-api-team-public/.github/actions/create-release-candidate-v1@main + with: + token: ${{ secrets.GITHUB_TOKEN }} + base: "master" + head: "develop" + release-script-path: "./.github/scripts/prepare_release.sh" + version-locked: ${{ inputs.version-locked }} + env: + GH_TOKEN: ${{ secrets.GH_PROJECT_TOKEN }} diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml deleted file mode 100644 index 9eb225af..00000000 --- a/.github/workflows/create-release.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: Create release candidate - -on: - workflow_dispatch: - inputs: - releaseLevel: - description: 'Release level: major, minor, or patch.' - required: true - default: 'patch' - -jobs: - create_release: - name: Create release - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Cache node_modules - uses: actions/cache@v3 - with: - path: ./node_modules - key: npm-cache-${{ runner.os }}-${{ hashFiles('./package-lock.json') }} - - uses: actions/setup-node@v3 - with: - node-version: 16 - # There is no `package-lock.json` file - - run: npm install - - name: Configure git - run: | - git config user.name "API Team CI User" - git config user.email "aciattestteamci@deque.com" - - id: release - name: Release - run: | - npx standard-version --release-as="${{ github.event.inputs.releaseLevel }}" - Version=$(jq -r .version package.json) - echo "::set-output name=Version::$Version" - - name: Create pull request - uses: peter-evans/create-pull-request@v3 - with: - token: ${{ secrets.GITHUB_TOKEN }} - branch: release - branch-suffix: timestamp - title: 'chore: release v${{ steps.release.outputs.Version }}' - # If there are any changes not already committed, they will be added to - # a commit with this as the message. - # If there are no changes no commit will be created. - commit-message: 'chore: applying release changes' - # Our default branch is `develop` but we want to create a PR into `master` - base: master diff --git a/.github/workflows/semantic-pr-footer.yml b/.github/workflows/semantic-pr-footer.yml new file mode 100644 index 00000000..d5e35af0 --- /dev/null +++ b/.github/workflows/semantic-pr-footer.yml @@ -0,0 +1,16 @@ +name: Semantic PR footer + +on: + pull_request: + types: + - opened + - reopened + - edited + - synchronize + +jobs: + semantic-pr-footer: + runs-on: ubuntu-latest + timeout-minutes: 1 + steps: + - uses: dequelabs/axe-api-team-public/.github/actions/semantic-pr-footer-v1@main diff --git a/.github/workflows/semantic-pr-title.yml b/.github/workflows/semantic-pr-title.yml index 181cd239..99eeeaf9 100644 --- a/.github/workflows/semantic-pr-title.yml +++ b/.github/workflows/semantic-pr-title.yml @@ -11,5 +11,6 @@ on: jobs: semantic-pr-title: runs-on: ubuntu-latest + timeout-minutes: 1 steps: - uses: dequelabs/semantic-pr-title@v1 diff --git a/.github/workflows/sync-master-develop.yml b/.github/workflows/sync-master-develop.yml index a02f8f37..e15ff080 100644 --- a/.github/workflows/sync-master-develop.yml +++ b/.github/workflows/sync-master-develop.yml @@ -8,6 +8,7 @@ on: jobs: create_sync_pull_request: runs-on: ubuntu-latest + timeout-minutes: 2 steps: - uses: dequelabs/action-sync-branches@v1 with: diff --git a/.github/workflows/update-axe-core.yml b/.github/workflows/update-axe-core.yml index 6f89a483..c278d1f6 100644 --- a/.github/workflows/update-axe-core.yml +++ b/.github/workflows/update-axe-core.yml @@ -1,38 +1,20 @@ name: Update axe-core on: + schedule: + # Run every night at midnight + - cron: '0 0 * * *' workflow_dispatch: jobs: build: runs-on: ubuntu-latest + timeout-minutes: 1 steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: node-version: 16 - - id: update - uses: dequelabs/update-axe-core@v1 - - id: type - run: | - CommitType="" - if [ "${{ steps.update.outputs.patch_version_updated }}" == "true" ]; then - CommitType="fix" - elif [ "${{ steps.update.outputs.minor_version_updated }}" == "true" ]; then - CommitType="feat" - elif [ "${{ steps.update.outputs.major_version_updated }}" == "true" ]; then - CommitType="feat" - fi - echo "type=$CommitType" >>"$GITHUB_OUTPUT" - - name: Open PR - uses: peter-evans/create-pull-request@v4 + - uses: dequelabs/axe-api-team-public/.github/actions/create-update-axe-core-pull-request-v1@main with: - token: ${{ secrets.PAT }} - commit-message: '${{ steps.type.outputs.type }}: Update axe-core to v${{ steps.update.outputs.version }}' - branch: auto-update-axe-core - base: develop - title: '${{ steps.type.outputs.type }}: Update axe-core to v${{ steps.update.outputs.version }}' - body: | - This patch updates version of [`axe-core`](https://npmjs.org/axe-core) to v${{ steps.update.outputs.version }}. - - This PR was opened by a robot :robot: :tada:. + token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e803cef..43b360fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,14 @@ # Changelog -All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +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.8.1](https://github.com/dequelabs/axe-core-gems/compare/v4.8.0...v4.8.1) (2024-01-15) + +### Bug Fixes + +* Update axe-core to v4.8.2 ([#332](https://github.com/dequelabs/axe-core-gems/issues/332)) ([b3789c4](https://github.com/dequelabs/axe-core-gems/commit/b3789c44e433c82743a84029d2bac7c529d32047)) +* Update axe-core to v4.8.3 ([#360](https://github.com/dequelabs/axe-core-gems/issues/360)) ([cb6338c](https://github.com/dequelabs/axe-core-gems/commit/cb6338c222a55825f4ec9f04699c775d76508a26)) + ## [4.8.0](https://github.com/dequelabs/axe-core-gems/compare/v4.6.1...v4.8.0) (2023-09-27) diff --git a/package.json b/package.json index 9086d6f5..20d1673a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "axe-core-gems", - "version": "4.8.0", + "version": "4.8.1", "license": "MPL-2.0", "private": true, "repository": { @@ -12,7 +12,7 @@ }, "devDependencies": { "axe-test-fixtures": "github:dequelabs/axe-test-fixtures", - "conventional-changelog-cli": "^2.2.2", - "standard-version": "^9.5.0" + "commit-and-tag-version": "^11.2.4", + "conventional-changelog-cli": "^2.2.2" } } diff --git a/packages/axe-core-api/package-lock.json b/packages/axe-core-api/package-lock.json index 6689409a..3d2222d8 100644 --- a/packages/axe-core-api/package-lock.json +++ b/packages/axe-core-api/package-lock.json @@ -7,13 +7,13 @@ "name": "axe-core-api", "license": "MPL-2.0", "dependencies": { - "axe-core": "4.8.2" + "axe-core": "^4.8.3" } }, "node_modules/axe-core": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.2.tgz", - "integrity": "sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.3.tgz", + "integrity": "sha512-d5ZQHPSPkF9Tw+yfyDcRoUOc4g/8UloJJe5J8m4L5+c7AtDdjDLRxew/knnI4CxvtdxEUVgWz4x3OIQUIFiMfw==", "engines": { "node": ">=4" } @@ -21,9 +21,9 @@ }, "dependencies": { "axe-core": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.2.tgz", - "integrity": "sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==" + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.3.tgz", + "integrity": "sha512-d5ZQHPSPkF9Tw+yfyDcRoUOc4g/8UloJJe5J8m4L5+c7AtDdjDLRxew/knnI4CxvtdxEUVgWz4x3OIQUIFiMfw==" } } } diff --git a/packages/axe-core-api/package.json b/packages/axe-core-api/package.json index 89af9a8c..29f70b45 100644 --- a/packages/axe-core-api/package.json +++ b/packages/axe-core-api/package.json @@ -2,6 +2,6 @@ "name": "axe-core-api", "license": "MPL-2.0", "dependencies": { - "axe-core": "4.8.2" + "axe-core": "^4.8.3" } } diff --git a/version.rb b/version.rb index 6812ec3d..dd0a8a2f 100644 --- a/version.rb +++ b/version.rb @@ -1,5 +1,5 @@ # this version is used by all the packages module AxeCoreGems - VERSION = "4.8.0" + VERSION = "4.8.1" end