mirror of
https://github.com/primedigitaltech/azon_seeker.git
synced 2026-01-19 13:13:22 +08:00
2.2 KiB
2.2 KiB
Changelog
v6.0.0
This revision is primarily focused on codebase improvements all around. The code should be now much more readable and easy to comprehend as the responsibilities have been split into smaller pieces and composed as needed by each runtime context.
For end users of the library, the breaking changes aren't that "breaking", they'll just need to do a bit of import restructring. The API behaviour is mostly unchanged, with just minor exceptions.
Breaking changes
- Runtime context is no longer automatically detected by
webext-bridge. You must import the relevant part yourself depending on the context, eg:import Bridge from 'webext-bridge/window'for a script that'll be running in the Window context. Learn more about the change here. setNamespaceis not available in any context exceptwindow, andallowWindowMessagingis not available in any context exceptcontent-script.getCurrentContextexport has been removed.isInternalEndpointreturnstruefor some new contexts. In summary it'll betrueforbackground,content-script,devtools,popup, andoptions.- For messages sent from
background, message queuing feature can no longer be trusted due to manifest v3 terminating the service worker runtime after certain time. The queue of messages sent frombackgroundwill be disposed off along with the termination of the said service worker. Queuing still works for messages sent from all other contexts.
Fixes
- Fixed an issue with messages sometimes not reaching
content-scriptorwindowwhen being sent by some other context right after a tab had navigated forward or back. This was caused by old port'sonDisconnectcallback being called after the new port'sonConnectcallback. TheonDisconnectwould then remove the port mapping preventing messages from being routed tocontent-scriptorwindow. - If the message recipient terminates (tab closure for example) before replying to the sender, the sender will be notified about the session termination instead of it waiting indefinetly for a response
that's never coming back. Now, the
sendMessagecall in the sender will reject with an error.