-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(oidc): force sw update when new registration appears (release) #1449
fix(oidc): force sw update when new registration appears (release) #1449
Conversation
5bcf899
to
4c83439
Compare
|
||
if (registration.active && registration.waiting) { | ||
console.log('Detected new service worker waiting, unregistering and reloading'); | ||
await configuration.service_worker_update_require_callback?.(registration, stopKeepAlive); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hi @wermanoid thank you for your PullRequest !
I'am not sure to understand why we nee 2 time await configuration.service_worker_update_require_callback?.(registration, stopKeepAlive); ? may you help me to understand?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there are cases when new service worker is added, when old one is still running. This leads to case when SW is just hanging in waitting
state and never starts, as original SW is still running as usual.
As far as I understand now, oidc is able to update SW only when running SW version and oidc version mismatch.
But we had cases when ui was redeployed and that leads to case, when 2 SW of same internal oidc version appeared in browser.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanh you @wermanoid I will test your version tomorrow! sorry for the delay.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @guillaume-chervet , any chance to verify? Or can I help somehow to move forward?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I checked it referring to my Issue #1400
I can't reproduce the sw mismatched versions issue anymore in demo app running from wermanoid:fix/update-sw-registration
4f9ca8e
to
ad18d60
Compare
very very sorry for the delay @wermanoid |
Should help with #1400
Also allow to update SW when some code changes happens within same version. At lest existing
service_worker_update_require_callback
was effective enough for me in private app tests and with react-oidc-demo app too. I didn't fail in any reload loop, since SW copy function was added to app prestart.@piotrbartnik @guillaume-chervet would be great if you could prove that it works or not at yours environment