GMCommonAPI.js

GM Common API (GMC) is a simple library designed for easily adding Greasemonkey 4 compatibilty to existing userscripts

This script should not be not be installed directly. It is a library for other scripts to include with the meta directive // @require https://update.greasyfork.org/scripts/34527/751210/GMCommonAPIjs.js

Author
Stig Nygaard
Version
0.0.1.20171216143348
Created
2017-10-25
Updated
2017-12-16
License
N/A

GM Common API (GMC) is a simple library designed for easily adding Greasemonkey 4 compatibility to existing userscripts.

With the introduction of the Greasemonkey 4 WebExtension, the classic GM_* "synchronous" API is replaced with a new GM.* "asynchronous API". The features of the new API in Greasemonkey 4 (GM4) are very similar to the classic API, but the functions are asynchronous. This means you might need to (learn asynchronous programming and) do some refactoring of your existing userscripts to make use of the new API in GM4.

As an alternative to refactoring your code, GMC offers a "synchronous subset" of the GM APIs, which works with scripts running in both the new GM4, in the older versions of Greasemonkey, and in other userscript managers like Tampermonkey and Violentmonkey. Where APIs are supported in GMC, no refactoring of your script is needed; Often all you need to do, is to add a @require statements in meta-block of your userscript, and replace the use of GM_* methods with equivalent GMC.* methods in your code.

For more info, see the GitHub repository or the source code.

/Stig