This repository has been archived by the owner on Jan 25, 2025. It is now read-only.
feat: handle session persistence for manifest version 3 #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
♻️ Current situation
The current implementation of session persistence leverages persistent background scripts. However manifest version 3 deprecates persistent background scripts in favor of service workers. As a result, session persistence does not work on Chrome and Chromium based browsers
💡 Proposed solution
Leverage
chrome.storage.session
, newly added in MV3 to persist user sessions. The session storage is held in memory and never written to disk, preserving the same threat model as persistent background scripts. Ref: https://developer.chrome.com/docs/extensions/reference/storage/#property-session📋 : Release Notes
yarn build
does a standard webapp build without any manifestyarn build:mv2
does a plugin build for manifest version 2 for Firefoxyarn build:mv3
does a plugin build for manifest version 3 for Chrome and Chromium browsers