Closed
Bug 1283173
(webext-port-tampermonkey)
Opened 9 years ago
Closed 8 years ago
Enable Tampermonkey Chrome extension to work with Firefox
Categories
(WebExtensions :: Compatibility, defect, P5)
WebExtensions
Compatibility
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: bsilverberg, Unassigned)
References
(Depends on 1 open bug)
Details
(Whiteboard: [popular chrome extensions]triaged)
Chrome extension at https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo
No test uploaded to AMO yet. Failed linter validation with:
Your add-on failed validation with 1 error.
- "/incognito" should match pattern "^spanning$"
I tried downloading and loading as a temporary add-on, and saw these messages:
- 1467215608939 addons.webextension.<unknown> ERROR Loading extension 'null': Reading manifest: Error processing content_scripts.0.matches.0: Value must either: be one of ["<all_urls>"], match the pattern /^(https?|file|ftp|app|\*):\/\/(\*|\*\.[^*/]+|[^*/]+)\/.*$/, or match the pattern /^file:\/\/\/.*$/
Log.jsm:753
- Error: Extension is invalid
Stack trace:
loadManifestFromWebManifest<@resource://gre/modules/addons/XPIProvider.jsm:913:11
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:714:7
TaskImpl_run@resource://gre/modules/Task.jsm:324:13
promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:395:7
TaskImpl_run@resource://gre/modules/Task.jsm:327:13
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:937:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:816:7
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:747:11
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:779:7
Promise.prototype.then@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:454:5
TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:395:7
TaskImpl_run@resource://gre/modules/Task.jsm:327:13
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
loadManifestFromWebManifest<@resource://gre/modules/addons/XPIProvider.jsm:909:23
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:395:7
TaskImpl_run@resource://gre/modules/Task.jsm:327:13
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
loadManifestFromDir<@resource://gre/modules/addons/XPIProvider.jsm:1348:19
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
loadManifestFromFile@resource://gre/modules/addons/XPIProvider.jsm:1493:12
this.XPIProvider.installTemporaryAddon<@resource://gre/modules/addons/XPIProvider.jsm:3926:23
TaskImpl_run@resource://gre/modules/Task.jsm:319:40
TaskImpl@resource://gre/modules/Task.jsm:280:3
createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:254:14
AddonManagerInternal.installTemporaryAddon@resource://gre/modules/AddonManager.jsm:2320:12
this.AddonManager.installTemporaryAddon@resource://gre/modules/AddonManager.jsm:3473:12
loadAddonFromFile@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/client/aboutdebugging/components/addons/controls.js:57:5
controls.js:59:9
More investigation is needed to determine what the actual issue/issues is/are.
Updated•9 years ago
|
Alias: webext-port-tampermonkey
Comment 1•8 years ago
|
||
Hi, Tampermonkey dev here.
Can you please add the following bugs at the "Depends on" field?
A) 1273138, 1267027
B) 1213455, 1280027
A is needed by both, the Firefox [1] and the Chrome [2] version, while B is only needed to make the Chrome version run.
BTW: the match pattern issue mentioned at the post above is fixed.
Thanks,
Jan
[1] https://addons.mozilla.org/en-US/firefox/addon/tampermonkey/
[2] https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo
Reporter | ||
Comment 2•8 years ago
|
||
Jan, I have added the first set of dependencies, referred to as A above. Do you not have access to add these dependencies yourself?
I'm unclear about B though. You say that's required for the Chrome version, but if you are going to port the Firefox version to WebExtensions then the Chrome version might be irrelevant to Firefox.
Also:
- Bug 1213455 is a general tracking bug. Could you be more specific about what more is needed for notifications to support the extension?
- Bug 1280027 is just about changing a warning to an error. I don't see how that would affect your extension's ability to work. Did you perhaps mean that you need support for "incognito" properties other than "spanning"?
Comment 3•8 years ago
|
||
> Do you not have access to add these dependencies yourself?
No, these fields are read-only for me.
> then the Chrome version might be irrelevant to Firefox.
I was not sure about this, because the bug title explicitly mentions "Tampermonkey Chrome".
There already is a Firefox version of Tampermonkey and for me it's OK to ignore the Chrome version. I just added B) in case you really want to make the Chrome version to work.
Bug 1213455: getPermissionLevel is used by the Chrome version
Bug 1280027: Sorry, I misunderstood the issue a little bit. However, Tampermonkey Chrome won't work until "spanning" is supported.
Comment 4•8 years ago
|
||
(In reply to Jan Biniok from comment #3)
> Tampermonkey Chrome won't work until "spanning" is supported.
I meant "split" instead of "spanning". :)
Comment 5•8 years ago
|
||
Hi, Tampermonkey also depends on bug 1213473 (chrome.runtime.reload or location.reload) [1] for full functionality.
[1] https://github.com/Tampermonkey/tampermonkey/issues/321
Thanks, Jan
Comment 6•8 years ago
|
||
(In reply to Jan Biniok from comment #5)
> Hi, Tampermonkey also depends on bug 1213473 (chrome.runtime.reload or
> location.reload) [1] for full functionality.
This has been implemented as part of bug 1279012, its just that the documentation on MDN hasn't been done yet.
Updated•8 years ago
|
Component: WebExtensions: Untriaged → WebExtensions: Compatibility
Updated•8 years ago
|
Priority: -- → P5
Comment 7•8 years ago
|
||
Looks like its doing ok as one: https://addons.mozilla.org/en-US/firefox/addon/tampermonkey/statistics/?last=365
Note: that chrome.runtime.reload was fixed in bug 1279012.
Closing this tracking bug for getting the extension working although I know there are a few bugs that can be fixed like bug 1267027.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Updated•7 years ago
|
Product: Toolkit → WebExtensions
You need to log in
before you can comment on or make changes to this bug.
Description
•