You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
There's a bug with this release which prevents the deprecation notice to appear and requires to remove #!/usr/bin/env sh and . "$(dirname -- "$0")/_/husky.sh" (which are deprecated by the way). I'll publish a new version to fix that. Sorry about any inconvenience.
What's new
You can now run package commands directly, no need for npx or equivalents.
It makes writing hooks more intuitive and is also slightly faster 🐺⚡️
### .husky/pre-commit- npx jest+ jest # ~0.2s faster
A new recipe has been added to the docs. Lint staged files without external dependencies (inspired by Prettier docs). Feel free to modify it.
Improved user experience and a (even) smaller package size while packing in more features!
👋 By the Way
I'm available for remote work (Front-end/Back-end mainly JS/TS but open to other stacks Rails, Go, Elixir). You can contact me at my mail: typicode at gmail 🙂
Introducing husky init
Adding husky to a project is now easier than ever. Although the installation process was straightforward, it often required consulting the documentation.
v8
npm pkg set scripts.prepare="husky install"
npm run prepare
npx husky add .husky/pre-commit "npm test"
v9
npx husky init
Adding a New Hook
Adding a hook is now as simple as creating a file. This can be accomplished using your favorite editor, a script or a basic echo command.
v8
npx husky add .husky/pre-commit "npm test"
git add --chmod=+x .husky/pre-commit # On Windows
v9
echo"npm test"> .husky/pre-commit
Further Size Reduction
v8 was already the most compact Git hooks manager at approximately 6kB.
v9 takes this a step further, reducing the size to just 3kB, likely making it the smallest devDependency in your toolkit.
To give you an idea of how small it is, the biggest file in the project is the MIT license 😄
More to Come
Additional features are in the pipeline for v9. Stay tuned 🙌
Other Changes
Enhanced security with CI and npm --provenance for safer publishing.
Added $XDG_CONFIG_HOME support. Move ~/.huskyrc to ~/.config/husky/init.sh for centralized configuration.
Fixed permission issue for Windows-created hooks; they no longer need to be executable.
Removed husky install. Use husky or husky some/dir for the same functionality (deprecation notice to be added).
Modified behavior when .git is missing; it now triggers a warning instead of failure.
Replaced HUSKY_DEBUG=1 with HUSKY=2 for debugging.
Updated the Husky API for module usage.
Transitioned to ESM for module usage.
Dropped support for Node 14 and 16.
Revamped docs.
How to Migrate
v9 is backward compatible with v8, allowing you to freely upgrade and migrate your hooks later.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
8.0.3
->9.1.7
Release Notes
typicode/husky (husky)
v9.1.7
Compare Source
v9.1.6
Compare Source
v9.1.5
Compare Source
v9.1.4
Compare Source
v9.1.3
Compare Source
PATH
v9.1.2
Compare Source
v9.1.1
Compare Source
v9.1.0
Compare Source
Super saiyan
goddog! It's over 9.0.0!There's a bug with this release which prevents the deprecation notice to appear and requires to remove
#!/usr/bin/env sh
and. "$(dirname -- "$0")/_/husky.sh"
(which are deprecated by the way). I'll publish a new version to fix that. Sorry about any inconvenience.What's new
You can now run package commands directly, no need for
npx
or equivalents.It makes writing hooks more intuitive and is also slightly faster 🐺⚡️
A new recipe has been added to the docs. Lint staged files without external dependencies (inspired by Prettier docs). Feel free to modify it.
For more advanced use cases, see lint-staged.
Fixes
bunx husky init
commandDeprecations
#!/usr/bin/env sh
and. "$(dirname -- "$0")/_/husky.sh"
from your hooks~/.huskyrc
to.config/husky/init.sh
Support for these will be removed in v10, notices have been added.
Friendly reminder
If Git hooks don't fit your workflow, you can disable Husky globally. Just add
export HUSKY=0
to.config/husky/init.sh
.I've seen some confusion about this on X, so just a heads-up!
Sponsoring
Husky is downloaded over 45M times per month and used by ~1.5M projects. If your company wants to sponsor, you can do so here: GitHub Sponsors.
Have a nice summer ☀️ I'm open to new opportunities/consulting so feel free to drop me a message 😉
v9.0.11
Compare Source
v9.0.10
Compare Source
v9.0.9
Compare Source
v9.0.8
Compare Source
v9.0.7
Compare Source
~/.huskyrc
correctly (compatibility with v8)v9.0.6
Compare Source
v9.0.5
Compare Source
v9.0.4
Compare Source
v9.0.3
Compare Source
v9.0.2
Compare Source
What's Changed
New Contributors
Full Changelog: typicode/husky@v9.0.1...v9.0.2
v9.0.1
Compare Source
Kicking off the year with an exciting update!
TLDR;
Improved user experience and a (even) smaller package size while packing in more features!
👋 By the Way
I'm available for remote work (Front-end/Back-end mainly JS/TS but open to other stacks Rails, Go, Elixir). You can contact me at my mail: typicode at gmail 🙂
Introducing
husky init
Adding husky to a project is now easier than ever. Although the installation process was straightforward, it often required consulting the documentation.
v8
v9
Adding a New Hook
Adding a hook is now as simple as creating a file. This can be accomplished using your favorite editor, a script or a basic
echo
command.v8
v9
Further Size Reduction
v8
was already the most compact Git hooks manager at approximately6kB
.v9
takes this a step further, reducing the size to just3kB
, likely making it the smallest devDependency in your toolkit.To give you an idea of how small it is, the biggest file in the project is the MIT license 😄
More to Come
Additional features are in the pipeline for
v9
. Stay tuned 🙌Other Changes
--provenance
for safer publishing.$XDG_CONFIG_HOME
support. Move~/.huskyrc
to~/.config/husky/init.sh
for centralized configuration.husky install
. Usehusky
orhusky some/dir
for the same functionality (deprecation notice to be added)..git
is missing; it now triggers a warning instead of failure.HUSKY_DEBUG=1
withHUSKY=2
for debugging.ESM
for module usage.How to Migrate
v9
is backward compatible withv8
, allowing you to freely upgrade and migrate your hooks later.package.json
.husky/pre-commit
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.