chore(deps): update dependency prek to v0.4.14 #6

Open
opencode wants to merge 1 commit from renovate/prek-0.x into main
Collaborator

This PR contains the following updates:

Package Update Change
prek minor latest → 0.4.14

Release Notes

j178/prek (prek)

v0.4.14

Released on 2026-08-17.

Enhancements
  • Support check-yaml unsafe mode (#​2546)
Performance
  • Reuse allocations in common filters (#​2548)
Bug fixes
  • Accept non-finite floats in check-yaml (#​2545)
  • Allow comment-heavy YAML in check-yaml (#​2554)
  • Sanitize captured terminal output before replay (#​2552)
Contributors

v0.4.13

Released on 2026-08-10.

Highlights
Manage hook tools with mise

The new language: mise support lets hooks install tools using
mise in an isolated environment:

repos:
  - repo: local
    hooks:
      - id: golangci-lint
        name: golangci-lint
        language: mise
        additional_dependencies: ["aqua:golangci/golangci-lint@2"]
        entry: golangci-lint run --fast-only ./...
        pass_filenames: false
Run commands in hook environments

The new prek exec subcommand can run an explicit command in a configured
hook's prepared environment. For example, the hook above makes its managed
binary available to this command:

$ prek exec golangci-lint -- golangci-lint --version
Enhancements
  • Add mise language support (#​2540)
  • Add deny-filename-pattern and require-filename-pattern hooks (#​2488)
  • Add prek exec for running commands in a hook environment (#​2478)
  • Add yaml-language-server: comment to YAML sample config (#​2486)
  • Make prek cache size output terminal-aware (#​2508)
  • Match file regexes against path bytes (#​2541)
  • Show hook aliases in run output (#​2497)
  • Show hook descriptions in run output (#​2490)
Performance
  • Avoid env cache scans for skipped hooks (#​2502)
  • Cache Node version queries (#​2500)
Bug fixes
  • Fix Node hook installation with npm 11 (#​2487)
  • Isolate dependency installs from inherited Git repository state (#​2506)
Documentation
  • Document combined group filtering (#​2495)
  • Explain what prek does in README (#​2507)
  • Refresh "Why prek" highlights (#​2474)
Contributors

v0.4.12

Released on 2026-08-03.

Enhancements
  • Add --require-group for hook group intersections (#​2472)
  • Align fast-path and builtin pre-commit hooks (#​2433)
  • Do not shuffle file list for verbose output (#​2431)
  • Improve top-level command descriptions (#​2429)
  • Install uv from Astral CDN and drop source racing (#​2455)
  • Make prek install --force bypass external hooks paths (#​2437)
  • Show builtin hook flags in verbose list output (#​2427)
  • Verify uv release archive checksums (#​2456)
Performance
  • Precompute file tags in parallel (#​2440)
  • Skip diffs after known hook modifications (#​2447)
  • Skip worktree diffs for read-only languages (#​2432)
  • Track builtin hook file changes directly (#​2404)
Bug fixes
  • Use full object IDs in diff snapshots (#​2448)
Documentation
  • Add a multi-repository configuration example (#​2434)
  • Rewrite benchmark documentation (#​2469)
Contributors

v0.4.10

Released on 2026-07-16.

Enhancements
  • Add PHP language support (#​2314)
  • Add freeze option to update settings (#​2323)
  • Add tag filters to update configuration (#​2354)
  • Identify 'mts' and 'cts' as TypeScript files (#​2209)
  • Publish Alpine Docker images (#​2352)
  • Support builtin and meta in try-repo (#​2350)
Bug fixes
  • Fix Python discovery order (#​2348)
  • Fix Windows progress rendering (#​2328)
  • Preserve configured repo values for updates (#​2324)
  • Scope synthetic GIT_WORK_TREE to git commands (#​2356)
Documentation
  • Expand common workflows guide (#​2351)
Contributors

v0.4.4

Released on 2026-06-04.

Highlights

0.4.4 makes prek run easier to watch and easier to slice.

Hook stream output now shows a small live preview under the running hook in the
progress UI. Long-running hooks no longer look stuck while they are producing
logs, and failed hooks are easier to diagnose because recent output is already
visible before the final result.

The new group selector lets a single config support different workflows. Tag
hooks with groups, then select or exclude those groups at run time:

repos:
  - repo: local
    hooks:
      - id: format
        name: Format Python
        language: system
        entry: ruff format
        groups: [format, ci]

      - id: lint
        name: Lint Python
        language: system
        entry: ruff check
        groups: [lint, ci]
prek run --all-files --group ci
prek run --all-files --no-group format

This is useful when local development, CI, slow validation, or project-specific
checks need different hook sets without splitting the config.

Enhancements
  • Add hook group filters to prek run (#​2141)
  • Delay hook output preview rendering (#​2140)
  • Stream hook output in progress UI (#​2136)
Bug fixes
  • Fix intent-to-add stash restore (#​2143)
Documentation
  • Document hook stage file input (#​2147)
Contributors

v0.3.11

Released on 2026-04-27.

Highlights

Hook entries now have an explicit shell option for shell snippets. Set
shell: sh, bash, pwsh, powershell, or cmd when an entry should be
evaluated by that shell; leaving it unset keeps prek's direct argv execution.

prek auto-update can now filter tag candidates before choosing an update.
Both options take glob patterns: use --include-tag to only consider matching
tag names, and --exclude-tag to skip matching tags such as moving tags or
prereleases.

Enhancements
  • Add auto-update --exclude-repo <repo> to skip repos (#​1983)
  • Add auto-update --exit-code to exit with non-zero on updates (#​2002)
  • Add auto-update --include-tag <pattern>/--exclude-tag <pattern> to filter tags (#​1984)
  • Adds an explicit shell hook option for entries that should run as shell source (#​2004)
  • Make --hook-dir optional for hook-impl (#​1989)
  • Skip shim warning when --script-version is missing (#​1990)
Bug fixes
  • Install Ruby executable in gem bin (#​2017)
  • Use dedicated Android npm package (#​1982)
  • Use stable repo keys without breaking cached clones (#​1995)
Documentation
  • Explain prek name (#​1980)
  • Clarify pass_filenames concurrency docs (#​1999)
  • Reorganize documentation references (#​2005)
  • Clarify hook author manifest env docs (#​1991)
  • docs: add Sentry to users list (#​1981)
Contributors

v0.3.10

Released on 2026-04-21.

Enhancements
  • Disallow rev for non-remote repos in schema (#​1964)
  • Hide up-to-date output in non-verbose mode (#​1942)
  • Improve merge conflict marker detection (#​1937)
  • Keep finished hooks visible (#​1967)
  • Preserve frozen comment spacing in auto-update (#​1945)
  • Reimplement @j178/prek npm package (#​1973)
Bug fixes
  • Prefer stable Rust toolchains (#​1974)
Documentation
  • Add SKILL.md for prek (#​1950)
  • Document gh skill install j178/prek prek to install prek skill for agents (#​1951)
  • Improve compatibility and migration docs (#​1940)
Other changes
Contributors

v0.3.9

Released on 2026-04-13.

Highlight

prek auto-update is now stricter about pinned revisions and more useful in CI.
It now keeps rev and # frozen: comments in sync, can detect
impostor commits when validating pinned SHAs,
and lets you use prek auto-update --check to fail on both available updates and frozen-ref
mismatches without rewriting the config.

Examples:

$ prek auto-update

# updates revs and repairs stale `# frozen:` comments

$ prek auto-update --freeze

# writes frozen SHAs with matching `# frozen: <tag>` comments

$ prek auto-update --check

# exits non-zero when updates are available, a `# frozen:` comment is stale,
# or a pinned SHA does not belong to the fetched upstream refs
Enhancements
  • Check and sync frozen comments during auto-update (#​1896)
  • Handle impostor commits in auto-update (#​1919)
  • Add experimental language: dotnet support (#​1871)
  • Honor repo and worktree core.hooksPath (#​1892)
  • Add prek run --no-fail-fast to override config file (#​1859)
  • Add forbid-new-submodules as builtin hook (#​1853)
  • Clean stale patch files in cache gc (#​1877)
  • Display auto-update results by config entry (#​1922)
  • Restrict patch directory permissions (#​1876)
  • Show tag names in auto-update --freeze output (#​1916)
  • Use a bitset for hook stages (#​1860)
Bug fixes
  • Canonicalize CWD and GIT_ROOT paths (#​1878)
  • Ensure quotes are added for non-string revisions in auto-update (#​1936)
Documentation
  • Update docs for case of hooks modifying files with a non-zero exit code (#​1879)
Contributors

v0.3.8

Released on 2026-03-23.

Enhancements
  • Add experimental language: deno support (#​1516)
  • Add pretty-format-json as builtin hook (#​915)
  • Add check-vcs-permalinks as builtin hook (#​1842)
  • Add check-illegal-windows-names as builtin hook (#​1841)
  • Add check-shebang-scripts-are-executable builtin hook (#​1847)
  • Add destroyed-symlinks builtin hook (#​1851)
  • Add file-contents-sorter as builtin hook (#​1846)
  • Add --all flag to prek uninstall (#​1817)
  • Improve file pattern parse errors (#​1829)
  • Validate uv binary after download (#​1825)
Bug fixes
  • Fix workspace-relative added file paths (#​1852)
  • Relax alias-anchor ratio check for check-yaml (#​1839)
Contributors

v0.3.6

Released on 2026-03-16.

Enhancements
  • Allow selectors for hook ids containing colons (#​1782)
  • Rename prek install-hooks to prek prepare-hooks and prek install --install-hooks to prek install --prepare-hooks (#​1766)
  • Retry auth-failed repo clones with terminal prompts enabled (#​1761)
Performance
  • Optimize detect_private_key by chunked reading and using aho-corasick (#​1791)
  • Optimize fix_byte_order_marker by shifting file contents in place (#​1790)
Bug fixes
  • Align stage defaulting behavior with pre-commit (#​1788)
  • Make sure child output is drained in the PTY subprocess (#​1768)
  • fix(golang): use GOTOOLCHAIN=local when probing system go (#​1797)
Documentation
  • Disambiguate “hook” terminology by renaming "Git hooks" to "Git shims" (#​1776)
  • Document compatibility with pre-commit (#​1767)
  • Update configuration.md with TOML 1.1 notes (#​1764)
Other changes
Contributors

v0.3.5

Released on 2026-03-09.

Enhancements
  • Add automatic Ruby download support using rv binaries (#​1668)
  • Adjust open file limit on process startup (#​1705)
  • Allow parallel gem retry (#​1732)
  • Enable system-proxy feature on reqwest (#​1738)
  • Expose --git-dir to force hook installation target (#​1723)
  • Pass --quiet, --verbose, and --no-progress through prek install into generated hook scripts (#​1753)
  • Respect core.sharedRepository for hook permissions (#​1755)
  • Support legacy mode hook script (#​1706)
  • rust: support cli: git dependency 4th segment package disambiguation (#​1747)
Bug fixes
  • Fix Python __main__.py entry (#​1741)
  • python: strip UV_SYSTEM_PYTHON from uv venv and pip install commands (#​1756)
Other changes
Contributors

v0.3.4

Released on 2026-02-28.

Enhancements
  • Allow pass_filenames to accept a positive integer (#​1698)
  • Install and compile gems in parallel (#​1674)
  • Sync identify file-type mappings with pre-commit identify (#​1660)
  • Use --locked for Rust cargo install commands (#​1661)
  • Add PREK_MAX_CONCURRENCY environment variable for configuring maximum concurrency (#​1697)
  • Add PREK_LOG_TRUNCATE_LIMIT environment variable for configuring log truncation (#​1679)
  • Add support for python -m prek (#​1686)
Bug fixes
  • Skip invalid Rust toolchains instead of failing (#​1699)
Performance
  • Bitset-based TagSet refactor: precompute tag masks and speed up hook type filtering (#​1665)
Documentation
  • Document winget install j178.Prek (#​1670)
Contributors

v0.3.0

Released on 2026-01-22.

Highlights
  • prek cache gc (also available via prek gc for pre-commit compatibility) is finally here! You can now run prek cache gc to clean up unused repos, hook envs and tool versions from prek cache.
  • language: bun is now supported, making it possible to write and run hooks with Bun.
Enhancements
  • Implement prek cache gc (#​1410)

    • Bootstrap tracking configs from workspace cache (#​1417)
    • Show total size prek cache gc removed (#​1418)
    • Show accurate repo and hook details in prek cache gc -v (#​1420)
    • prek cache gc remove specific unused tool versions (#​1422)
    • Fix unused tool versions not removed in prek cache gc (#​1436)
  • Add language: bun support (#​1411)

    • Use git ls-remote --tags to list bun versions (#​1439)
  • Accept --stage as an alias for --hook-stage in prek run (#​1398)

  • Expand ~ tilde in PREK_HOME (#​1431)

  • Support refs to trees (#​1449)

Bug fixes
  • Avoid file lock warning for in-process contention (#​1406)
  • Resolve relative repo paths from config file directory (#​1443)
  • fix: use split() instead of resolve(None) for builtin hook argument parsing (#​1415)
Documentation
  • Add simple-icons and ast-grep to the users of prek (#​1403)
  • Improve JSON schema for repo field (#​1432)
  • Improve JSON schema for builtin and meta hooks (#​1427)
  • Add pronunciation entry to FAQ (#​1442)
  • Add commitizen to the list of projects using prek (#​1413)
  • Move docs to zensical (#​1421)
Other Changes
Contributors

v0.2.30

Released on 2026-01-18.

Enhancements
  • Build binaries using minimal-size profile (#​1376)
  • Check for duplicate keys in check-json5 builtin hook (#​1387)
  • Preserve quoting style in auto-update (#​1379)
  • Show warning if file lock acquiring blocks for long time (#​1353)
  • Singleflight Python health checks with cached interpreter info (#​1381)
Bug fixes
  • Do not resolve entry for docker_image (#​1386)
  • Fix command lookup on Windows (#​1383)
Documentation
  • Document language support details (#​1380)
  • Document that check-json5 now rejects duplicate keys (#​1391)
Contributors

v0.2.20

Released on 2025-12-08.

Highlights

In this release:

  • Rust hooks are now fully supported with automatic toolchain management, including package discovery in virtual workspaces. Big thanks to @​lmmx for driving this.
  • Added a prek cache size subcommand so you can quickly see how much cache space prek is using. Thanks @​MatthewMckee4!
  • Nested workspaces are easier to reason about: set orphan: true on a project to isolate it from parents so its files are processed only once.

Want to show your project runs on prek? Add our README badge to your docs or repo homepage: prek

Enhancements
  • Support Rust language (#​989)
    • Refactor Rust toolchain management (#​1198)
    • Add support for finding packages in virtual workspaces (#​1180)
  • Add prek cache size command (#​1183)
  • Support orphan projects (#​1129)
  • Fallback to manual stage for hooks specified directly in command line (#​1185)
  • Make go module cache read-writable (thus deletable) (#​1164)
  • Provide more information when validating configs and manifests (#​1182)
  • Improve error message for invalid number of arguments to hook-impl (#​1196)
Bug fixes
  • Disable git terminal prompts (#​1193)
  • Prevent post-checkout deadlock when cloning repos (#​1192)
  • Prevent color output when redirecting stdout to a file (#​1159)
Documentation
  • Add MacPorts to installation methods (#​1157)
  • Add a FAQ page explaining prek install --install--hooks (#​1162)
Other changes
  • Add prek: enabled repo badge (#​1171)
  • Add favicon for docs website (#​1187)
Contributors

v0.2.19

Released on 2025-11-26.

Performance
  • Simplify fix_byte_order_marker hook (#​1136)
  • Simplify trailing-whitespace hook to improve performance (#​1135)
Bug fixes
  • Close stdin for hook subcommands (#​1155)
  • Fix parsing Python interpreter info containing non-UTF8 chars (#​1141)
Contributors

v0.2.18

Released on 2025-11-21.

Highlights

In this release, prek adds a new special repo type repo: builtin that lets you use built‑in hooks.
It basically gives you another way to use the existing built‑in fast path for pre‑commit‑hooks, but without needing to point to an external repo.
Since prek doesn’t have to clone anything or set up a virtual environment, repo: builtin hooks work even in air‑gapped environments.

For more details, see: https://prek.j178.dev/builtin/

Enhancements
  • Add support repo: builtin (#​1118)
  • Enable virtual terminal processing on Windows (#​1123)
Bug fixes
  • Do not recurse into submodules during workspace discovery (#​1121)
  • Do not dim the hook output (#​1126)
  • Further reduce max cli length for cmd.exe on Windows (#​1131)
  • Revert "Disallow hook-level minimum_prek_version (#​1101)" (#​1120)
Other changes
  • docs: refer airflow as Apache Airflow (#​1116)
Contributors

v0.2.17

Released on 2025-11-18.

Bug fixes
  • Revert back to use serde_yaml again (#​1112)
Contributors

v0.2.11

Released on 2025-10-24.

Enhancements
  • Support language: lua hooks (#​954)
  • Support language_version: system (#​949)
  • Implement no-commit-to-branch as builtin hook (#​930)
  • Improve styling for stashing error message (#​953)
  • Support nix-shell style shebang (#​929)
Documentation
  • Add a page about "Quick start" (#​934)
  • Add kreuzberg to "who is using prek" (#​936)
  • Clarify minimum mise version required to use mise use prek (#​931)
Contributors

v0.2.4

Released on 2025-10-07.

Enhancements
  • Add support for .prekignore to ignore directories from project discovery (#​826)
  • Make prek auto-update --jobs default to 0 (which uses max available parallelism) (#​833)
  • Improve install message when installing for a subproject (#​847)
Bug fixes
  • Convert extension to lowercase before checking file tags (#​839)
  • Support pass multiple files like prek run --files a b c d (#​828)
Documentation
  • Add requests-cache to "Who is using prek" (#​824)
Contributors

v0.2.3

Released on 2026-01-18.

Enhancements
  • Build binaries using minimal-size profile (#​1376)
  • Check for duplicate keys in check-json5 builtin hook (#​1387)
  • Preserve quoting style in auto-update (#​1379)
  • Show warning if file lock acquiring blocks for long time (#​1353)
  • Singleflight Python health checks with cached interpreter info (#​1381)
Bug fixes
  • Do not resolve entry for docker_image (#​1386)
  • Fix command lookup on Windows (#​1383)
Documentation
  • Document language support details (#​1380)
  • Document that check-json5 now rejects duplicate keys (#​1391)
Contributors

v0.2.2

Released on 2026-01-16.

Highlights

files / exclude now support globs (including glob lists), making config filters much easier to read and maintain than heavily-escaped regex.

Before (regex):

files: "^(src/.*\\.rs$|crates/[^/]+/src/.*\\.rs$)"

After (glob list):

files:
  glob:
    - src/**/*.rs
    - crates/**/src/**/*.rs
Enhancements
  • Add check-json5 as builtin hooks (#​1367)
  • Add glob list support for file patterns (files and exclude) (#​1197)
Bug fixes
  • Fix missing commit hash from version info (#​1352)
  • Remove git env vars from uv pip install subprocess (#​1355)
  • Set TERM=dumb under PTY to prevent capability-probe hangs (#​1363)
Documentation
  • Add home-assistant/core to the users of prek (#​1350)
  • Document builtin hooks (#​1370)
  • Explain project configuration scope (#​1373)
Contributors

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

This PR contains the following updates: | Package | Update | Change | |---|---|---| | [prek](https://github.com/j178/prek) | minor | `latest` → `0.4.14` | --- ### Release Notes <details> <summary>j178/prek (prek)</summary> ### [`v0.4.14`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0414) Released on 2026-08-17. ##### Enhancements - Support check-yaml unsafe mode ([#&#8203;2546](https://github.com/j178/prek/pull/2546)) ##### Performance - Reuse allocations in common filters ([#&#8203;2548](https://github.com/j178/prek/pull/2548)) ##### Bug fixes - Accept non-finite floats in check-yaml ([#&#8203;2545](https://github.com/j178/prek/pull/2545)) - Allow comment-heavy YAML in check-yaml ([#&#8203;2554](https://github.com/j178/prek/pull/2554)) - Sanitize captured terminal output before replay ([#&#8203;2552](https://github.com/j178/prek/pull/2552)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.4.13`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0413) Released on 2026-08-10. ##### Highlights ##### Manage hook tools with mise The new `language: mise` support lets hooks install tools using [`mise`](https://mise.jdx.dev/) in an isolated environment: ```yaml repos: - repo: local hooks: - id: golangci-lint name: golangci-lint language: mise additional_dependencies: ["aqua:golangci/golangci-lint@2"] entry: golangci-lint run --fast-only ./... pass_filenames: false ``` ##### Run commands in hook environments The new `prek exec` subcommand can run an explicit command in a configured hook's prepared environment. For example, the hook above makes its managed binary available to this command: ```console $ prek exec golangci-lint -- golangci-lint --version ``` ##### Enhancements - Add `mise` language support ([#&#8203;2540](https://github.com/j178/prek/pull/2540)) - Add `deny-filename-pattern` and `require-filename-pattern` hooks ([#&#8203;2488](https://github.com/j178/prek/pull/2488)) - Add `prek exec` for running commands in a hook environment ([#&#8203;2478](https://github.com/j178/prek/pull/2478)) - Add `yaml-language-server:` comment to YAML sample config ([#&#8203;2486](https://github.com/j178/prek/pull/2486)) - Make `prek cache size` output terminal-aware ([#&#8203;2508](https://github.com/j178/prek/pull/2508)) - Match file regexes against path bytes ([#&#8203;2541](https://github.com/j178/prek/pull/2541)) - Show hook aliases in run output ([#&#8203;2497](https://github.com/j178/prek/pull/2497)) - Show hook descriptions in run output ([#&#8203;2490](https://github.com/j178/prek/pull/2490)) ##### Performance - Avoid env cache scans for skipped hooks ([#&#8203;2502](https://github.com/j178/prek/pull/2502)) - Cache Node version queries ([#&#8203;2500](https://github.com/j178/prek/pull/2500)) ##### Bug fixes - Fix Node hook installation with npm 11 ([#&#8203;2487](https://github.com/j178/prek/pull/2487)) - Isolate dependency installs from inherited Git repository state ([#&#8203;2506](https://github.com/j178/prek/pull/2506)) ##### Documentation - Document combined group filtering ([#&#8203;2495](https://github.com/j178/prek/pull/2495)) - Explain what prek does in README ([#&#8203;2507](https://github.com/j178/prek/pull/2507)) - Refresh "Why prek" highlights ([#&#8203;2474](https://github.com/j178/prek/pull/2474)) ##### Contributors - [@&#8203;will-wright-eng](https://github.com/will-wright-eng) - [@&#8203;Repiteo](https://github.com/Repiteo) - [@&#8203;j178](https://github.com/j178) ### [`v0.4.12`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0412) Released on 2026-08-03. ##### Enhancements - Add `--require-group` for hook group intersections ([#&#8203;2472](https://github.com/j178/prek/pull/2472)) - Align fast-path and builtin pre-commit hooks ([#&#8203;2433](https://github.com/j178/prek/pull/2433)) - Do not shuffle file list for verbose output ([#&#8203;2431](https://github.com/j178/prek/pull/2431)) - Improve top-level command descriptions ([#&#8203;2429](https://github.com/j178/prek/pull/2429)) - Install `uv` from Astral CDN and drop source racing ([#&#8203;2455](https://github.com/j178/prek/pull/2455)) - Make `prek install --force` bypass external hooks paths ([#&#8203;2437](https://github.com/j178/prek/pull/2437)) - Show builtin hook flags in verbose list output ([#&#8203;2427](https://github.com/j178/prek/pull/2427)) - Verify uv release archive checksums ([#&#8203;2456](https://github.com/j178/prek/pull/2456)) ##### Performance - Precompute file tags in parallel ([#&#8203;2440](https://github.com/j178/prek/pull/2440)) - Skip diffs after known hook modifications ([#&#8203;2447](https://github.com/j178/prek/pull/2447)) - Skip worktree diffs for read-only languages ([#&#8203;2432](https://github.com/j178/prek/pull/2432)) - Track builtin hook file changes directly ([#&#8203;2404](https://github.com/j178/prek/pull/2404)) ##### Bug fixes - Use full object IDs in diff snapshots ([#&#8203;2448](https://github.com/j178/prek/pull/2448)) ##### Documentation - Add a multi-repository configuration example ([#&#8203;2434](https://github.com/j178/prek/pull/2434)) - Rewrite benchmark documentation ([#&#8203;2469](https://github.com/j178/prek/pull/2469)) ##### Contributors - [@&#8203;j178](https://github.com/j178) - [@&#8203;BitWeaverDev](https://github.com/BitWeaverDev) - [@&#8203;allanlewis](https://github.com/allanlewis) ### [`v0.4.10`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0410) Released on 2026-07-16. ##### Enhancements - Add PHP language support ([#&#8203;2314](https://github.com/j178/prek/pull/2314)) - Add freeze option to update settings ([#&#8203;2323](https://github.com/j178/prek/pull/2323)) - Add tag filters to update configuration ([#&#8203;2354](https://github.com/j178/prek/pull/2354)) - Identify 'mts' and 'cts' as TypeScript files ([#&#8203;2209](https://github.com/j178/prek/pull/2209)) - Publish Alpine Docker images ([#&#8203;2352](https://github.com/j178/prek/pull/2352)) - Support builtin and meta in try-repo ([#&#8203;2350](https://github.com/j178/prek/pull/2350)) ##### Bug fixes - Fix Python discovery order ([#&#8203;2348](https://github.com/j178/prek/pull/2348)) - Fix Windows progress rendering ([#&#8203;2328](https://github.com/j178/prek/pull/2328)) - Preserve configured repo values for updates ([#&#8203;2324](https://github.com/j178/prek/pull/2324)) - Scope synthetic `GIT_WORK_TREE` to git commands ([#&#8203;2356](https://github.com/j178/prek/pull/2356)) ##### Documentation - Expand common workflows guide ([#&#8203;2351](https://github.com/j178/prek/pull/2351)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.4.4`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#044) Released on 2026-06-04. ##### Highlights 0.4.4 makes `prek run` easier to watch and easier to slice. Hook stream output now shows a small live preview under the running hook in the progress UI. Long-running hooks no longer look stuck while they are producing logs, and failed hooks are easier to diagnose because recent output is already visible before the final result. The new group selector lets a single config support different workflows. Tag hooks with `groups`, then select or exclude those groups at run time: ```yaml repos: - repo: local hooks: - id: format name: Format Python language: system entry: ruff format groups: [format, ci] - id: lint name: Lint Python language: system entry: ruff check groups: [lint, ci] ``` ```bash prek run --all-files --group ci prek run --all-files --no-group format ``` This is useful when local development, CI, slow validation, or project-specific checks need different hook sets without splitting the config. ##### Enhancements - Add hook group filters to `prek run` ([#&#8203;2141](https://github.com/j178/prek/pull/2141)) - Delay hook output preview rendering ([#&#8203;2140](https://github.com/j178/prek/pull/2140)) - Stream hook output in progress UI ([#&#8203;2136](https://github.com/j178/prek/pull/2136)) ##### Bug fixes - Fix intent-to-add stash restore ([#&#8203;2143](https://github.com/j178/prek/pull/2143)) ##### Documentation - Document hook stage file input ([#&#8203;2147](https://github.com/j178/prek/pull/2147)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.3.11`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0311) Released on 2026-04-27. ##### Highlights Hook entries now have an explicit `shell` option for shell snippets. Set `shell: sh`, `bash`, `pwsh`, `powershell`, or `cmd` when an entry should be evaluated by that shell; leaving it unset keeps prek's direct argv execution. `prek auto-update` can now filter tag candidates before choosing an update. Both options take glob patterns: use `--include-tag` to only consider matching tag names, and `--exclude-tag` to skip matching tags such as moving tags or prereleases. ##### Enhancements - Add `auto-update --exclude-repo <repo>` to skip repos ([#&#8203;1983](https://github.com/j178/prek/pull/1983)) - Add `auto-update --exit-code` to exit with non-zero on updates ([#&#8203;2002](https://github.com/j178/prek/pull/2002)) - Add `auto-update --include-tag <pattern>`/`--exclude-tag <pattern>` to filter tags ([#&#8203;1984](https://github.com/j178/prek/pull/1984)) - Adds an explicit `shell` hook option for entries that should run as shell source ([#&#8203;2004](https://github.com/j178/prek/pull/2004)) - Make `--hook-dir` optional for hook-impl ([#&#8203;1989](https://github.com/j178/prek/pull/1989)) - Skip shim warning when `--script-version` is missing ([#&#8203;1990](https://github.com/j178/prek/pull/1990)) ##### Bug fixes - Install Ruby executable in gem bin ([#&#8203;2017](https://github.com/j178/prek/pull/2017)) - Use dedicated Android npm package ([#&#8203;1982](https://github.com/j178/prek/pull/1982)) - Use stable repo keys without breaking cached clones ([#&#8203;1995](https://github.com/j178/prek/pull/1995)) ##### Documentation - Explain prek name ([#&#8203;1980](https://github.com/j178/prek/pull/1980)) - Clarify `pass_filenames` concurrency docs ([#&#8203;1999](https://github.com/j178/prek/pull/1999)) - Reorganize documentation references ([#&#8203;2005](https://github.com/j178/prek/pull/2005)) - Clarify hook author manifest env docs ([#&#8203;1991](https://github.com/j178/prek/pull/1991)) - docs: add Sentry to users list ([#&#8203;1981](https://github.com/j178/prek/pull/1981)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.3.10`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0310) Released on 2026-04-21. ##### Enhancements - Disallow rev for non-remote repos in schema ([#&#8203;1964](https://github.com/j178/prek/pull/1964)) - Hide up-to-date output in non-verbose mode ([#&#8203;1942](https://github.com/j178/prek/pull/1942)) - Improve merge conflict marker detection ([#&#8203;1937](https://github.com/j178/prek/pull/1937)) - Keep finished hooks visible ([#&#8203;1967](https://github.com/j178/prek/pull/1967)) - Preserve frozen comment spacing in auto-update ([#&#8203;1945](https://github.com/j178/prek/pull/1945)) - Reimplement `@j178/prek` npm package ([#&#8203;1973](https://github.com/j178/prek/pull/1973)) ##### Bug fixes - Prefer stable Rust toolchains ([#&#8203;1974](https://github.com/j178/prek/pull/1974)) ##### Documentation - Add `SKILL.md` for prek ([#&#8203;1950](https://github.com/j178/prek/pull/1950)) - Document `gh skill install j178/prek prek` to install prek skill for agents ([#&#8203;1951](https://github.com/j178/prek/pull/1951)) - Improve compatibility and migration docs ([#&#8203;1940](https://github.com/j178/prek/pull/1940)) ##### Other changes - Sync latest identify tags ([#&#8203;1947](https://github.com/j178/prek/pull/1947)) ##### Contributors - [@&#8203;github-actions](https://github.com/github-actions) - [@&#8203;renovate](https://github.com/renovate) - [@&#8203;j178](https://github.com/j178) ### [`v0.3.9`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#039) Released on 2026-04-13. ##### Highlight `prek auto-update` is now stricter about pinned revisions and more useful in CI. It now keeps `rev` and `# frozen:` comments in sync, can detect [impostor commits](https://docs.zizmor.sh/audits/#impostor-commit) when validating pinned SHAs, and lets you use `prek auto-update --check` to fail on both available updates and frozen-ref mismatches without rewriting the config. Examples: ```console $ prek auto-update # updates revs and repairs stale `# frozen:` comments $ prek auto-update --freeze # writes frozen SHAs with matching `# frozen: <tag>` comments $ prek auto-update --check # exits non-zero when updates are available, a `# frozen:` comment is stale, # or a pinned SHA does not belong to the fetched upstream refs ``` ##### Enhancements - Check and sync frozen comments during auto-update ([#&#8203;1896](https://github.com/j178/prek/pull/1896)) - Handle impostor commits in auto-update ([#&#8203;1919](https://github.com/j178/prek/pull/1919)) - Add experimental `language: dotnet` support ([#&#8203;1871](https://github.com/j178/prek/pull/1871)) - Honor repo and worktree `core.hooksPath` ([#&#8203;1892](https://github.com/j178/prek/pull/1892)) - Add `prek run --no-fail-fast` to override config file ([#&#8203;1859](https://github.com/j178/prek/pull/1859)) - Add `forbid-new-submodules` as builtin hook ([#&#8203;1853](https://github.com/j178/prek/pull/1853)) - Clean stale patch files in `cache gc` ([#&#8203;1877](https://github.com/j178/prek/pull/1877)) - Display auto-update results by config entry ([#&#8203;1922](https://github.com/j178/prek/pull/1922)) - Restrict patch directory permissions ([#&#8203;1876](https://github.com/j178/prek/pull/1876)) - Show tag names in `auto-update --freeze` output ([#&#8203;1916](https://github.com/j178/prek/pull/1916)) - Use a bitset for hook stages ([#&#8203;1860](https://github.com/j178/prek/pull/1860)) ##### Bug fixes - Canonicalize CWD and GIT\_ROOT paths ([#&#8203;1878](https://github.com/j178/prek/pull/1878)) - Ensure quotes are added for non-string revisions in `auto-update` ([#&#8203;1936](https://github.com/j178/prek/pull/1936)) ##### Documentation - Update docs for case of hooks modifying files with a non-zero exit code ([#&#8203;1879](https://github.com/j178/prek/pull/1879)) ##### Contributors - [@&#8203;RicardoVercetti](https://github.com/RicardoVercetti) - [@&#8203;nathanjmcdougall](https://github.com/nathanjmcdougall) - [@&#8203;renovate](https://github.com/renovate) - [@&#8203;sadjow](https://github.com/sadjow) - [@&#8203;j178](https://github.com/j178) ### [`v0.3.8`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#038) Released on 2026-03-23. ##### Enhancements - Add experimental `language: deno` support ([#&#8203;1516](https://github.com/j178/prek/pull/1516)) - Add `pretty-format-json` as builtin hook ([#&#8203;915](https://github.com/j178/prek/pull/915)) - Add `check-vcs-permalinks` as builtin hook ([#&#8203;1842](https://github.com/j178/prek/pull/1842)) - Add `check-illegal-windows-names` as builtin hook ([#&#8203;1841](https://github.com/j178/prek/pull/1841)) - Add `check-shebang-scripts-are-executable` builtin hook ([#&#8203;1847](https://github.com/j178/prek/pull/1847)) - Add `destroyed-symlinks` builtin hook ([#&#8203;1851](https://github.com/j178/prek/pull/1851)) - Add `file-contents-sorter` as builtin hook ([#&#8203;1846](https://github.com/j178/prek/pull/1846)) - Add `--all` flag to `prek uninstall` ([#&#8203;1817](https://github.com/j178/prek/pull/1817)) - Improve file pattern parse errors ([#&#8203;1829](https://github.com/j178/prek/pull/1829)) - Validate `uv` binary after download ([#&#8203;1825](https://github.com/j178/prek/pull/1825)) ##### Bug fixes - Fix workspace-relative added file paths ([#&#8203;1852](https://github.com/j178/prek/pull/1852)) - Relax alias-anchor ratio check for check-yaml ([#&#8203;1839](https://github.com/j178/prek/pull/1839)) ##### Contributors - [@&#8203;j178](https://github.com/j178) - [@&#8203;shaanmajid](https://github.com/shaanmajid) - [@&#8203;mvanhorn](https://github.com/mvanhorn) - [@&#8203;feliblo](https://github.com/feliblo) - [@&#8203;Tiryoh](https://github.com/Tiryoh) ### [`v0.3.6`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#036) Released on 2026-03-16. ##### Enhancements - Allow selectors for hook ids containing colons ([#&#8203;1782](https://github.com/j178/prek/pull/1782)) - Rename `prek install-hooks` to `prek prepare-hooks` and `prek install --install-hooks` to `prek install --prepare-hooks` ([#&#8203;1766](https://github.com/j178/prek/pull/1766)) - Retry auth-failed repo clones with terminal prompts enabled ([#&#8203;1761](https://github.com/j178/prek/pull/1761)) ##### Performance - Optimize `detect_private_key` by chunked reading and using aho-corasick ([#&#8203;1791](https://github.com/j178/prek/pull/1791)) - Optimize `fix_byte_order_marker` by shifting file contents in place ([#&#8203;1790](https://github.com/j178/prek/pull/1790)) ##### Bug fixes - Align stage defaulting behavior with pre-commit ([#&#8203;1788](https://github.com/j178/prek/pull/1788)) - Make sure child output is drained in the PTY subprocess ([#&#8203;1768](https://github.com/j178/prek/pull/1768)) - fix(golang): use `GOTOOLCHAIN=local` when probing system go ([#&#8203;1797](https://github.com/j178/prek/pull/1797)) ##### Documentation - Disambiguate “hook” terminology by renaming "Git hooks" to "Git shims" ([#&#8203;1776](https://github.com/j178/prek/pull/1776)) - Document compatibility with pre-commit ([#&#8203;1767](https://github.com/j178/prek/pull/1767)) - Update configuration.md with TOML 1.1 notes ([#&#8203;1764](https://github.com/j178/prek/pull/1764)) ##### Other changes - Sync latest identify tags ([#&#8203;1798](https://github.com/j178/prek/pull/1798)) ##### Contributors - [@&#8203;github-actions](https://github.com/github-actions) - [@&#8203;j178](https://github.com/j178) - [@&#8203;pcastellazzi](https://github.com/pcastellazzi) - [@&#8203;deadnews](https://github.com/deadnews) - [@&#8203;copilot-swe-agent](https://github.com/copilot-swe-agent) ### [`v0.3.5`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#035) Released on 2026-03-09. ##### Enhancements - Add automatic Ruby download support using rv binaries ([#&#8203;1668](https://github.com/j178/prek/pull/1668)) - Adjust open file limit on process startup ([#&#8203;1705](https://github.com/j178/prek/pull/1705)) - Allow parallel gem retry ([#&#8203;1732](https://github.com/j178/prek/pull/1732)) - Enable system-proxy feature on reqwest ([#&#8203;1738](https://github.com/j178/prek/pull/1738)) - Expose `--git-dir` to force hook installation target ([#&#8203;1723](https://github.com/j178/prek/pull/1723)) - Pass `--quiet`, `--verbose`, and `--no-progress` through `prek install` into generated hook scripts ([#&#8203;1753](https://github.com/j178/prek/pull/1753)) - Respect `core.sharedRepository` for hook permissions ([#&#8203;1755](https://github.com/j178/prek/pull/1755)) - Support legacy mode hook script ([#&#8203;1706](https://github.com/j178/prek/pull/1706)) - rust: support `cli:` git dependency 4th segment package disambiguation ([#&#8203;1747](https://github.com/j178/prek/pull/1747)) ##### Bug fixes - Fix Python `__main__.py` entry ([#&#8203;1741](https://github.com/j178/prek/pull/1741)) - python: strip `UV_SYSTEM_PYTHON` from `uv venv` and `pip install` commands ([#&#8203;1756](https://github.com/j178/prek/pull/1756)) ##### Other changes - Sync latest identify tags ([#&#8203;1733](https://github.com/j178/prek/pull/1733)) ##### Contributors - [@&#8203;Dev-iL](https://github.com/Dev-iL) - [@&#8203;tennox](https://github.com/tennox) - [@&#8203;shaanmajid](https://github.com/shaanmajid) - [@&#8203;is-alnilam](https://github.com/is-alnilam) - [@&#8203;github-actions](https://github.com/github-actions) - [@&#8203;j178](https://github.com/j178) ### [`v0.3.4`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#034) Released on 2026-02-28. ##### Enhancements - Allow `pass_filenames` to accept a positive integer ([#&#8203;1698](https://github.com/j178/prek/pull/1698)) - Install and compile gems in parallel ([#&#8203;1674](https://github.com/j178/prek/pull/1674)) - Sync identify file-type mappings with pre-commit identify ([#&#8203;1660](https://github.com/j178/prek/pull/1660)) - Use `--locked` for Rust `cargo install` commands ([#&#8203;1661](https://github.com/j178/prek/pull/1661)) - Add `PREK_MAX_CONCURRENCY` environment variable for configuring maximum concurrency ([#&#8203;1697](https://github.com/j178/prek/pull/1697)) - Add `PREK_LOG_TRUNCATE_LIMIT` environment variable for configuring log truncation ([#&#8203;1679](https://github.com/j178/prek/pull/1679)) - Add support for `python -m prek` ([#&#8203;1686](https://github.com/j178/prek/pull/1686)) ##### Bug fixes - Skip invalid Rust toolchains instead of failing ([#&#8203;1699](https://github.com/j178/prek/pull/1699)) ##### Performance - Bitset-based TagSet refactor: precompute tag masks and speed up hook type filtering ([#&#8203;1665](https://github.com/j178/prek/pull/1665)) ##### Documentation - Document `winget install j178.Prek` ([#&#8203;1670](https://github.com/j178/prek/pull/1670)) ##### Contributors - [@&#8203;uplsh580](https://github.com/uplsh580) - [@&#8203;Svecco](https://github.com/Svecco) - [@&#8203;dbast](https://github.com/dbast) - [@&#8203;drichardson](https://github.com/drichardson) - [@&#8203;JP-Ellis](https://github.com/JP-Ellis) - [@&#8203;j178](https://github.com/j178) - [@&#8203;is-alnilam](https://github.com/is-alnilam) - [@&#8203;copilot-swe-agent](https://github.com/copilot-swe-agent) ### [`v0.3.0`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#030) Released on 2026-01-22. ##### Highlights - `prek cache gc` (also available via `prek gc` for pre-commit compatibility) is finally here! You can now run `prek cache gc` to clean up unused repos, hook envs and tool versions from prek cache. - `language: bun` is now supported, making it possible to write and run hooks with [Bun](https://bun.sh/). ##### Enhancements - Implement `prek cache gc` ([#&#8203;1410](https://github.com/j178/prek/pull/1410)) - Bootstrap tracking configs from workspace cache ([#&#8203;1417](https://github.com/j178/prek/pull/1417)) - Show total size `prek cache gc` removed ([#&#8203;1418](https://github.com/j178/prek/pull/1418)) - Show accurate repo and hook details in `prek cache gc -v` ([#&#8203;1420](https://github.com/j178/prek/pull/1420)) - `prek cache gc` remove specific unused tool versions ([#&#8203;1422](https://github.com/j178/prek/pull/1422)) - Fix unused tool versions not removed in `prek cache gc` ([#&#8203;1436](https://github.com/j178/prek/pull/1436)) - Add `language: bun` support ([#&#8203;1411](https://github.com/j178/prek/pull/1411)) - Use `git ls-remote --tags` to list bun versions ([#&#8203;1439](https://github.com/j178/prek/pull/1439)) - Accept `--stage` as an alias for `--hook-stage` in `prek run` ([#&#8203;1398](https://github.com/j178/prek/pull/1398)) - Expand `~` tilde in `PREK_HOME` ([#&#8203;1431](https://github.com/j178/prek/pull/1431)) - Support refs to trees ([#&#8203;1449](https://github.com/j178/prek/pull/1449)) ##### Bug fixes - Avoid file lock warning for in-process contention ([#&#8203;1406](https://github.com/j178/prek/pull/1406)) - Resolve relative repo paths from config file directory ([#&#8203;1443](https://github.com/j178/prek/pull/1443)) - fix: use `split()` instead of `resolve(None)` for builtin hook argument parsing ([#&#8203;1415](https://github.com/j178/prek/pull/1415)) ##### Documentation - Add `simple-icons` and `ast-grep` to the users of prek ([#&#8203;1403](https://github.com/j178/prek/pull/1403)) - Improve JSON schema for `repo` field ([#&#8203;1432](https://github.com/j178/prek/pull/1432)) - Improve JSON schema for builtin and meta hooks ([#&#8203;1427](https://github.com/j178/prek/pull/1427)) - Add pronunciation entry to FAQ ([#&#8203;1442](https://github.com/j178/prek/pull/1442)) - Add commitizen to the list of projects using prek ([#&#8203;1413](https://github.com/j178/prek/pull/1413)) - Move docs to zensical ([#&#8203;1421](https://github.com/j178/prek/pull/1421)) ##### Other Changes - Refactor config layout ([#&#8203;1407](https://github.com/j178/prek/pull/1407)) ##### Contributors - [@&#8203;shaanmajid](https://github.com/shaanmajid) - [@&#8203;KevinGimbel](https://github.com/KevinGimbel) - [@&#8203;jtamagnan](https://github.com/jtamagnan) - [@&#8203;jmeickle-theaiinstitute](https://github.com/jmeickle-theaiinstitute) - [@&#8203;YazdanRa](https://github.com/YazdanRa) - [@&#8203;j178](https://github.com/j178) - [@&#8203;mschoettle](https://github.com/mschoettle) - [@&#8203;tisonkun](https://github.com/tisonkun) ### [`v0.2.30`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0230) Released on 2026-01-18. ##### Enhancements - Build binaries using minimal-size profile ([#&#8203;1376](https://github.com/j178/prek/pull/1376)) - Check for duplicate keys in `check-json5` builtin hook ([#&#8203;1387](https://github.com/j178/prek/pull/1387)) - Preserve quoting style in `auto-update` ([#&#8203;1379](https://github.com/j178/prek/pull/1379)) - Show warning if file lock acquiring blocks for long time ([#&#8203;1353](https://github.com/j178/prek/pull/1353)) - Singleflight Python health checks with cached interpreter info ([#&#8203;1381](https://github.com/j178/prek/pull/1381)) ##### Bug fixes - Do not resolve entry for docker\_image ([#&#8203;1386](https://github.com/j178/prek/pull/1386)) - Fix command lookup on Windows ([#&#8203;1383](https://github.com/j178/prek/pull/1383)) ##### Documentation - Document language support details ([#&#8203;1380](https://github.com/j178/prek/pull/1380)) - Document that `check-json5` now rejects duplicate keys ([#&#8203;1391](https://github.com/j178/prek/pull/1391)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.2.20`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0220) Released on 2025-12-08. ##### Highlights In this release: - Rust hooks are now fully supported with automatic toolchain management, including package discovery in virtual workspaces. Big thanks to [@&#8203;lmmx](https://github.com/lmmx) for driving this. - Added a `prek cache size` subcommand so you can quickly see how much cache space prek is using. Thanks [@&#8203;MatthewMckee4](https://github.com/MatthewMckee4)! - Nested workspaces are easier to reason about: set `orphan: true` on a project to isolate it from parents so its files are processed only once. Want to show your project runs on prek? Add our README badge to your docs or repo homepage: [![prek](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/j178/prek/master/docs/assets/badge-v0.json)](https://github.com/j178/prek) ##### Enhancements - Support Rust language ([#&#8203;989](https://github.com/j178/prek/pull/989)) - Refactor Rust toolchain management ([#&#8203;1198](https://github.com/j178/prek/pull/1198)) - Add support for finding packages in virtual workspaces ([#&#8203;1180](https://github.com/j178/prek/pull/1180)) - Add `prek cache size` command ([#&#8203;1183](https://github.com/j178/prek/pull/1183)) - Support orphan projects ([#&#8203;1129](https://github.com/j178/prek/pull/1129)) - Fallback to `manual` stage for hooks specified directly in command line ([#&#8203;1185](https://github.com/j178/prek/pull/1185)) - Make go module cache read-writable (thus deletable) ([#&#8203;1164](https://github.com/j178/prek/pull/1164)) - Provide more information when validating configs and manifests ([#&#8203;1182](https://github.com/j178/prek/pull/1182)) - Improve error message for invalid number of arguments to hook-impl ([#&#8203;1196](https://github.com/j178/prek/pull/1196)) ##### Bug fixes - Disable git terminal prompts ([#&#8203;1193](https://github.com/j178/prek/pull/1193)) - Prevent `post-checkout` deadlock when cloning repos ([#&#8203;1192](https://github.com/j178/prek/pull/1192)) - Prevent color output when redirecting stdout to a file ([#&#8203;1159](https://github.com/j178/prek/pull/1159)) ##### Documentation - Add MacPorts to installation methods ([#&#8203;1157](https://github.com/j178/prek/pull/1157)) - Add a FAQ page explaining `prek install --install--hooks` ([#&#8203;1162](https://github.com/j178/prek/pull/1162)) ##### Other changes - Add `prek: enabled` repo badge ([#&#8203;1171](https://github.com/j178/prek/pull/1171)) - Add favicon for docs website ([#&#8203;1187](https://github.com/j178/prek/pull/1187)) ##### Contributors - [@&#8203;MatthewMckee4](https://github.com/MatthewMckee4) - [@&#8203;lmmx](https://github.com/lmmx) - [@&#8203;j178](https://github.com/j178) - [@&#8203;joshmarkovic](https://github.com/joshmarkovic) - [@&#8203;frazar](https://github.com/frazar) - [@&#8203;jmelahman](https://github.com/jmelahman) - [@&#8203;drainpixie](https://github.com/drainpixie) ### [`v0.2.19`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0219) Released on 2025-11-26. ##### Performance - Simplify `fix_byte_order_marker` hook ([#&#8203;1136](https://github.com/j178/prek/pull/1136)) - Simplify `trailing-whitespace` hook to improve performance ([#&#8203;1135](https://github.com/j178/prek/pull/1135)) ##### Bug fixes - Close stdin for hook subcommands ([#&#8203;1155](https://github.com/j178/prek/pull/1155)) - Fix parsing Python interpreter info containing non-UTF8 chars ([#&#8203;1141](https://github.com/j178/prek/pull/1141)) ##### Contributors - [@&#8203;chilin0525](https://github.com/chilin0525) - [@&#8203;nblock](https://github.com/nblock) - [@&#8203;j178](https://github.com/j178) ### [`v0.2.18`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0218) Released on 2025-11-21. ##### Highlights In this release, prek adds a new special repo type `repo: builtin` that lets you use built‑in hooks. It basically gives you another way to use the existing built‑in fast path for pre‑commit‑hooks, but without needing to point to an external repo. Since prek doesn’t have to clone anything or set up a virtual environment, `repo: builtin` hooks work even in air‑gapped environments. For more details, see: <https://prek.j178.dev/builtin/> ##### Enhancements - Add support `repo: builtin` ([#&#8203;1118](https://github.com/j178/prek/pull/1118)) - Enable virtual terminal processing on Windows ([#&#8203;1123](https://github.com/j178/prek/pull/1123)) ##### Bug fixes - Do not recurse into submodules during workspace discovery ([#&#8203;1121](https://github.com/j178/prek/pull/1121)) - Do not dim the hook output ([#&#8203;1126](https://github.com/j178/prek/pull/1126)) - Further reduce max cli length for cmd.exe on Windows ([#&#8203;1131](https://github.com/j178/prek/pull/1131)) - Revert "Disallow hook-level `minimum_prek_version` ([#&#8203;1101](https://github.com/j178/prek/issues/1101))" ([#&#8203;1120](https://github.com/j178/prek/pull/1120)) ##### Other changes - docs: refer airflow as Apache Airflow ([#&#8203;1116](https://github.com/j178/prek/pull/1116)) ##### Contributors - [@&#8203;j178](https://github.com/j178) - [@&#8203;Lee-W](https://github.com/Lee-W) ### [`v0.2.17`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0217) Released on 2025-11-18. ##### Bug fixes - Revert back to use `serde_yaml` again ([#&#8203;1112](https://github.com/j178/prek/pull/1112)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.2.11`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0211) Released on 2025-10-24. ##### Enhancements - Support `language: lua` hooks ([#&#8203;954](https://github.com/j178/prek/pull/954)) - Support `language_version: system` ([#&#8203;949](https://github.com/j178/prek/pull/949)) - Implement `no-commit-to-branch` as builtin hook ([#&#8203;930](https://github.com/j178/prek/pull/930)) - Improve styling for stashing error message ([#&#8203;953](https://github.com/j178/prek/pull/953)) - Support nix-shell style shebang ([#&#8203;929](https://github.com/j178/prek/pull/929)) ##### Documentation - Add a page about "Quick start" ([#&#8203;934](https://github.com/j178/prek/pull/934)) - Add kreuzberg to "who is using prek" ([#&#8203;936](https://github.com/j178/prek/pull/936)) - Clarify minimum mise version required to use `mise use prek` ([#&#8203;931](https://github.com/j178/prek/pull/931)) ##### Contributors - [@&#8203;fllesser](https://github.com/fllesser) - [@&#8203;j178](https://github.com/j178) ### [`v0.2.4`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#024) Released on 2025-10-07. ##### Enhancements - Add support for `.prekignore` to ignore directories from project discovery ([#&#8203;826](https://github.com/j178/prek/pull/826)) - Make `prek auto-update --jobs` default to 0 (which uses max available parallelism) ([#&#8203;833](https://github.com/j178/prek/pull/833)) - Improve install message when installing for a subproject ([#&#8203;847](https://github.com/j178/prek/pull/847)) ##### Bug fixes - Convert extension to lowercase before checking file tags ([#&#8203;839](https://github.com/j178/prek/pull/839)) - Support pass multiple files like `prek run --files a b c d` ([#&#8203;828](https://github.com/j178/prek/pull/828)) ##### Documentation - Add requests-cache to "Who is using prek" ([#&#8203;824](https://github.com/j178/prek/pull/824)) ##### Contributors - [@&#8203;SigureMo](https://github.com/SigureMo) - [@&#8203;j178](https://github.com/j178) ### [`v0.2.3`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0230) Released on 2026-01-18. ##### Enhancements - Build binaries using minimal-size profile ([#&#8203;1376](https://github.com/j178/prek/pull/1376)) - Check for duplicate keys in `check-json5` builtin hook ([#&#8203;1387](https://github.com/j178/prek/pull/1387)) - Preserve quoting style in `auto-update` ([#&#8203;1379](https://github.com/j178/prek/pull/1379)) - Show warning if file lock acquiring blocks for long time ([#&#8203;1353](https://github.com/j178/prek/pull/1353)) - Singleflight Python health checks with cached interpreter info ([#&#8203;1381](https://github.com/j178/prek/pull/1381)) ##### Bug fixes - Do not resolve entry for docker\_image ([#&#8203;1386](https://github.com/j178/prek/pull/1386)) - Fix command lookup on Windows ([#&#8203;1383](https://github.com/j178/prek/pull/1383)) ##### Documentation - Document language support details ([#&#8203;1380](https://github.com/j178/prek/pull/1380)) - Document that `check-json5` now rejects duplicate keys ([#&#8203;1391](https://github.com/j178/prek/pull/1391)) ##### Contributors - [@&#8203;j178](https://github.com/j178) ### [`v0.2.2`](https://github.com/j178/prek/blob/HEAD/CHANGELOG.md#0229) Released on 2026-01-16. ##### Highlights `files` / `exclude` now support globs (including glob lists), making config filters much easier to read and maintain than heavily-escaped regex. Before (regex): ```yaml files: "^(src/.*\\.rs$|crates/[^/]+/src/.*\\.rs$)" ``` After (glob list): ```yaml files: glob: - src/**/*.rs - crates/**/src/**/*.rs ``` ##### Enhancements - Add `check-json5` as builtin hooks ([#&#8203;1367](https://github.com/j178/prek/pull/1367)) - Add glob list support for file patterns (`files` and `exclude`) ([#&#8203;1197](https://github.com/j178/prek/pull/1197)) ##### Bug fixes - Fix missing commit hash from version info ([#&#8203;1352](https://github.com/j178/prek/pull/1352)) - Remove git env vars from `uv pip install` subprocess ([#&#8203;1355](https://github.com/j178/prek/pull/1355)) - Set `TERM=dumb` under PTY to prevent capability-probe hangs ([#&#8203;1363](https://github.com/j178/prek/pull/1363)) ##### Documentation - Add `home-assistant/core` to the users of prek ([#&#8203;1350](https://github.com/j178/prek/pull/1350)) - Document builtin hooks ([#&#8203;1370](https://github.com/j178/prek/pull/1370)) - Explain project configuration scope ([#&#8203;1373](https://github.com/j178/prek/pull/1373)) ##### Contributors - [@&#8203;Goldziher](https://github.com/Goldziher) - [@&#8203;yihong0618](https://github.com/yihong0618) - [@&#8203;j178](https://github.com/j178) - [@&#8203;shaanmajid](https://github.com/shaanmajid) - [@&#8203;ulgens](https://github.com/ulgens) </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 CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC41Mi4xIiwidXBkYXRlZEluVmVyIjoiNDQuNTIuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
chore(deps): update dependency prek to v0.4.14
All checks were successful
Prek checks / prek (push) Successful in 1m10s
3f5a0473a9
All checks were successful
Prek checks / prek (push) Successful in 1m10s
This pull request can be merged automatically.
This branch is out-of-date with the base branch
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/prek-0.x:renovate/prek-0.x
git switch renovate/prek-0.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 main
git merge --no-ff renovate/prek-0.x
git switch renovate/prek-0.x
git rebase main
git switch main
git merge --ff-only renovate/prek-0.x
git switch renovate/prek-0.x
git rebase main
git switch main
git merge --no-ff renovate/prek-0.x
git switch main
git merge --squash renovate/prek-0.x
git switch main
git merge --ff-only renovate/prek-0.x
git switch main
git merge renovate/prek-0.x
git push origin main
Sign in to join this conversation.
No reviewers
No labels
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
cayne/image-factory!6
No description provided.