|
1 | 1 | # Publishing the shoplit extension to the Chrome Web Store |
2 | 2 |
|
3 | | -Everything you upload is in this folder. The packaged file is |
4 | | -`shoplit-extension-v<version>.zip` (rebuild with `npm run build` then re-zip — |
| 3 | +Everything you upload is in this folder. The current packaged file is |
| 4 | +**`shoplit-extension-0.1.1.zip`** (rebuild with `npm run build` then re-zip — |
5 | 5 | see bottom). Below is the exact copy to paste into the Developer Dashboard. |
6 | 6 |
|
| 7 | +> ## ⚠️ Resubmission (v0.1.1) — what changed and why |
| 8 | +> Version **0.1.0** was rejected under **Use of Permissions** (ref *Purple |
| 9 | +> Potassium*): it requested **`scripting`** but never called `chrome.scripting`. |
| 10 | +> |
| 11 | +> **Fix in v0.1.1:** permissions narrowed to **`["storage"]`** only. |
| 12 | +> - Removed **`scripting`** — the content script is injected statically via the |
| 13 | +> manifest `content_scripts` key, which needs no `scripting` permission. |
| 14 | +> - Removed **`activeTab`** — the popup's `tabs.sendMessage` to the content |
| 15 | +> script is already covered by the retailer `host_permissions`, and |
| 16 | +> `tabs.create` / `tabs.query` (we only read `tab.id`) need no permission. So |
| 17 | +> `activeTab` was unused too; removed pre-emptively to keep permissions minimal. |
| 18 | +> |
| 19 | +> No functionality changed. When you resubmit, in the dashboard's reviewer-notes |
| 20 | +> field you can state: *"Removed the unused `scripting` permission (and the |
| 21 | +> redundant `activeTab`); the extension now requests only `storage`."* |
| 22 | +
|
7 | 23 | ## 0. One-time setup |
8 | 24 | 1. Go to **https://chrome.google.com/webstore/devconsole**. |
9 | 25 | 2. Sign in with the Google account you want to own the listing. |
10 | 26 | 3. Pay the **one-time $5 registration fee** and complete the account/identity |
11 | 27 | verification (Chrome requires a verified publisher). |
12 | 28 |
|
13 | | -## 1. Create the item |
14 | | -1. Dashboard → **Add new item** → upload `shoplit-extension-v0.1.0.zip`. |
15 | | -2. It parses the manifest; fill in the listing fields below. |
| 29 | +## 1. Create / update the item |
| 30 | +- **First submission:** Dashboard → **Add new item** → upload `shoplit-extension-0.1.1.zip`. |
| 31 | +- **Resubmitting the rejected item:** open the existing item → **Package** → **Upload |
| 32 | + new package** → choose `shoplit-extension-0.1.1.zip` (the version bump to 0.1.1 |
| 33 | + is required — Chrome rejects re-uploads with the same version). |
| 34 | + |
| 35 | +It parses the manifest; the listing fields below are unchanged from before. |
16 | 36 |
|
17 | 37 | ## 2. Store listing (copy/paste) |
18 | 38 |
|
@@ -82,6 +102,6 @@ Free, like the rest of shoplit. Sign up at https://shoplit.in |
82 | 102 | ``` |
83 | 103 | cd extension |
84 | 104 | npm run build |
85 | | -( cd dist && zip -rq ../shoplit-extension-v$(node -p "require('./manifest.json').version").zip . ) |
| 105 | +( cd dist && zip -rq ../shoplit-extension-$(node -p "require('./manifest.json').version").zip . -x '*.DS_Store' ) |
86 | 106 | ``` |
87 | | -Bump `version` in `manifest.json` for each new store upload (Chrome rejects re-uploads with the same version). |
| 107 | +Bump `version` in `manifest.json` for each new store upload (Chrome rejects re-uploads with the same version). Also re-run the same `dist → web/public/shoplit-extension.zip` zip so the site's manual-download copy stays in sync. |
0 commit comments