Readers/Web/Team/Releasing libraries
On github
[edit]Register on npm with 2FA
[edit]Wikimedia members are listed on https://www.npmjs.com/settings/wikimedia/members and 2FA is required for publishing. See wikitech:Npm registry for info on getting access.
Prepare the versioning and make a changelog
[edit]Create a new pull request which modifies the package.json version file number (see https://semver.org/) and run:
npm version patch --git-tag-version=false
… for trivial changes, or for bigger releases:
npm version minor --git-tag-version=false
… or if it contains breaking changes then:
npm version major --git-tag-version=false
Commit the modifications to package.json and package-lock.json
Generate change log if CHANGELOG.md exists
[edit]A changelog (example) can be maintained by modifying CHANGELOG.md with the result of
git log `git describe --tags --abbrev=0` ..HEAD --oneline
Running tests
[edit]Always check tests are passing before releasing. If using Github pull requests with CI this should have been done automatically.
Create pull request
[edit]Create a pull request get someone to approve it, and merge.
Releasing the code
[edit]Once the code is merged
git fetch
git checkout origin/master
npm publish
you should be prompted for a 2FA token