Add-ons Update – Week of 2015/01/14

Jorge Villalobos

6

I post these updates every 3 weeks to inform add-on developers about the status of the review queues, add-on compatibility, and other happenings in the add-ons world.

The Review Queues

  • Most nominations for full review are taking less than 9 weeks to review.
  • 34 nominations in the queue awaiting review.
  • Most updates are being reviewed within 6 weeks.
  • 18 updates in the queue awaiting review.
  • Most preliminary reviews are being reviewed within 6 weeks.
  • 24 preliminary review submissions in the queue awaiting review.

Thanks to our volunteer reviewers, most new submissions are being handled within a day or so (the measurements above are based on the state of the queue and not the actual waiting times). We still have a large backlog of complex add-ons that require admin review, but we’re making progress in decreasing it.

If you’re an add-on developer and would like to see add-ons reviewed faster, please consider joining us. Add-on reviewers get invited to Mozilla events and earn cool gear with their work. Visit our wiki page for more information.

Firefox 36 Compatibility

The Firefox 36 compatibility blog post is up. The automatic AMO validation will be run in the coming weeks.

As always, we recommend that you test your add-ons on Beta and Firefox Developer Edition (formerly known as Aurora) to make sure that they continue to work correctly. End users can install the Add-on Compatibility Reporter to identify and report any add-ons that aren’t working anymore.

Electrolysis

Electrolysis, also known as e10s, is the next major compatibility change coming to Firefox. In a nutshell, Firefox will run on multiple processes now, running each content tab in a different one. This should improve responsiveness and overall stability, but it also means many add-ons will need to be updated to support this.

We will be talking more about these changes in this blog in the near future. For now we recommend you start looking at the available documentation.

Add-on Compatibility for Firefox 36

Jorge Villalobos

8

Firefox 36 will be released on February 24th. Here’s the list of changes that went into this version that can affect add-on compatibility. There is more information available in Firefox 36 for Developers, so you should also give it a look.

General

XPCOM

 Wrappers

There are a number of wrappers that are applied whenever chrome JS objects interact with content JS objects. They are meant to protect privileged code from malicious or otherwise misbehaving content code. The following bugs removed some features in wrappers that could lead to unexpected problems in your chrome/content code. However, you should keep in mind that Multiprocess Firefox is coming, and that means you should be changing your code anyway (some wrappers are still involved, but they should be rare).

Please let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 36, I’d like to know.

The automatic compatibility validation and upgrade for add-ons on AMO will happen within a week or two, so keep an eye on your email if you have an add-on listed on our site with its compatibility set to Firefox 35.

Jetpack in 2014

Jeff Griffiths

2

It has been a while since there has been a Jetpack-related post on this blog; 2014 has been a pretty busy year with several major Jetpack-related milestones completed in the last year or so and we wanted to post a summary of everything we’ve shipped this year.

Moving the SDK docs to MDN

The MDN migration was actually started late in 2013 but it was an important move so I wanted to call it out. For a long time the SDK docs were maintained in Github as markdown files and then hosted on addons.mozilla.org. This system had some downsides that moving to MDN solved:

  1. we could not update the docs easily
  2. the path to contributing to the docs was a long and winding road: submit a pull request to Github, then wait for the next Firefox release for the static docs to be updated.

A little over a year ago Will Bamberg, Erik Vold and myself spent an entire day importing the bulk of the existing docs into MDN, with Will doing the lion’s share of the work and cleanup. Since then we’ve been able to update the SDK’s documentation easily, quickly and without having to bug Mozilla IT folks. We’ve gotten documentation contribution from the community as well – the SDK landing page alone has eleven contributors.

Australis UI

Firefox 29 shipped last April with an all-new visual design, and along with it came that single largest addition of new apis to the Add-on SDK. Working with Firefox design guru Stephen Shorlander, the Jetpack team created modern, sensible, easy to use apis for toolbar buttons, toolbars and sidebars. Thanks in particular to Matteo Feretti, Erik Vold and Irakli Gozalishvili for their hard work.

Add-on Debugger

The add-on debugger started out life as a project by Jetpack intern Mike Hordecki (presentation here) and eventually shipped in Firefox 31. Thanks to Mike and also additional help from Jordan Santell, Eddy Bruel, Dave Townsend amd Panos Astithas. The Add-on Debugger greatly simplifies Javascript debugging for anyone developing restartless add-ons whether they use the Add-on SDK or not, providing the same great experience as the regular devtools debugger.

Multiprocess ( ‘e10s’ ) support

In 2014 we were very fortunate to have Tomislav Jovanovic’s Google Summer of Code project approved. Tomislav ( aka ‘zombie’ ) did an amazing job of coordinating between the Jetpack and e10s teams to fix, well, basically all of our issues with this final multiprocess project. We could not have done it without him, I suspect.

JPM & ‘Native Jetpacks’

Or, ‘cfx is dead – long live jpm and npm!’

When the Jetpack team gathered as part of a Developer Tools team offsite in Paris in late 2013, we decided to tackle two key related issues:

  1. Third party modules should be as easy to publish and consume as they are with Node.js, leveraging npm.
  2. packaging and testing add-ons should be much simpler, borrowing from the workflow currently enjoyed by either node.js developers, or chrome extension developers.

The Python-based cfx tool created during the second age of Jetpack has long been the source of problems. It is complex in part because it was created in a time prior to the inclusion of the SDK in Firefox, and this complexity made it difficult to make changes to. As well, a persistent series of issues were reported against cfx due to problematic windows support.

We decided to start over and create a new tool for packaging and testing extensions from the command-line, as well as a new and more streamlined way of reloading and iterating on extensions in Firefox.

JPM & AMO compatibility

If you intend to publish your add-on on AMO and submit it for full review, we do not recommend using jpm until Firefox 37 hits the release channel – this is due to important changes in how jpm-based add-ons bootstrap themselves. In the meantime, we are prioritizing a few issues that cause problems for developers using the cfx tool provided with SDK 1.17 and jpm at the same time.

The Devtools SDK

The Devtools SDK project has been a major focus of work over the last 6-9 months, with lots of great work from Irakli Gozalishvili, Luca Greco and Jan Odvarko. With a mind to encouraging the kind of generativity we originally saw in the Firebug extension ecosystem, we’ve built new tool pane and theming apis that already form the basis for powerful extensions like Firebug 3 and Ember Inspector. Upcoming enhancements include a simple and devtools-friendly context menu api and an api called ‘Object Printers’ that allows developers to provide custom object representations in the tools.

Perhaps one of the biggest pieces of this effort is something we call ‘Director’ that will allow devtools extensions to transparently connect to any web pages or apps that the Firefox Developer Tools can connect to. This is a key capability – any tool that the community creates to support 3rd party web frameworks will automatically be a first class citizen, and will enjoy the same remote debugging capabilities the built-in tools do.

Deprecations

In 2014 we decided to deprecate three top-level modules:

  1. Widget has long been the source of many terrible bugs, and we found that usage was mainly limited to use cases now covered by the button apis introduced in Firefox 29. We’re removing the api in this bug.
  2. Addon Page’s main utility was to create a page like about:addons that had no top toolbar. This went away when we switched to Australis and the toolbar was made a requirement for any tab. This was removed for Firefox 35 in bug 1072081
  3. Context Menu barely survived the e10s project, thanks to the heroic efforts of Dave Townsend. It is however deprecated and once the new ‘context menu 2′ api rides the train into Firefox release channel we will set a definite timeline for removal.

January Featured Add-ons

Amy Tsay

1

Happy new year! As you may already know, the community board selects a featured complete theme each quarter. Starting this month, they will also select a featured mobile add-on each quarter. We hope you give these a spin!

Pick of the Month: The Addon Bar (Restored)

by Geek in Training

The Addon Bar gives you a place to put all your add-on buttons without over-crowding the navigation bar.

“A must for power users and developers.”

Also Featured: OmniSidebar

by Quicksaver

Bring your bookmarks into view with just a gesture. Move the sidebar across the screen. Open a different sidebar by just clicking its title, and more. Keeps your sidebar simple and quick to access!

Featured Complete Theme: Walnut for Firefox

by alfredkayser

Walnut for a wooden look and feel. Walnut is a complete skin redesign so that all windows, widgets, panels, and many extensions have a wooden look and feel.

Featured Mobile Add-on: Ghostery

by José María Signanini, Brad McDermott

Protect your privacy. See who’s tracking your web browsing and block them with Ghostery.

Nominate your favorite add-ons

Featured add-ons are selected by a community board made up of add-on developers, users, and fans. Board members change every six months, so there’s always an opportunity to participate. Please follow this blog to find out when we are selecting a new board.

If you’d like to nominate an add-on for featuring, please send it to amo-featured@mozilla.org for the board’s consideration. We welcome you to submit your own add-on.

Add-ons Update – Week of 2014/12/24

Jorge Villalobos

4

I post these updates every 3 weeks to inform add-on developers about the status of the review queues, add-on compatibility, and other happenings in the add-ons world.

The Review Queues

  • Most nominations for full review are taking less than 9 weeks to review.
  • 42 nominations in the queue awaiting review.
  • Most updates are being reviewed within 6 weeks.
  • 33 updates in the queue awaiting review.
  • Most preliminary reviews are being reviewed within 6 weeks.
  • 63 preliminary review submissions in the queue awaiting review.

Thanks to our volunteer reviewers, most new submissions are being handled within a day or so (the measurements above are based on the state of the queue and not the actual waiting times). We still have a large backlog of complex add-ons that require admin review, but we’re making progress in decreasing it.

If you’re an add-on developer and would like to see add-ons reviewed faster, please consider joining us. Add-on reviewers get invited to Mozilla events and earn cool gear with their work. Visit our wiki page for more information.

Firefox 35 Compatibility

The Firefox 35 compatibility blog post is up. The automatic AMO validation was also run already.

As always, we recommend that you test your add-ons on Beta and Firefox Developer Edition (formerly known as Aurora) to make sure that they continue to work correctly. End users can install the Add-on Compatibility Reporter to identify and report any add-ons that aren’t working anymore.

Firefox 36 Compatibility

Coming up.

Electrolysis

Electrolysis, also known as e10s, is the next major compatibility change coming to Firefox. In a nutshell, Firefox will run on multiple processes now, running each content tab in a different one. This should improve responsiveness and overall stability, but it also means many add-ons will need to be updated to support this.

We will be talking more about these changes in this blog in the near future. For now we recommend you start looking at the available documentation.

Happy holidays to those who celebrate them :)

Add-on Compatibility for Firefox 35

Jorge Villalobos

9

Firefox 35 will be released on January 13th. Here’s the list of changes that went into this version that can affect add-on compatibility. There is more information available in Firefox 35 for Developers, so you should also give it a look.

General

New!

Please let me know in the comments if there’s anything missing or incorrect on these lists. If your add-on breaks on Firefox 35, I’d like to know.

The automatic compatibility validation and upgrade for add-ons on AMO will happen soon, so keep an eye on your email if you have an add-on listed on our site with its compatibility set to Firefox 34.

How we manage user review moderation

Jorge Villalobos

6

Anyone with an AMO account can leave a user review and rating for an add-on. User reviews are an invaluable part of AMO, helping users decide which add-ons are the best at what they do. However, as any open forum on the web, it needs some monitoring in order to keep the content relevant and useful. We have a set of writing policies and a moderation process for handling user reviews. A link to the policies is presented when you post a user review, but the moderation process may not be very clear, so I’ll explain it here.

We don’t actively monitor users review posted on AMO. Instead, we provide a way for users to request moderation for reviews that are in violation of the content guidelines. Anyone with an AMO account can do this, including the developer of the add-on for which the review was posted. You can find the moderation report link by clicking “See all user reviews” on any add-on listing page and looking at the bottom-right corner of a review. It’ll let you choose the reason for the report and add some information to it.

After a user review is reported, it goes to a moderation queue, where a member of our add-on review team will give it a look and decide if it should stay or be deleted. This is the same team that handles add-on code analysis (confusingly also called add-on reviews). It is mostly comprised of volunteers with a background  in add-on development.

Policy

We want reviews to be useful for add-on users, so our policy encourages user reviews that speak to the advertised features of the add-on. User reviews aren’t meant to start a conversation with the developer or other reviewers, nor are they meant to act as a bug reporting tool. Most add-on listings on the site include contact or support information to get in touch with the developer about these issues.

Deciding what is or isn’t useful is a very subjective call, so it is difficult to obtain results that are consistent, or satisfactory for all users. Some people will get annoyed if we delete a user review that is critical of an add-on, and proceed to write new reviews complaining about the deletion, which are then also deleted. It’s a sub-standard experience that we are aware of and want to fix.

Limitations

While user reviews and their moderation are an important part of AMO, they haven’t had much work done in many years (I should note this isn’t the only part of AMO that has this problem). We don’t have a good way to undelete reviews, or to communicate the reason behind a review deletion to its author.

We haven’t changed our review policies for a long time, and they need some work. Moderating reviews is a secondary task for our review team, and having a team composed of add-on developers probably introduces some bias against negative user reviews. We have been thinking about creating a new team in charge of user review moderation, ideally with less of a developer mindset. I think we’ll also need to relax our policies in order to encourage more diversity of opinions.

User reviews aren’t abundant, and we only show the last 3 in the add-on page. This means that an unwarranted negative review can linger for a long time, causing the developer to lose users. We need to implement a way to mark user reviews as useful or not so we can surface the most useful ones (a common feature found on sites like Amazon and the iTunes Store).

Unfortunately our main limitations are time and people, so it might take a while before we can change user reviews in a meaningful way. Separating the review team and changing the policies is something we can do relatively quickly, so I hope we will be in a better place early next year.

Add-ons Update – Week of 2014/12/05

Jorge Villalobos

3

I post these updates every 3 weeks to inform add-on developers about the status of the review queues, add-on compatibility, and other happenings in the add-ons world.

The Review Queues

  • Most nominations for full review are taking less than 9 weeks to review.
  • 185 nominations in the queue awaiting review.
  • Most updates are being reviewed within 5 weeks.
  • 101 updates in the queue awaiting review.
  • Most preliminary reviews are being reviewed within 5 weeks.
  • 159 preliminary review submissions in the queue awaiting review.

If you’re an add-on developer and would like to see add-ons reviewed faster, please consider joining us. Add-on reviewers get invited to Mozilla events and earn cool gear with their work. Visit our wiki page for more information.

Firefox 34 Compatibility

The Firefox 34 compatibility blog post is up. The automatic AMO validation was also run already. Note that there were also some changes in the search UI that could affect your add-on.

As always, we recommend that you test your add-ons on Beta and Firefox Developer Edition (formerly known as Aurora) to make sure that they continue to work correctly. End users can install the Add-on Compatibility Reporter to identify and report any add-ons that aren’t working anymore.

Firefox 35 Compatibility

Coming up.

Electrolysis

Electrolysis, also known as e10s, is the next major compatibility change coming to Firefox. In a nutshell, Firefox will run on multiple processes now, running each content tab in a different one. This should improve responsiveness and overall stability, but it also means many add-ons will need to be updated to support this.

We will be talking more about these changes in this blog in the near future. For now we recommend you start looking at the available documentation.

December Featured Add-ons

Amy Tsay

4

Pick of the Month: Location Bar Enhancer

by Girish Sharma

Modifies the Location Bar of Firefox into a breadcrumb display with rich and interactive features.

“I absolutely LOVE the page loading progress bar animation. It absolutely modernizes Firefox, especially when combines with Australis curved tabs in Firefox 29. Looks very slick (and very useful)!”

Also Featured

Amazon “Add to Wish List” Button by Amazon Wish List
Official Amazon Add-on. Add anything from any website to your Amazon Wish List!

Nominate your favorite add-ons

Featured add-ons are selected by a community board made up of add-on developers, users, and fans. Board members change every six months, so there’s always an opportunity to participate. Please follow this blog to find out when we are selecting a new board.

If you’d like to nominate an add-on for featuring, please send it to amo-featured@mozilla.org for the board’s consideration. We welcome you to submit your own add-on.

New search UI coming in Firefox 34

Jorge Villalobos

132

Update: it looks like this change will only be visible to a fraction of users initially, so please plan any changes to be backward-compatible.

The search UI was retooled and it will launch with Firefox 34 (at least in the US region). This landed late in the Firefox 34 beta cycle since it is related to our switch of default search provider in certain regions, which was announced very recently.

Unfortunately, this is bound to break some add-ons and themes. If your add-on overlays any content in the search UI or modifies its behavior, we strongly recommend that you test it on the latest beta (only the US English version seems to have this change for now). If you have any compatibility updates related to this issue in the review queues, please let us know on our IRC channel (#amo-editors) or the amo-editors mailing list.

Let us know in the comments if any of your add-ons break because of this.