This page contains the rough outline for the steps of making a new official release of noVNC.
Preparation
-
Check that the documentation is up to date:
README.md - General check
LICENSE.md - Any components added or removed that affect licenses?
API.md - Any changes in the public API?
EMBEDDING.md and LIBRARY.md - Any changes on how to deploy/integrate noVNC?
-
Temporarily edit package.json and update it to the new version. This makes sure we get the correct version number in the translation files.
-
Update the translation template:
You need to have run npm install beforehand to have the proper dependencies.
-
Restore package.json:
-
Update the .po files but do not commit these:
The reason we do not commit these is to avoid needless clutter in the history. They will soon be replaced with filled out versions anyway.
-
Send out a request for translations to the noVNC group with the .po files attached and using this template:
-
Reset the .po files in your working copy:
-
Update the Websockify source URL in snap/snapcraft.yaml to reference the latest release.
Beta
-
Update the version number in package.json to the format "X.Y.Z-beta", e.g. "1.1.0-beta".
-
Commit and tag the version change:
-
Push the changes to GitHub:
-
Fill out the GitHub release using this template, don't forget to check the "Pre-release" checkbox for the beta:
-
Use the same template and send an announcement to the noVNC group.
Release
Pretty much the same as the beta but without the beta marker on everything. There is one preceding step though:
-
Update the translations using the updated .po files gotten on the noVNC group:
-
Commit each translation individually, using the author and date from the respective .po file:
-
Update the noVNC.com web page with the new release of noVNC: