maildev@lists.thunderbird.net

Thunderbird email developers

View all threads

ATN Web Extension Support

G
Graeme
Thu, Jan 24, 2019 11:40 AM

Message: 1
Date: Tue, 22 Jan 2019 11:43:08 -0800
From: Andrei Hajdukewycz sancus@thunderbird.net
To: Thunderbird email developers maildev@lists.thunderbird.net
Subject: [Maildev] ATN Web Extension Support

ATN(addons.thunderbird.net https://addons.thunderbird.net/) now
supports web extensions for Thunderbird without having to use any
workarounds.

* Web Extensions should no longer get Firefox-only compatibility by
  default, so you shouldn't have to manually add Thunderbird
  compatibility to web extension versions after upload anymore.
* The "Compatible with Firefox 57+" banner has been removed.
* 'strict_min_version' in manifest.json now requires '60.0' or greater.
    o If you upload a version with a 'strict_min_version' lower than
      60.0, the validator will fail and state the required minimum.
    o This does not apply retroactively to previously uploaded
      versions or files.

I tried to add "strict_min_version": "64.0", to my manifest.json and got an error message.

1548329475062 addons.webextension.singledomain@graeme.trial WARN Loading extension
'singledomain@graeme.trial': Reading manifest: Error processing strict_min_version: An
unexpected property was found in the WebExtension manifest.

It would be really wonderful to have a basic manifest.json file somewhere....

> Message: 1 > Date: Tue, 22 Jan 2019 11:43:08 -0800 > From: Andrei Hajdukewycz <sancus@thunderbird.net> > To: Thunderbird email developers <maildev@lists.thunderbird.net> > Subject: [Maildev] ATN Web Extension Support > > ATN(addons.thunderbird.net <https://addons.thunderbird.net/>) now > supports web extensions for Thunderbird without having to use any > workarounds. > > * Web Extensions should no longer get Firefox-only compatibility by > default, so you shouldn't have to manually add Thunderbird > compatibility to web extension versions after upload anymore. > * The "Compatible with Firefox 57+" banner has been removed. > * 'strict_min_version' in manifest.json now requires '60.0' or greater. > o If you upload a version with a 'strict_min_version' lower than > 60.0, the validator will fail and state the required minimum. > o This does not apply retroactively to previously uploaded > versions or files. I tried to add "strict_min_version": "64.0", to my manifest.json and got an error message. 1548329475062 addons.webextension.singledomain@graeme.trial WARN Loading extension 'singledomain@graeme.trial': Reading manifest: Error processing strict_min_version: An unexpected property was found in the WebExtension manifest. It would be really wonderful to have a basic manifest.json file somewhere....
JK
Jörg Knobloch
Thu, Jan 24, 2019 1:06 PM

On 24/01/2019 12:40, Graeme wrote:

It would be really wonderful to have a basic manifest.json file somewhere....

Well, this is what the documentation says:

https://wiki.mozilla.org/Thunderbird/Add-ons_Guide_63#.22Legacy.22_XUL_extensions_with_overlays

To use this overlay loader, XUL overlay legacy extensions must replace install.rdf file with a WebExtensions style manifest.json file, which includes the key "legacy" set to true. See Lightning as an example:
https://hg.mozilla.org/comm-central/rev/e81f4b59a00a7d3e18d50fd3851ecbd47762a186#l2.5 (Note: In this changeset the @variables@ are build variables, add-ons need to use fixed strings).

The changeset has this:

{
+ "manifest_version": 2,
+ "name": "Lightning",
+ "description": "Integrated Calendaring & Scheduling for your Email client",
+ "version": "@LIGHTNING_VERSION@",
+ "author": "Mozilla Calendar Project",
+ "homepage_url": "https://www.mozilla.org/projects/calendar/",
+ "legacy": true,
+ "applications": {
+ "gecko": {
+ "id": "@XPI_EM_ID@",
+ "strict_min_version": "@THUNDERBIRD_VERSION@"
+ }
+ },
+ "icons": {
+ "32": "chrome/skin/linux/calendar/cal-icon32.png"
+ }
+}

So where is the problem? I have this in one of my manifests:

{
"manifest_version": 2,
"name": "ThunderHTMLedit",
"description": "xxx",
"version": "2.0.0",
"author": "Jorg K",
"legacy": true,
"applications": {
"gecko": {
"id": "jorgk@thunderHTMLedit",
"strict_min_version": "64"
}
},
"icons": {
"32": "chrome://thunderHTMLedit/skin/html-icon.png"
}
}

Does that not work?

Jörg.