plasmohq / bpp Goto Github PK
View Code? Open in Web Editor NEW๐ Browser Platform Publisher
License: MIT License
๐ Browser Platform Publisher
License: MIT License
If this is needed, please give it an upvote ๐
Since one purpose of the certification notes for edge is cataloging changes from previous publish it makes sense to allow setting it from an argument vs it being static as a Github secret.
It's possible that the secret could contain the static part or a template where the change notes get inserted.
First, Plasmo is awesome and definitely making the Chrome extension dev experience better.
My extension was already in the Chrome Web Store, but I made some changes that required additional permissions. When I ran the bpp action, all I got in the output was:
๐ด ERROR | Error: chrome: Step 2) Item "<redacted>": Response code 400 (Bad Request)
I tried the verbose
option and setting chrome.verbose = true
in the keys, to no avail.
I was able to fork the action and increase the detail of the error logging (which involved vendoring bms
, as it actually swallows the useful information when it does getVerboseError
).
Eventually I was able to see in the response body:
Publish condition not met: To publish your item, you must provide mandatory privacy information in the new Developer Dashboard: https://chrome.google.com/webstore/devconsole. Click on your item from the home page and enter this information on the Privacy practices tab.
Once I saw this it was easy to make the change in the web store and then the action was able to submit it successfully.
Could we get the 4xx responses from the extension stores displayed here? I think it will be very helpful for debugging issues.
I only tried Chrome though I have a feeling the issue exists for other stores.
If you want me to open this in bms
instead I can, I think changes may be required in both. We could get away with only changes in bms
if we put the response body into the error message though.
Chrome
No response
This issue provides visibility into Renovate updates and their statuses. Learn more
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
@typescript-eslint/eslint-plugin
, @typescript-eslint/parser
)@jest/globals
, jest
, ts-jest
)Ref:
After testing the firefox submission in another test extension, I found that the current puppeteer is a leaky abstraction - the mozilla webpage might have mutated over time, and thus the script is outdated.
I'm working on a solution that consume web-ext
library from mozilla: https://github.com/mozilla/web-ext
This will be integrated into our fork of web-ext-deploy: https://github.com/plasmo-corp/web-ext-deploy
Which would provide the new firefox submission capability. The following are TODOS:
It seems mwu
does not throw an error even if the request is 400. We need to catch these request status and throw them accordingly.
semantic release is a end to end release automation process which relies on proper semantic versioning to trigger a release whenever a use visible commit is pushed to a release branch.
It handles updating changelog, git tag, package.json/manifest.json and then via a chrome specific plugin I also use it to publish to chrome. It also publishes a release to Github and comments and labels PRs and issues.
I also publsh to Edge but much less frequently because it doesn't have a plugin (and until very recently had no API) and there are some rough edges with the chrome plugin as well.
I could fork the chrome plugin to make an edge plugin using your edge publishing package but thought I'd open an FR here in case there was interest given your recent work.
Hello, I've been testing BPP in my open-source repository, and I was able to successfully build & publish my extension to the Chrome and Edge stores. However, in this failed workflow, Firefox throws a "duplicate add-on ID found" error. I intentionally leave the firefox.extId
value blank in my keys.json
, because my manifest.json
contains the following:
"browser_specific_settings": {
"gecko": {
"id": "[email protected]"
}
}
After double-checking the schema for the keys file, it says to check the Technical Details section of my addon listing, which displays:
Is this an error on my end? Should I manually include the extension id of [email protected]
in the BPP keys.json
, or would that be redundant?
Firefox
Error: firefox: Step 1) Item ""[email protected]" (Halo Notification Service)": Duplicate add-on ID found.
https://github.com/AliasIO/wappalyzer/pull/5634
Also note that the deployment failed for both stores, BUT the action still reporting as success. Seems like 400 error are being ignored, we should check and throw error manually.
Hi @louisgv,
After your contribution to Copy Guard, I tried the submit workflow, but it only managed to submit to the Chrome and Edge store.
It fails with this error:
a: waiting for selector `#publishButton` failed: timeout 30000ms exceeded
at new d (/home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:36:35640)
at waitForSelectorInPage (/home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:36:33752)
at Object.A.queryOne.u.waitFor (/home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:[23](https://github.com/roedesh/copyguard/runs/5338858177?check_suite_focus=true#step:6:23):67036)
at waitForSelector (/home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:36:31998)
at A.waitForSelector (/home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:36:47436)
at B.waitForSelector (/home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:36:99750)
at /home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:169:9097
at Generator.next (<anonymous>)
at /home/runner/work/_actions/plasmo-corp/bpp/v1/dist/index.js:8:2[30](https://github.com/roedesh/copyguard/runs/5338858177?check_suite_focus=true#step:6:30)9
at new Promise (<anonymous>)
I also get this server response error: Server response: Duplicate add-on ID found. (status: 400)
A bug happened! This is the error I am facing on my github actions. Please help https://github.com/libreom/predirect/actions/runs/7157655020/job/19488824749
Run PlasmoHQ/bpp@v[3](https://github.com/libreom/predirect/actions/runs/7157655020/job/19488824749#step:5:3)
with:
keys: ***
chrome-file: chrome.zip
firefox-file: firefox.xpi
edge-file: chrome.zip
edge-notes: Add redirection for new sites
version-file: src/manifest.json
verbose: true
๐ฃ Plasmo Browser Platform Publish v3
๐ก QUEUE | Prepare for chrome submission
Info chrome: Step 1) Updating extension with ID aiillidfcgfckfhkpiakhkkpbkknagnp
๐ก QUEUE | Prepare for firefox submission
๐ก QUEUE | Prepare for edge submission
Error: ๐ด ERROR | SyntaxError: Unexpected end of JSON input
Error: ๐ด ERROR | SyntaxError: Unexpected end of JSON input
Error: ๐ด ERROR | SyntaxError: Unexpected end of JSON input```
### Which browsers are you seeing the problem on?
Microsoft Edge, Firefox
### Relevant log output
_No response_
### Code of Conduct
- [X] I agree to follow this project's Code of Conduct
- [X] I checked the [current issues](https://github.com/PlasmoHQ/bpp/issues?q=is%3Aopen+is%3Aissue+label%3Abug) for duplicate problems.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.