Generate new version CHANGELOG.md
file by running
$ npm run changelog
After changelog is generated, please review it and make sure it contains only
relevant information. Adhere to semver and bump the package.json
and package-lock.json
accordingly
to semver rules.
Edit README.md
file (API Documentation section),
VERSIONS.md file and add link to the version you're currently releasing.
Commit the above changes to git with following git message
$ git add -A
$ git commit -m "chore(release): cut the vX.Y.Z release"
$ git push origin master
Tag the release commit
$ git tag -a vX.Y.Z
$ git push --tags
Go to ramda-adjunct github repo and create the github release. Use a tag that you created in previous step as a release tag. For more information how to create github release, please refer to this page.
$ npm publish
Read this document to understand how to configure your npm to publish to Github Package Registry.
Temporarily add the following entry into the package.json
file. This modifications will set tell npm that the primary
registry is Github Package Registry.
"publishConfig": {
"registry": "https://npm.pkg.github.com/"
}
Github Package Registry only supports scoped packages. We need to change the name of the library from:
"name": "ramda-adjunct",
to
"name": "@char0n/ramda-adjunct",
Now publish to GitHub Package Registry:
$ npm publish
Go to the current version github package and paste the newly generated section from CHANGELOG.md file into the description of the package.
Bump the package.json
and package-lock.json
version by incrementing MAJOR, MINOR or PATCH part of the semver version.
$ git add package.json
$ git add package-lock.json
$ git commit -m "chore: bump version to vX.Y.Z"
$ git push origin master
Go to ramda-adjunct github repo and switch to
gh-pages branch. Find index.html
and edit it. Replace all references of previous version
of ramda-adjunct with the currently released one. In commit message use suffix [ci skip]
for GitHub Actions
to skip the build triggered by this change.
Note
This is current manual release process. We are already working on fully automated release process. But until that, please strictly adhere to this steps. It is essential that they are executed in the right order.