Skip to content

Latest commit

 

History

History
43 lines (28 loc) · 1.83 KB

ep_001.md

File metadata and controls

43 lines (28 loc) · 1.83 KB

Episode One: Initializing Some Things and our First Nasty Surprise

For each step in this project we'll make two versions of each experiment, one with manifest v2 and one with manifest v3, with each step subdivided as an "episode."

Let's make two new directories under an ep_001 parent, ep_001/v2 and ep_001/v3, and initialize a pair of manifest files.

Here's /v2/manifest.json:

  "version": "0.0.101",
  "name": "Baseline",
  "description": "Manifest V2 Baseline",
  "manifest_version": 2
}

Open up Canary's chrome://extensions page and be sure Developer Mode is on. Then install the baseline extension by dragging in the ep_001/v2 folder and dropping it. You should see the title, version, short description, an ID, and some UI on the bottom, featuring Details, Remove, Reload, and Disable buttons.

Here's /v3/manifest.json:

  "version": "0.0.101",
  "name": "Test",
  "description": "Manifest V3 Test",
  "manifest_version": 3
}

Same deal here: drag in the ep_001/v3 folder into chrome://extensions and drop it. (V2 and V3 extensions should run side-by-side in Canary.)

Results

Uh-oh. There's an Errors button in the UI bar. Click to see what's going on.

The maximum currently-supported manifest version is 2, but this is 3. Certain features may not work as expected.

While this presents as an error it is really a warning, and will train us to ignore the Errors button.

I've reported this in the Chromium Extensions Google Group. It's annoying, especially when you start trying to run the extension on domains that are loading cookies with weird-looking sameSite attributes.

Status

We're good to move on to our next challenge, site permissions.