Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore(deps): update dependency husky to v9 (#405)
This PR contains the following updates: | Package | Type | Update | Change | Pending | |---|---|---|---|---| | [husky](https://togithub.com/typicode/husky) | devDependencies | major | [`^8.0.0` -> `^9.0.0`](https://renovatebot.com/diffs/npm/husky/8.0.3/9.0.10) | `9.0.11` | --- ### Release Notes <details> <summary>typicode/husky (husky)</summary> ### [`v9.0.10`](https://togithub.com/typicode/husky/releases/tag/v9.0.10) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.9...v9.0.10) - fix: rename index.d.ts to index.d.mts by [@​mrkjdy](https://togithub.com/mrkjdy) in [https://github.com/typicode/husky/pull/1379](https://togithub.com/typicode/husky/pull/1379) ### [`v9.0.9`](https://togithub.com/typicode/husky/releases/tag/v9.0.9) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.8...v9.0.9) - refactor: rename files by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1378](https://togithub.com/typicode/husky/pull/1378) ### [`v9.0.8`](https://togithub.com/typicode/husky/releases/tag/v9.0.8) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.7...v9.0.8) - docs: update index.md by [@​khaledYS](https://togithub.com/khaledYS) in [https://github.com/typicode/husky/pull/1369](https://togithub.com/typicode/husky/pull/1369) - Fix tab detection on install command by [@​glensc](https://togithub.com/glensc) in [https://github.com/typicode/husky/pull/1376](https://togithub.com/typicode/husky/pull/1376) - refactor: reduce file size by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1377](https://togithub.com/typicode/husky/pull/1377) ### [`v9.0.7`](https://togithub.com/typicode/husky/releases/tag/v9.0.7) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.6...v9.0.7) - fix: typo and source `~/.huskyrc` correctly (compatibility with v8) - docs: fix example by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1363](https://togithub.com/typicode/husky/pull/1363) ### [`v9.0.6`](https://togithub.com/typicode/husky/releases/tag/v9.0.6) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.5...v9.0.6) - docs: add favicon by [@​rakleed](https://togithub.com/rakleed) in [https://github.com/typicode/husky/pull/1354](https://togithub.com/typicode/husky/pull/1354) - chore: apply editorconfig to code only by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1355](https://togithub.com/typicode/husky/pull/1355) - docs: update install script to mjs and fix CI checks by [@​starnayuta](https://togithub.com/starnayuta) in [https://github.com/typicode/husky/pull/1357](https://togithub.com/typicode/husky/pull/1357) - Fix unbound variable by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1359](https://togithub.com/typicode/husky/pull/1359) ### [`v9.0.5`](https://togithub.com/typicode/husky/releases/tag/v9.0.5) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.4...v9.0.5) - docs: update path to startup files by [@​ManuelRauber](https://togithub.com/ManuelRauber) in [https://github.com/typicode/husky/pull/1350](https://togithub.com/typicode/husky/pull/1350) - fix: init error by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1353](https://togithub.com/typicode/husky/pull/1353) ### [`v9.0.4`](https://togithub.com/typicode/husky/releases/tag/v9.0.4) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.3...v9.0.4) - fix: init create dir before by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1348](https://togithub.com/typicode/husky/pull/1348) - refactor: simplify by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1349](https://togithub.com/typicode/husky/pull/1349) - fix: init not working on pnpm [#​1334](https://togithub.com/typicode/husky/issues/1334) by [@​rozbo](https://togithub.com/rozbo) in [https://github.com/typicode/husky/pull/1347](https://togithub.com/typicode/husky/pull/1347) ### [`v9.0.3`](https://togithub.com/typicode/husky/releases/tag/v9.0.3) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.2...v9.0.3) - docs: fix link by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1340](https://togithub.com/typicode/husky/pull/1340) - chore: fix links in issue template by [@​julien-f](https://togithub.com/julien-f) in [https://github.com/typicode/husky/pull/1341](https://togithub.com/typicode/husky/pull/1341) - fix: add scripts field if not present by [@​chalkygames123](https://togithub.com/chalkygames123) in [https://github.com/typicode/husky/pull/1338](https://togithub.com/typicode/husky/pull/1338) - docs: changelog link by [@​typicode](https://togithub.com/typicode) in [https://github.com/typicode/husky/pull/1343](https://togithub.com/typicode/husky/pull/1343) - fix: insert final newline by [@​chalkygames123](https://togithub.com/chalkygames123) in [https://github.com/typicode/husky/pull/1339](https://togithub.com/typicode/husky/pull/1339) - fix: fix git hooks path on windows by [@​rozbo](https://togithub.com/rozbo) in [https://github.com/typicode/husky/pull/1346](https://togithub.com/typicode/husky/pull/1346) ### [`v9.0.2`](https://togithub.com/typicode/husky/releases/tag/v9.0.2) [Compare Source](https://togithub.com/typicode/husky/compare/v9.0.1...v9.0.2) - fix: exit code by [@​gergelypap](https://togithub.com/gergelypap) in [https://github.com/typicode/husky/pull/1336](https://togithub.com/typicode/husky/pull/1336) - docs: typo by [@​chalkygames123](https://togithub.com/chalkygames123) in [https://github.com/typicode/husky/pull/1337](https://togithub.com/typicode/husky/pull/1337) ### [`v9.0.1`](https://togithub.com/typicode/husky/releases/tag/v9.0.1) [Compare Source](https://togithub.com/typicode/husky/compare/v8.0.3...v9.0.1) <p align="center"> Kicking off the year with an exciting update! </p> <p align="center"> <img src="https://github.com/typicode/husky/assets/5502029/457ab087-e935-4196-b99f-601ecf37f263" height="400px" alt="" /> </p> #### TLDR; Improved user experience and a (even) smaller package size while packing in more features! *Note: install using `husky@latest` to get the bug fixes that were released after.* #### 👋 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` ##### v8 ```shell npm pkg set scripts.prepare="husky install" npm run prepare npx husky add .husky/pre-commit "npm test" ``` ##### v9 Adding husky to a project is now easier than ever. It's just a single line that does the same as above. No need to read the docs to get started anymore. ```shell npx husky init ``` #### Adding a New Hook ##### v8 ```shell npx husky add .husky/pre-commit "npm test" git add --chmod=+x .husky/pre-commit # On Windows ``` ##### v9 Adding a hook is as simple as creating a file. This can be accomplished using your favorite editor, a script or a basic `echo` command. For example, on Linux/macOS: ```shell 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. Here are the steps to migrate: `package.json` ```diff { "scripts": { - "prepare": "husky install" + "prepare": "husky" } } ``` `.husky/pre-commit` ```diff - #!/usr/bin/env sh - . "$(dirname -- "$0")/_/husky.sh" npm test ``` *Note: `sh` will be used to run hooks, even if a shebang is set.* If you were using `husky` as a module: ```diff - const husky = require('husky') - // ... + import husky from 'husky' + console.log(husky()) ``` </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 10pm every weekday,every weekend,before 5am every weekday" in timezone Asia/Jerusalem, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://togithub.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy42NC4yIiwidXBkYXRlZEluVmVyIjoiMzcuNjQuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: descope[bot] <descope[bot]@users.noreply.github.com>
- Loading branch information