1
0
mirror of https://github.com/j178/prek.git synced 2026-04-03 17:34:03 +02:00
Commit Graph

134 Commits

Author SHA1 Message Date
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
Jo
8ccc7955e3 Update status about lua (#961) 2025-10-24 19:55:50 +08:00
Les Freire
93a70da4da Update built-in hook documentation (#943) 2025-10-20 16:23:45 +08:00
Jo
f8a8181ad1 Update pre-commit-hook version in quick start (#937) 2025-10-19 21:58:57 +08:00
Jo
5d0f97f7bf Reorganize README structure (#935) 2025-10-19 21:47:50 +08:00
Jo
9c6987fe40 Add a page about "Quick start" (#934) 2025-10-19 21:34:56 +08:00
Jo
d174e59439 Improve logo (#916) 2025-10-17 18:26:12 +08:00
Aditya Yadav
67d956e8a0 Add --fail-fast CLI flag to stop after first hook failure (#908)
* Add --fail-fast CLI flag to stop after first hook failure

- Add fail_fast field to RunArgs struct with CLI flag support
- Fix in hook_impl.rs where fail_fast was hardcoded to false
- Update run() and run_hooks() to accept and propagate fail_fast parameter
- CLI flag overrides config file setting (enables fail-fast mode)
- Ensure try-repo and main entry point pass fail_fast correctly

* Update test snapshots for --fail-fast flag

* Add CLI flag test for --fail-fast

* Fix trailing whitespace in test comment
2025-10-17 11:07:27 +08:00
Louis Maddox
6d8579fdf4 feat: make package cargo binstallable (#882) 2025-10-15 06:33:38 +08:00
Jo
1205b6ddb6 Add tracking issue for language support (#879) 2025-10-14 20:42:29 +08:00
Colin Dean
0d91f4c39e Add Nix and Conda installation details (#874)
* Update README with Nix and Conda installation details

Progress toward #805

* Update docs/installation.md

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-10-14 11:50:05 +08:00
Álvaro Mondéjar Rubio
ff3a6746ff Publish prek to npmjs.com (#819)
* Publish prek to npmjs.com

* Add some docs

* Fix error in README

* Put installation after cargo in README

* Update docs

* Update integration

* Minor change

* Minor change

* Use `@j178/prek`

* Use cargo-dist generated npm package

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-10-13 23:30:50 +08:00
Luiz Otavio Vilas Boas Oliveira
74cb495dea Implement prek try-repo (#797)
* Add try_repo logic and tests (WIP)

* Remove unnecessary mut

* Fix clippy issues

* Add unit test

* Update snapshots

* Update docs

* Update unit test

* WIP

* Update snapshots

* Lint

* Add extra filters to try_repo tests

* Lint

* Update unit tests

* Apply Josh's suggestions

* Fix arg name

* .

* Fix

* Fix

* Generate

* Fix snapshot

* Improve coverage

---------

Co-authored-by: Jo <10510431+j178@users.noreply.github.com>
2025-10-10 21:11:31 +08:00
Jo
6c0cd3b7c8 Make prek auto-update --jobs default to 0 (which uses max available parallelism) (#833) 2025-10-01 23:03:56 +08:00
Jo
59960410fa Add support for .prekignore to ignore directories from project discovery (#826) 2025-10-01 18:15:10 +08:00
dependabot[bot]
7678e623ab Bump mkdocs-include-markdown-plugin from 7.1.7 to 7.1.8 in /docs (#821)
Bumps [mkdocs-include-markdown-plugin](https://github.com/mondeja/mkdocs-include-markdown-plugin) from 7.1.7 to 7.1.8.
- [Release notes](https://github.com/mondeja/mkdocs-include-markdown-plugin/releases)
- [Commits](https://github.com/mondeja/mkdocs-include-markdown-plugin/compare/v7.1.7...v7.1.8)

---
updated-dependencies:
- dependency-name: mkdocs-include-markdown-plugin
  dependency-version: 7.1.8
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-30 15:56:17 +08:00
Jo
0adb26401d Add a global --log-file flag to specify the log file path (#817) 2025-09-29 16:30:48 +08:00
Jo
7551dab631 Update docs about uv in prek (#810) 2025-09-28 17:20:10 +08:00
Jo
17e3629be1 Update document (#809) 2025-09-28 17:08:11 +08:00
Jo
92ca7298ec Simplify README and index page (#808) 2025-09-28 16:59:12 +08:00
Jo
d7c39b5733 Show error message in quiet mode (#807)
* Show error message in quiet mode

In quiet mode (`-q`), error messages will still be printed.
In silent mode (`-qq`), nothing gets printed.

* Generate cli doc

* Add test
2025-09-28 13:50:16 +08:00
Jo
d0f7c4d6b0 Add --dry-run to prek auto-update (#806) 2025-09-28 12:06:44 +08:00
Jo
04bb76fcb4 Add prek cache dir, move prek gc and prek clean under prek cache (#795)
`prek gc` and `prek clean` are still available but hidden.
2025-09-25 13:36:41 +08:00
Álvaro Mondéjar Rubio
a95a3d0912 Deduplicate docs between README and MkDocs site (#792) 2025-09-25 11:28:29 +08:00
Jo
cd3a934d9d Clarify built-in hooks activation conditions and behavior (#781) 2025-09-22 17:12:54 +08:00
Jo
0ba14e2f1d Add support for specifying PREK_UV_SOURCE (#766)
* Add support for specifying `PREK_UV_SOURCE`

* Fix

* Improve

* debug

* Fix
2025-09-20 18:24:35 +08:00