maildev@lists.thunderbird.net

Thunderbird email developers

View all threads

New TB extensions

BB
Ben Bucksch
Fri, Sep 1, 2017 8:06 PM

Example case:

One of the extensions I depend on breaks in recent TB nightly. I am
considering to re-write it.

But what extension technology would I write it in?

Some parts need access to the TB UI (adding a button to AB card UI, and
reading part of its values), others are pure JS (server calls), and
there's a non-trivial preference UI, which I'd write in HTML.

For the first part, I need a XUL extension, but the other parts could be
written as webextension. So, one strategy would be to use a hybrid
extension with a webextension embedded in a XUL extension, as Firefox
devs suggests for migrating Firefox extensions.

aceman told me that Fallen worked on getting webextensions to work in
TB, but it's not enabled in TB trunk yet.

Question:

What is our strategy here? What are we telling extension developers that
want to write new extensions or rework existing ones?

This post is to start the discussion.

Here's my proposal:

Short-term: Make webextensions work in TB (let them be installed, have
their UI show up), so that parts that could be handled with the
webextensions API can be written with that.

Long-term: Extend webextensions APIs with APIs specific for mail.
(They should be high-level, so that they would continue to work even in
TB:NG. If you can implement the API in Nylas N1 without problem and it
works smoothly, then it's high-level enough.)

What is your proposal?

Ben

Example case: One of the extensions I depend on breaks in recent TB nightly. I am considering to re-write it. But what extension technology would I write it in? Some parts need access to the TB UI (adding a button to AB card UI, and reading part of its values), others are pure JS (server calls), and there's a non-trivial preference UI, which I'd write in HTML. For the first part, I need a XUL extension, but the other parts could be written as webextension. So, one strategy would be to use a hybrid extension with a webextension embedded in a XUL extension, as Firefox devs suggests for migrating Firefox extensions. aceman told me that Fallen worked on getting webextensions to work in TB, but it's not enabled in TB trunk yet. Question: What is our strategy here? What are we telling extension developers that want to write new extensions or rework existing ones? This post is to start the discussion. Here's my proposal: Short-term: Make webextensions work in TB (let them be installed, have their UI show up), so that parts that could be handled with the webextensions API can be written with that. Long-term: Extend webextensions APIs with APIs specific for mail. (They should be high-level, so that they would continue to work even in TB:NG. If you can implement the API in Nylas N1 without problem and it works smoothly, then it's high-level enough.) What is your proposal? Ben
JK
Jörg Knobloch
Fri, Sep 1, 2017 9:43 PM

On 01/09/2017 22:06, Ben Bucksch wrote:

Short-term: Make webextensions work in TB (let them be installed, have
their UI show up), so that parts that could be handled with the
webextensions API can be written with that.

That's the plan, but we don't have people to do it.

Another question: Why don't you just fix the add-on that broke in the
very short term?

Jörg.

On 01/09/2017 22:06, Ben Bucksch wrote: > Short-term: Make webextensions work in TB (let them be installed, have > their UI show up), so that parts that could be handled with the > webextensions API can be written with that. That's the plan, but we don't have people to do it. Another question: Why don't you just fix the add-on that broke in the very short term? Jörg.
BB
Ben Bucksch
Fri, Sep 1, 2017 9:48 PM

Jörg Knobloch wrote on 01.09.17 23:43:

Another question: Why don't you just fix the add-on that broke in the
very short term?

Sure, that's an option. Lacking a better option, that's probably what
I'll do.

But I never liked how it worked, and it needs new features that I miss.
I thought this would be a good moment to re-write it, in the new
extension model. But that doesn't exist yet. Thus, this thread :-)

Ben

Jörg Knobloch wrote on 01.09.17 23:43: > Another question: Why don't you just fix the add-on that broke in the > very short term? Sure, that's an option. Lacking a better option, that's probably what I'll do. But I never liked how it worked, and it needs new features that I miss. I thought this would be a good moment to re-write it, in the new extension model. But that doesn't exist yet. Thus, this thread :-) Ben
N
neandr
Fri, Sep 1, 2017 9:54 PM

Fully understand from your view, your day-to-day work (which I fully
respect with a big thanks).
But the idea the have a look into the future and to ask how to migrate
today is very much appropriated!

The point I'm missing -- for people not involved deeply -- can someone
give some pointers to the details/technology/etc to understand better
which way that future path is going to.

Please have in mind not all readers are that much experts as you are,
but are motivated to contribute or just make sure their investment in
the past can be carried over to that new time/technology.

Thanks
Günter

On 01.09.2017 23:43, Jörg Knobloch wrote:

On 01/09/2017 22:06, Ben Bucksch wrote:

Short-term: Make webextensions work in TB (let them be installed,
have their UI show up), so that parts that could be handled with the
webextensions API can be written with that.

That's the plan, but we don't have people to do it.

Another question: Why don't you just fix the add-on that broke in the
very short term?

Jörg.


Maildev mailing list
Maildev@lists.thunderbird.net
http://lists.thunderbird.net/mailman/listinfo/maildev_lists.thunderbird.net

Fully understand from your view, your day-to-day work (which I fully respect with a big thanks). But the idea the have a look into the future and to ask how to migrate today is very much appropriated! The point I'm missing -- for people not involved deeply -- can someone give some pointers to the details/technology/etc to understand better which way that future path is going to. Please have in mind not all readers are that much experts as you are, but are motivated to contribute or just make sure their investment in the past can be carried over to that new time/technology. Thanks Günter On 01.09.2017 23:43, Jörg Knobloch wrote: > On 01/09/2017 22:06, Ben Bucksch wrote: >> Short-term: Make webextensions work in TB (let them be installed, >> have their UI show up), so that parts that could be handled with the >> webextensions API can be written with that. > > That's the plan, but we don't have people to do it. > > Another question: Why don't you just fix the add-on that broke in the > very short term? > > Jörg. > > > _______________________________________________ > Maildev mailing list > Maildev@lists.thunderbird.net > http://lists.thunderbird.net/mailman/listinfo/maildev_lists.thunderbird.net >