Aug 24, 2012 
- New metadata,
@grantlines you should have. ( , , )
- The toolbar button is colorful (in the enabled state) on Mac OS X. ( )
- The metadata
@unwraphas been removed, as being unwrapped is now the default. The wrapper will still be applied to scripts that have a "return" statement outside of any function, but this may be removed in the future, so make sure your scripts (and requires) don't do this; authors may manually add an anonymous function wrapper around the script for the exact same behavior. ( , )
- Scripts that @run-at document-start have a valid document object to modify, E.G. for adding <style> tags; but still before any part of the document is loaded. ( )
GM_xmlhttpRequest()accepts a timeout option. ( )
GM_getResourceURL()works with a special protocol handler. (This is more efficient/faster than the data: URI encoding used previously.) For example, specify images and styles with URLs to your
- The standard Firefox web developer console works for
console.log()et al. ( )
- Automatic updates work correctly with scripts installed from userscripts.org (but still note the require secure updates setting). ( )
- Require at least Firefox 14.0 (no more Firefox 3 compatibility). ( , )
- Error reporting is much more consistent and obvious than in the past. ( , )
alert()workaround (see <a href="http://bugzil.la/647727">http://bugzil.la/647727}}) is not applied for Firefox versions that do not exhibit this bug. ( , )
- When downloading a script not encoded in UTF-8, display an error message to the user (rather than just failing). ( )
- The "show script" button in the install dialog is disabled until the download of the script file is complete. ( )
- Scripts with missing or broken "==UserScript==" metadata will work. ( )
May 14, 2012 
- When the toolbar is in text-only mode, the "Greasemonkey" label on the toolbar button will be striked-out when Greasemonkey is disabled. ( )
- When selecting a script editor, the previous choice will be remembered and displayed. ( )
- A change in 0.9.19 broke
setTimeout()for a variety of cases, that has been reverted. ( , , )
- Scripts with long names and/or file names could fail to install in Windows. ( )
April 23, 2012 
- Restored the "script installed successfully" toast notification. ( )
- Scripts download more incrementally; the install dialog should appear as soon as the script metadata has been downloaded, not after the entire script is downloaded. ( )
- Specifying a script editor in a non-ASCII folder will work (Firefox 4+ only). ( )
- Scripts installed while the Add-Ons Manager is open will show their icon. ( )
Feb 28, 2012 
- Automatic update checking can be enabled, without automatically installing updates. ( )
- Script updating is enabled by default. Please read the blog post describing this new feature. ( , , )
- Add-on Manager shows correct data when re-installing (e.g. to update) a script. ( )
- Re-installed scripts are put into the same directory as the original. ( )
- The matches property of GM_info is now a list of (pattern) strings. ( )
Feb 11, 2012 
- Error: "aForced is not defined". ( )
February 10, 2012 
- Expose information (including Greasemonkey version) to user scripts via GM_info. ( ; also see )
- Track the install time of scripts. (This is designed to better support automatic updates for scripts ... still coming soon.) ( )
- Editing script from the "New User Script" feature, to change any remote dependency (@icon, @require, @resource), could the script to malfunction. ( )
- Enabling/disabling scripts from the status bar menu (Firefox 3 only). ( )
- Incompatibility with GreaseFire. ( )
- Failures during "Check for Updates" from the Add-on manager. ( )
January 25, 2012 
- Editing an installed script to change any remote dependency (@icon, @require, @resource) could cause one or many scripts to be deleted. ( , )
- Toggling the enabled state of a script via the main (Tools > Greasemonkey) menu failed on Mac. ( )
- Installing a script from local disk failed in 0.9.14. ( )
January 20, 2012 
- For new script installs, and installed scripts' updates (still not enabled by default) there is a progress meter for the download. ( )
- Revert the changes to GM_xmlhttpRequest() in 0.9.13 (which were supposed to have no effect, but created a subtle bug). ( )
- Guarantee that we do not create a specific kind of memory leak. ( )
November 3, 2011 
- Script updates install automatically. ( )
- In 0.9.12 we added update checking. In 0.9.13 updates install automatically, but there's still some discussion over how to handle this best ( ), so checking is still not enabled by default. We hope to figure this out by the 0.9.14 release. Some other update related work was done, mostly to make Firefox 3 work better. ( , , )
- Provide an Options item in the Monkey Menu. ( )
- Add a Cancel button to the Options window. ( )
- GM_getResourceText() was broken. ( )
- You can properly select an application (bundle) for the editor on Mac OS X. ( )
- Fix GM_openInTab for Firefox 3. ( )
- Fix when pages reassign the location during page load. ( )
September 29, 2011 
- Script update checking (limited!). ( )
- Shared window object. ( )
- Right-clicking a script in the Monkey Menu works, even when no editor is configured. ( )
- Fix launching the editor. ( )
- Scripts with @match could break loading all other scripts. ( )
- When browsing local files, menu commands for all scripts (on all tabs) no longer display. ( )
- Fix GM_openInTab(). ( )
September 6, 2011 
- Apply a workaround for Tab Mix Plus' brokenness. ( )
August 22, 2011 
- You will be prompted to pick a new editor if the existing setting is an invalid path. ( )
- Changing views within the Add-ons Manager could cause the user script sort order to be wrong. ( )
- When a script causes an unhandled error, the display in the Error Console will be a bit easier to read. ( )
- When Growl is not installed, Greasemonkey's notifications are less obtrusive. ( )
- A range of internal code clean ups. ( , , , , )
August 12, 2011 
Note: never approved by Mozilla.
- Pressing 'back' could rarely cause a script to run twice on the same page. ( )
- Extended characters would get corrupted in new scripts. ( , )
- A full disk could cause loss of data (especially config.xml). ( )
- (Affecting 0.9.8) Scripts would not install (all scripts in Firefox 3: , always for certain scripts: )
- GM_xmlhttpRequest() provides progress events. ( )
- GM_xmlhttpRequset() provides a synchronous mode. ( )
- By popular demand: a UI for editing @includes and @excludes. ( )
August 1, 2011 
- User scripts cannot run in any about: pages besides about:blank. (Security enhancement; )
- Global, user specified, @exclude rules. ( )
- Support for @run-at metadata imperative, which supports value document-start, as well as the standard document-end behavior. ( )
- New @match metadata imperative, as implemented by Google Chrome. Thanks to Scriptish for original implementation. ( )
- Support for full regular expression syntax in Include and exclude rules. ( )
July 14, 2011 
- Scripts with broken @icons will install, just with no icon. ( )
- Editing the @icon line of a script will take effect immediately. ( )
- Remote resources (@require, @resource, @icon) that redirect to other URLs will now work. ( )
- Compatibility with Firefox 6 and 7. ( )
- GM_openInTab() will respect the
insertRelatedAfterCurrentpreference. ( )
June 24, 2011 
- GM_openInTab() fails in Firefox 3. ( )
- Firefox 5: Error in Add-ons Manager. ( )
- Add "get user scripts" link to the Add-ons Manager. ( )
- Pass site cookies when downloading scripts. ( )
May 26, 2011 
- Installing and uninstalling the same script many times does not work properly. ( )
- GM_xmlhttpRequest() does not work in Firefox 5 betas. ( )
- (Introduced in 0.9.4:) Cannot enable nor disable scripts. ( )
- Installing the first user script while the user scripts pane of the add-ons manager is open leaves the "no user scripts" warning. ( )
- The installation dialog shows the script version, if provided with @version. ( )
Note: Not publicly released due to bugs.
May 24, 2011 
- The GM_openInTab() API again returns a handle to the window object. ( )
- Using alert() will not break setTimeout() nor GM_xmlhttpRequest(). (
Note: we currently only have a work-around in place, watch mozilla bug 647727 for a real fix. )
- When re-ordering execution of scripts: clicking the first/last item disables sooner/later items, and picking any of these will switch to Execution Order sort (if it is not already selected).
- Removed the detail view for user scripts, which did not contain any more information than the list view.
April 28, 2011 
- Error message logged ("Redeclaration of const document")/high CPU usage when closing the sidebar. ( , )
- Navigating to a .user.js inside a frame works like anywhere else. ( )
- The list of user scripts in the Add-ons Manager would sometimes forget its sort order. ( )
- Compatibility enhancement with AutoPager (broken in 0.9.2). ( )
- Passing a non-function to GM_registerMenuCommand()'s commandFunc broke the entire menu, and items showed up in the wrong order (both broken in 0.9.2). ( , )
- Passing the Referer header works, for GM_xmlhttpRequest(). ( )
- Accessibility: The sort buttons in the Add-ons Manager work with keyboard input (space/enter). ( )
April 5, 2011 
- Failure on OSX when Growl is installed, but not running. ( )
- Incorrect display of Greasemonkey icon in Add-ons window (Firefox 3.6, OS X). ( , )
- Provide a sort bar, to control display order of the scripts in the Add-ons manager, for Firefox 4. ( )
- Remove "accelerator" keys from GM_registerMenuCommand(). () ,
- Work around incompatibility with Personas Plus extension. ( )
- Provide a toolbar button, and remove the status bar icon for Firefox 4. ( )
- When re-installing a script (e.g. for an update), keep it in the same execution order. ( )
- Keep the add-ons manager view up to date when changing (installing/enabling/disabling/etc) user scripts. ( )
January 24, 2011 
- Fix user script sandbox wrapping. This deals with lots of problems like
eval(). ( , also , , , )
- Fixed rare bug when installing scripts. ( )
- Fixed errors when Growl is not installed on Mac OS X. ( )
- Fixed problems with relative @require imperatives. ( )
- Allow sorting by descending (as well as ascending) execution order. ( )
January 18, 2011 
- Compatibility with Firefox 4! Firefox 4 support is still preliminary. Everything probably works, but not everything works really well. The backlog of bugs for the next release is primarily focused on this.
- Complete integration with the standard Firefox Add-ons dialog, treating User Scripts as just another kind of browser add-on. (See the reference link above for screenshots.)
- A global options dialog, where the script editor can always be selected. ( , )
- Live in-place editing for the entire script, including metadata (
@exclude, etc.). ( , , )
- Web pages that end in .user.js are loaded as normal, instead of being installed as a user script. ( )
Bug fixes / minor enhancements:
- All Greasemonkey windows respond to standard close window keyboard shortcuts. ( )
- Support for @icon metadata imperative, displayed in the new add-ons manager integration. ( )
- Support user and password for
GM_xmlhttpRequest(). ( )
- Support @version metadata imperative. ( )
- Suppress spurious Error: not well-formed (// ==UserScript==) error messages. ( )
- The "install" menu item is removed. ( )
April 8, 2010 
- Add a hidden preference to allow greasing the unmht: scheme. ( )
- Allow relative URLs to be used for GM_xmlhttpRequest(), just like standard XMLHttpRequest. ( )
- Performance enhancements and code improvements to internal logic behind @include and @exclude rules. ( )
- Added translations: ca-ES, cs, fr, nl, sr-RS, vi.
- GM_xmlhttpRequest() can fail when Object.prototype has been modified. ( )
- Two warnings upon making new script via "New User Script". ( )
- Installing scripts from the hard drive (instead of via the web) can fail. ( )
- Fix a flaw that could allow websites to prevent Greasemonkey from running. ( )
- Error "this.menuCommanders is undefined" bug when closing a browser window. ( )
- Error "ScriptDownloader is not defined" when performing view source on a user script. ( )
February 11, 2010 
- Add an abort() method for GM_xmlhttpRequest. ( )
- Increase compatibility with bleeding-edge Firefox versions. ( )
- Display a "welcome" page to new users when they install. ( )
- Fix hooking into the console object for Firebug 1.5.
December 8, 2009 
- Properly specify the .finalUrl for GM_xmlhttpRequest results. ( )
September 26, 2009 
- Do not inject scripts into file: and about: URLs by default, for security reasons. ( )
- The GM_openInTab() function respects the background loading tab behavior from Firefox preferences. ( )
- Specify label/control associations in "New Script" dialog, for accessibility. ( )
- Minor code clean ups and improvements. ( , )
- Remove "forced" upgrade code. ( )
- Remove extra spacing around the status bar icon. ( )
- When adding include/exclude rules, include the port number in the default suggestion. ( )
- Reduce noise logged to the console when interacting with Firebug. ( )
- Apply security checks to GM_listValues() and GM_deleteValue(). ( )
- Fix missing localized strings in various locales. ( )
- Grease pages loaded into the sidebar. ( )
February 18th, 2009 
- Added translations: ar-SA, bn-IN, hu-HU, id-ID, ro-RO, sr-RS, vi-VN.
- Fix for ticket #111 (anomalous separators in the monkey menu).
- Added GM_deleteValue and GM_listValues APIs (#38).
- Restore the anonymous function wrapper around scripts, and thus the same behavior as versions prior to 0.8 (by default, removable with the @unwrap metadata imperative, #108).
- Improved interaction with the Firebug console (#122, #204).
June 12th, 2008 
- New metadata: @resource, @require.
- New API functions: GM_getResourceURL, GM_getResourceText
- New property of GM_xmlhttpRequest return: finalUrl
- Internal code improvements
- New graphics by Pak-Kei Mak, icons in the Add Ons dialog and Status Bar
Jan 21st, 2008 
- Security release where GM_xmlhttpRequest, GM_getValue and GM_setValue were hardened against a privilege escalation attack targeting specific user scripts accessing anything through unsafeWindow, thus gaining content code unrestricted access to those methods (thanks Anthony Lieuallen).
This change breaks backwards compatibility for scripts granting page code direct or limited access to either method via function references on unsafeWindow; see 0.7.20080121.0 compatibility for available workarounds.
May 24th, 2007 
- Fixed the bug where you can't install scripts if you have never disabled Greasemonkey.
- Fixed the bug where drag and drop in the manage dialog only works once per view.
- Fixed the bug where removing a script in the manage dialog also removes the last script.
May 9th, 2007 
- You can now reorder the scripts in the manage dialog with drag drop or the arrow keys.
- You can now use Firebug's console object to debug Greasemonkey if you have Firebug installed.
- Fix bug where install dialog would pop up when Greasemonkey is disabled.
- Make Greasemonkey enable/disable keyboard accessible. #9
March 17th, 2007 
- Rewrite of 'New Script...' UI. It now pops up a nice UI to get the script details and then generates and opens a script which is already installed that you can edit in one step. This is a huge improvement in the usability of this feature. Thanks to Anthony Lieuallen for the implementation.
- Improvements to error reporting. Most types of errors in user scripts now give the correct line number in the error message. You can also click on the filename in Firebug to view the script, as with other types of errors in Firefox. Anthony is also responsible for this improvement.
- Added support for overrideMimeType to GM_xmlhttpRequest. Thanks to Lior Zur for the patch. To use, add overrideMimeType: "yourmimetypehere" to the object you pass to GM_xmlhttpRequest.
- New translations for Finnish, Japanese, and Russian. The Greasemonkey UI looks particularly cool in Japanese. Thanks to Tommi Rautava, Hisateru Tanaka, and Александр Соколов for their contributions.
February 7th, 2007 
- Fixed the manage dialog so that it doesn't bounce around when you select different user scripts (thanks Anthony Lieuallen)
- Added Basque translation (thanks 3ARRANO)
- Updated German translation (thanks Matthias Bauer)
- Middle-click on monkey icon now opens manage dialog, right-click on scripts in monkey menu opens them in an editor (thanks LouCypher and pile0nades)
October 16th, 2006 
- Spiffy new installation dialog which more closely resembles the extension installation dialog, and presents more details in a user-friendly way.
- Spanish language support.
July 28th, 2006 
Multiple versions released in separate places; largely to the Greasemonkey mailing list. Introduced:
- Compatibility with Firefox 2.0.
- Foreign language support for Czech, Dutch, and German.
September 12th, 2005 
- Compatibility with Firefox 1.5.
- The Monkey Menu, a context menu for the status bar item added in 0.3 beta.
- Simplified script installation dialogs.
September 9th-ish, 2005
"The Lost Version"
Prerelease showing of:
- GM_addStyle (From release 0.6.1.4... I probably have this archived somewhere LOL)
- The Monkey Menu, a context menu for the status bar item added in 0.3 beta.
- Simplified script installation dialogs.
Some sort of mad scramble occurred on this week when Firefox 1.5b1 was released and this version was lost but not forgotten.
September 1st, 2005 
Released to the Greasemonkey mailing list, fixed bugs in the automatic migration system for the changes between the 0.3 and 0.5 branches.
- Security fix wherein a user script could elevate itself to chrome privileges.
- User can select the editor to use for "Edit" in manage, and "New User Script".
- Unicode support for non-english characters.
The first release containing security fixes over 0.3.5 intended for public consumption. "Greasemonkey 0.5 is actually the combination of a massive security audit and all the new code which was planned for 0.4."
- GM_openInTab, unsafeWindow
- Enhancements to GM_registerMenuCommand: keyboard shortcuts, stability.
- Memory leak fixes.
- "New User Script" menu item, shortcut to a new blank template for user script authors.
- Restricted GM_xmlhttpRequest from accessing local
The 0.4 branch was an internal development version, where experimentation for security fixes happened.
Security flaw release. Contained no fixes, rather removed all vulnerable features. Intended for (limited) continued use while fixes were being performed.
May 12th, 2005 
- ".tld" support in @include/@exclude, allowing things like
@include http://www.example.tld/for all international permutations.
- Log level option for GM_log
- Minor enhancements and bugfixes.
Primarily bugfix release.
- Edit button in the manage dialog.
- Monkey icon in the status bar, click to enable/disable.
- GM_getValue, GM_setValue, GM_log
Also, the default user scripts that were bundled with Greasemonkey by default until this point were removed.