Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,39 @@
# Changelog

## [1.45.0](https://github.com/jdx/hk/compare/v1.44.3..v1.45.0) - 2026-05-04

### πŸš€ Features

- **(builtins)** add `buildifier` format and lint built-ins by [@plx](https://github.com/plx) in [#896](https://github.com/jdx/hk/pull/896)

### πŸ› Bug Fixes

- **(step)** only auto-batch when rendered command exceeds ARG_MAX by [@jdx](https://github.com/jdx) in [#901](https://github.com/jdx/hk/pull/901)

### πŸ“š Documentation

- thank Namespace for GitHub Actions runner support by [@jdx](https://github.com/jdx) in [#895](https://github.com/jdx/hk/pull/895)

### πŸ” Other Changes

- **(ci)** use !cancelled() instead of always() for final job by [@jdx](https://github.com/jdx) in [#906](https://github.com/jdx/hk/pull/906)
- **(docs)** remove shrill.en.dev analytics script by [@jdx](https://github.com/jdx) in [#903](https://github.com/jdx/hk/pull/903)
- remove rust-cache from release jobs by [@jdx](https://github.com/jdx) in [#893](https://github.com/jdx/hk/pull/893)
- invert CLAUDE.md/AGENTS.md so AGENTS.md is canonical by [@jdx](https://github.com/jdx) in [#905](https://github.com/jdx/hk/pull/905)
- set dev profile debug to 1 by [@jdx](https://github.com/jdx) in [#907](https://github.com/jdx/hk/pull/907)

### πŸ“¦οΈ Dependency Updates

- update anthropics/claude-code-action digest to fefa07e by [@renovate[bot]](https://github.com/renovate[bot]) in [#897](https://github.com/jdx/hk/pull/897)
- update jdx/mise-action digest to 1648a78 by [@renovate[bot]](https://github.com/renovate[bot]) in [#898](https://github.com/jdx/hk/pull/898)
- update apple-actions/import-codesign-certs action to v7 by [@renovate[bot]](https://github.com/renovate[bot]) in [#900](https://github.com/jdx/hk/pull/900)
- update autofix-ci/action action to v1.3.4 by [@renovate[bot]](https://github.com/renovate[bot]) in [#899](https://github.com/jdx/hk/pull/899)
- lock file maintenance by [@renovate[bot]](https://github.com/renovate[bot]) in [#908](https://github.com/jdx/hk/pull/908)

### New Contributors

- @plx made their first contribution in [#896](https://github.com/jdx/hk/pull/896)

## [1.44.3](https://github.com/jdx/hk/compare/v1.44.2..v1.44.3) - 2026-04-30

### πŸ› Bug Fixes
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ license = "MIT"
name = "hk"
repository = "https://github.com/jdx/hk"
rust-version = "1.88.0"
version = "1.44.3"
version = "1.45.0"

[[bin]]
name = "generate-docs"
Expand Down
4 changes: 2 additions & 2 deletions docs/builtins.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ hk provides 90+ pre-configured linters and formatters through the `Builtins` mod
Import and use builtins in your `hk.pkl`:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

hooks {
["pre-commit"] {
Expand Down
2 changes: 1 addition & 1 deletion docs/cli/commands.json
Original file line number Diff line number Diff line change
Expand Up @@ -4799,7 +4799,7 @@
"config": {
"props": {}
},
"version": "1.44.3",
"version": "1.45.0",
"usage": "Usage: hk [OPTIONS] <COMMAND>",
"complete": {},
"about": "A tool for managing git hooks"
Expand Down
2 changes: 1 addition & 1 deletion docs/cli/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

**Usage**: `hk [FLAGS] <SUBCOMMAND>`

**Version**: 1.44.3
**Version**: 1.45.0

- **Usage**: `hk [FLAGS] <SUBCOMMAND>`

Expand Down
12 changes: 6 additions & 6 deletions docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ Set [`HK_FILE`](/environment_variables#hk-file) to override the search and use a
Here's a basic `hk.pkl` file:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local linters = new Mapping<String, Step> {
// linters can be manually defined
Expand Down Expand Up @@ -208,8 +208,8 @@ The hkrc file follows the same format as `hk.pkl` and can be used to define glob
Example hkrc file:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local linters {
["prettier"] = Builtins.prettier
Expand Down Expand Up @@ -242,7 +242,7 @@ Add steps to your hkrc. hk merges them into every project's hooks β€” steps with

```pkl
// ~/.config/hk/config.pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"

hooks {
["pre-commit"] {
Expand Down Expand Up @@ -335,7 +335,7 @@ Git config supports both multivar entries (multiple values with the same key) an
User-specific defaults can be set in `~/.config/hk/config.pkl`:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"

jobs = 4
fail_fast = false
Expand Down
4 changes: 2 additions & 2 deletions docs/getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,8 +105,8 @@ Separately from global *hooks*, you can also create a global *config* file that
This will generate a `hk.pkl` file in the root of the repository, here's an example `hk.pkl` with eslint and prettier linters:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local linters = new Mapping<String, Step> {
// linters can be manually defined
Expand Down
2 changes: 1 addition & 1 deletion docs/mise_integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ parsing, parallel execution, and more.
Just run mise in `hk.pkl` like any other command:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"

`pre-commit` {
["prelint"] {
Expand Down
2 changes: 1 addition & 1 deletion docs/pkl_introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ This is a multi-line comment
Every `hk.pkl` should start with this line which essentially schema validates the config and provides base classes:

```pkl
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
```

### Imports
Expand Down
4 changes: 2 additions & 2 deletions docs/public/custom-linters.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
/// * Demonstrates platform-specific commands
/// * Uses conditions and workspace indicators
/// * Shows test configuration
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local custom_linters = new Mapping<String, Step> {
// Custom SQL formatter
Expand Down
4 changes: 2 additions & 2 deletions docs/public/javascript-project.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
/// * Uses eslint for linting
/// * Runs type checking with tsc
/// * Enables automatic fixes in pre-commit
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

// Configure environment for all tools
env {
Expand Down
4 changes: 2 additions & 2 deletions docs/public/monorepo.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
/// * Backend: Rust
/// * Infrastructure: Terraform
/// * Uses groups to organize steps by component
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

// Frontend linters (JavaScript/TypeScript)
local frontend = new Group {
Expand Down
4 changes: 2 additions & 2 deletions docs/public/python-project.pkl
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
/// * Uses mypy for type checking
/// * Sorts imports with isort
/// * Validates with flake8
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local python_linters = new Mapping<String, Step> {
// Ruff is a fast Python linter
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/examples/custom-linters.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
/// * Uses conditions and workspace indicators
/// * Shows test configuration

amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local custom_linters = new Mapping<String, Step> {
// Custom SQL formatter
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/examples/javascript-project.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
/// * Runs type checking with tsc
/// * Enables automatic fixes in pre-commit

amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

// Configure environment for all tools
env {
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/examples/monorepo.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
/// * Infrastructure: Terraform
/// * Uses groups to organize steps by component

amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

// Frontend linters (JavaScript/TypeScript)
local frontend = new Group {
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/examples/python-project.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
/// * Sorts imports with isort
/// * Validates with flake8

amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local python_linters = new Mapping<String, Step> {
// Ruff is a fast Python linter
Expand Down
4 changes: 2 additions & 2 deletions hk-example.pkl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Builtins.pkl"

local linters = new Mapping<String, Step> {
// some linters are built into hk
Expand Down
2 changes: 1 addition & 1 deletion hk.pkl
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// amends "package://github.com/jdx/hk/releases/download/v1.44.3/hk@1.44.3#/Config.pkl"
// amends "package://github.com/jdx/hk/releases/download/v1.45.0/hk@1.45.0#/Config.pkl"
amends "pkl/Config.pkl"
import "pkl/Builtins.pkl"

Expand Down
2 changes: 1 addition & 1 deletion hk.usage.kdl
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name hk
bin hk
version "1.44.3"
version "1.45.0"
about "A tool for managing git hooks"
usage "Usage: hk [OPTIONS] <COMMAND>"
flag --hkrc help="Path to user configuration file (deprecated: use ~/.config/hk/config.pkl or hk.local.pkl)" hide=#true global=#true {
Expand Down
Loading