29 Commits

Author SHA1 Message Date
Gregor Martynus
b06c9bbe4c style: prettier 2023-01-13 15:55:40 -08:00
Matt Travi
9eab1adb9d
feat(esm): convert to esm (#2569)
for #2543

BREAKING CHANGE: semantic-release is now ESM-only. since it is used through its own executable, the impact on consuming projects should be minimal

BREAKING CHANGE: references to plugin files in configs need to include the file extension because of executing in an ESM context
2022-11-11 09:24:06 -06:00
Matt Travi
4cd3641dbf
refactor(plugins): switched from require to await import() when loading plugins (#2558) 2022-09-17 14:10:05 -07:00
Axieum
80e1665037
fix: corrected spelling of invalid plugin config error (#1979) 2021-06-15 09:52:19 -05:00
Matt Travi
3abcbaf256
Revert "feat: throw an Error if package.json has duplicate "repository" key (#1656)"
This reverts commit b8fb35c7e15d314c15182f779ef30b42b6c4e7ea.

fixes #1657
2020-10-12 08:21:24 -05:00
Gregor Martynus
b8fb35c7e1
feat: throw an Error if package.json has duplicate "repository" key (#1656) 2020-10-11 14:59:51 -07:00
Gregor Martynus
caa3526caa style: xo 2020-04-08 15:13:33 -07:00
greenkeeper[bot]
f899fa9a7c chore(package): update xo to version 0.28.1
Closes #1488
2020-03-26 23:55:26 -04:00
Pierre Vanduynslager
3daf78081f
Merge branch 'master' into beta 2019-10-29 11:57:31 -04:00
knidarkness
79d22a2556 fix: clarify message for EGITNOPERMISSION error 2019-10-09 17:57:18 -04:00
Pierre Vanduynslager
95a9e89141 revert: fix(definitions): Repository documentation links
This reverts commit 1eb302545e3ed16044cb0533430d39ce0eeed9e2.
2019-08-22 14:47:21 -04:00
Florian Keller
1eb302545e fix(definitions): Repository documentation links 2019-08-16 10:17:24 -07:00
Ryan Kennedy
37bcc9e515 fix: Add helpful detail to ERELEASEBRANCHES error message (#1188) 2019-05-23 12:21:17 -07:00
greenkeeper[bot]
d10268a8fa chore(package): update xo to version 0.24.0 2019-01-30 19:54:29 -05:00
greenkeeper[bot]
448a0ff977 chore(package): update xo to version 0.24.0 2019-01-30 17:27:04 -05:00
Pierre Vanduynslager
f96c660c1b fix: harmonize parameters passed to getError 2018-12-18 18:02:02 -05:00
Pierre Vanduynslager
7b4052470b feat: support multiple branches and distribution channels
- Allow to configure multiple branches to release from
- Allow to define a distribution channel associated with each branch
- Manage the availability on distribution channels based on git merges
- Support regular releases, maintenance releases and pre-releases
- Add the `addChannel` plugin step to make an existing release available on a different distribution channel

BREAKING CHANGE: the `branch` option has been removed in favor of `branches`

The new `branches` option expect either an Array or a single branch definition. To migrate your configuration:
- If you want to publish package from multiple branches, please the configuration documentation
- If you use the default configuration and want to publish only from `master`: nothing to change
- If you use the `branch` configuration and want to publish only from one branch: replace `branch` by `branches` (`"branch": "my-release-branch"` => `"branches": "my-release-branch"`)
2018-11-29 14:13:03 -05:00
Pierre Vanduynslager
7a9922a492 fix: rename default branch 2018-11-28 17:32:05 -05:00
Pierre Vanduynslager
5180001ae6 feat: support multiple plugins for the analyzeCommits step
In case multiple plugins with a `analyzeCommits` step are configured, all of them will be executed and the highest release type (`major` > `minor`, `patch`) will be used.
2018-11-12 15:06:46 -05:00
Pierre Vanduynslager
5ba5010c80 feat: add new plugins option 2018-10-08 13:24:51 -04:00
Pierre Vanduynslager
9930dac69e fix: add cwd to ENOGITREPO error message 2018-10-04 01:49:44 -04:00
Pierre Vanduynslager
bc8551c025 fix: typo in EPLUGINCONF error message 2018-10-04 01:49:44 -04:00
Pierre Vanduynslager
d8c84a0e0b fix: clarify EPLUGINCONF error message
The message now specify if the step is required and if it allows to configure multiple plugins.
2018-07-29 23:50:17 -04:00
Pierre Vanduynslager
576eb6027f refactor: simplify plugin validation 2018-07-10 13:18:58 -04:00
Pierre Vanduynslager
24a8052038 refactor: simply EGITNOPERMISSION error parameters 2018-06-15 16:16:55 -04:00
Pierre Vanduynslager
a72d8f52af fix: add clarification in EGITNOPERMISSION error message
Clarify that the error might be due to an invalid `repositoryUrl` configuration.
2018-05-20 23:14:44 +03:00
Pierre Vanduynslager
61d7d38ec2 feat: set tag author and committer name/email
Use [Git Environment Variables](https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables#Committing). Set default values if environement variables are not set.
2018-05-08 14:25:23 -04:00
Pierre Vanduynslager
9dd127ba98 fix: fix EPLUGINCONF error details 2018-02-12 00:36:06 -05:00
Pierre Vanduynslager
49f5e704ba feat: add success and fail notification plugins
- Allow `publish` plugins to return an `Object` with information related to the releases
- Add the `success` plugin hook, called when all `publish` are successful, receiving a list of release
- Add the `fail` plugin hook, called when an error happens at any point, receiving a list of errors
- Add detailed message for each error
2018-02-11 19:53:41 -05:00