7.7 KiB
7.7 KiB
CHANGELOG
2.5.0
- Use more accurate git hooks directory resolution
- Add
CWD
in debug messages - Reduce package size
2.4.1
- Fix husky crash on install/uninstall with very old Node versions
2.4.0
- Add
HUSKY_SKIP_HOOKS
to skip all hooks
2.3.0
- Make
HUSKY_DEBUG=1
effective likeHUSKY_DEBUG=true
- Refactor script to point to
run-node/run-node
rather than.bin/run-node
2.2.0
- Improve Git worktree support
2.1.0
- Improve shell script portability by using
.
rather thansource
2.0.0
- Update dependencies
- Update messages
- Breaking change drop
Node 6
support
1.3.1
- Update docs
- Upgrade
is-ci
and support more CIs - Disable
1.3.0
change related tostdin
due to a bug on Windows
1.3.0
- Enable
stdin
if hook is running in a terminal
1.2.1
- Fix don't fail if directory in project contains whitespace
1.2.0
- Add comments to generated hooks to specify which package has installed husky and when
1.1.4
- Upgrade
execa
dependency
1.1.3
- Fix don't fail if
package.json
doesn't exist
1.1.2
- Add debug message
1.1.1
- Check
HUSKY_SKIP_INSTALL
value first before checking if.git
exists - Check Node version before running hooks
1.1.0
- Create
.git/hooks
if it doesn't exist
1.0.1
1.0.0
After a year of pre-releases and a complete rewrite, this marks the first stable release of husky 🐶🎉.
Notable changes
Below you'll find consolidated changes since 0.14.3
. There's no change in code between 1.0.0-rc.15
and 1.0.0
.
-
Hooks
- Add
sendemail-validate
hook
- Add
-
Config
- Move hooks config from
scripts
field tohusky
field - Prefer raw names for hooks (e.g.
pre-commit
rather thanprecommit
) - Support
.huskyrc
config
- Move hooks config from
-
Package managers
-
Environment variables
- Add
HUSKY_SKIP_INSTALL
environment variable for skipping git hooks installation - Add
HUSKY_GIT_STDIN
environment variable forpre-push
,pre-receive
,post-receive
andpost-rewrite
to access arguments passed by Git via stdin - Rename
GIT_PARAMS
toHUSKY_GIT_PARAMS
- Add
-
Messages
- Add many more messages in case of errors
- Add please-upgrade-node message if using with unsupported Node version
- Make
--no-verify
message more accurate and only show it for hooks that can be skipped
-
Upgrade
- Add
husky-upgrade
command to automatically migrate hooks inpackage.json
- Add deprecation warning for hooks that are still defined in
scripts
- Add
-
Other
- Drop
Node 4
support - Drop integrated
nvm
support (see Node version management in docs)
- Drop
Credits
Huge thanks to all the Contributors and Patreon Supporters! 🙏
1.0.0-rc.15
- Update docs
1.0.0-rc.14
- Make
--no-verify
message more accurate and only show it for hooks that can be skipped - Improve error messages
1.0.0-rc.13
- Show a message when Node can't be found in PATH
1.0.0-rc.12
- Fix exit code when used with unsupported Node version
- Update dependencies
1.0.0-rc.11
- Show a message instead of crashing if Node version is unsupported by Husky
1.0.0-rc.10
- Fix
HUSKY_GIT_PARAMS
containing only the first Git param
1.0.0-rc.9
- If
node_modules/husky
is missing, show message but do not crash - Remove and upgrade some
dependencies
1.0.0-rc.8
- Add
HUSKY_GIT_STDIN
environment variable forpre-push
,pre-receive
,post-receive
andpost-rewrite
to access arguments passed by Git via stdin.
1.0.0-rc.7
- Update
cosmiconfig
dependency - Fix
package.json
normalization error
1.0.0-rc.6
- Fix install error with
pnpm
1.0.0-rc.5
- Auto migrate
yorkie
hooks
1.0.0-rc.4
- Re-enable Git submodule and worktree support
1.0.0-rc.3
- Re-enable subdirectory support
1.0.0-rc.2
- Upgrade
run-node
dependency
1.0.0-rc.1
- Namespace environment variable created by husky
GIT_PARAMS
becomesHUSKY_GIT_PARAMS
- Starting also with
1.0.0
versioning
0.15.0-rc.13
- Revert
GIT_STDIN
for the moment. Needs more testing.
rc.10
, rc.11
and rc.12
are broken for some GUI clients due to read
command
0.15.0-rc.9
- Handle case where
.git/hooks
directory doesn't exit
0.15.0-rc.8
- Handle case where
v0.14
git hooks wouldn't have been uninstalled
0.15.0-rc.7
- Move
postinstall
script toinstall
- Fix line ending error when running
upgrader
from OS X/Linux
0.15.0-rc.6
- Fix
[[
error
0.15.0-rc.5
- Fix error with GitHub Desktop on Windows
0.15.0-rc.4
- Catch error if
git
command fails
0.15.0-rc.3
- Fix
husky-upgrade
- Drop
Node 4
support
0.15.0-rc.2
- Fix install error
0.15.0-rc.1
sendemail-validate
hook #173HUSKY_SKIP_INSTALL
environment variable for skipping git hooks installation #178.huskyrc
config #209pnpm
support- Support environments where
yarn
is the only package manager installed - Move config from
scripts
field tohusky
field - Prefer raw names for Git hooks (
pre-commit
rather thanprecommit
) - Drop integrated
nvm
support - To ease upgrade:
- Provide
husky-upgrade
command - Add deprecation warning for hooks that are defined in
scripts
(but still run them)
- Provide
0.14.3
- Fix handle space in
PATH
#150
0.14.2
- Fix handle space in
HOME
0.14.1
- Fix Git hooks install on Windows
- Fix hook script when
nvm
was installed with Brew
0.14.0
- Fix
npm@5
Error: Cannot find module
warning when uninstalling - Drop
Node 0.12
support - Don't reload
nvm
if it's already inPATH
- Add Git worktree support #114
- Hide irrelevant
--no-verify
message forprepare-commit-msg
#137
0.13.4
- Add Node version to husky output
0.13.3
- Revert
Fixes issue with OS X + brew where nvm was loaded even when npm was already present
that was introduced inv0.13.0
as it was preventing Husky to loadnvm
in some cases #106
0.13.2
- Fixes issue #103
0.13.1
- Makes it easier for projects to transition from ghooks by detecting ghooks installed scripts and automatically migrating them
0.13.0
- Makes
husky
a little less verbose by default - Fixes issue with
OS X + brew
wherenvm
was loaded even whennpm
was already present - Fixes issue with Git
v1.9
on Windows - Prevents Git hooks being installed when husky is in a sub
node_modules
directory (i.e../node_modules/A/node_modules/husky
)
0.12.0
- Adds Git submodule support
- Adds Cygwin support
- Improves edge cases support (
.git
not found andgit
not inPATH
) - If
npm
is already present in path, doesn't loadnvm
default or.nvmrc
version, which makes things faster in terminal. In GUI apps, the behavior is unchanged.