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
35 changes: 35 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,40 @@
# Changelog

## [1.44.0](https://github.com/jdx/hk/compare/v1.43.0..v1.44.0) - 2026-04-23

### πŸš€ Features

- **(check)** implement --plan, --why, and --json by [@jdx](https://github.com/jdx) in [#848](https://github.com/jdx/hk/pull/848)
- **(cocogitto)** add cocogitto conventional commits config to hk builtin config by [@hituzi-no-sippo](https://github.com/hituzi-no-sippo) in [#838](https://github.com/jdx/hk/pull/838)
- **(git)** support GIT_DIR/GIT_WORK_TREE for bare-repo dotfile managers by [@jdx](https://github.com/jdx) in [#847](https://github.com/jdx/hk/pull/847)
- **(install)** use Git 2.54 config-based hooks with --global support by [@jdx](https://github.com/jdx) in [#853](https://github.com/jdx/hk/pull/853)

### πŸ› Bug Fixes

- use text progress in CI by [@jdx](https://github.com/jdx) in [#845](https://github.com/jdx/hk/pull/845)

### πŸ“š Documentation

- generalize agent guidelines by [@jdx](https://github.com/jdx) in [#846](https://github.com/jdx/hk/pull/846)
- add releases nav and aube lock by [@jdx](https://github.com/jdx) in [#849](https://github.com/jdx/hk/pull/849)

### πŸ” Other Changes

- **(release)** append en.dev sponsor blurb to release notes by [@jdx](https://github.com/jdx) in [#854](https://github.com/jdx/hk/pull/854)
- bump communique to 1.0.1 by [@jdx](https://github.com/jdx) in [#850](https://github.com/jdx/hk/pull/850)

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

- update actions-rust-lang/setup-rust-toolchain digest to 2b1f5e9 by [@renovate[bot]](https://github.com/renovate[bot]) in [#832](https://github.com/jdx/hk/pull/832)
- update anthropics/claude-code-action digest to c3d45e8 by [@renovate[bot]](https://github.com/renovate[bot]) in [#833](https://github.com/jdx/hk/pull/833)
- update rust crate tokio to v1.52.1 by [@renovate[bot]](https://github.com/renovate[bot]) in [#834](https://github.com/jdx/hk/pull/834)
- update actions/upload-pages-artifact action to v5 by [@renovate[bot]](https://github.com/renovate[bot]) in [#835](https://github.com/jdx/hk/pull/835)
- update taiki-e/upload-rust-binary-action digest to f0d45ae by [@renovate[bot]](https://github.com/renovate[bot]) in [#839](https://github.com/jdx/hk/pull/839)
- update rust crate clx to v2 by [@renovate[bot]](https://github.com/renovate[bot]) in [#836](https://github.com/jdx/hk/pull/836)
- update anthropics/claude-code-action digest to 0d2971c by [@renovate[bot]](https://github.com/renovate[bot]) in [#841](https://github.com/jdx/hk/pull/841)
- update anthropics/claude-code-action digest to 38ec876 by [@renovate[bot]](https://github.com/renovate[bot]) in [#842](https://github.com/jdx/hk/pull/842)
- lock file maintenance by [@renovate[bot]](https://github.com/renovate[bot]) in [#851](https://github.com/jdx/hk/pull/851)

## [1.43.0](https://github.com/jdx/hk/compare/v1.42.0..v1.43.0) - 2026-04-16

### πŸš€ Features
Expand Down
18 changes: 9 additions & 9 deletions 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.43.0"
version = "1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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 @@ -4205,7 +4205,7 @@
"config": {
"props": {}
},
"version": "1.43.0",
"version": "1.44.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.43.0
**Version**: 1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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 @@ -51,8 +51,8 @@ The global configuration file follows the same format as `hk.pkl` and can be use
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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.43.0/hk@1.43.0#/Builtins.pkl"
amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.0#/Config.pkl"
import "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0/hk@1.43.0#/Config.pkl"
// amends "package://github.com/jdx/hk/releases/download/v1.44.0/hk@1.44.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.43.0"
version "1.44.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