module

Changelogs & Conflicts

Endorsements
3
Installs
8.88%
Comments
0
Latest version0.7.7
Minimum Core0.8.6
Compatible Core9
Last updated10 months ago
Created1 year ago
Authors
Languages English
日本語
Systems All systems
Project source Project URL

CHANGELOGS

Show changelogs of modules in a non intrusive way.

Why?

Module developers have no way of issuing changelogs or important warnings in a clean and streamlined way. This module adds a non intrusive way for users to get important informations.

How does it work?

You can chose the level of importance you want to see

image

With four options

image

Once you close the window you will not get notified again for the current version of the module

image

If you accidentaly closed a popup and want to check all your changelogs just click the show all changelogs button in Changelogs settings

image

All

Any changelog and warning will be shown

Major

Only updates with new features (and above) will be shown

Breaking

Only updates with breaking changes (and above) will be shown

Critical

Only for emergencies, this is for module developers to issue critical messages

Color Codes

Purple: Critical Red: Breaking Yellow: Major Blue: Minor

How to include changelogs in your module:

Including a changelog is very simple, just call the libChangelogs.register() in the libChangelogsReady hook. Since changelogs is registered on a custom hook you don't need to check if the module is active before you register your changelog

/**
 * @param {string} moduleId The package identifier, i.e. the 'id' field in your module/system/world's manifest.json
 * @param {string} html The html to be inserted into the changelog
 * @param {string} warnLevel The level of warning to be displayed.
 * 
 *   The possible types are:
 * 
 * - critical: 
 *         Only use for emergencies, something went wrong or the update requires immidiate action from the user. This warning level CANNOT be disable by the user
 * - breaking:
 *         A breaking change that requires action from the user but will not cause issues if left unattended (eg. a new feature that requires some manual configuration changes).
 * - major:
 *         One or more Major features have been added to the module, let the user know what they do or link to other resources.
 * - minor:
 *         Minor bugfixes or changes that won't impact the user experience with your module (this is the default option).
 * **/

    libChangelogs.register(moduleId, html, warnLevel="minor")
 

Example

Hooks.once('libChangelogsReady', function() {
    libChangelogs.register("yourmoduleid","THIS UPDATE BREAKS EVERYTHING","critical")
})
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x