Description
Paul Derscheid
2025-06-16 14:58:35 UTC
Created attachment 183287 [details] [review] [DO NOT PUSH] Bug 40150: Set up a duplicate call to hydrate() Created attachment 183288 [details] [review] Bug 40150: Prevent uncaught error on multiple attempts to 'define' on 'CustomElementsRegistry' in islands.ts If the name is already in use, we just return. It might make sense to have a console.debug() or similar to notify developers that this is happening. Open for other opinions. To test: 1) Apply the first patch which adds an additional hydrate call in main-container.inc 2) Go to acqui/acqui-home.pl 3) Verify that you see this error in the dev tool's console tab: Uncaught (in promise) NotSupportedError: Failed to execute 'define' on 'CustomElementRegistry': the name "acquisitions-menu" has already been used with this registry 4) Apply the second patch 5) Run `yarn js:build` in ktd (assuming ktd). 6) Reload the page without cached assets (Ctrl/Cmd + Shift + R) and verify that the uncaught error is gone. 7) Sign off. There's an additional problem here I (and probably you) noticed. But that's unrelated to this bug. Created attachment 183292 [details] [review] Bug 40150: Set up a duplicate call to hydrate() Signed-off-by: David Nind <david@davidnind.com> Created attachment 183293 [details] [review] Bug 40150: Prevent uncaught error on multiple attempts to 'define' on 'CustomElementsRegistry' in islands.ts If the name is already in use, we just return. It might make sense to have a console.debug() or similar to notify developers that this is happening. Open for other opinions. To test: 1) Apply the first patch which adds an additional hydrate call in main-container.inc 2) Go to acqui/acqui-home.pl 3) Verify that you see this error in the dev tool's console tab: Uncaught (in promise) NotSupportedError: Failed to execute 'define' on 'CustomElementRegistry': the name "acquisitions-menu" has already been used with this registry 4) Apply the second patch 5) Run `yarn js:build` in ktd (assuming ktd). 6) Reload the page without cached assets (Ctrl/Cmd + Shift + R) and verify that the uncaught error is gone. 7) Sign off. There's an additional problem here I (and probably you) noticed. But that's unrelated to this bug. Signed-off-by: David Nind <david@davidnind.com> Added assignee.
For some reason, the name for the [DO NOT PUSH] patch was changed. I'll obsolete my signed off patch.
> There's an additional problem here I (and probably you) noticed. But that's unrelated to this bug.
[Violation] 'setTimeout' handler took 62ms?
Otherwise, no idea. 8-)
Created attachment 184976 [details] [review] Bug 40150: Prevent uncaught error on multiple attempts to 'define' on 'CustomElementsRegistry' in islands.ts If the name is already in use, we just return. It might make sense to have a console.debug() or similar to notify developers that this is happening. Open for other opinions. To test: 1) Apply the first patch which adds an additional hydrate call in main-container.inc 2) Go to acqui/acqui-home.pl 3) Verify that you see this error in the dev tool's console tab: Uncaught (in promise) NotSupportedError: Failed to execute 'define' on 'CustomElementRegistry': the name "acquisitions-menu" has already been used with this registry 4) Apply the second patch 5) Run `yarn js:build` in ktd (assuming ktd). 6) Reload the page without cached assets (Ctrl/Cmd + Shift + R) and verify that the uncaught error is gone. 7) Sign off. There's an additional problem here I (and probably you) noticed. But that's unrelated to this bug. Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Nice work everyone! Pushed to main for 25.11 |