Skip to content
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

Migrate simple-prefs to WebExtension storage #153

Closed
3 tasks done
lidel opened this issue Sep 27, 2016 · 1 comment
Closed
3 tasks done

Migrate simple-prefs to WebExtension storage #153

lidel opened this issue Sep 27, 2016 · 1 comment
Milestone

Comments

@lidel
Copy link
Member

lidel commented Sep 27, 2016

It is now possible to embed small WebExtension (WX) within legacy SDK add-on.
We should add this in master as soon as storage keys in webextensions branch are mature enough. Then make official, transitional release (eg. v1.6.0).

This will gracefully migrate user preferences (eg. Custom Gateway/API URLs) to the WX namespace, and when WX time comes, everything will work as expected.

PoC: https://github.com/mdn/webextensions-examples/tree/master/embedded-webextension-sdk
Ref. https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Embedded_WebExtensions


Migration Tasks

  • create analogous options in 2.x.x (WebExtension) for all settings in 1.x.x (legacy SDK)
  • add settings migration in legacy-sdk branch (embed WebExtension stub that reads settings and saves them under WebExtension storage)
  • release hybrid addon from legacy-sdk as 1.6.0
@lidel lidel added this to the v1.6.0 milestone Sep 27, 2016
@lidel
Copy link
Member Author

lidel commented Oct 10, 2016

Prerequisite PR: #157 introduces JPM 1.1.2 which delivers support for hybrid SDK addons.

This means you can migrate a legacy add-on to WebExtensions one piece at a time, and have a fully functioning add-on at every step. In particular, it enables you to migrate stored data from a legacy add-on to a WebExtension, by writing an intermediate hybrid add-on that reads the data using the legacy APIs (for example, simple-prefs or the preferences service) and writes it using the WebExtension APIs (for example, storage).

lidel added a commit that referenced this issue Jan 23, 2017
@lidel lidel closed this as completed Jan 23, 2017
lidel added a commit that referenced this issue Jan 23, 2017
- this is required by migration introduced in #153
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant