feat: add pkl_format builtin for pkl 0.30 formatter#475
Merged
Conversation
5a9c7ab to
0f658c9
Compare
Add a new builtin for `pkl format`, the official Pkl formatter introduced in pkl 0.30. This complements the existing `pkl` builtin which runs `pkl eval` for validation. - Add pkl_format builtin with check/check_list_files/fix commands - check_list_files uses --diff-name-only flag for dynamic file discovery Note: Users need pkl 0.30+ to use this builtin. Closes #411 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
0f658c9 to
fe672e3
Compare
Merged
jdx
added a commit
that referenced
this pull request
Dec 4, 2025
## [1.26.0](https://github.com/jdx/hk/compare/v1.25.0..v1.26.0) - 2025-12-04 ### 🚀 Features - Split `taplo` into `taplo` and `taplo_format` by [@thejcannon](https://github.com/thejcannon) in [#466](#466) - add pkl_format builtin for pkl 0.30 formatter by [@jdx](https://github.com/jdx) in [#475](#475) - add check-conventional-commit utility and built-in by [@joonas](https://github.com/joonas) in [#477](#477) - add mise builtin by [@hisaac](https://github.com/hisaac) in [#480](#480) - forward HTTP proxy env vars to pkl by [@jdx](https://github.com/jdx) in [#486](#486) ### 🐛 Bug Fixes - Fix docs build GHA by [@thejcannon](https://github.com/thejcannon) in [#471](#471) - improve progress bar accuracy for skipped steps and OSC alignment by [@jdx](https://github.com/jdx) in [#472](#472) - cleaner error output for command failures by [@jdx](https://github.com/jdx) in [#474](#474) - update mise builtin glob by [@hisaac](https://github.com/hisaac) in [#482](#482) ### 🚜 Refactor - Remove pointless stage test by [@thejcannon](https://github.com/thejcannon) in [#484](#484) - Move `black` from mise config to tool stub, for testing, and test the builtin by [@thejcannon](https://github.com/thejcannon) in [#483](#483) - Move category/description to annotation by [@thejcannon](https://github.com/thejcannon) in [#485](#485) ### 📚 Documentation - Generate `configuration` docs from `settings.toml` in-build by [@thejcannon](https://github.com/thejcannon) in [#461](#461) - generate builtins docs from Pkl instead of manual sync by [@jdx](https://github.com/jdx) in [#476](#476) ### 🧪 Testing - Stub ktlint and add tests to builtin by [@thejcannon](https://github.com/thejcannon) in [#488](#488) - Bump pkl, fix the builtin, and add tests by [@thejcannon](https://github.com/thejcannon) in [#489](#489) ### 🔍 Other Changes - updated mise lockfile by [@jdx](https://github.com/jdx) in [b10d2e6](b10d2e6) ### 📦️ Dependency Updates - update jdx/mise-action digest to 146a281 by [@renovate[bot]](https://github.com/renovate[bot]) in [#479](#479) - update anthropics/claude-code-action digest to a7e4c51 by [@renovate[bot]](https://github.com/renovate[bot]) in [#478](#478) - lock file maintenance by [@renovate[bot]](https://github.com/renovate[bot]) in [#481](#481) ### New Contributors - @hisaac made their first contribution in [#482](#482) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Release v1.26.0 with a new `util check-conventional-commit` command, proxy-forwarding to Pkl, updated docs, and dependency bumps. > > - **Release/Versioning**: > - Bump crate and CLI to `1.26.0`; update all Pkl URLs in examples/templates/docs to `v1.26.0`. > - **CLI/Features**: > - Add `hk util check-conventional-commit` (with `--allowed-types`); expose in usage, KDL spec, commands.json, and docs. > - Add default values to flags in CLI spec/docs (e.g., `config dump --format=json`, migrate defaults, `util --maxkb=500`). > - **Core**: > - Forward HTTP proxy env vars (`http_proxy`, `https_proxy`, `no_proxy`) to Pkl via `--http-proxy/--http-no-proxy` during config parsing. > - **Docs**: > - Regenerate CLI docs (add generated headers) and index; add page for the new util; refresh examples. > - Update CHANGELOG with 1.26.0 entries. > - **Dependencies/Build**: > - Update Cargo.lock (multiple crate version bumps; unify `thiserror` dependency usage). > - Update `mise.lock` entries/checksums. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 2da0194. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: mise-en-dev <[email protected]>
tmeijn
pushed a commit
to tmeijn/dotfiles
that referenced
this pull request
Dec 12, 2025
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [hk](https://github.com/jdx/hk) | minor | `1.25.0` -> `1.26.0` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>jdx/hk (hk)</summary> ### [`v1.26.0`](https://github.com/jdx/hk/blob/HEAD/CHANGELOG.md#1260---2025-12-04) [Compare Source](jdx/hk@v1.25.0...v1.26.0) ##### 🚀 Features - Split `taplo` into `taplo` and `taplo_format` by [@​thejcannon](https://github.com/thejcannon) in [#​466](jdx/hk#466) - add pkl\_format builtin for pkl 0.30 formatter by [@​jdx](https://github.com/jdx) in [#​475](jdx/hk#475) - add check-conventional-commit utility and built-in by [@​joonas](https://github.com/joonas) in [#​477](jdx/hk#477) - add mise builtin by [@​hisaac](https://github.com/hisaac) in [#​480](jdx/hk#480) - forward HTTP proxy env vars to pkl by [@​jdx](https://github.com/jdx) in [#​486](jdx/hk#486) ##### 🐛 Bug Fixes - Fix docs build GHA by [@​thejcannon](https://github.com/thejcannon) in [#​471](jdx/hk#471) - improve progress bar accuracy for skipped steps and OSC alignment by [@​jdx](https://github.com/jdx) in [#​472](jdx/hk#472) - cleaner error output for command failures by [@​jdx](https://github.com/jdx) in [#​474](jdx/hk#474) - update mise builtin glob by [@​hisaac](https://github.com/hisaac) in [#​482](jdx/hk#482) ##### 🚜 Refactor - Remove pointless stage test by [@​thejcannon](https://github.com/thejcannon) in [#​484](jdx/hk#484) - Move `black` from mise config to tool stub, for testing, and test the builtin by [@​thejcannon](https://github.com/thejcannon) in [#​483](jdx/hk#483) - Move category/description to annotation by [@​thejcannon](https://github.com/thejcannon) in [#​485](jdx/hk#485) ##### 📚 Documentation - Generate `configuration` docs from `settings.toml` in-build by [@​thejcannon](https://github.com/thejcannon) in [#​461](jdx/hk#461) - generate builtins docs from Pkl instead of manual sync by [@​jdx](https://github.com/jdx) in [#​476](jdx/hk#476) ##### 🧪 Testing - Stub ktlint and add tests to builtin by [@​thejcannon](https://github.com/thejcannon) in [#​488](jdx/hk#488) - Bump pkl, fix the builtin, and add tests by [@​thejcannon](https://github.com/thejcannon) in [#​489](jdx/hk#489) ##### 🔍 Other Changes - updated mise lockfile by [@​jdx](https://github.com/jdx) in [b10d2e6](jdx/hk@b10d2e6) ##### 📦️ Dependency Updates - update jdx/mise-action digest to [`146a281`](jdx/hk@146a281) by [@​renovate\[bot\]](https://github.com/renovate\[bot]) in [#​479](jdx/hk#479) - update anthropics/claude-code-action digest to [`a7e4c51`](jdx/hk@a7e4c51) by [@​renovate\[bot\]](https://github.com/renovate\[bot]) in [#​478](jdx/hk#478) - lock file maintenance by [@​renovate\[bot\]](https://github.com/renovate\[bot]) in [#​481](jdx/hk#481) ##### New Contributors - [@​hisaac](https://github.com/hisaac) made their first contribution in [#​482](jdx/hk#482) </details> --- ### Configuration 📅 **Schedule**: 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 MR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi40Ny4wIiwidXBkYXRlZEluVmVyIjoiNDIuNDcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
pkl_formatbuiltin for the official Pkl formatter introduced in pkl 0.30pklbuiltin (which runspkl evalfor validation)Configuration
Test plan
taplo_format,ruff_format)Closes #411
🤖 Generated with Claude Code
Note
Add
pkl_formatbuiltin to format.pklfiles (requires Pkl 0.30+), wire it into exports, and document usage.pkl_formatstep (pkl/builtins/pkl_format.pkl):glob = "**/*.pkl",stage = "<JOB_FILES>"check_list_files = "pkl format --diff-name-only {{ files }}"fix = "pkl format --write {{ files }}"Builtins.pklmapping:pkl_format = Builtins["builtins/pkl_format.pkl"].pkl_formatpkl_formatindocs/builtins.mdwith files, features, and commands.Written by Cursor Bugbot for commit fe672e3. This will update automatically on new commits. Configure here.