Skip to content

Commit

Permalink
chore(deps): Update dependency husky to v9 (#432)
Browse files Browse the repository at this point in the history
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [husky](https://togithub.com/typicode/husky) | devDependencies | major | [`8.0.3` -> `9.0.8`](https://renovatebot.com/diffs/npm/husky/8.0.3/9.0.8) |

---

### Release Notes

<details>
<summary>typicode/husky (husky)</summary>

### [`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 [@&#8203;khaledYS](https://togithub.com/khaledYS) in [typicode/husky#1369
-   Fix tab detection on install command by [@&#8203;glensc](https://togithub.com/glensc) in [typicode/husky#1376
-   refactor: reduce file size by [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#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 [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#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 [@&#8203;rakleed](https://togithub.com/rakleed) in [typicode/husky#1354
-   chore: apply editorconfig to code only by [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#1355
-   docs: update install script to mjs and fix CI checks by [@&#8203;starnayuta](https://togithub.com/starnayuta) in [typicode/husky#1357
-   Fix  unbound variable by [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#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 [@&#8203;ManuelRauber](https://togithub.com/ManuelRauber) in [typicode/husky#1350
-   fix: init error by [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#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 [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#1348
-   refactor: simplify by [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#1349
-   fix: init not working on pnpm [#&#8203;1334](https://togithub.com/typicode/husky/issues/1334) by [@&#8203;rozbo](https://togithub.com/rozbo) in [typicode/husky#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 [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#1340
-   chore: fix links in issue template by [@&#8203;julien-f](https://togithub.com/julien-f) in [typicode/husky#1341
-   fix: add scripts field if not present by [@&#8203;chalkygames123](https://togithub.com/chalkygames123) in [typicode/husky#1338
-   docs: changelog link by [@&#8203;typicode](https://togithub.com/typicode) in [typicode/husky#1343
-   fix: insert final newline by [@&#8203;chalkygames123](https://togithub.com/chalkygames123) in [typicode/husky#1339
-   fix: fix git hooks path on windows by [@&#8203;rozbo](https://togithub.com/rozbo) in [typicode/husky#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 [@&#8203;gergelypap](https://togithub.com/gergelypap) in [typicode/husky#1336
-   docs: typo by [@&#8203;chalkygames123](https://togithub.com/chalkygames123) in [typicode/husky#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`

Adding husky to a project is now easier than ever. Although the installation process was straightforward, it often required consulting the documentation.

##### v8

```shell
npm pkg set scripts.prepare="husky install"
npm run prepare
npx husky add .husky/pre-commit "npm test"
```

##### v9

```shell
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

```shell
npx husky add  .husky/pre-commit "npm test"
git add --chmod=+x .husky/pre-commit # On Windows
```

##### v9

```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.

`package.json`

```diff
{
  "scripts": {
-   "prepare": "husky install"
+   "prepare": "husky"
  }
}
```

`.husky/pre-commit`

```diff
- #!/usr/bin/env sh
- . "$(dirname -- "$0")/_/husky.sh"
npm test
```

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on the first day of the month" (UTC), 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.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNjMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE2NS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
  • Loading branch information
cq-bot committed Feb 1, 2024
1 parent 50c0aa3 commit d8235c0
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 10 deletions.
18 changes: 9 additions & 9 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Expand Up @@ -46,7 +46,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-node": "11.1.0",
"eslint-plugin-prettier": "5.1.3",
"husky": "8.0.3",
"husky": "9.0.8",
"prettier": "3.2.4",
"typescript": "5.3.3"
}
Expand Down

0 comments on commit d8235c0

Please sign in to comment.