diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 69a6715f3e9..6da1006bed8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Uglified build uses: actions/checkout@v4 @@ -17,7 +17,7 @@ jobs: - run: npm run build stats: name: Build stats - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 env: minified: dist/index.min.js bundled: dist/index.mjs @@ -69,7 +69,7 @@ jobs: b: JSON.parse('${{ steps.b.outputs.result }}'), }); lint: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Linting uses: actions/checkout@v4 @@ -78,7 +78,7 @@ jobs: node-version: 20.x - run: npm run lint prettier: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Prettier check uses: actions/checkout@v4 diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 54dfefc33ff..1180f7fa65e 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -16,7 +16,7 @@ on: jobs: changelog: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 env: file: CHANGELOG.md steps: @@ -30,7 +30,7 @@ jobs: exit 1 fi update: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 needs: changelog if: (inputs.create && failure()) || (inputs.update && success()) continue-on-error: true diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 7957bd724d2..319aac97fb3 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -23,7 +23,7 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 permissions: actions: read contents: read diff --git a/.github/workflows/npmpublish-next.yml b/.github/workflows/npmpublish-next.yml index 00cff1c17cb..6611f4b68a0 100644 --- a/.github/workflows/npmpublish-next.yml +++ b/.github/workflows/npmpublish-next.yml @@ -8,7 +8,7 @@ on: jobs: publish-npm: if: github.event.pull_request.merged == true - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 diff --git a/.github/workflows/npmpublish.yml b/.github/workflows/npmpublish.yml index 8873989c6a1..bf5685869ef 100644 --- a/.github/workflows/npmpublish.yml +++ b/.github/workflows/npmpublish.yml @@ -9,7 +9,7 @@ on: jobs: publish-npm: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 @@ -23,7 +23,7 @@ jobs: NODE_AUTH_TOKEN: ${{secrets.npm_token}} PRE_RELEASE: ${{github.event.release.prerelease}} update-bug-report: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 # wait for publishing to complete needs: publish-npm if: always() diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 488518dfc49..6c281fd0746 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,7 +9,7 @@ on: jobs: prime-build: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - name: Install dependencies @@ -21,7 +21,7 @@ jobs: uses: ./.github/actions/build-fabric-cached node-coverage: needs: [prime-build] - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 name: Node 20.x ${{ matrix.suite }} tests strategy: fail-fast: false @@ -53,10 +53,10 @@ jobs: browser: needs: [prime-build] name: ${{ matrix.target }} ${{ matrix.suite }} tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 strategy: matrix: - node-version: [20.x] + node-version: [20] target: [chrome, firefox] suite: [unit, visual] fail-fast: false @@ -72,7 +72,7 @@ jobs: run: xvfb-run npm run test -- -c ${{ matrix.target }} -s ${{ matrix.suite }} node: needs: [prime-build] - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 name: Node ${{ matrix.node-version }} ${{ matrix.suite }} tests strategy: fail-fast: false @@ -80,21 +80,21 @@ jobs: # For more information see: # https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions # supported Node.js release schedule: https://nodejs.org/en/about/releases/ - node-version: ['18.x'] + node-version: [18, 22] suite: [unit, visual] steps: - uses: actions/checkout@v4 - uses: ./.github/actions/cached-install with: node-version: ${{ matrix.node-version }} - install-system-deps: 'false' + install-system-deps: ${{ matrix.node-version >= 22 }} - name: Build fabric.js uses: ./.github/actions/build-fabric-cached - name: Run ${{ matrix.suite }} tests run: npm run test -- -c node -s ${{ matrix.suite }} jest: name: Jest tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/cached-install @@ -112,7 +112,7 @@ jobs: e2e: needs: [prime-build] name: Playwright tests - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/cached-install @@ -139,12 +139,12 @@ jobs: coverage: needs: [node-coverage, e2e] name: Coverage reporting - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/cached-install with: - node-version: 20.x + node-version: 18.x install-system-deps: false - uses: actions/download-artifact@v4 with: diff --git a/CHANGELOG.md b/CHANGELOG.md index 818f64ef794..93120b03b37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## [next] +- ci(): Test node 22 again [#10310](https://github.com/fabricjs/fabric.js/pull/10310) - chore(TS): Try to remove all TS-ERROR directives [#10309](https://github.com/fabricjs/fabric.js/pull/10309) - chore(): Make TS config more strict [#10308](https://github.com/fabricjs/fabric.js/pull/10308) - fix(Color): Support uppercase keywords [#10300](https://github.com/fabricjs/fabric.js/pull/10300) diff --git a/test/visual/text.js b/test/visual/text.js index 40f44a38a57..d594a460b13 100644 --- a/test/visual/text.js +++ b/test/visual/text.js @@ -323,7 +323,7 @@ width: 480, height: 190, golden: 'text9.png', - percentage: 0.09, + percentage: 0.10, }); function text10(canvas, callback) {