chore(deps): update dependency lefthook to v2 #10

Open
Renovate wants to merge 1 commit from renovate/lefthook-2.x into master
Collaborator

This PR contains the following updates:

Package Change Age Confidence
lefthook ^1.10.8 → ^2.0.0 age confidence

Release Notes

evilmartians/lefthook (lefthook)

v2.2.1

Compare Source

v2.2.0

Compare Source

v2.1.17

Compare Source

Changelog

v2.1.16

Compare Source

v2.1.15

Compare Source

v2.1.14

Compare Source

v2.1.12

Compare Source

v2.1.10

Compare Source

  • deps: July 2026 (#​1463) by @​mrexox
  • feat: AI coding agents integration (#​1448) by @​viralpraxis
  • docs: fix language (#​1453) by @​pflanze
  • fix: make test suite stable when NO_COLOR is set (#​1449) by @​viralpraxis
  • deps: June 2026 (#​1447) by @​mrexox
  • deps: migrate shellescape to al.essio.dev/pkg/shellescape (#​1443) by @​maguowei
  • docs: upgrade docmd (#​1442) by @​mrexox
  • docs: use single quotes in example to handle filepaths with $ by @​mrexox

v2.1.9

Compare Source

  • fix: update hooks path after resetting (#​1431) by @​mrexox
  • deps: May 2026 (#​1415) by @​mrexox

v2.1.8

Compare Source

  • fix: do not warn if local hooks path is equal to default hooks path (#​1421) by @​mrexox

v2.1.7

Compare Source

v2.1.6

Compare Source

v2.1.5

Compare Source

  • deps: April 2026 (#​1375) by @​mrexox
  • docs: update documentation and docs for claude (#​1373) by @​mrexox
  • fix: git repository merge issue (#​1372) by @​mrexox
  • fix: use pre-push stdin for push file detection (#​1368) by @​supitsdu
  • chore: small cleanup (#​1370) by @​mrexox
  • fix: prevent lefthook run from overwriting global hooks (#​1371) by @​ivy
  • chore: upgrade to 2.11.4 (#​1362) by @​scop
  • chore: fix golangci-lint version lookup by @​mrexox
  • chore: move golangci-lint version to .tool-versions (#​1349) by @​scop

v2.1.4

Compare Source

v2.1.3

Compare Source

v2.1.2

Compare Source

v2.1.1

Compare Source

v2.1.0

Compare Source

v2.0.16

Compare Source

v2.0.15

Compare Source

v2.0.14

Compare Source

v2.0.13

Compare Source

  • fix: set extends to empty slice after loading remotes (#​1259) by @​mrexox
  • fix: allow custom hooks in JSON schema by updating generator (#​1250) by @​jeonghoon11
  • docs: remove duplicate config: false description (#​1245) by @​scop
  • chore: add more tests (#​1244) by @​mrexox

v2.0.12

Compare Source

v2.0.11

Compare Source

v2.0.10

Compare Source

v2.0.9

Compare Source

v2.0.8

Compare Source

  • fix: do not escape custom templates in command replacement (#​1213) by @​joevin-sql-docto

v2.0.7

Compare Source

  • fix: prefer using lefthook from the $PATH (#​1211) by @​joevin-sql-docto

v2.0.6

Compare Source

  • feat: save original executable location in hooks (#​1208) by @​mrexox
  • docs: encourage python install using pipx (#​1207) by @​franzramadhan

v2.0.5

Compare Source

  • feat: add optional args to scripts (#​1206) by @​mrexox
  • deps: November 2025 (#​1200) by @​mrexox
  • chore: upgrade golangci-lint to 2.6.1, add modernize (#​1190) by @​scop
  • chore: publish artifact attestations (#​1189) by @​scop

v2.0.4

Compare Source

  • fix: glob_matcher jsonschema values
  • feat: add optional standard glob matcher (doublestar) (#​1188) by @​jasonwbarnett

v2.0.3

Compare Source

v2.0.2

Compare Source

  • fix: add mutex lock before all git commands (#​1178) by @​mrexox

v2.0.1

Compare Source

v2.0.0

Compare Source

Breaking changes

  • exclude option no longer accepts regexp, only globs.
  • skip_output option is dropped, use output instead.
  • Some CLI arguments have changed their names to make it more consistent. See lefthook run -h for details.
  • for only and skip options with - run: '...' values the command executer was changed to Bourne Shell.

Commits

  • fix: accept --fail-on-changes=false as override value (#​1168) by @​mrexox
  • feat: [breaking] use sh as command executor on Windows (#​1166) by @​mrexox
  • refactor: [breaking] drop support for exclude regexp (#​1162) by @​mrexox
  • refactor: [breaking] drop deprecated skip_output option (#​1159) by @​mrexox
  • refactor: [breaking] use another cli framework (#​1155) by @​mrexox

Configuration

📅 Schedule: (UTC)

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


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [lefthook](https://github.com/evilmartians/lefthook) | [`^1.10.8` → `^2.0.0`](https://renovatebot.com/diffs/npm/lefthook/1.13.6/2.2.1) | ![age](https://developer.mend.io/api/mc/badges/age/npm/lefthook/2.2.1?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lefthook/1.13.6/2.2.1?slim=true) | --- ### Release Notes <details> <summary>evilmartians/lefthook (lefthook)</summary> ### [`v2.2.1`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#221) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.2.0...v2.2.1) - feat: support php composer ([#&#8203;1583](https://github.com/evilmartians/lefthook/pull/1583)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: generate different patch names when in a worktree ([#&#8203;1582](https://github.com/evilmartians/lefthook/pull/1582)) by [@&#8203;mrexox](https://github.com/mrexox) - refactor: cache paths in wrapper ([#&#8203;1570](https://github.com/evilmartians/lefthook/pull/1570)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.2.0`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#220) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.17...v2.2.0) - fix: don't write an install-time lefthook path into AI hook configs ([#&#8203;1544](https://github.com/evilmartians/lefthook/pull/1544)) by [@&#8203;anandghegde](https://github.com/anandghegde) - docs: publish JSON schema at lefthook.dev/schema.json ([#&#8203;1579](https://github.com/evilmartians/lefthook/pull/1579)) by [@&#8203;BUTTERFINGERS7498](https://github.com/BUTTERFINGERS7498) - fix: pass --output path to git diff as a single argument ([#&#8203;1581](https://github.com/evilmartians/lefthook/pull/1581)) by [@&#8203;cpruijsen](https://github.com/cpruijsen) - fix: ignore trailing NUL in --files-from-stdin ([#&#8203;1574](https://github.com/evilmartians/lefthook/pull/1574)) by [@&#8203;jasonwbarnett](https://github.com/jasonwbarnett) - deps: October 2026 ([#&#8203;1571](https://github.com/evilmartians/lefthook/pull/1571)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.17`](https://github.com/evilmartians/lefthook/releases/tag/v2.1.17) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.16...v2.1.17) #### Changelog - [`8d8073d`](https://github.com/evilmartians/lefthook/commit/8d8073d427fac49cc982919f5280b295645d196d) fix: diff push files against the merge base with the default branch ([#&#8203;1565](https://github.com/evilmartians/lefthook/issues/1565)) - [`c12bccd`](https://github.com/evilmartians/lefthook/commit/c12bccd193f43a8419038787bd83b12fe3a4470c) fix: don't hash submodules when checking fail\_on\_changes ([#&#8203;1566](https://github.com/evilmartians/lefthook/issues/1566)) - [`03225ef`](https://github.com/evilmartians/lefthook/commit/03225efde40226b14459e901707fbd988d62fcc0) refactor: naming of helpers ([#&#8203;1568](https://github.com/evilmartians/lefthook/issues/1568)) - [`66746ac`](https://github.com/evilmartians/lefthook/commit/66746ace996c72ac31b3cb4a70af85607568baf4) refactor: working with git ([#&#8203;1564](https://github.com/evilmartians/lefthook/issues/1564)) ### [`v2.1.16`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2116) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.15...v2.1.16) - fix: test staging fixed files with partially staged by [@&#8203;mrexox](https://github.com/mrexox) - fix: preserve unrelated unstaged changes on conflict ([#&#8203;1483](https://github.com/evilmartians/lefthook/pull/1483)) by [@&#8203;Sakshamm-Goyal](https://github.com/Sakshamm-Goyal) - deps: bump mod and text deps to resolve CVEs ([#&#8203;1560](https://github.com/evilmartians/lefthook/pull/1560)) by [@&#8203;devindavies](https://github.com/devindavies) - ci: refactor publishing scripts ([#&#8203;1559](https://github.com/evilmartians/lefthook/pull/1559)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.15`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2115) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.14...v2.1.15) - fix: do not pipe stdin into post-checkout git-lfs hook ([#&#8203;1523](https://github.com/evilmartians/lefthook/pull/1523)) by [@&#8203;rwinkelman](https://github.com/rwinkelman) - fix: remove color blending ([#&#8203;1558](https://github.com/evilmartians/lefthook/pull/1558)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: resolve push-files fallback against the remote-tracking ref ([#&#8203;1485](https://github.com/evilmartians/lefthook/pull/1485)) by [@&#8203;hamodywe](https://github.com/hamodywe) - test: regression for valid fish shell completion output ([#&#8203;1527](https://github.com/evilmartians/lefthook/pull/1527)) by [@&#8203;rwinkelman](https://github.com/rwinkelman) - fix: sanitize slashes in remote ref when building the checkout dir name ([#&#8203;1486](https://github.com/evilmartians/lefthook/pull/1486)) by [@&#8203;hamodywe](https://github.com/hamodywe) - fix: quote paths in the generated hook shim ([#&#8203;1509](https://github.com/evilmartians/lefthook/pull/1509)) by [@&#8203;addielaruee](https://github.com/addielaruee) - feat: propagate forced colors to hook commands via CLICOLOR\_FORCE ([#&#8203;1547](https://github.com/evilmartians/lefthook/pull/1547)) by [@&#8203;Yash121l](https://github.com/Yash121l) ### [`v2.1.14`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#21132114-2026-09-14) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.12...v2.1.14) - fix: error when --job/--command matches nothing ([#&#8203;1512](https://github.com/evilmartians/lefthook/pull/1512)) by [@&#8203;nityanand123gupta](https://github.com/nityanand123gupta) - fix: disable tty things when stdout is not TTY ([#&#8203;1545](https://github.com/evilmartians/lefthook/pull/1545)) by [@&#8203;mrexox](https://github.com/mrexox) - docs: document files inheritance for grouped jobs ([#&#8203;1536](https://github.com/evilmartians/lefthook/pull/1536)) by [@&#8203;chiliec](https://github.com/chiliec) - fix: force colors when colors are explicitly enabled ([#&#8203;1538](https://github.com/evilmartians/lefthook/pull/1538)) by [@&#8203;Yash121l](https://github.com/Yash121l) - fix: resolve file\_types paths from the repo root ([#&#8203;1537](https://github.com/evilmartians/lefthook/pull/1537)) by [@&#8203;Yash121l](https://github.com/Yash121l) - fix: don't force-install hooks from the npm postinstall ([#&#8203;1510](https://github.com/evilmartians/lefthook/pull/1510)) by [@&#8203;hamodywe](https://github.com/hamodywe) - docs: quote template run examples ([#&#8203;1472](https://github.com/evilmartians/lefthook/pull/1472)) by [@&#8203;Guflly](https://github.com/Guflly) ### [`v2.1.12`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2112-2026-08-28) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.10...v2.1.12) - fix: fail the hook when staging fixed files errors ([#&#8203;1484](https://github.com/evilmartians/lefthook/pull/1484)) by [@&#8203;teddytennant](https://github.com/teddytennant) - fix: LEFTHOOK\_OUTPUT precedence ([#&#8203;1506](https://github.com/evilmartians/lefthook/pull/1506)) by [@&#8203;Yuki9814](https://github.com/Yuki9814) - ci: fix npm publishing by bumping Node to 24 ([#&#8203;1508](https://github.com/evilmartians/lefthook/pull/1508)) by [@&#8203;mariokresic](https://github.com/mariokresic) ### [`v2.1.10`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2110-2026-07-08) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.9...v2.1.10) - deps: July 2026 ([#&#8203;1463](https://github.com/evilmartians/lefthook/pull/1463)) by [@&#8203;mrexox]() - feat: AI coding agents integration ([#&#8203;1448](https://github.com/evilmartians/lefthook/pull/1448)) by [@&#8203;viralpraxis]() - docs: fix language ([#&#8203;1453](https://github.com/evilmartians/lefthook/pull/1453)) by [@&#8203;pflanze]() - fix: make test suite stable when `NO_COLOR` is set ([#&#8203;1449](https://github.com/evilmartians/lefthook/pull/1449)) by [@&#8203;viralpraxis]() - deps: June 2026 ([#&#8203;1447](https://github.com/evilmartians/lefthook/pull/1447)) by [@&#8203;mrexox]() - deps: migrate shellescape to al.essio.dev/pkg/shellescape ([#&#8203;1443](https://github.com/evilmartians/lefthook/pull/1443)) by [@&#8203;maguowei]() - docs: upgrade docmd ([#&#8203;1442](https://github.com/evilmartians/lefthook/pull/1442)) by [@&#8203;mrexox]() - docs: use single quotes in example to handle filepaths with $ by [@&#8203;mrexox]() ### [`v2.1.9`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#219-2026-05-29) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.8...v2.1.9) - fix: update hooks path after resetting ([#&#8203;1431](https://github.com/evilmartians/lefthook/pull/1431)) by [@&#8203;mrexox]() - deps: May 2026 ([#&#8203;1415](https://github.com/evilmartians/lefthook/pull/1415)) by [@&#8203;mrexox]() ### [`v2.1.8`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#218-2026-05-19) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.7...v2.1.8) - fix: do not warn if local hooks path is equal to default hooks path ([#&#8203;1421](https://github.com/evilmartians/lefthook/pull/1421)) by [@&#8203;mrexox]() ### [`v2.1.7`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#217) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.6...v2.1.7) - fix: don't hash submodules when checking fail\_on\_changes ([#&#8203;1566](https://github.com/evilmartians/lefthook/pull/1566)) by [@&#8203;tiagovilasboas](https://github.com/tiagovilasboas) - refactor: naming of helpers ([#&#8203;1568](https://github.com/evilmartians/lefthook/pull/1568)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: diff push files against the merge base with the default branch ([#&#8203;1565](https://github.com/evilmartians/lefthook/pull/1565)) by [@&#8203;mrexox](https://github.com/mrexox) - refactor: working with git ([#&#8203;1564](https://github.com/evilmartians/lefthook/pull/1564)) by [@&#8203;mrexox](https://github.com/mrexox) - docs: add protect-branch example to docs ([#&#8203;1563](https://github.com/evilmartians/lefthook/pull/1563)) by [@&#8203;vim89](https://github.com/vim89) ### [`v2.1.6`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#216-2026-04-16) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.5...v2.1.6) - fix: normalize lefthook path for sh script ([#&#8203;1383](https://github.com/evilmartians/lefthook/pull/1383)) by [@&#8203;AndrewKahr](https://github.com/AndrewKahr) - fix: normalize `root` to always include trailing slash before path replacement ([#&#8203;1381](https://github.com/evilmartians/lefthook/pull/1381)) by [@&#8203;Copilot](https://github.com/Copilot) - fix: skip pty allocation when stdout is not a terminal ([#&#8203;1393](https://github.com/evilmartians/lefthook/pull/1393)) by [@&#8203;technicalpickles](https://github.com/technicalpickles) - docs: upgrade docmd ([#&#8203;1391](https://github.com/evilmartians/lefthook/pull/1391)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: log full scoped name for skipped jobs ([#&#8203;1291](https://github.com/evilmartians/lefthook/pull/1291)) by [@&#8203;scop](https://github.com/scop) - fix: do not pipe stdout and stderr ([#&#8203;1382](https://github.com/evilmartians/lefthook/pull/1382)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.5`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#215-2026-04-06) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.4...v2.1.5) - deps: April 2026 ([#&#8203;1375](https://github.com/evilmartians/lefthook/pull/1375)) by [@&#8203;mrexox]() - docs: update documentation and docs for claude ([#&#8203;1373](https://github.com/evilmartians/lefthook/pull/1373)) by [@&#8203;mrexox]() - fix: git repository merge issue ([#&#8203;1372](https://github.com/evilmartians/lefthook/pull/1372)) by [@&#8203;mrexox]() - fix: use pre-push stdin for push file detection ([#&#8203;1368](https://github.com/evilmartians/lefthook/pull/1368)) by [@&#8203;supitsdu]() - chore: small cleanup ([#&#8203;1370](https://github.com/evilmartians/lefthook/pull/1370)) by [@&#8203;mrexox]() - fix: prevent `lefthook run` from overwriting global hooks ([#&#8203;1371](https://github.com/evilmartians/lefthook/pull/1371)) by [@&#8203;ivy]() - chore: upgrade to 2.11.4 ([#&#8203;1362](https://github.com/evilmartians/lefthook/pull/1362)) by [@&#8203;scop]() - chore: fix golangci-lint version lookup by [@&#8203;mrexox]() - chore: move golangci-lint version to .tool-versions ([#&#8203;1349](https://github.com/evilmartians/lefthook/pull/1349)) by [@&#8203;scop]() ### [`v2.1.4`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#214-2026-03-12) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.3...v2.1.4) - pkg: fix scripts ([#&#8203;1348](https://github.com/evilmartians/lefthook/pull/1348)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: bring back {lefthook\_job\_name} template ([#&#8203;1347](https://github.com/evilmartians/lefthook/pull/1347)) by [@&#8203;mrexox](https://github.com/mrexox) - pkg: refactor packaging (2) ([#&#8203;1346](https://github.com/evilmartians/lefthook/pull/1346)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: separate more commands' non-option args with -- ([#&#8203;1339](https://github.com/evilmartians/lefthook/pull/1339)) by [@&#8203;scop](https://github.com/scop) - docs: change logo to point to landing page instead of itself ([#&#8203;1343](https://github.com/evilmartians/lefthook/pull/1343)) by [@&#8203;igas](https://github.com/igas) - pkg: make it easier to read ([#&#8203;1340](https://github.com/evilmartians/lefthook/pull/1340)) by [@&#8203;mrexox](https://github.com/mrexox) - pkg: refactor packaging scripts ([#&#8203;1308](https://github.com/evilmartians/lefthook/pull/1308)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.3`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#213-2026-03-07) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.2...v2.1.3) - chore: switch artifact attestations gen to actions/attest v4 ([#&#8203;1338](https://github.com/evilmartians/lefthook/pull/1338)) by [@&#8203;scop](https://github.com/scop) - chore: describe ENV variables usage in CLI help output ([#&#8203;1337](https://github.com/evilmartians/lefthook/pull/1337)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: support git debug versions ([#&#8203;1334](https://github.com/evilmartians/lefthook/pull/1334)) by [@&#8203;mrexox](https://github.com/mrexox) - deps: March 2026 ([#&#8203;1330](https://github.com/evilmartians/lefthook/pull/1330)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: update minimum go version ([#&#8203;1331](https://github.com/evilmartians/lefthook/pull/1331)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.2`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#212-2026-03-01) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.1...v2.1.2) - feat: introduce setup hook option ([#&#8203;1326](https://github.com/evilmartians/lefthook/pull/1326)) by [@&#8203;mrexox](https://github.com/mrexox) - refactor: recovering logic for changesets ([#&#8203;1324](https://github.com/evilmartians/lefthook/pull/1324)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: rollback auto-staged changes if unwanted changes detected ([#&#8203;1251](https://github.com/evilmartians/lefthook/pull/1251)) by [@&#8203;tuchfarber](https://github.com/tuchfarber) - docs: improve docs ui ([#&#8203;1323](https://github.com/evilmartians/lefthook/pull/1323)) by [@&#8203;mrexox](https://github.com/mrexox) - docs: additional skip example and note about reinstallation ([#&#8203;1319](https://github.com/evilmartians/lefthook/pull/1319)) by [@&#8203;iloveitaly](https://github.com/iloveitaly) - docs: fix incorrect --verbose usage ([#&#8203;1318](https://github.com/evilmartians/lefthook/pull/1318)) by [@&#8203;iloveitaly](https://github.com/iloveitaly) - pkg: fix python packages publishing by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.1`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2116) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.1.0...v2.1.1) - fix: test staging fixed files with partially staged by [@&#8203;mrexox](https://github.com/mrexox) - fix: preserve unrelated unstaged changes on conflict ([#&#8203;1483](https://github.com/evilmartians/lefthook/pull/1483)) by [@&#8203;Sakshamm-Goyal](https://github.com/Sakshamm-Goyal) - deps: bump mod and text deps to resolve CVEs ([#&#8203;1560](https://github.com/evilmartians/lefthook/pull/1560)) by [@&#8203;devindavies](https://github.com/devindavies) - ci: refactor publishing scripts ([#&#8203;1559](https://github.com/evilmartians/lefthook/pull/1559)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.1.0`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#210-2026-02-03) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.16...v2.1.0) - ci: skip Python publishing by \[[@&#8203;mrexox](https://github.com/mrexox)]\[] - chore: fancy wording and indentation for hits by \[[@&#8203;mrexox](https://github.com/mrexox)]\[] - feat: check core.hooksPath when lefthook install ([#&#8203;1292](https://github.com/evilmartians/lefthook/pull/1292)) by \[[@&#8203;joevin-slq-docto](https://github.com/joevin-slq-docto)]\[] - feat: allow installing non-git hooks ([#&#8203;1301](https://github.com/evilmartians/lefthook/pull/1301)) by \[[@&#8203;mrexox](https://github.com/mrexox)]\[] ### [`v2.0.16`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2016-2026-01-27) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.15...v2.0.16) - chore: timeout cleanup ([#&#8203;1297](https://github.com/evilmartians/lefthook/pull/1297)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: add timeout argument ([#&#8203;1263](https://github.com/evilmartians/lefthook/pull/1263)) by [@&#8203;franzramadhan](https://github.com/franzramadhan) - deps: January 2026 ([#&#8203;1285](https://github.com/evilmartians/lefthook/pull/1285)) by [@&#8203;mrexox](https://github.com/mrexox) - pkg: pack one binary per platform into python wheels ([#&#8203;1181](https://github.com/evilmartians/lefthook/pull/1181)) by [@&#8203;danfimov](https://github.com/danfimov) - fix: accept string in file\_types ([#&#8203;1288](https://github.com/evilmartians/lefthook/pull/1288)) by [@&#8203;scop](https://github.com/scop) - docs: elaborate on when to refetch and failure mode ([#&#8203;1287](https://github.com/evilmartians/lefthook/pull/1287)) by [@&#8203;scop](https://github.com/scop) - fix: try reading direct file instead of all remotes ([#&#8203;1243](https://github.com/evilmartians/lefthook/pull/1243)) by [@&#8203;mrexox](https://github.com/mrexox) - perf: \[**breaking**] skip ghost hook when hooks are already configured ([#&#8203;1255](https://github.com/evilmartians/lefthook/pull/1255)) by [@&#8203;WooWan](https://github.com/WooWan) - chore: upgrade to 2.8.0 ([#&#8203;1278](https://github.com/evilmartians/lefthook/pull/1278)) by [@&#8203;scop](https://github.com/scop) ### [`v2.0.15`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2015-2026-01-13) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.14...v2.0.15) - docs: clarify remote settings ([#&#8203;1260](https://github.com/evilmartians/lefthook/pull/1260)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: skip scripts if args given with empty file template ([#&#8203;1277](https://github.com/evilmartians/lefthook/pull/1277)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.0.14`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2014-2026-01-12) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.13...v2.0.14) - fix: skip if any files template is empty ([#&#8203;1275](https://github.com/evilmartians/lefthook/pull/1275)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: add jsonc support ([#&#8203;1274](https://github.com/evilmartians/lefthook/pull/1274)) by [@&#8203;mrexox](https://github.com/mrexox) - deps: switch from gopkg.in/yaml.v3 to go.yaml.in/yaml/v3 ([#&#8203;1261](https://github.com/evilmartians/lefthook/pull/1261)) by [@&#8203;scop](https://github.com/scop) - fix: don't install custom hooks to hooks dir ([#&#8203;1246](https://github.com/evilmartians/lefthook/pull/1246)) by [@&#8203;scop](https://github.com/scop) - deps: December 2025 ([#&#8203;1209](https://github.com/evilmartians/lefthook/pull/1209)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.0.13`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2013-2025-12-26) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.12...v2.0.13) - fix: set extends to empty slice after loading remotes ([#&#8203;1259](https://github.com/evilmartians/lefthook/pull/1259)) by [@&#8203;mrexox]() - fix: allow custom hooks in JSON schema by updating generator ([#&#8203;1250](https://github.com/evilmartians/lefthook/pull/1250)) by [@&#8203;jeonghoon11]() - docs: remove duplicate config: false description ([#&#8203;1245](https://github.com/evilmartians/lefthook/pull/1245)) by [@&#8203;scop]() - chore: add more tests ([#&#8203;1244](https://github.com/evilmartians/lefthook/pull/1244)) by [@&#8203;mrexox]() ### [`v2.0.12`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2012-2025-12-15) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.11...v2.0.12) - chore: small changes on diff printing ([#&#8203;1242](https://github.com/evilmartians/lefthook/pull/1242)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: ability to show diff when failing on changes ([#&#8203;1227](https://github.com/evilmartians/lefthook/pull/1227)) by [@&#8203;scop](https://github.com/scop) - fix: make short status parser more robust ([#&#8203;1236](https://github.com/evilmartians/lefthook/pull/1236)) by [@&#8203;scop](https://github.com/scop) - docs: fix readme ([#&#8203;1235](https://github.com/evilmartians/lefthook/pull/1235)) by [@&#8203;matdibu](https://github.com/matdibu) ### [`v2.0.11`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2011-2025-12-12) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.10...v2.0.11) - feat: refetch and cleanup on ref change ([#&#8203;1210](https://github.com/evilmartians/lefthook/pull/1210)) by [@&#8203;mrexox](https://github.com/mrexox) - ci: npm trusted publishing ([#&#8203;1234](https://github.com/evilmartians/lefthook/pull/1234)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: more rudimentary shell completions ([#&#8203;1230](https://github.com/evilmartians/lefthook/pull/1230)) by [@&#8203;scop](https://github.com/scop) ### [`v2.0.10`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2010-2025-12-12) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.9...v2.0.10) - feat: add no\_auto\_install to lefthook.yml ([#&#8203;1231](https://github.com/evilmartians/lefthook/pull/1231)) by [@&#8203;pavelzw](https://github.com/pavelzw) - fix: skip if empty files template ([#&#8203;1233](https://github.com/evilmartians/lefthook/pull/1233)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.0.9`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#209-2025-12-08) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.8...v2.0.9) - fix: skip pre commit hook if no staged files ([#&#8203;1229](https://github.com/evilmartians/lefthook/pull/1229)) by [@&#8203;mrexox](https://github.com/mrexox) - fix: do not try to hash-object directories ([#&#8203;1220](https://github.com/evilmartians/lefthook/pull/1220)) by [@&#8203;scop](https://github.com/scop) - fix: check and report Scanner errors ([#&#8203;1222](https://github.com/evilmartians/lefthook/pull/1222)) by [@&#8203;scop](https://github.com/scop) - refactor: command executor tweaks ([#&#8203;1224](https://github.com/evilmartians/lefthook/pull/1224)) by [@&#8203;scop](https://github.com/scop) - refactor: remove some redundant code ([#&#8203;1221](https://github.com/evilmartians/lefthook/pull/1221)) by [@&#8203;scop](https://github.com/scop) - fix: improve separation of options and filenames for more git commands ([#&#8203;1225](https://github.com/evilmartians/lefthook/pull/1225)) by [@&#8203;scop](https://github.com/scop) - chore: upgrade golangci-lint to 2.7.1, add godoclint ([#&#8203;1223](https://github.com/evilmartians/lefthook/pull/1223)) by [@&#8203;scop](https://github.com/scop) - chore: remove unnecessary .svg executable permissions ([#&#8203;1219](https://github.com/evilmartians/lefthook/pull/1219)) by [@&#8203;scop](https://github.com/scop) ### [`v2.0.8`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#208-2025-12-05) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.7...v2.0.8) - fix: do not escape custom templates in command replacement ([#&#8203;1213](https://github.com/evilmartians/lefthook/pull/1213)) by [@&#8203;joevin-sql-docto]() ### [`v2.0.7`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#207-2025-12-04) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.6...v2.0.7) - fix: prefer using lefthook from the $PATH ([#&#8203;1211](https://github.com/evilmartians/lefthook/pull/1211)) by [@&#8203;joevin-sql-docto]() ### [`v2.0.6`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#206-2025-12-03) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.5...v2.0.6) - feat: save original executable location in hooks ([#&#8203;1208](https://github.com/evilmartians/lefthook/pull/1208)) by [@&#8203;mrexox]() - docs: encourage python install using pipx ([#&#8203;1207](https://github.com/evilmartians/lefthook/pull/1207)) by [@&#8203;franzramadhan]() ### [`v2.0.5`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#205-2025-12-02) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.4...v2.0.5) - feat: add optional args to scripts ([#&#8203;1206](https://github.com/evilmartians/lefthook/pull/1206)) by [@&#8203;mrexox]() - deps: November 2025 ([#&#8203;1200](https://github.com/evilmartians/lefthook/pull/1200)) by [@&#8203;mrexox]() - chore: upgrade golangci-lint to 2.6.1, add modernize ([#&#8203;1190](https://github.com/evilmartians/lefthook/pull/1190)) by [@&#8203;scop]() - chore: publish artifact attestations ([#&#8203;1189](https://github.com/evilmartians/lefthook/pull/1189)) by [@&#8203;scop]() ### [`v2.0.4`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#204-2025-11-13) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.3...v2.0.4) - fix: glob\_matcher jsonschema values - feat: add optional standard glob matcher (doublestar) ([#&#8203;1188](https://github.com/evilmartians/lefthook/pull/1188)) by [@&#8203;jasonwbarnett]() ### [`v2.0.3`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#203-2025-11-10) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.2...v2.0.3) - feat: fail\_on\_changes non-ci option ([#&#8203;1186](https://github.com/evilmartians/lefthook/pull/1186)) by [@&#8203;scop](https://github.com/scop) - deps: update mimetypes ([#&#8203;1185](https://github.com/evilmartians/lefthook/pull/1185)) by [@&#8203;mrexox](https://github.com/mrexox) ### [`v2.0.2`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#202-2025-10-29) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.1...v2.0.2) - fix: add mutex lock before all git commands ([#&#8203;1178](https://github.com/evilmartians/lefthook/pull/1178)) by [@&#8203;mrexox]() ### [`v2.0.1`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#2016-2026-01-27) [Compare Source](https://github.com/evilmartians/lefthook/compare/v2.0.0...v2.0.1) - chore: timeout cleanup ([#&#8203;1297](https://github.com/evilmartians/lefthook/pull/1297)) by [@&#8203;mrexox](https://github.com/mrexox) - feat: add timeout argument ([#&#8203;1263](https://github.com/evilmartians/lefthook/pull/1263)) by [@&#8203;franzramadhan](https://github.com/franzramadhan) - deps: January 2026 ([#&#8203;1285](https://github.com/evilmartians/lefthook/pull/1285)) by [@&#8203;mrexox](https://github.com/mrexox) - pkg: pack one binary per platform into python wheels ([#&#8203;1181](https://github.com/evilmartians/lefthook/pull/1181)) by [@&#8203;danfimov](https://github.com/danfimov) - fix: accept string in file\_types ([#&#8203;1288](https://github.com/evilmartians/lefthook/pull/1288)) by [@&#8203;scop](https://github.com/scop) - docs: elaborate on when to refetch and failure mode ([#&#8203;1287](https://github.com/evilmartians/lefthook/pull/1287)) by [@&#8203;scop](https://github.com/scop) - fix: try reading direct file instead of all remotes ([#&#8203;1243](https://github.com/evilmartians/lefthook/pull/1243)) by [@&#8203;mrexox](https://github.com/mrexox) - perf: \[**breaking**] skip ghost hook when hooks are already configured ([#&#8203;1255](https://github.com/evilmartians/lefthook/pull/1255)) by [@&#8203;WooWan](https://github.com/WooWan) - chore: upgrade to 2.8.0 ([#&#8203;1278](https://github.com/evilmartians/lefthook/pull/1278)) by [@&#8203;scop](https://github.com/scop) ### [`v2.0.0`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#200-2025-10-20) [Compare Source](https://github.com/evilmartians/lefthook/compare/v1.13.6...v2.0.0) **Breaking changes** - `exclude` option no longer accepts regexp, only globs. - `skip_output` option is dropped, use `output` instead. - Some CLI arguments have changed their names to make it more consistent. See `lefthook run -h` for details. - for `only` and `skip` options with `- run: '...'` values the command executer was changed to Bourne Shell. **Commits** - fix: accept --fail-on-changes=false as override value ([#&#8203;1168](https://github.com/evilmartians/lefthook/pull/1168)) by [@&#8203;mrexox]() - feat: \[**breaking**] use sh as command executor on Windows ([#&#8203;1166](https://github.com/evilmartians/lefthook/pull/1166)) by [@&#8203;mrexox]() - refactor: \[**breaking**] drop support for exclude regexp ([#&#8203;1162](https://github.com/evilmartians/lefthook/pull/1162)) by [@&#8203;mrexox]() - refactor: \[**breaking**] drop deprecated skip\_output option ([#&#8203;1159](https://github.com/evilmartians/lefthook/pull/1159)) by [@&#8203;mrexox]() - refactor: \[**breaking**] use another cli framework ([#&#8203;1155](https://github.com/evilmartians/lefthook/pull/1155)) by [@&#8203;mrexox]() </details> --- ### Configuration 📅 **Schedule**: (UTC) - 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS40Mi45IiwidXBkYXRlZEluVmVyIjoiNDMuMjYyLjMiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOltdfQ==-->
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/lefthook-2.x:renovate/lefthook-2.x
git switch renovate/lefthook-2.x

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff renovate/lefthook-2.x
git switch renovate/lefthook-2.x
git rebase master
git switch master
git merge --ff-only renovate/lefthook-2.x
git switch renovate/lefthook-2.x
git rebase master
git switch master
git merge --no-ff renovate/lefthook-2.x
git switch master
git merge --squash renovate/lefthook-2.x
git switch master
git merge --ff-only renovate/lefthook-2.x
git switch master
git merge renovate/lefthook-2.x
git push origin master
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LazyList/extension!10
No description provided.