Skip to content

feat(react-router): upgrade to react router 6 #17599

feat(react-router): upgrade to react router 6

feat(react-router): upgrade to react router 6 #17599

Triggered via pull request December 3, 2025 13:56
Status Success
Total duration 10m 29s
Artifacts 27

build.yml

on: pull_request
build-react
47s
build-react
build-vue
39s
build-vue
Matrix: test-core-screenshot
build-angular
1m 6s
build-angular
build-angular-server
34s
build-angular-server
test-core-clean-build
17s
test-core-clean-build
test-core-lint
49s
test-core-lint
test-core-spec
47s
test-core-spec
build-react-router
33s
build-react-router
build-vue-router
43s
build-vue-router
verify-screenshots
3s
verify-screenshots
Matrix: test-angular-e2e
Matrix: test-react-e2e
Matrix: test-react-router-e2e
Matrix: test-vue-e2e
verify-test-angular-e2e
2s
verify-test-angular-e2e
verify-test-react-e2e
4s
verify-test-react-e2e
verify-test-react-router-e2e
2s
verify-test-react-router-e2e
verify-test-vue-e2e
2s
verify-test-vue-e2e
Fit to window
Zoom out
Zoom in

Annotations

4 errors and 20 notices
[Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:130:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › using arrow keys should move between enabled radios within group: src/components/radio/test/a11y/radio.e2e.ts#L134
2) [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:130:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › using arrow keys should move between enabled radios within group Error: expect(locator).toBeFocused() failed Locator: locator('#first-group ion-radio').first() Expected: focused Received: inactive Timeout: 5000ms Call log: - Expect "toBeFocused" with timeout 5000ms - waiting for locator('#first-group ion-radio').first() 9 × locator resolved to <ion-radio value="huey" role="radio" tabindex="0" aria-checked="true" class="md in-item radio-checked radio-label-placement-start hydrated">Huey</ion-radio> - unexpected value "inactive" 132 | 133 | await pageUtils.pressKeys('Tab'); > 134 | await expect(firstGroupRadios.nth(0)).toBeFocused(); | ^ 135 | 136 | await page.keyboard.press('ArrowDown'); 137 | await expect(firstGroupRadios.nth(1)).toBeFocused(); at /ionic/src/components/radio/test/a11y/radio.e2e.ts:134:47
[Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › tabbing should switch between radio groups: src/components/radio/test/a11y/radio.e2e.ts#L122
1) [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › tabbing should switch between radio groups Error: expect(locator).toBeFocused() failed Locator: locator('#first-group ion-radio').first() Expected: focused Received: inactive Timeout: 5000ms Call log: - Expect "toBeFocused" with timeout 5000ms - waiting for locator('#first-group ion-radio').first() 9 × locator resolved to <ion-radio value="huey" role="radio" tabindex="0" aria-checked="true" class="md in-item radio-checked radio-label-placement-start hydrated">Huey</ion-radio> - unexpected value "inactive" 120 | 121 | await pageUtils.pressKeys('Tab'); > 122 | await expect(firstGroupRadios.nth(0)).toBeFocused(); | ^ 123 | 124 | await pageUtils.pressKeys('Tab'); 125 | await expect(secondGroupRadios.nth(0)).toBeFocused(); at /ionic/src/components/radio/test/a11y/radio.e2e.ts:122:47
[Mobile Safari] › src/components/datetime-button/test/overlays/datetime-button.e2e.ts:11:9 › datetime-button: rendering - ios/ltr › should size the modal correctly: src/components/datetime-button/test/overlays/datetime-button.e2e.ts#L27
1) [Mobile Safari] › src/components/datetime-button/test/overlays/datetime-button.e2e.ts:11:9 › datetime-button: rendering - ios/ltr › should size the modal correctly Error: expect(page).toHaveScreenshot(expected) failed 2329 pixels (ratio 0.01 of all image pixels) are different. Snapshot: datetime-overlay-modal-ios-ltr.png Call log: - Expect "toHaveScreenshot(datetime-overlay-modal-ios-ltr.png)" with timeout 5000ms - verifying given screenshot expectation - taking page screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - 2329 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 - 2329 pixels (ratio 0.01 of all image pixels) are different. 25 | await ionModalDidPresent.next(); 26 | > 27 | await expect(page).toHaveScreenshot(screenshot(`datetime-overlay-modal`)); | ^ 28 | }); 29 | 30 | test('should size the popover correctly', async ({ page, skip }) => { at /ionic/src/components/datetime-button/test/overlays/datetime-button.e2e.ts:27:26
[Mobile Safari] › src/components/router/test/guards/router.e2e.ts:6:9 › router: guards - ios/ltr › guards should be run on initial load: src/components/router/test/guards/router.e2e.ts#L9
1) [Mobile Safari] › src/components/router/test/guards/router.e2e.ts:6:9 › router: guards - ios/ltr › guards should be run on initial load Error: expect(received).toContain(expected) // indexOf Expected substring: "#/child/1" Received string: "http://localhost:3333/src/components/router/test/guards#/guard-initial-page?ionic:_testing=true&ionic:mode=ios&rtl=undefined&palette=light" 7 | await page.goto(`/src/components/router/test/guards#/guard-initial-page`, config); 8 | > 9 | expect(page.url()).toContain('#/child/1'); | ^ 10 | }); 11 | }); 12 | }); at /ionic/src/components/router/test/guards/router.e2e.ts:9:26
🎭 Playwright Run Summary
216 skipped 257 passed (2.2m)
🎭 Playwright Run Summary
534 passed (3.1m)
🎭 Playwright Run Summary
4 skipped 511 passed (3.3m)
🎭 Playwright Run Summary
1 skipped 537 passed (3.3m)
🎭 Playwright Run Summary
1 skipped 534 passed (3.2m)
🎭 Playwright Run Summary
212 skipped 313 passed (3.6m)
🎭 Playwright Run Summary
2 flaky [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › tabbing should switch between radio groups [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:130:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › using arrow keys should move between enabled radios within group 4 skipped 513 passed (3.9m)
🎭 Playwright Run Summary
648 passed (4.3m)
🎭 Playwright Run Summary
10 skipped 503 passed (4.9m)
🎭 Playwright Run Summary
14 skipped 399 passed (5.1m)
🎭 Playwright Run Summary
1 flaky [Mobile Safari] › src/components/datetime-button/test/overlays/datetime-button.e2e.ts:11:9 › datetime-button: rendering - ios/ltr › should size the modal correctly 5 skipped 512 passed (5.3m)
🎭 Playwright Run Summary
1 skipped 538 passed (6.5m)
🎭 Playwright Run Summary
14 skipped 502 passed (6.7m)
🎭 Playwright Run Summary
1 flaky [Mobile Safari] › src/components/router/test/guards/router.e2e.ts:6:9 › router: guards - ios/ltr › guards should be run on initial load 10 skipped 528 passed (6.8m)
🎭 Playwright Run Summary
4 skipped 535 passed (6.8m)
🎭 Playwright Run Summary
1 skipped 523 passed (6.9m)
🎭 Playwright Run Summary
2 skipped 517 passed (6.9m)
🎭 Playwright Run Summary
5 skipped 573 passed (7.0m)
🎭 Playwright Run Summary
7 skipped 510 passed (7.6m)
🎭 Playwright Run Summary
5 skipped 517 passed (8.1m)

Artifacts

Produced during runtime
Name Size Digest
ionic-angular
667 KB
sha256:aa632baa0c75ba91a6c10d21fbe6bbda6e549f72b000c3ed89256874f94dbe2b
ionic-angular-server
8.55 KB
sha256:8ae17fc29f06537ab3444ad67e0e28250a4314628021301f6148d451a8c57a6b
ionic-core
4.56 MB
sha256:5168ee9461c264cef4605293158990a6853494e94f5f97960aab42ea1dba4084
ionic-react
212 KB
sha256:1c027ca4404b93de67805f052d511b61fea96237e9816b9fe5bffe67400c7b6c
ionic-react-router
73.5 KB
sha256:612dde74a925fe93a92d50d2e9a8dfb45d73d17876acd6e9414c9fcf3970043e
ionic-vue
233 KB
sha256:b4ecf0ad51dfd11d41d7f4f621ad9395e033968d41058d75b65baffbcaba58b1
ionic-vue-router
17 KB
sha256:a9f50a34b7e66f014dbaf54afccef6238cd2d67e9a60bde16cdab6decc01b680
test-results-1-20
441 KB
sha256:4a8c033e36c066fb96b9e08bea1288ff2f6ae847bac0b03cb6c1e126dec2468c
test-results-10-20
461 KB
sha256:444f6f56d5fc7cf154122ca8d4350360d103bc1cb427d31a542a8c8dfff82f9b
test-results-11-20
1.62 MB
sha256:d0e00068f84d91b9567ccf30792d6dfd95377b9d3a5fd5a1866141cfcf900251
test-results-12-20
442 KB
sha256:0f516ca8678457f56037bf8288e366d6329ce4bf0ec9eda3edc8c7f75eea826f
test-results-13-20
450 KB
sha256:c982c90a80cbff874005a0ebb64976737f8985ea642114f03fd743b24704df83
test-results-14-20
405 KB
sha256:cd51e6edeb532c6a0d1f31e7138185ed4ad36a0b132d8bb7ff537631f33f601d
test-results-15-20
430 KB
sha256:54506b67ae0ad7245ce311b64042fc4932f5f99d2869cecec2c58843e7a27725
test-results-16-20
1.38 MB
sha256:d99f7d867e6eed5b88ffd6d3fefa495d5678867e2f89fbb1f4af9ca8b64629d8
test-results-17-20
532 KB
sha256:dd7252248b6dd4addff4f06d8e1dae96b676ad3fc4bc896f7cab1dc9d4567da1
test-results-18-20
1.25 MB
sha256:cf265e6eefbb42195d1f26ed36cd8b0bf7870a2a4cd6f15f9793e90922b4dc36
test-results-19-20
396 KB
sha256:08152cf24ee63a0693049ce1201356a3c3177c02c6585cdc04d331f69ce2eb21
test-results-2-20
472 KB
sha256:70d6f122a63b4ffeff0c63dd4c8366374d7306c62649e84f189689cfa09440f9
test-results-20-20
360 KB
sha256:2322683379eb71daf94b25b5496e992bd78e8804a47f23af4cd65d328854cbda
test-results-3-20
431 KB
sha256:cc1bdee8980654cd90a795cb2439c39e7fce04a8d993d6ab28c1bd375ab80c8f
test-results-4-20
524 KB
sha256:4bc83e4d6378c108bd9ca96fcdc01ab3e1fecf26f2b40bc7e41069c3367df940
test-results-5-20
454 KB
sha256:fbb98e962a485328ee1648667fbb8d4f26e0e99110b28dc6ca2c996ba064efb3
test-results-6-20
447 KB
sha256:3e4e7bc18070065906d9cc77593438ef386d0700088270b4b87f0adfdf49fecd
test-results-7-20
351 KB
sha256:a08374fa7ba1c5f40ea08e2fcf90ce8f965ea2416e88497f6b5d9815c9316b80
test-results-8-20
429 KB
sha256:8fbd2e0a7ecd6cb593961920d7d97b9a600beaf8256dc64c9262e7461ab36a3e
test-results-9-20
436 KB
sha256:4d48a93987be7e11896bec89a5c6646053c2f4eb07c034581298968ae09f4b46