Skip to content

Commit

Permalink
chore(dev-deps): ⬆️ upgrade husky to v9 (#93)
Browse files Browse the repository at this point in the history
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [husky](https://togithub.com/typicode/husky) | [`8.0.3` -> `9.0.5`](https://renovatebot.com/diffs/npm/husky/8.0.3/9.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/husky/9.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/husky/9.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/husky/8.0.3/9.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/husky/8.0.3/9.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

### [`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)

#### What's Changed

-   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

#### New Contributors

-   [@&#8203;gergelypap](https://togithub.com/gergelypap) made their first contribution in [typicode/husky#1336

**Full Changelog**: typicode/husky@v9.0.1...v9.0.2

### [`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!

#### 👋 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 Monday" in timezone Asia/Kolkata, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **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.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/timelessco/node-ts-app).
  • Loading branch information
renovate[bot] committed Jan 28, 2024
1 parent c85cb13 commit b3644c9
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 6 deletions.
2 changes: 1 addition & 1 deletion package.json
Expand Up @@ -105,7 +105,7 @@
"gacp": "3.0.3",
"git-remote-origin-url": "4.0.0",
"git-url-parse": "14.0.0",
"husky": "8.0.3",
"husky": "9.0.5",
"jsonc-eslint-parser": "2.3.0",
"knip": "4.0.4",
"lint-staged": "15.0.2",
Expand Down
10 changes: 5 additions & 5 deletions pnpm-lock.yaml

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

0 comments on commit b3644c9

Please sign in to comment.