Yarn version and yarn versions CLI commands
In this tutorial we will show you how to update a package's version, we will also show you how to display the version information for the currently installed yarn, Node.js and its dependencies.
yarn version
The yarn version command will update the package version.
Updating versions
When you run the yarn version command from the command line, it will update the version of your package.
For instance, if you start with this package.json:
{
"name": "sample-yarn-package",
"version": "1.0.1"
}
If you run the yarn version command:
yarn version
info Current version: 1.0.1
question New version: 1.0.2
info New version: 1.0.2
Done in 9.42s.
You will get this updated package.json:
{
"name": "sample-yarn-package",
"version": "1.0.2"
}
Git tags
When you run yarn version within a Git repository, an annotated Git tag will be created by default following the format vx.x.x.
The git tag that is created can be customized or disable this behavior when you use yarn config set.
If you want to change the prefix of the tag, you can use version-tag-prefix:
yarn config set version-tag-prefix "v"
or you can also turn signing git tags on or off using version-sign-git-tag:
yarn config set version-sign-git-tag false
You can also enable or disable the git tagging entirely by usingversion-git-tag:
yarn config set version-git-tag true
In the case where you want to stop git commit hooks from running, you will be able to disable them using version-commit-hooks:
yarn config set version-commit-hooks false
Version lifecycle methods
When you run the yarn version command, it will also run the usual lifecycle methods in the following order:
- yarn preversion
- yarn version
- yarn postversion
You will also get some handy environment variables, e.g npm_package_version will hold the version in the perversion script before the version change, and will hold the version in the postversion script after the version change.
This is very useful when you are using yarn with git to publish new tags. An example of what a package.json file could look like is shown below:
{
"name": "sample-yarn-package",
"version": "1.0.2",
"scripts": {
"test": "echo \"Running tests for version $npm_package_version...\"",
"preversion": "yarn test",
"postversion":
"git push --tags && yarn publish . --tag $npm_package_version && git push && echo \" version $npm_package_version was successfully released!\""
}
}
When you run yarn version, it will look something like this:
info Current version: 1.0.2 Running tests for version 1.0.2... Done in 0.10s. info New version: 2.0.0
To github.com:example-org/example-yarn-package.git
* [new tag] v2.0.0 -> v2.0.0
version 2.0.0 was successfully released! Done in 2.72s.
Once you are done with this, the remote repository will have to reflect the updated version and the package has to be published under the same version.
Commands
yarn version
This will create a new version using an interactive session to prompt you for a new version.
yarn version --new-version <version>
When you run this command, it will create a new version as specified by <version>
yarn version --major
yarn version --minor
yarn version --patch
This command will create a new version by incrementing the major, minor, or patch number of the current version.
yarn version --premajor
yarn version --preminor
yarn version --prepatch
This will create a new prerelease version by incrementing the major, minor, or patch number of the current version and adding a prerelease number.
yarn version --prerelease
This command will increment the prerelease version number keeping the main version.
yarn version [--premajor | --preminor | --prepatch | --prerelease] --preid <pre-identifier>
This command will add an identifier specified by <pre-identifier> to be used to prefix premajor, preminor, prepatch or prerelease version increments.
yarn version --no-git-tag-version
This command will create a new version without creating a git tag.
yarn version --no-commit-hooks
The yarn version ?no-commit-hooks will bypass running commit hooks when committing the new version.
Yarn versions
The yarn versions command will information of the currently installed Yarn, Node.js, and its dependencies.
Here is an example screenshot:
Previous:
Yarn upgrade-interactive CLI command
Next:
Yarn why and yarn workspaces CLI commands
- New Content published on w3resource:
- Scala Programming Exercises, Practice, Solution
- Python Itertools exercises
- Python Numpy exercises
- Python GeoPy Package exercises
- Python Pandas exercises
- Python nltk exercises
- Python BeautifulSoup exercises
- Form Template
- Composer - PHP Package Manager
- PHPUnit - PHP Testing
- Laravel - PHP Framework
- Angular - JavaScript Framework
- React - JavaScript Library
- Vue - JavaScript Framework
- Jest - JavaScript Testing Framework