Skip to content

[Crafting] Screenshot baseline updater (#2120) #8868

[Crafting] Screenshot baseline updater (#2120)

[Crafting] Screenshot baseline updater (#2120) #8868

Triggered via push April 24, 2026 08:49
Status Failure
Total duration 1h 24m 13s
Artifacts 12

BuildJobs.yml

on: push
Check SHA in GH Actions
8s
Check SHA in GH Actions
Run code quality check
28m 59s
Run code quality check
Read versions file
4s
Read versions file
Plan E2E matrix
46s
Plan E2E matrix
Matrix: build
Matrix: Run automated end-to-end tests
Publish E2E test summary
44s
Publish E2E test summary
Fit to window
Zoom out
Zoom in

Annotations

14 errors and 31 warnings
Run automated end-to-end tests (4)
Process completed with exit code 1.
Run automated end-to-end tests (4)
@mendix/skiplink-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
Run automated end-to-end tests (7)
Process completed with exit code 1.
Run automated end-to-end tests (7)
@mendix/accessibility-helper-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/accessibility-helper-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
Run automated end-to-end tests (1)
Process completed with exit code 1.
Run automated end-to-end tests (1)
@mendix/badge-button-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/badge-button-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
Run automated end-to-end tests (0)
Process completed with exit code 1.
Run automated end-to-end tests (0)
@mendix/datagrid-web#e2e: command (/home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/datagrid-web) /home/runner/setup-pnpm/node_modules/.bin/pnpm run e2e exited (1)
Failed Test: datagrid-web filtering integration: packages/pluggableWidgets/datagrid-web/e2e/filtering/DataGridFilteringIntegration.spec.js#L0
datagrid-web filtering integration: Error: expect(page).toHaveScreenshot(expected) failed 101 pixels (ratio 0.01 of all image pixels) are different. Snapshot: datagridFilteringIntegration.png Call log: - Expect "toHaveScreenshot(datagridFilteringIntegration.png)" with timeout 5000ms - verifying given screenshot expectation - taking page screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - 101 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - taking page screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - captured a stable screenshot - 101 pixels (ratio 0.01 of all image pixels) are different. - Error: expect(page).toHaveScreenshot(expected) failed 101 pixels (ratio 0.01 of all image pixels) are different. Snapshot: datagridFilteringIntegration.png Call log: - Expect "toHaveScreenshot(datagridFilteringIntegration.png)" with timeout 5000ms - verifying given screenshot expectation - taking page screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - 101 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - taking page screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - captured a stable screenshot - 101 pixels (ratio 0.01 of all image pixels) are different. at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/datagrid-web/e2e/filtering/DataGridFilteringIntegration.spec.js:55:24
Failed Test: closes a page: packages/pluggableWidgets/badge-button-web/e2e/onClick.spec.js#L0
closes a page: Error: expect(locator).toBeVisible() failed Locator: locator('.mx-name-pageTitle1').nth(1) Expected: visible Timeout: 5000ms Error: element(s) not found Call log: - Expect "toBeVisible" with timeout 5000ms - waiting for locator('.mx-name-pageTitle1').nth(1) - Error: expect(locator).toBeVisible() failed Locator: locator('.mx-name-pageTitle1').nth(1) Expected: visible Timeout: 5000ms Error: element(s) not found Call log: - Expect "toBeVisible" with timeout 5000ms - waiting for locator('.mx-name-pageTitle1').nth(1) at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/badge-button-web/e2e/onClick.spec.js:62:70
Failed Test: updates target attributes using a NF: packages/pluggableWidgets/accessibility-helper-web/e2e/AccessibilityHelper.spec.js#L0
updates target attributes using a NF: Test timeout of 30000ms exceeded. - Test timeout of 30000ms exceeded.
Failed Test: visual comparison: packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js#L0
visual comparison: Error: expect(locator).toHaveScreenshot(expected) failed Locator: locator('.widget-skip-link').first() Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different. Snapshot: skiplink-focused.png Call log: - Expect "toHaveScreenshot(skiplink-focused.png)" with timeout 5000ms - verifying given screenshot expectation - waiting for locator('.widget-skip-link').first() - locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('.widget-skip-link').first() - locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different. - Error: expect(locator).toHaveScreenshot(expected) failed Locator: locator('.widget-skip-link').first() Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different. Snapshot: skiplink-focused.png Call log: - Expect "toHaveScreenshot(skiplink-focused.png)" with timeout 5000ms - verifying given screenshot expectation - waiting for locator('.widget-skip-link').first() - locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('.widget-skip-link').first() - locator resolved to <a href="#" class="widget-skip-link mx-name-skipLink1">Skip to main content</a> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - Expected an image 185px by 40px, received 177px by 36px. 1940 pixels (ratio 0.27 of all image pixels) are different. at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js:72:32
Failed Test: skip link becomes visible when focused via keyboard: packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js#L0
skip link becomes visible when focused via keyboard: Error: expect(received).toContain(expected) // indexOf Expected substring: "matrix(1, 0, 0, 1, 0, 0)" Received string: "none" - Error: expect(received).toContain(expected) // indexOf Expected substring: "matrix(1, 0, 0, 1, 0, 0)" Received string: "none" at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js:33:27
Failed Test: skip link is present in DOM but initially hidden: packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js#L0
skip link is present in DOM but initially hidden: Error: expect(received).toContain(expected) // indexOf Expected substring: "matrix(1, 0, 0, 1, 0, -48)" Received string: "none" - Error: expect(received).toContain(expected) // indexOf Expected substring: "matrix(1, 0, 0, 1, 0, -48)" Received string: "none" at /home/runner/work/web-widgets/web-widgets/packages/pluggableWidgets/skiplink-web/e2e/SkipLink.spec.js:21:27
Plan E2E matrix
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (4)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (6)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (7)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (3)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (1)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run automated end-to-end tests (0)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Publish E2E test summary
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run code quality check
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L10
`./SizeContainer` import should occur after import of `./CalendarLoader`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L9
`./Toolbar` import should occur after import of `./CalendarLoader`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L6
`react-big-calendar` import should occur after import of `moment`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L4
`../utils/namespaces` import should occur after import of `./CalendarLoader`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L3
`./Alert` import should occur after import of `react-big-calendar/lib/addons/dragAndDrop`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Calendar.ts#L1
`react` import should occur after import of `moment`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Button.ts#L2
`classnames` import should occur before import of `react`
Run code quality check: packages/customWidgets/calendar-custom-web/src/components/Alert.ts#L2
`classnames` import should occur before import of `react`
Run code quality check: packages/customWidgets/calendar-custom-web/src/Calendar.webmodeler.ts#L6
`./utils/style` import should occur before import of `./utils/validation`
Run release task on ubuntu-latest
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run release task on ubuntu-latest: packages/pluggableWidgets/google-tag-web/src/utils.ts#L3
`react` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on ubuntu-latest: packages/pluggableWidgets/google-tag-web/src/utils.ts#L2
`./commonGtag` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on ubuntu-latest: packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.tsx#L3
`./utils` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on ubuntu-latest: packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.editorConfig.ts#L2
`@mendix/pluggable-widgets-tools` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on windows-latest
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run release task on windows-latest: packages/pluggableWidgets/google-tag-web/src/utils.ts#L3
`react` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on windows-latest: packages/pluggableWidgets/google-tag-web/src/utils.ts#L2
`./commonGtag` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on windows-latest: packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.tsx#L3
`./utils` import should occur before import of `../typings/TXhHdGFnProps`
Run release task on windows-latest: packages/pluggableWidgets/google-tag-web/src/TXhHdGFn.editorConfig.ts#L2
`@mendix/pluggable-widgets-tools` import should occur before import of `../typings/TXhHdGFnProps`

Artifacts

Produced during runtime
Name Size Digest
ctrf-reports-0
7.06 KB
sha256:fc425b8346560e0ae95f86e32ffca2a43031c0602e09b50acad576b67060039e
ctrf-reports-1
3.35 KB
sha256:2e8a5c701dd96c3ad70f8e15962d5e0a4a51365aee67024a3897ad3bfef7e69e
ctrf-reports-2
3.27 KB
sha256:194a5c5496db2b3ed5b889f73901473994a29f03d7b56f293d0353d84d0c3bdd
ctrf-reports-3
5.5 KB
sha256:186a436093e6680814893625c88dc01e4ee1977eec12f3f9f36f4e01b6536606
ctrf-reports-4
2.26 KB
sha256:31f57e8a68ff2e7fb1a79dcd25acfb008ca197a483cb9736998fda89892b85f3
ctrf-reports-5
4.49 KB
sha256:eef5f5658c7eb582dd9d0225756548fd9c0bca7fd631a466bb49d60880b5da9a
ctrf-reports-6
2.97 KB
sha256:1a4f32d572ede2b51e9c0ced8ec196187bac5cc7403b1b8acc5b297f8f3e9e42
ctrf-reports-7
1.97 KB
sha256:758b63c954a681436f88baee69dab6f5cfa3cbe01e7f3b1dfdfa55d9bb6b1939
test-screenshot-results-0
7.01 MB
sha256:9df216265b1430b3978d3919758e333b15e44e5963d4d27b53de2e38f509ac53
test-screenshot-results-1
484 KB
sha256:35d4841f03ab198283daeec31fbc2ce99c0553ac46ad5047e892d720646af012
test-screenshot-results-4
2.65 MB
sha256:756d8f7a51fe8c83ad537ea3c348af09d2fd58c2f889c2ca7cfa3982220beb31
test-screenshot-results-7
69.8 KB
sha256:c4b21f0864ffd4d68df26abfcad7e297a84bad016bfda161fcceedec6084a157