: New feature! MozillaWiki is now mobile-friendly. Visit from a mobile device to see new mobile theme + try editing. Release details.

Labs/Jetpack/Release Notes/1.3

From MozillaWiki
Jump to: navigation, search


About

Add-on SDK is a software development kit that provides a set of tools and APIs for building, testing, and packaging Firefox add-ons.

The 1.3 release is mostly a stabilization release, and does not include many major new features.

Installation

Obtain the SDK in your favorite compression format:

Then unpack the archive, open the addon-sdk-1.3/README.txt file, and follow its instructions.

Major Changes Since 1.2.1

Major Bug fixes

Bug 667664

Panel content scripts don't work after reloading or changing location

Bug 571843

Activate fails to find 64-bit python on 64-bit windows environments

Bug 581982

selection.text returns null instead of the selected text when the selection is in a text box or text area

New stuff

Python 2.7 support

We've started explicitly supporting Python 2.7.

Documentation updates

We've:

  • added a guide to help developers decide whether to migrate XUL-based add-ons to the SDK, and describe some techniques to help them achieve this.
  • landed API documentation for a couple of useful low-level APIs:

Known Issues

See the complete list of known issues and requests for enhancement. We've listed some of the issues you're most likely to encounter separately below.

Bug 667817

If you change location in a content script using: window.location="http://mozilla.org"; Nothing happens, instead, `location` attribute is just replaced by a string.

Bug 684047

If a page-mod matches a page, its content scripts get attached to every iframe in the page, and this can have a bad effect on performance if the script is large and the page contains many iframes.

Although this behaviour is intentional, there should be an option to make content scripts only run on the topmost frame of a page.

Bug 701760

When an html select element (e.g. a drop-down menu) in web content inside a panel has focus, clicking *outside* the panel does not close the panel.

Bug 700733

If you create a context menu item for the selection type, and right-click a form button, the context menu does not appear and an error is logged. It's not yet clear whether this is specific to form buttons or not.

Bug 689215

The tab array is not reordered to match the on-screen order of the tabs after a tab move event takes place.

Bug 697215

Cannot scroll panel on OS X.

Bug 638742

If your add-on has a long name, and the path to your Firefox profile is long enough, then the XPI installation process will try to create an intermediate file with a name longer than the maximum supported length on some Windows systems. If that happens you may get an error like:

"<your add-on> could not be installed because Firefox cannot modify the needed file"

The main fix for this will be bug 638742, which is to stop unpacking the XPI completely. When that is done, none of the pathnames will matter: they'll all stay safely trapped inside the zipfile. At that point, the name of the XPI file and the length of the profile directory will be the only issues.

Until then, the best advice is to use shorter package names or install Firefox higher up the directory tree so the profile directory's absolute path is shorter.

Bug 663480

The SDK automatically includes a dependency on the packages supplied with the SDK such as addon-kit and api-utils. This means that you can require() modules in the SDK such as widget without having to specify addon-kit as a dependency.

You can also use modules from other packages, such as the packages listed here, by including a reference to the package in your package.json file.

However, if you do add any dependencies to package.json, then the SDK will no longer add addon-kit or api-utils automatically, and you must add them manually if you want to include their modules.

Bug 663048

The SDK will give an error if your package name contains spaces or Unicode characters.

Bug 627432

If your add-on stores data using the simple-storage API, the data is not cleaned up when your add-on is uninstalled.

Bug 656037

Some core JavaScript functions, such as btoa(), are not available to add-on code.

Bug 571049

If an add-on is uninstalled while it's disabled, it's not notified of uninstall. If the add-on needs to do some special cleanup on uninstall, like removing persistent storage such as a file, this won't be possible if it has been disabled.

Bug 574563

On Windows, bin\activate sometimes gives the following error:

"Error:  The system was unable to find the specified registry key or value"

This does not seem to affect the functioning of the SDK.

Bug 660862

By default, widgets are placed on the add-on bar, and given a height to match the height of that bar. If the user moves the widget to a different toolbar, and that toolbar has a different height, the widget's height is not updated accordingly.

Bug 660857

A widget containing HTML content gets no icon in the Customize Toolbar Window.

Bug 660860

When a user removes a widget from the toolbar its detach event does not get sent.

Bug 661884

Selection events for a page are not sent if the page did not fully load (for example, because the user stopped the page loading).

Bug 556562

If you have copy of mozrunner installed on your system, the cfx test command may not work correctly.

There is a workaround for this.

Feedback and Bug Reports

We'd love to hear any feedback you have regarding this release! You can post it to the discussion group or report a bug.