To reduce the chances of publishing bugs, test your package before publishing it to the npm registry. Run npm install with the full path to your package directory. You can get this path with pwd
in your terminal.
npm install <local path to this repo>
The release of the package can be done entirely on GitHub.
For a release you want to change the version within package.json and create a tag.
- In GitHub at the top, Go to the
Actions
tab. - In the left sidebar, press the Run the GitHub Action named
Bump NPM version
action. - You'll see an overview of previous ran actions. On the top right press the button
Run workflow
.
You'll get a prompt to enter a version type. Choose from:
- 'major' version when you make incompatible API changes
- 'minor' version when you add functionality in a backwards compatible manner
- 'patch' version when you make backwards compatible bug fixes
(See https://semver.org/ for more information about versioning)
The action will bump te version, create a tag and push this to the main branch. When the action is done you can see a commit from leukeleu-deployer
in the package-json. And that there's a tag with the new version number added to the tags.
Now we created a new tag we can continue to make a release.
- Go to
Releases
in the right sidebar on GitHub. - Press the
Draft a new release
button. - Press the
Choose a tag
selector and select the tag that was just generated by thenpm-version
GitHub Action. - Press
Generate release notes
. - Review the generated notes and edit wherever needed. We want to make the changes easy to understand for the maintainers of projects this package is used in.
- When satisfied with the notes, you can publish the release. Press
Publish release
.
The release is now published on GitHub and you can see your new version in the right sidebar as latest.
The release will also trigger a GitHub Action that releases the package to NPM. Only thing you have to do is check whether the Action succeeded and the package is correctly published to https://www.npmjs.com/package/@leukeleu/stylelint-config.