Changes between Version 2 and Version 3 of Ticket #4579


Ignore:
Timestamp:
10/27/2016 03:41:04 PM (3 years ago)
Author:
kzar
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #4579

    • Property Summary changed from Remove ext compatibility layer, target browser extension API to Target the browser extension API
  • Ticket #4579 – Description

    v2 v3  
    11=== Background === 
    2 Once Safari support has been removed we can also remove the ext compatibility layer. We can target the upcoming [https://github.com/browserext/browserext/ browserext] standard instead. 
     2We want to target the [https://github.com/browserext/browserext/ browserext] standard instead of the Chrome extension API. This should hopefully mean Edge and in the future Gecko can be supported without pollyfills. 
    33 
    44=== What to change === 
    55- Add a polyfill for the Chrome extension to add browserext compatibility, adding the `browser` namespace, wrapping asynchronous APIs to use promises and mapping the others directly. (See this existing [https://github.com/kmaglione/webextension-polyfill polyfill] 
    6 - Replace the PageMap and all instances with a single WeakMap instance. 
    7 - Modify the rest of the code to use the `browser` API instead of the Chrome APIs and ext wrappers. 
     6- Replace any other use of the Chrome APIs with the with the browserext API.