chore: require Node.js >=10.18
BREAKING CHANGE: Require Node.js >= 10.18
This commit is contained in:
		
							parent
							
								
									c6b10766a7
								
							
						
					
					
						commit
						bec57cd2ed
					
				| @ -1,3 +1,3 @@ | |||||||
| node_js: | node_js: | ||||||
|   - 12 |   - 12 | ||||||
|   - 10.13 |   - 10.18 | ||||||
|  | |||||||
| @ -101,7 +101,7 @@ In order to use **semantic-release** you need: | |||||||
| - To host your code in a [Git repository](https://git-scm.com) | - To host your code in a [Git repository](https://git-scm.com) | ||||||
| - Use a Continuous Integration service that allows you to [securely set up credentials](docs/usage/ci-configuration.md#authentication) | - Use a Continuous Integration service that allows you to [securely set up credentials](docs/usage/ci-configuration.md#authentication) | ||||||
| - Git CLI version [2.7.1 or higher](docs/support/FAQ.md#why-does-semantic-release-require-git-version--271) installed in your Continuous Integration environment | - Git CLI version [2.7.1 or higher](docs/support/FAQ.md#why-does-semantic-release-require-git-version--271) installed in your Continuous Integration environment | ||||||
| - [Node.js](https://nodejs.org) version [10.13 or higher](docs/support/FAQ.md#why-does-semantic-release-require-node-version--1013) installed in your Continuous Integration environment | - [Node.js](https://nodejs.org) version [10.18 or higher](docs/support/FAQ.md#why-does-semantic-release-require-node-version--1018) installed in your Continuous Integration environment | ||||||
| 
 | 
 | ||||||
| ## Documentation | ## Documentation | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -10,7 +10,7 @@ In this example an [`NPM_TOKEN`](https://docs.npmjs.com/creating-and-viewing-aut | |||||||
| 
 | 
 | ||||||
| [GitHub Actions](https://github.com/features/actions) support [Workflows](https://help.github.com/en/articles/configuring-workflows), allowing to run tests on multiple Node versions and publish a release only when all test pass. | [GitHub Actions](https://github.com/features/actions) support [Workflows](https://help.github.com/en/articles/configuring-workflows), allowing to run tests on multiple Node versions and publish a release only when all test pass. | ||||||
| 
 | 
 | ||||||
| **Note**: The publish pipeline must run on [Node version >= 10.13](../support/FAQ.md#why-does-semantic-release-require-node-version--1013). | **Note**: The publish pipeline must run on [Node version >= 10.18](../support/FAQ.md#why-does-semantic-release-require-node-version--1018). | ||||||
| 
 | 
 | ||||||
| ### `.github/workflows/release.yml` configuration for Node projects | ### `.github/workflows/release.yml` configuration for Node projects | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -10,7 +10,7 @@ The [Authentication](../usage/ci-configuration.md#authentication) environment va | |||||||
| 
 | 
 | ||||||
| GitLab CI supports [Pipelines](https://docs.gitlab.com/ee/ci/pipelines.html) allowing to test on multiple Node versions and publishing a release only when all test pass. | GitLab CI supports [Pipelines](https://docs.gitlab.com/ee/ci/pipelines.html) allowing to test on multiple Node versions and publishing a release only when all test pass. | ||||||
| 
 | 
 | ||||||
| **Note**: The publish pipeline must run a [Node >= 10.13 version](../support/FAQ.md#why-does-semantic-release-require-node-version--1013). | **Note**: The publish pipeline must run a [Node >= 10.18 version](../support/FAQ.md#why-does-semantic-release-require-node-version--1018). | ||||||
| 
 | 
 | ||||||
| ### `.gitlab-ci.yml` configuration for Node projects | ### `.gitlab-ci.yml` configuration for Node projects | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -38,7 +38,7 @@ Yes with the [dry-run options](../usage/configuration.md#dryrun) which prints to | |||||||
| 
 | 
 | ||||||
| ## Can I use semantic-release with Yarn? | ## Can I use semantic-release with Yarn? | ||||||
| 
 | 
 | ||||||
| If you are using a [local](../usage/installation.md#local-installation) **semantic-release** installation and run multiple CI jobs with different versions, the `yarn install` command will fail on jobs running with Node < 8 as **semantic-release** requires [Node >= 10.13](#why-does-semantic-release-require-node-version--1013) and specifies it in its `package.json`s [`engines`](https://docs.npmjs.com/files/package.json#engines) key. | If you are using a [local](../usage/installation.md#local-installation) **semantic-release** installation and run multiple CI jobs with different versions, the `yarn install` command will fail on jobs running with Node < 8 as **semantic-release** requires [Node >= 10.18](#why-does-semantic-release-require-node-version--1018) and specifies it in its `package.json`s [`engines`](https://docs.npmjs.com/files/package.json#engines) key. | ||||||
| 
 | 
 | ||||||
| The recommended solution is to use the [Yarn](https://yarnpkg.com) [--ignore-engines](https://yarnpkg.com/en/docs/cli/install#toc-yarn-install-ignore-engines) option to install the project dependencies on the CI environment, so Yarn will ignore the **semantic-release**'s `engines` key: | The recommended solution is to use the [Yarn](https://yarnpkg.com) [--ignore-engines](https://yarnpkg.com/en/docs/cli/install#toc-yarn-install-ignore-engines) option to install the project dependencies on the CI environment, so Yarn will ignore the **semantic-release**'s `engines` key: | ||||||
| 
 | 
 | ||||||
| @ -48,7 +48,7 @@ $ yarn install --ignore-engines | |||||||
| 
 | 
 | ||||||
| **Note**: Several CI services use Yarn by default if your repository contains a `yarn.lock` file. So you should override the install step to specify `yarn install --ignore-engines`. | **Note**: Several CI services use Yarn by default if your repository contains a `yarn.lock` file. So you should override the install step to specify `yarn install --ignore-engines`. | ||||||
| 
 | 
 | ||||||
| Alternatively you can use a [global](../usage/installation.md#global-installation) **semantic-release** installation and make sure to install and run the `semantic-release` command only in a CI jobs running with Node >= 10.13. | Alternatively you can use a [global](../usage/installation.md#global-installation) **semantic-release** installation and make sure to install and run the `semantic-release` command only in a CI jobs running with Node >= 10.18. | ||||||
| 
 | 
 | ||||||
| If your CI environment provides [nvm](https://github.com/creationix/nvm) you can switch to Node 8 before installing and running the `semantic-release` command: | If your CI environment provides [nvm](https://github.com/creationix/nvm) you can switch to Node 8 before installing and running the `semantic-release` command: | ||||||
| 
 | 
 | ||||||
| @ -73,7 +73,7 @@ Yes, **semantic-release** is a Node CLI application but it can be used to publis | |||||||
| To publish a non-Node package (without a `package.json`) you would need to: | To publish a non-Node package (without a `package.json`) you would need to: | ||||||
| - Use a [global](../usage/installation.md#global-installation) **semantic-release** installation | - Use a [global](../usage/installation.md#global-installation) **semantic-release** installation | ||||||
| - Set **semantic-release** [options](../usage/configuration.md#options) via [CLI arguments or rc file](../usage/configuration.md#configuration) | - Set **semantic-release** [options](../usage/configuration.md#options) via [CLI arguments or rc file](../usage/configuration.md#configuration) | ||||||
| - Make sure your CI job executing the `semantic-release` command has access to [Node >= 10.13](#why-does-semantic-release-require-node-version--1013) to execute the `semantic-release` command | - Make sure your CI job executing the `semantic-release` command has access to [Node >= 10.18](#why-does-semantic-release-require-node-version--1018) to execute the `semantic-release` command | ||||||
| 
 | 
 | ||||||
| See the [CI configuration recipes](../recipes/README.md#ci-configurations) for more details on specific CI environments. | See the [CI configuration recipes](../recipes/README.md#ci-configurations) for more details on specific CI environments. | ||||||
| 
 | 
 | ||||||
| @ -232,9 +232,9 @@ See [“Introduction to SemVer” - Irina Gebauer](https://blog.greenkeeper.io/i | |||||||
| 
 | 
 | ||||||
| In addition the [verify conditions step](../../README.md#release-steps) verifies that all necessary conditions for proceeding with a release are met, and a new release will be performed [only if all your tests pass](../usage/ci-configuration.md#run-semantic-release-only-after-all-tests-succeeded). | In addition the [verify conditions step](../../README.md#release-steps) verifies that all necessary conditions for proceeding with a release are met, and a new release will be performed [only if all your tests pass](../usage/ci-configuration.md#run-semantic-release-only-after-all-tests-succeeded). | ||||||
| 
 | 
 | ||||||
| ## Why does semantic-release require Node version >= 10.13? | ## Why does semantic-release require Node version >= 10.18? | ||||||
| 
 | 
 | ||||||
| **semantic-release** is written using the latest [ECMAScript 2017](https://www.ecma-international.org/publications/standards/Ecma-262.htm) features, without transpilation which **requires Node version 10.13 or higher**. | **semantic-release** is written using the latest [ECMAScript 2017](https://www.ecma-international.org/publications/standards/Ecma-262.htm) features, without transpilation which **requires Node version 10.18 or higher**. | ||||||
| 
 | 
 | ||||||
| See [Node version requirement](./node-version.md#node-version-requirement) for more details and solutions. | See [Node version requirement](./node-version.md#node-version-requirement) for more details and solutions. | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -8,9 +8,9 @@ See our [Node Support Policy](node-support-policy.md) for our long-term promise | |||||||
| 
 | 
 | ||||||
| ## Recommended solution | ## Recommended solution | ||||||
| 
 | 
 | ||||||
| ### Run at least one CI job with Node >= 10.13 | ### Run at least one CI job with Node >= 10.18 | ||||||
| 
 | 
 | ||||||
| The recommended approach is to run the `semantic-release` command from a CI job running on Node 10.13 or higher. This can either be a job used by your project to test on Node >= 10.13 or a dedicated job for the release steps. | The recommended approach is to run the `semantic-release` command from a CI job running on Node 10.18 or higher. This can either be a job used by your project to test on Node >= 10.18 or a dedicated job for the release steps. | ||||||
| 
 | 
 | ||||||
| See [CI configuration](../usage/ci-configuration.md) and [CI configuration recipes](../recipes/README.md#ci-configurations) for more details. | See [CI configuration](../usage/ci-configuration.md) and [CI configuration recipes](../recipes/README.md#ci-configurations) for more details. | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -72,7 +72,7 @@ | |||||||
|     "xo": "^0.25.0" |     "xo": "^0.25.0" | ||||||
|   }, |   }, | ||||||
|   "engines": { |   "engines": { | ||||||
|     "node": ">=10.13" |     "node": ">=10.18" | ||||||
|   }, |   }, | ||||||
|   "files": [ |   "files": [ | ||||||
|     "bin", |     "bin", | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user