Releasing new versions
This document describes how to release a new version of Some Sass.
Conventional Commits
This repository uses nx to manage release
- The language service package is published to
npm
. - The Visual Studio Code extension is published to:
nx reads conventional commits to determine what the new versions should be, and to generate changelogs. Which version is released depends on how you write the commit message.
Commit message | Release type |
---|---|
docs: add guide for configuring sublime | No new release. |
fix: update css-languageservice | Patch. Bugfix release, updates for runtime dependencies. |
feat: add support for show keyword in forward | Minor. New feature release. |
refactor: remove reduntant options for latest language version BREAKING CHANGE: The scanImportedFiles option has been removed. | Major. Breaking release, like removing an option or changing engines version. (Note that the BREAKING CHANGE: token must be in the footer of the commit) |
Release process
To start a new release:
- Get the latest
main
branch withgit checkout main && git pull
. - Run
npx nx release --skip-publish
. - Push the changes and tags with
git push && git push --tags
.
GitHub Actions is configured to do the actual publishing when there are new tags.
Manual fallback
For npm
packages:
npm version [major|minor|patch]
npm publish
For the VS Code extension:
vsce package
Then publish manually via Visual Studio Marketplace, Open VSX and GitHub Releases (attach the .vsix
file to the release).
References: