Skip to content

ci: pin bats java to 21.0.12 until Temurin 21.0.13 has Windows builds - #1764

Merged
jdx merged 3 commits into
mainfrom
chore/drop-java-from-bats-setup
Oct 26, 2026
Merged

jdx merged 3 commits into
mainfrom
chore/drop-java-from-bats-setup

Conversation

@jdx

@jdx jdx commented Oct 26, 2026 •

Copy link
Copy Markdown
Owner

https://entire.com/gh/jdx/-/trails/2898/changes/hk/307

Every open PR is failing in mise lock / mise install with failed to resolve java for windows-arm64: no metadata found for version 21.0.13+9.0.LTS, because Temurin 21.0.13 has no Windows metadata yet. This pins the java that the bats setup installs, so mise stops resolving 21.0.13.

  • mise-tasks/test/bats/setup: java = "21" becomes java = "21.0.12".
  • mise.lock: the java entry's specifier becomes 21.0.12 to match; the locked version (21.0.12+101.0.LTS) and checksums are unchanged.
  • Java is only needed for the google-java-format and ktlint builtin tests. Dropping it was tried first and does not work: ktlint's mise tool depends on mise-managed java, so the macOS ktlint tests failed with java@21.0.13+9.0.LTS not installed instead of using the runner's JDK.

Revert this pin (back to java = "21") once Temurin 21.0.13 ships Windows metadata. Existing Renovate PRs need a rebase onto main after this lands.

πŸ€– Generated with Claude Code

AI-assisted β€” Tool: Claude Code; model: anthropic/claude-sonnet-5-5; version: unavailable.

Summary by CodeRabbit

  • Chores
    • The test setup now specifies Java 21.0.12 instead of Java 21. This makes the Java version used by the setup more precise; no application feature changes are included.

…mise

The bats setup task declared `java = "21"` only so google-java-format and
ktlint have a JVM for their builtin tests. GitHub-hosted ubuntu-24.04 (default
JDK 17) and macOS (default JDK 21) images already put a JDK on PATH, so drop
the mise java dependency and its mise.lock entry.

This also stops every PR from failing in `mise lock` while Temurin 21.0.13 has
no Windows metadata.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Entire-Checkpoint: 01M5W5D7JTD0AHSB4K453EAEKN
@coderabbitai

coderabbitai Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack β†’

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between d8ede03 and f90865c.

Files ignored due to path filters: 1
  • mise.lock is excluded by !**/*.lock
Files selected for processing: 1
  • mise-tasks/test/bats/setup

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.

Walkthrough

The Bats test setup script changes its mise Java version from 21 to 21.0.12.

Changes: Bats test setup

Layer / File(s) Summary
Pin Java version
mise-tasks/test/bats/setup
The mise Java version changes from 21 to 21.0.12.

Priority: Normal

Estimated code review effort: 1 (Trivial) | ~2 minutes

Change: Other

Merge Risk: Minimal Β· up to f9086

The change pins the Java version used by the builtin Bats tests, which keeps mise installs working until Windows builds exist for Temurin 21.0.13. No actionable merge-blocking risk remains.

Pre-merge checks: Passed 5
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly describes the main change: pinning Bats CI Java to 21.0.12 because Temurin 21.0.13 lacks Windows builds.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

  • Autofix Β· Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❀️ Share

Comment @coderabbitai help to get the list of available commands.

Finishing Touches: πŸ’‘ 1
πŸ› οΈ Fix failing CI checks: πŸ’‘
  • Commit to this branch
  • Create a new PR

@greptile-apps

greptile-apps Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Low impact] The final change appears safe to merge; no actionable defects were found.

Summary

The final change pins the Bats JDK instead of using the runner’s JDK, despite the earlier PR description.

  • Bats setup now pins Java 21.0.12 for its builtin tests.

Reviews (2) Β· Last reviewed commit: "chore(test): pin bats java to 21.0.12 un..." Β· Reviewed by Greptile

greptile-apps[bot]
greptile-apps Bot previously approved these changes Oct 26, 2026
@jdx
jdx enabled auto-merge (squash) October 26, 2026 13:15
jdx and others added 2 commits October 26, 2026 13:42
…through mise"

This reverts commit d8ede03.

Entire-Checkpoint: 01M5W75YDQ3T5TXZ9PVA1NBF7W
…ws builds

ktlint's mise tool depends on mise-managed java, so the runner's JDK is not
used and dropping java breaks the ktlint builtin tests. Pin 21.0.12 instead.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Entire-Checkpoint: 01M5W763M3PQPY8MB1A7YS36D4
@greptile-apps
greptile-apps Bot dismissed their stale review October 26, 2026 13:42

Dismissed because a newer commit was pushed; Greptile will re-review the current head.

@jdx jdx changed the title ci: use the runner's JDK for builtin tests instead of mise java ci: pin bats java to 21.0.12 until Temurin 21.0.13 has Windows builds Oct 26, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Instruction counts

benchmark trend instructions Ξ” wall (min) Ξ”
builtins β–β–β–β–‚β–„β–„β–„β–„β–„β–…β–…β–…β–…β–„β–…β–ˆ 1,972,221 β†’ 1,979,605 +0.37% 2.95 β†’ 3.05ms +3.18%
check β€” β€” β€” 18.83 β†’ 19.23ms +2.11%
config-cold β–‚β–β–β–β–β–β–β–‚β–‚β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‡ 78,272,584 β†’ 78,174,828 -0.12% 22.92 β†’ 23.18ms +1.13%
stash β–β–β–‚β–β–„β–ƒβ–„β–ƒβ–„β–„β–ƒβ–ƒβ–ƒβ–„β–ƒβ–ˆ 54,149,311 β†’ 54,754,672 +1.12% ⚠️ 287.55 β†’ 292.69ms +1.79%
usage β–‡β–‡β–‡β–‡β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–…β– 4,372,372 β†’ 4,344,658 -0.63% 5.16 β†’ 5.06ms -2.00%
validate β€” β€” β€” 15.11 β†’ 15.20ms +0.59%

1 benchmark(s) above the 1% gate: stash +1.12%

Only instruction counts gate. Wall clock is shown for context β€” on identical hardware it moves 4-20% run to run.

Measured by tak β€” instruction-counted CLI benchmarks, stored in this repository's git notes.

f90865cd9e94 vs 1c067c5b0132 Β· measured on the runner, not pushed to the history.

@jdx
jdx merged commit e9ccea6 into main Oct 26, 2026
27 of 29 checks passed
@jdx
jdx deleted the chore/drop-java-from-bats-setup branch October 26, 2026 14:16
@jdx jdx mentioned this pull request Oct 26, 2026
jdx added a commit that referenced this pull request Oct 26, 2026
<!-- entire-trail-link-start -->
https://entire.com/gh/jdx/-/trails/2720/changes/hk/298
<!-- entire-trail-link-end -->

### πŸ› Bug Fixes

- **(cache)** write config cache files atomically by
[@zachbornheimer](https://github.com/zachbornheimer) in
[#1750](#1750)
- **(check)** resolve file arguments from the directory hk was run in by
[@jdx](https://github.com/jdx) in
[#1754](#1754)
- **(pkl)** embed the Pkl package in cargo install builds by
[@jdx](https://github.com/jdx) in
[#1755](#1755)

### πŸ§ͺ Testing

- stop macOS CI flaking on fixed bats timeouts by
[@jdx](https://github.com/jdx) in
[#1756](#1756)

### πŸ›‘οΈ Security

- **(install)** name the git config file global hooks were written to by
[@sahidvelji](https://github.com/sahidvelji) in
[#1758](#1758)

### πŸ” Other Changes

- use the runner's JDK for builtin tests instead of mise java by
[@jdx](https://github.com/jdx) in
[#1764](#1764)

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

- update jdx crates by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#1751](#1751)
- update rust crate usage-rs to v7.1.2 by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#1757](#1757)
- update mise tools by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#1761](#1761)
- update jdx crates by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#1763](#1763)
- update github actions by
[@renovate[bot]](https://github.com/renovate[bot]) in
[#1760](#1760)

### New Contributors

- @zachbornheimer made their first contribution in
[#1750](#1750)

Co-authored-by: mise-en-dev <123107610+mise-en-dev@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant