1
0
mirror of https://github.com/j178/prek.git synced 2026-04-25 02:11:36 +02:00
Commit Graph

109 Commits

Author SHA1 Message Date
Jo 4b7521bc96 Bump version to 0.2.28 (#1349) 2026-01-13 22:57:14 +08:00
Copilot c48699a526 Document UV environment variable inheritance in prek (#1339)
* Initial plan

* Document UV environment variable impact in diff.md

Co-authored-by: j178 <10510431+j178@users.noreply.github.com>

* Use mkdocs-material warning callout for UV environment variables

Co-authored-by: j178 <10510431+j178@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: j178 <10510431+j178@users.noreply.github.com>
2026-01-12 20:47:58 +08:00
Jo b99d05c440 Complete configuration document (#1338) 2026-01-12 20:34:11 +08:00
dependabot[bot] 11b9171b83 Bump urllib3 from 2.6.0 to 2.6.3 in /docs (#1324)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.0 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.0...2.6.3)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-08 15:37:07 +08:00
Jo 549f3ae299 Remove background from logo (#1322) 2026-01-07 22:45:33 +08:00
Jo a72a3cc3df Bump version to 0.2.27 (#1321) 2026-01-07 22:14:04 +08:00
Jo e255e88d37 Bump version to 0.2.26 (#1318) 2026-01-07 20:49:55 +08:00
Branch Vincent d0c33b1833 Support apple's container for docker lang (#1306)
* Support apple's `container` for docker lang

* Tweak

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2026-01-07 16:09:05 +08:00
Jo d07b1916ae Skip cookiecutter template directories like {{cookiecutter.project_slug}} during project discovery (#1316)
Fixes #1315
Updates #1044
2026-01-07 15:53:02 +08:00
Daniel Parks 0efd6370d7 Add env to set environment variables for hooks (#1279) (#1285)
* Add `env` to set environment variables for hooks (#1279)

This key is not supported by `pre-commit`.

* DO NOT MERGE: use my fork of prek-test-repos/script-hooks

* Update test

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-12-30 17:08:44 +08:00
Jo 1856285aba Bump version to 0.2.25 (#1282)
* Bump version to 0.2.25

* Update JSON schema
2025-12-27 00:36:49 +08:00
Jo 28df874c3f Use grouped code blocks in index.md (#1276) 2025-12-24 20:02:00 +08:00
Jo 0278b59b76 Bump version to 0.2.24 (#1265) 2025-12-23 11:01:07 +08:00
Jo 02414edb56 Render changelog in document site (#1248)
# Conflicts:
#	.github/workflows/release.yml
2025-12-22 00:49:01 +08:00
Jo c8b46885be Add docker integration docs (#1254) 2025-12-22 00:34:51 +08:00
Jo ae056aff2d Clarify priority scope across repos (#1251) 2025-12-21 14:17:14 +08:00
Jo 17a2f64eba Improve documentation for configurations (#1247) 2025-12-20 14:10:44 +08:00
Jo c7545d8edb Improve documentation for priority (#1245) 2025-12-20 12:46:10 +08:00
Jo 1c9d1f5618 Implement priority based parallel execution (#1232)
* Support priority-based parallel hook execution

* .

* .

* .

* .

* .

* Implement `priority` based parallel exeuction

* Reduce repeated code

* Add progress for processing files

* Improve sytling

* Tweak UI

* Fix UI

* Update snaps

* Update docs

* Add a test

* Update proposal

* Update crates/prek/src/config.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Apply review feedbacks

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-20 12:09:42 +08:00
Louis Maddox 5785a1aa42 Implement check-case-conflict as builtin hook (#888)
* feat(check-case-conflict): implement builtin hook

# Conflicts:
#	crates/prek/src/hooks/pre_commit_hooks/check_case_conflict.rs
#	crates/prek/tests/builtin_hooks.rs
#	src/builtin/pre_commit_hooks/mod.rs

* fix: exit test gracefully on case insensitive file system

* Add docs

* Fix tests

* Add to builtin hooks

* Reduce allocs

* Further reduce

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-12-18 13:42:10 +08:00
Copilot a46ae58c29 Document hook_types flag and default_install_hook_types behavior (#1225) 2025-12-14 17:35:17 +08:00
Jo 72f4c5a59a Prefer tag creation timestamp in --cooldown-days (#1221)
Use `git for-each-ref --sort=-creatordate --format='%(refname:lstrip=2) %(creatordate:unix)' refs/tags` to get a list of tags along with their timestamps.
`creatordate` uses the tag’s creation time if it’s an annotated tag, and if it’s a lightweight tag, it falls back to the commit’s timestamp.
2025-12-13 19:19:55 +08:00
Louis Maddox 2ad3a70f07 Support--cooldown-days in prek auto-update (#1172)
* feat: implement cooldown (default: 1 day)

* refactor: make update_repo a coordinator function

* fix: fallback to search all tags when candidate fails

* perf: batch the tag commit date iteration into one call

* Simplify logic

* Add tests

* Change `--cooldown-days` default to 0, keep backward compability

* Remove `cooldown_days` from config

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-12-12 13:30:30 +08:00
Jo 292063956f Refactor Rust toolchain management (#1198)
* Refactor Rust toolchain management

- Reuse system installed rustup
- Reuse installed rustup across hooks
- Reuse installed Rust toolchains across hooks

* Fix tests

* Avoid using bare cargo

* Update crates/prek-consts/src/env_vars.rs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-08 16:41:06 +08:00
Jo 6a2f212fea Upgrade dependencies for docs (#1195) 2025-12-06 14:24:08 +08:00
drainpixie adf78165d8 Fallback to manual stage for hooks specified directly in command line (#1185)
* feat(run): assume stage based on selected hooks

* fix(run): don't clone eagerly

* Remove fallback to `--all-files`, add tests

* Generate cli docs

* Improve wording

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-12-05 14:58:24 +08:00
Louis Maddox dad650b965 rust: add support for finding packages in virtual workspaces (#1180)
* fix(rust): find packages in virtual workspaces

* chore(deps): add cargo_metadata

* refactor: use cargo_metadata instead of DIY approach

* revert: do not change prek's own typos hook

* Sort deps

* Mention in `diff.md`

* Minor tweaks

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-12-04 17:18:36 +08:00
Jo 008d3f4d16 Move badge into docs/assets (#1188) 2025-12-04 11:51:30 +08:00
Francesco Zardi 9a720e94d4 Add favicon for docs website (#1187) 2025-12-04 06:31:25 +08:00
Matthew Mckee bd4da34a51 Add cache size command (#1183) 2025-12-03 12:42:45 +08:00
Louis Maddox 3ff564e8bf Add prek: enabled repo badge (#1171)
As requested in https://github.com/j178/prek/issues/1100
2025-12-02 10:57:07 +08:00
Jo 1bb181ffa3 Add a FAQ page explaning prek install --install--hooks (#1162) 2025-11-29 19:52:52 +08:00
joshuamarkovic 59230a7a72 Support orphan projects (#1129)
* Add deduplicate feature

# Conflicts:
#	src/cli/run/filter.rs

* Linting

* Linting

* Fix failed test

* Fix failed test

* More testing

* Revert "More testing"

This reverts commit 40304335c49d27f7024703da4f3ac4d775af52f7.

* Linting

* Support orphan projects

* Support orphan projects

* Fix filter

* Add a failing test

* "orphan" is an static attribute, always in effect

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-11-27 13:47:41 +08:00
Jo c3b833cd45 Add MacPorts to installation methods (#1157) 2025-11-26 17:35:48 +08:00
ChiLin Chiu 95eb880b5a Fix typo “Not” to “Note” in the Automatic Fast Path section (#1148) 2025-11-23 16:28:51 +08:00
Jo e84a843acc Tweaks to windows extension comparison (#1140)
* fix

* tweak

---------

Co-authored-by: j178 <j178@users.noreply.github.com>
2025-11-22 10:49:56 +08:00
nblock 66f773afb4 Remove completion subcommand from shell completion docs (#1133) 2025-11-21 22:19:57 +08:00
Jo 3e88436974 Add support repo: builtin (#1118)
* Add support `repo: builtin`

* Add docs

* Fixes

* Skip install for builtin hooks
2025-11-19 17:29:14 +08:00
Wei Lee d73dfbdaa7 docs: refer airflow as Apache Airflow (#1116) 2025-11-19 12:14:36 +08:00
Copilot 04377fe568 Document workspace file visibility constraints (#1071)
* Initial plan

* Add documentation clarifying workspace file visibility constraints

Co-authored-by: j178 <10510431+j178@users.noreply.github.com>

* Make File Visibility Constraints a subsection and condense content

Co-authored-by: j178 <10510431+j178@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: j178 <10510431+j178@users.noreply.github.com>
2025-11-14 13:35:34 +08:00
Jo dc3d061e44 Add scoop to installation (#1067) 2025-11-12 19:09:02 +08:00
Jo 93accca92c Update project status in docs (#1052)
This is missed from #1005
2025-11-09 13:36:25 +08:00
Jo 7b608841b0 Mention PREK_CONTAINER_RUNTIME in diff.md (#1043) 2025-11-07 17:24:15 +08:00
Steven Taylor b957e17dd1 Support PREK_CONTAINER_RUNTIME=podman to override container runtime (#1033)
* feat: container runtime selection

use both docker and podman runtimes

1. if only docker on path use docker runtime
2. if only podman on path use podman runtime
3. to specify runtime use PREK_CONTAINER_RUNTIME

Signed-off-by: Steven Taylor <steven@taylormuff.co.uk>

* Tweak detection

---------

Signed-off-by: Steven Taylor <steven@taylormuff.co.uk>
Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-11-07 17:12:35 +08:00
is-alnilam d9baf0a5f1 Add Ruby support (no download support yet) (#993)
* Add Ruby support (no download support yet)

Currently only pre-existing Rubies are used, although the code will
search for and consider multiple versions. This allows a hook to require
3.4.7 when the default system Ruby is 3.4.6, but RVM (or a similar tool)
has installed 3.4.7. If a suitable Ruby cannot be found, the user is
prompted to install one manually and re-run.

Hooks get an isolated GEM_HOME, based on the hook repository, any
additional_dependencies, and the interpreter version/path. Any Ruby
upgrade would therefore re-install the gems to ensure that stale
versions aren't used. Repository gem dependencies are installed based on
the included gemspec files, combined with the additional_dependencies
field.

* Add pins for CI 'install Ruby' action

* Update setup-ruby pin

* Tweak version parsing

* Tweak env vars

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-11-03 19:12:25 +08:00
Felix Blom aa6cd18cde Implement check-executables-have-shebangs as builtin-hook (#924)
* feat: Implement check-executables-have-shebangs hook

* Tweak

* Minor

* Tweak

* Minor

* feat: Implement check-executables-have-shebangs hook

* Fix paths

* Debug

* Debug

* Fix ls-files split

* Update docs

---------

Co-authored-by: Felix Blom <70511386+Felix-Blom@users.noreply.github.com>
Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-10-30 16:29:24 +08:00
Copilot b524f38675 Document that .gitignore is respected by default during workspace discovery (#983)
* Initial plan

* Document that .gitignore is respected by default and add test

Co-authored-by: j178 <10510431+j178@users.noreply.github.com>

* Lint

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: j178 <10510431+j178@users.noreply.github.com>
2025-10-28 16:31:00 +08:00
Jo 476d84cf00 Fix PREK_UV_SOURCE list indentation (#977) 2025-10-27 17:34:12 +08:00
Jo 473ca4a188 Update language support status (#970)
* Update language support status

* Tweak
2025-10-26 18:25:43 +08:00
Steven Taylor 7161581362 Allow using system trusted store by PREK_NATIVE_TLS (#959) 2025-10-26 03:56:02 +08:00