This document lists breaking changes for each major release.
See the GitHub Releases page for detailed changelogs: https://github.com/release-it/release-it/releases
- Removed support for Node.js v16.
- Removed support for Node.js v14.
- Removed support for Node.js v10 and v12.
- Removed support for GitLab v12.4 and lower.
- Removed anonymous metrics (and the option to disable it).
- Programmatic usage and plugins only through ES Module syntax (
import
)
Use release-it v14 in legacy environments.
- Removed
global
property from plugins. Usethis.config[key]
instead. - Removed deprecated
npm.access
option. Set this inpackage.json
instead.
- Dropped support for Node v8
- Dropped support for GitLab v11.6 and lower.
- Deprecated
scripts
are removed (in favor of hooks). - Removed deprecated
--non-interactive
(-n
) argument. Use--ci
instead. - Removed old
%s
and[REV_RANGE]
syntax in command substitutions. Use${version}
and${latestTag}
instead.
- The
--follow-tags
argument forgit push
has been moved to the default configuration. This is only a breaking change ifgit.pushArgs
was not empty (it was empty by default).
- The custom
conventional-changelog
increment (e.g."increment": "conventional:angular"
) with additional script configuration is replaced with a plugin. Please see conventional changelog how to use this plugin. - The
pkgFiles
option has been removed. If there's a need to bump other files than whatnpm version
bumps, it should be (part of) a plugin. - By default, the latest version was derived from the latest Git tag. From v11, if the repo has a
package.json
then thatversion
is used instead. Theuse
option has been removed. Also see latest version. scripts.changelog
has been moved togit.changelog
- Dropped support for Node v6
- Deprecated options from v9 are removed, the
dist.repo
config in particular (also see distribution repository for alternatives). - Drop the
--debug
flag.DEBUG=release-it:* ...
still works.
There should be no breaking changes, but there have been major internal refactorings and an improved UI. A bunch of new features and bug fixes have been implemented. Last but not least, the configuration structure is changed significantly. For this (backwards compatible) change, deprecation warnings are shown, and configurations must be migrated with the next major release (v10).
- All "command hooks" have been moved to
scripts.*
, and some have been renamed. - All
src.*
options have been moved togit.*
(andscripts.*
). - The
dist.repo
configuration and functionality has been removed.
- Drop the
--force
flag. It's only use was to move a Git tag.
- No longer adds untracked files to release commit. (#230)
- Default value for
requireCleanWorkingDir
is nowtrue
(previously:false
). (#173) - Skip prompt (interactive) if corresponding task (non-interactive) is disabled. E.g.
npm.publish: false
will also not show "publish" prompt.
- Drop support for Node v4.
- Use
shell.exec
for build commands by default (previously this required a!
prefix).
- Configuration filename must be
.release-it.json
(previously.release.json
). - Refactored configuration structure in this file (and the CLI arguments with it).
- Build command is executed before git commit/push.
- Configuration options are better organized. Most of them are backwards compatible with a deprecation notice.
Initial major release.