Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6c07633cfc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Pull request overview
This PR ensures prek update continues to match repositories using the exact repo strings from configuration (for --repo, --exclude-repo, and repo-specific tag filters), while still using resolved/canonical local paths as the effective fetch/cache identity at runtime.
Changes:
- Introduces
RemoteRepo::{configured_repo, source}to separate configured values from resolved runtime sources. - Updates the update pipeline to group fetches by resolved
source, but apply selection/tag filtering per configured repo value. - Adds regression tests covering relative repo config values and selector/tag-filter/exclude behavior.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| crates/prek/tests/update.rs | Adds coverage for relative configured repo values matching update selectors, tag filters, and exclude filters. |
| crates/prek/src/workspace.rs | Resolves relative local repo paths into a separate resolved_source used for runtime operations. |
| crates/prek/src/store.rs | Switches cloning/cache identity and repo marker content to use RemoteRepo::source(). |
| crates/prek/src/config.rs | Adds resolved_source and API to distinguish configured repo from runtime source; updates key/display behavior accordingly. |
| crates/prek/src/cli/update/source.rs | Groups updates by resolved fetch source while keeping per-target configured repo identity; applies tag filters per target repo. |
| crates/prek/src/cli/update/mod.rs | Filters/warns using configured repo values and adjusts progress labeling for the new source/target structure. |
| crates/prek/src/cli/cache_gc.rs | Aligns repo identity usage with source() and simplifies repo marker commentary after marker format change. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
6c07633 to
7b806ef
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #2324 +/- ##
==========================================
- Coverage 93.32% 93.29% -0.04%
==========================================
Files 127 127
Lines 28130 28178 +48
==========================================
+ Hits 26252 26288 +36
- Misses 1878 1890 +12 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
📦 Cargo Bloat ComparisonBinary size change: +0.00% (27.7 MiB → 27.7 MiB) Expand for cargo-bloat outputHead Branch ResultsBase Branch Results |
⚡️ Hyperfine BenchmarksSummary: 0 regressions, 1 improvements above the 10% threshold. Environment
CLI CommandsBenchmarking basic commands in the main repo:
|
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base --version |
2.3 ± 0.1 | 2.1 | 3.0 | 1.08 ± 0.09 |
prek-head --version |
2.1 ± 0.1 | 2.0 | 3.2 | 1.00 |
prek list
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base list |
9.3 ± 0.1 | 9.1 | 9.5 | 1.01 ± 0.06 |
prek-head list |
9.2 ± 0.5 | 8.9 | 12.7 | 1.00 |
prek validate-config .pre-commit-config.yaml
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base validate-config .pre-commit-config.yaml |
3.7 ± 1.1 | 3.2 | 7.5 | 1.07 ± 0.53 |
prek-head validate-config .pre-commit-config.yaml |
3.5 ± 1.4 | 2.9 | 8.5 | 1.00 |
prek sample-config
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base sample-config |
2.5 ± 0.0 | 2.4 | 2.6 | 1.06 ± 0.04 |
prek-head sample-config |
2.3 ± 0.1 | 2.3 | 2.5 | 1.00 |
Cold vs Warm Runs
Comparing first run (cold) vs subsequent runs (warm cache):
prek run --all-files (cold - no cache)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run --all-files |
75.7 ± 2.2 | 72.2 | 79.3 | 1.02 ± 0.04 |
prek-head run --all-files |
73.9 ± 2.4 | 70.5 | 77.8 | 1.00 |
prek run --all-files (warm - with cache)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run --all-files |
74.5 ± 2.2 | 70.8 | 80.2 | 1.01 ± 0.04 |
prek-head run --all-files |
74.2 ± 2.3 | 71.3 | 78.3 | 1.00 |
Full Hook Suite
Running the builtin hook suite on the benchmark workspace:
prek run --all-files (full builtin hook suite)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run --all-files |
74.7 ± 2.2 | 71.1 | 79.5 | 1.00 ± 0.05 |
prek-head run --all-files |
74.7 ± 2.6 | 69.3 | 83.2 | 1.00 |
Individual Hook Performance
Benchmarking each hook individually on the test repo:
prek run trailing-whitespace --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run trailing-whitespace --all-files |
19.7 ± 0.3 | 19.2 | 20.8 | 1.02 ± 0.02 |
prek-head run trailing-whitespace --all-files |
19.4 ± 0.3 | 18.9 | 20.1 | 1.00 |
prek run end-of-file-fixer --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run end-of-file-fixer --all-files |
25.9 ± 2.2 | 23.7 | 30.8 | 1.02 ± 0.11 |
prek-head run end-of-file-fixer --all-files |
25.5 ± 1.7 | 23.1 | 28.5 | 1.00 |
prek run check-json --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run check-json --all-files |
7.8 ± 0.2 | 7.3 | 8.3 | 1.01 ± 0.05 |
prek-head run check-json --all-files |
7.7 ± 0.3 | 7.2 | 8.4 | 1.00 |
prek run check-yaml --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run check-yaml --all-files |
7.6 ± 0.1 | 7.3 | 7.9 | 1.04 ± 0.02 |
prek-head run check-yaml --all-files |
7.3 ± 0.1 | 7.2 | 7.4 | 1.00 |
prek run check-toml --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run check-toml --all-files |
7.7 ± 0.3 | 7.2 | 8.3 | 1.05 ± 0.05 |
prek-head run check-toml --all-files |
7.3 ± 0.3 | 6.9 | 8.0 | 1.00 |
prek run check-xml --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run check-xml --all-files |
7.7 ± 0.5 | 7.2 | 8.8 | 1.04 ± 0.07 |
prek-head run check-xml --all-files |
7.4 ± 0.3 | 7.1 | 8.2 | 1.00 |
prek run detect-private-key --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run detect-private-key --all-files |
13.4 ± 1.2 | 11.9 | 17.3 | 1.00 |
prek-head run detect-private-key --all-files |
13.5 ± 1.2 | 11.7 | 17.0 | 1.01 ± 0.13 |
prek run fix-byte-order-marker --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run fix-byte-order-marker --all-files |
17.9 ± 0.8 | 16.7 | 19.8 | 1.00 |
prek-head run fix-byte-order-marker --all-files |
18.6 ± 3.0 | 16.6 | 33.3 | 1.04 ± 0.17 |
Installation Performance
Benchmarking hook installation (fast path hooks skip Python setup):
prek install-hooks (cold - no cache)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base install-hooks |
4.5 ± 0.0 | 4.5 | 4.6 | 1.01 ± 0.04 |
prek-head install-hooks |
4.5 ± 0.2 | 4.3 | 4.7 | 1.00 |
prek install-hooks (warm - with cache)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base install-hooks |
4.5 ± 0.1 | 4.4 | 4.5 | 1.02 ± 0.02 |
prek-head install-hooks |
4.4 ± 0.1 | 4.3 | 4.5 | 1.00 |
File Filtering/Scoping Performance
Testing different file selection modes:
prek run (staged files only)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run |
36.8 ± 1.0 | 35.6 | 39.1 | 1.00 |
prek-head run |
37.5 ± 1.3 | 36.0 | 40.8 | 1.02 ± 0.04 |
prek run --files '*.json' (specific file type)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run --files '*.json' |
8.2 ± 0.2 | 8.0 | 8.9 | 1.03 ± 0.10 |
prek-head run --files '*.json' |
7.9 ± 0.7 | 7.5 | 11.0 | 1.00 |
Workspace Discovery & Initialization
Benchmarking hook discovery and initialization overhead:
prek run --dry-run --all-files (measures init overhead)
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run --dry-run --all-files |
6.9 ± 0.1 | 6.6 | 7.3 | 1.04 ± 0.02 |
prek-head run --dry-run --all-files |
6.6 ± 0.1 | 6.5 | 6.8 | 1.00 |
Meta Hooks Performance
Benchmarking meta hooks separately:
prek run check-hooks-apply --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run check-hooks-apply --all-files |
10.7 ± 0.1 | 10.5 | 11.0 | 1.03 ± 0.02 |
prek-head run check-hooks-apply --all-files |
10.4 ± 0.2 | 10.0 | 10.6 | 1.00 |
prek run check-useless-excludes --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run check-useless-excludes --all-files |
11.7 ± 1.4 | 10.5 | 14.1 | 1.11 ± 0.13 |
prek-head run check-useless-excludes --all-files |
10.5 ± 0.1 | 10.3 | 10.9 | 1.00 |
✅ Performance improvement for prek run check-useless-excludes --all-files: 10.3100% faster
prek run identity --all-files
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
prek-base run identity --all-files |
9.9 ± 0.1 | 9.8 | 10.2 | 1.03 ± 0.02 |
prek-head run identity --all-files |
9.7 ± 0.1 | 9.5 | 10.0 | 1.00 |
7b806ef to
dcab57f
Compare
dcab57f to
128a9c0
Compare
128a9c0 to
922737d
Compare
Automated mise tool upgrades from local config. Updated tools: - `prek` Command: `mise upgrade --bump --local prek` <details> <summary>Version changelog (prek)</summary> | Tool | Requested | Installed | |------|-----------|-----------| | `prek` | `0.4.9` → `0.4.10` | `0.4.9` → `0.4.10` | </details> <details> <summary>Release notes (1 tools)</summary> <details> <summary>prek: `0.4.9` → `0.4.10` (j178/prek)</summary> ### v0.4.10 ## Release Notes Released on 2026-07-16. ### Enhancements - Add PHP language support ([#2314](j178/prek#2314)) - Add freeze option to update settings ([#2323](j178/prek#2323)) - Add tag filters to update configuration ([#2354](j178/prek#2354)) - Identify 'mts' and 'cts' as TypeScript files ([#2209](j178/prek#2209)) - Publish Alpine Docker images ([#2352](j178/prek#2352)) - Support builtin and meta in try-repo ([#2350](j178/prek#2350)) ### Bug fixes - Fix Python discovery order ([#2348](j178/prek#2348)) - Fix Windows progress rendering ([#2328](j178/prek#2328)) - Preserve configured repo values for updates ([#2324](j178/prek#2324)) - Scope synthetic `GIT_WORK_TREE` to git commands ([#2356](j178/prek#2356)) ### Documentation - Expand common workflows guide ([#2351](j178/prek#2351)) ### Contributors - @j178 ## Install prek 0.4.10 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.10 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.… (truncated) </details> </details> Modified files: - `.mise.toml` Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Automated mise tool upgrades from local config. Updated tools: - `prek` Command: `mise upgrade --bump --local prek` <details> <summary>Version changelog (prek)</summary> | Tool | Requested | Installed | |------|-----------|-----------| | `prek` | `0.4.5` → `0.4.10` | `0.4.5` → `0.4.10` | </details> <details> <summary>Release notes (1 tools)</summary> <details> <summary>prek: `0.4.5` → `0.4.10` (j178/prek)</summary> ### v0.4.6 ## Release Notes Released on 2026-07-01. ### Enhancements - Verify managed toolchain downloads before installation ([#2229](j178/prek#2229)) - Add `PREK_DOCKER_NO_INIT` to opt-out Docker `--init` ([#2242](j178/prek#2242)) - Improve subprocess error messages ([#2257](j178/prek#2257)) - Split run concurrency knobs: `PREK_CONCURRENT_HOOKS` and `PREK_CONCURRENT_BATCHES` ([#2276](j178/prek#2276)) ### Performance - Avoid allocating markdown extensions per file ([#2245](j178/prek#2245)) - Avoid unchanged config tracking writes ([#2247](j178/prek#2247)) - Delay trailing whitespace output buffer ([#2244](j178/prek#2244)) - Prefilter VCS permalink lines ([#2253](j178/prek#2253)) - Skip unnecessary submodule updates during hook repo clone ([#2255](j178/prek#2255)) ### Documentation - Document `language_version` inferring for Python and Go ([#2241](j178/prek#2241)) ### Other changes - Refactor env var handling ([#2277](j178/prek#2277)) - Use `serde-saphyr` for YAML string quoting ([#2228](j178/prek#2228)) ### Contributors - @shaanmajid - @j178 ## Install prek 0.4.6 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.6/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.6/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.6 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.6… (truncated) ### v0.4.8 ## Release Notes Released on 2026-07-04. ### Enhancements - Add default_env configuration ([#2288](j178/prek#2288)) - Rename `auto-update` to `update` ([#2286](j178/prek#2286)) ### Bug fixes - Fix progress collapse ordering ([#2291](j178/prek#2291)) - Fix progress insertion after collapsed rows ([#2292](j178/prek#2292)) ### Contributors - @j178 ## Install prek 0.4.8 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.8/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.8/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.8 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.8/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.8/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.8/prek-x86_64-apple-darwin.tar.gz) | Intel macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.8/prek-x86_64-apple-darwin.tar.gz.sha256) | | [prek-aarch64-pc-windows-msvc.zip](https://github.com/j178/prek/releases/download/v0.4.8/prek-aarch64-pc-windows-msvc.zip) | ARM64 Windows | [checksum](https://github.com/j178/prek/releases/download/v0.4.8/prek-aarch64-pc-windows-msvc.zip.sha256) | | [prek-i686-pc-windows-msvc.zip](https://github.com/j178/prek/releases/download/v0.4.8/prek-i686-pc-windows-msvc.zip) | x86 Windows | [checksum](https://github.com/j178/prek/releases/download/v0.4.8/prek-i686-pc-windows-msvc.zip.sha2… (truncated) ### v0.4.9 ## Release Notes Released on 2026-07-11. Note: This release changes the repository identity schema stored in cached hook environments. Existing hook environments will be invalidated, and prek will reinstall them automatically when needed. ### Enhancements - Preserve additional dependency order ([#2311](j178/prek#2311)) - Remove parallel Ruby gem installation ([#2307](j178/prek#2307)) - Warn for missing update repositories ([#2316](j178/prek#2316)) ### Bug fixes - Fix mixed workspace selectors ([#2306](j178/prek#2306)) - Fix try-repo local path resolution ([#2310](j178/prek#2310)) - Use resolved gem executable ([#2308](j178/prek#2308)) - Validate complete XML documents in check-xml ([#2312](j178/prek#2312)) ### Contributors - @j178 ## Install prek 0.4.9 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.9/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.9/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.9 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.9/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.9/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.9/prek-x86_64-apple-darwin.tar.gz) | Intel macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.9/prek-x86_64-apple-darwin.tar.gz.sha256) | | [prek-aarch64-pc… (truncated) ### v0.4.10 ## Release Notes Released on 2026-07-16. ### Enhancements - Add PHP language support ([#2314](j178/prek#2314)) - Add freeze option to update settings ([#2323](j178/prek#2323)) - Add tag filters to update configuration ([#2354](j178/prek#2354)) - Identify 'mts' and 'cts' as TypeScript files ([#2209](j178/prek#2209)) - Publish Alpine Docker images ([#2352](j178/prek#2352)) - Support builtin and meta in try-repo ([#2350](j178/prek#2350)) ### Bug fixes - Fix Python discovery order ([#2348](j178/prek#2348)) - Fix Windows progress rendering ([#2328](j178/prek#2328)) - Preserve configured repo values for updates ([#2324](j178/prek#2324)) - Scope synthetic `GIT_WORK_TREE` to git commands ([#2356](j178/prek#2356)) ### Documentation - Expand common workflows guide ([#2351](j178/prek#2351)) ### Contributors - @j178 ## Install prek 0.4.10 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.10 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.… (truncated) </details> </details> Modified files: - `.mise.toml` Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Automated mise tool upgrades from local config. Updated tools: - `action-validator` - `actionlint` - `editorconfig-checker` - `ghalint` - `lychee` - `pinact` - `pipx:gh-action-pulse` - `prek` - `rumdl` - `shellcheck` - `shfmt` - `tombi` - `uv` - `yamlfmt` - `yamllint` - `zizmor` Command: `mise upgrade --bump --local action-validator actionlint editorconfig-checker ghalint lychee pinact pipx:gh-action-pulse prek rumdl shellcheck shfmt tombi uv yamlfmt yamllint zizmor` <details> <summary>Version changelog (5 tools)</summary> | Tool | Requested | Installed | |------|-----------|-----------| | `pipx:gh-action-pulse` | `latest` → `latest` | `0.5.1` → `1.0.0` | | `prek` | `0.4.9` → `0.4.10` | `0.4.9` → `0.4.10` | | `rumdl` | `0.2.34` → `0.2.36` | `0.2.34` → `0.2.36` | | `tombi` | `1.2.0` → `1.2.3` | `1.2.0` → `1.2.3` | | `uv` | `latest` → `latest` | `0.11.28` → `0.11.29` | </details> <details> <summary>Release notes (4 tools)</summary> <details> <summary>prek: `0.4.9` → `0.4.10` (j178/prek)</summary> ### v0.4.10 ## Release Notes Released on 2026-07-16. ### Enhancements - Add PHP language support ([#2314](j178/prek#2314)) - Add freeze option to update settings ([#2323](j178/prek#2323)) - Add tag filters to update configuration ([#2354](j178/prek#2354)) - Identify 'mts' and 'cts' as TypeScript files ([#2209](j178/prek#2209)) - Publish Alpine Docker images ([#2352](j178/prek#2352)) - Support builtin and meta in try-repo ([#2350](j178/prek#2350)) ### Bug fixes - Fix Python discovery order ([#2348](j178/prek#2348)) - Fix Windows progress rendering ([#2328](j178/prek#2328)) - Preserve configured repo values for updates ([#2324](j178/prek#2324)) - Scope synthetic `GIT_WORK_TREE` to git commands ([#2356](j178/prek#2356)) ### Documentation - Expand common workflows guide ([#2351](j178/prek#2351)) ### Contributors - @j178 ## Install prek 0.4.10 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.10 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.… (truncated) </details> <details> <summary>rumdl: `0.2.34` → `0.2.36` (rvben/rumdl)</summary> ### v0.2.35 ### Added - **cli**: honor --deny-config-warnings on the stdin path ([0f93ca5](rvben/rumdl@0f93ca5)) - **cli**: make --deny-config-warnings cover inline disable-comment rule names ([96d75f5](rvben/rumdl@96d75f5)) - **cli**: add --deny-config-warnings for config-file and CLI-flag problems ([5045daf](rvben/rumdl@5045daf)) - **reflow**: support breaking within emphasis spans ([2e8bded](rvben/rumdl@2e8bded)) ### Fixed - **reflow**: preserve non-breaking spaces and the space before French double punctuation ([f66021f](rvben/rumdl@f66021f)) - **cli**: walk directory arguments even when file paths are also passed ([d058273](rvben/rumdl@d058273)) - **lsp**: honor line anchors in goto-definition ([17a21e7](rvben/rumdl@17a21e7)) - **md077**: attribute middle-level continuation lines to their own list item ([c73763b](rvben/rumdl@c73763b)) ## Downloads | File | Platform | Checksum | |------|----------|----------| | [rumdl-v0.2.35-x86_64-unknown-linux-gnu.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.35/rumdl-v0.2.35-x86_64-unknown-linux-gnu.tar.gz) | Linux x86_64 | [checksum](https://github.com/rvben/rumdl/releases/download/v0.2.35/rumdl-v0.2.35-x86_64-unknown-linux-gnu.tar.gz.sha256) | | [rumdl-v0.2.35-x86_64-unknown-linux-musl.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.35/rumdl-v0.2.35-x86_64-unknown-linux-musl.tar.gz) | Linux x86_64 (musl) | [checksum](https://github.com/rvben/rumdl/releases/download/v0.2.35/rumdl-v0.2.35-x86_64-unknown-linux-musl.tar.gz.sha2… (truncated) ### v0.2.36 ### Added - **code-block-tools**: add shuck:format as a built-in shell formatter ([5b23261](rvben/rumdl@5b23261)) ### Fixed - **wasm**: stop double-converting already-character-based columns ([4178cdf](rvben/rumdl@4178cdf)) - **tests**: resolve String addition compilation errors under Rust 1.96 (#737) ([38f36cf](rvben/rumdl@38f36cf)) ## Downloads | File | Platform | Checksum | |------|----------|----------| | [rumdl-v0.2.36-x86_64-unknown-linux-gnu.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-x86_64-unknown-linux-gnu.tar.gz) | Linux x86_64 | [checksum](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-x86_64-unknown-linux-gnu.tar.gz.sha256) | | [rumdl-v0.2.36-x86_64-unknown-linux-musl.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-x86_64-unknown-linux-musl.tar.gz) | Linux x86_64 (musl) | [checksum](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-x86_64-unknown-linux-musl.tar.gz.sha256) | | [rumdl-v0.2.36-aarch64-unknown-linux-gnu.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-aarch64-unknown-linux-gnu.tar.gz) | Linux ARM64 | [checksum](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-aarch64-unknown-linux-gnu.tar.gz.sha256) | | [rumdl-v0.2.36-aarch64-unknown-linux-musl.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-aarch64-unknown-linux-musl.tar.gz) | Linux ARM64 (musl) | [checksum](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-aarch64-unknown-linux-musl.tar.gz.sha256) | | [rumdl-v0.2.36-x86_64-apple-darwin.tar.gz](https://github.com/rvben/rumdl/releases/download/v0.2.36/rumdl-v0.2.36-x86_64-apple-darwin.tar.gz) | macOS x86_64 | [checksum](https://github.co… (truncated) </details> <details> <summary>tombi: `1.2.0` → `1.2.3` (tombi-toml/tombi)</summary> ### v1.2.1 <!-- Release notes generated using configuration in .github/release.yml at v1.2.1 --> ## What's Changed In this release, we have updated the linter to issue a warning if it is unable to resolve elements such as $ref within a JSON Schema. ### 🐝 Bug Fixes * Stabilize diagnostic collection names by @ya7010 in tombi-toml/tombi#2000 * fix(lint): avoid false unused deprecated directive by @ya7010 in tombi-toml/tombi#2001 * fix(vscode): make executable settings machine-scoped by @ya7010 in tombi-toml/tombi#2002 * fix(validator): report schema resolution errors by @ya7010 in tombi-toml/tombi#2010 * fix(glob): remove unused profile import by @ya7010 in tombi-toml/tombi#2011 ### 📦 Dependencies * chore: resolve OSV code scanning alerts by @ya7010 in tombi-toml/tombi#2004 ### 🛠️ Other Changes * docs: document deprecationMessage as non-standard support by @ya7010 in tombi-toml/tombi#2003 * ci: pin OSV scanner workflow to existing action ref by @ya7010 in tombi-toml/tombi#2005 * fix(validator): report not schema resolution errors by @risu729 in tombi-toml/tombi#2007 * feat(diagnostic): integrate tombi-diagnostic for error reporting in validator by @ya7010 in tombi-toml/tombi#2015 * Update error handling by @ya7010 in tombi-toml/tombi#2016 * chore: change schemastore diagnostics level by @ya7010 in tombi-toml/tombi#2017 ## New Contributors * @risu729 made their first contribution in tombi-toml/tombi#2007 **Full Changelog**: tombi-toml/tombi@v1.2.0...v1.2.1 ### v1.2.2 <!-- Release notes generated using configuration in .github/release.yml at v1.2.2 --> ## What's Changed ### 🐝 Bug Fixes * ci: submit winget manifest leaf directory by @ya7010 in tombi-toml/tombi#2018 ### 📦 Dependencies * chore: update package lock files for SunOS package by @ya7010 in tombi-toml/tombi#2020 ### 🛠️ Other Changes * feat(dist): add x86_64-unknown-illumos binary distribution by @sunshowers in tombi-toml/tombi#2014 * refactor(dist): infer CLI-only illumos builds by @ya7010 in tombi-toml/tombi#2019 ## New Contributors * @sunshowers made their first contribution in tombi-toml/tombi#2014 **Full Changelog**: tombi-toml/tombi@v1.2.1...v1.2.2 ### v1.2.3 <!-- Release notes generated using configuration in .github/release.yml at v1.2.3 --> ## What's Changed ### 🦅 New Features * Allow comment directives to suppress schema resolution warnings by @ya7010 in tombi-toml/tombi#2023 ### 🛠️ Other Changes * ci: finalize illumos install checks by @ya7010 in tombi-toml/tombi#2021 * fix(ci): preserve winget release metadata by @ya7010 in tombi-toml/tombi#2022 **Full Changelog**: tombi-toml/tombi@v1.2.2...v1.2.3 </details> <details> <summary>uv: `0.11.28` → `0.11.29` (astral-sh/uv)</summary> ### 0.11.29 ## Release Notes Released on 2026-07-15. ### Python - Use gzip-compressed artifacts for PyPy downloads ([#20265](astral-sh/uv#20265)) ### Enhancements - Add JSON output to `uv tree` ([#19978](astral-sh/uv#19978)) - Add CUDA 13.2 as a supported PyTorch backend ([#20267](astral-sh/uv#20267)) - Prefer local artifacts over URLs when installing from `pylock.toml` ([#20393](astral-sh/uv#20393)) - Clarify diagnostics for unsatisfiable direct requirement ranges ([#20227](astral-sh/uv#20227)) - Include the selected project name in missing-extra errors ([#20358](astral-sh/uv#20358)) ### Preview features - Preserve extras and dependency-group conflict context when selecting locked project tools ([#20078](astral-sh/uv#20078)) - Split OSV audit queries that exceed the service's 1,000-package limit ([#20398](astral-sh/uv#20398)) - Apply OSV fixed-version information only to the matching package and ecosystem ([#20399](astral-sh/uv#20399)) - Skip the virtualenv distutils monkeypatch on Python 3.10 and later ([#20222](astral-sh/uv#20222)) - Report invalid `uv audit --service-url` values instead of panicking ([#20374](astral-sh/uv#20374)) - Include preview settings in the published SchemaStore schema ([#20304](astral-sh/uv#20304)) ### Performance - Reduce resolver work by widening selected versions across ranges without other known candidates ([#20115](astral-sh/uv#20115)) - Defer client and build setup for no-op `uv sync` operations ([#20364](astral-sh/uv#20364)) - Reuse workspace discovery during frozen syncs ([#20363](astral-sh/uv#20363)) - Reuse workspace discovery after resolving settings ([#20356](http… (truncated) </details> </details> Modified files: - `.mise.toml` Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Automated mise tool upgrades from local config. Updated tools: - `prek` Command: `mise upgrade --bump --local prek` <details> <summary>Version changelog (prek)</summary> | Tool | Requested | Installed | |------|-----------|-----------| | `prek` | `0.4.9` → `0.4.10` | `0.4.9` → `0.4.10` | </details> <details> <summary>Release notes (1 tools)</summary> <details> <summary>prek: `0.4.9` → `0.4.10` (j178/prek)</summary> ### v0.4.10 ## Release Notes Released on 2026-07-16. ### Enhancements - Add PHP language support ([#2314](j178/prek#2314)) - Add freeze option to update settings ([#2323](j178/prek#2323)) - Add tag filters to update configuration ([#2354](j178/prek#2354)) - Identify 'mts' and 'cts' as TypeScript files ([#2209](j178/prek#2209)) - Publish Alpine Docker images ([#2352](j178/prek#2352)) - Support builtin and meta in try-repo ([#2350](j178/prek#2350)) ### Bug fixes - Fix Python discovery order ([#2348](j178/prek#2348)) - Fix Windows progress rendering ([#2328](j178/prek#2328)) - Preserve configured repo values for updates ([#2324](j178/prek#2324)) - Scope synthetic `GIT_WORK_TREE` to git commands ([#2356](j178/prek#2356)) ### Documentation - Expand common workflows guide ([#2351](j178/prek#2351)) ### Contributors - @j178 ## Install prek 0.4.10 ### Install prebuilt binaries via shell script ```sh curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.sh | sh ``` ### Install prebuilt binaries via powershell script ```sh powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.10/prek-installer.ps1 | iex" ``` ### Install prebuilt binaries via Homebrew ```sh brew install prek ``` ## Download prek 0.4.10 | File | Platform | Checksum | |--------|----------|----------| | [prek-aarch64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz) | Apple Silicon macOS | [checksum](https://github.com/j178/prek/releases/download/v0.4.10/prek-aarch64-apple-darwin.tar.gz.sha256) | | [prek-x86_64-apple-darwin.tar.gz](https://github.com/j178/prek/releases/download/v0.… (truncated) </details> </details> Modified files: - `.mise.toml` Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Preserve configured repository values for update selectors and repo-specific tag filters while using resolved local paths for runtime operations.