Skip to content

fix(mise): migrate flint-managed tools to supported backends#258

Merged
zeitlinger merged 9 commits intomainfrom
codex/shellcheck-bare-mise-key
May 6, 2026
Merged

fix(mise): migrate flint-managed tools to supported backends#258
zeitlinger merged 9 commits intomainfrom
codex/shellcheck-bare-mise-key

Conversation

@zeitlinger
Copy link
Copy Markdown
Member

@zeitlinger zeitlinger commented Apr 29, 2026

Summary

  • switch Flint's self-pin from github:grafana/flint to aqua:grafana/flint
  • switch ShellCheck from github:koalaman/shellcheck to bare shellcheck
  • switch google-java-format from github:google/google-java-format to bare google-java-format
  • switch xmloxide from github:jonwiggins/xmloxide to aqua:jonwiggins/xmloxide
  • treat the old keys as obsolete so flint-setup can migrate existing repos automatically
  • update README snippets, scaffolded workflow output, Renovate metadata, and fixtures to match the new keys
  • bump workflow and scaffold mise setup to v2026.5.0 and use the correct standalone binary SHA256 values required by jdx/mise-action

Why

Recent mise registry coverage makes these backend-specific keys unnecessary or outdated for Flint-managed tools. This change moves Flint toward the supported registry/native keys that users should actually have in mise.toml, while keeping migration paths explicit so existing repos can be rewritten by Flint instead of breaking silently.

The workflow bump to mise v2026.5.0 is included because that release added the google-java-format registry entry needed by this migration. The follow-up checksum fix is included because jdx/mise-action verifies the installed standalone mise binary, not the release archive.

Impact

  • new Flint-managed repos will pin Flint via aqua:grafana/flint
  • new Flint-managed repos will use shellcheck, google-java-format, and aqua:jonwiggins/xmloxide
  • existing repos using the legacy keys will be flagged as setup drift and rewritten by flint run --fix flint-setup
  • CI workflows and flint init scaffolding now use mise v2026.5.0 with matching binary checksums

Validation

  • cargo test
  • mise run lint:fix
  • mise run lint

Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger force-pushed the codex/shellcheck-bare-mise-key branch 2 times, most recently from 22dde89 to 8c2befe Compare April 30, 2026 13:02
zeitlinger added 2 commits May 5, 2026 14:18
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger force-pushed the codex/shellcheck-bare-mise-key branch from 8c2befe to 7e0f7f8 Compare May 5, 2026 14:51
zeitlinger added 3 commits May 5, 2026 15:00
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger changed the title fix(shellcheck): switch to bare mise key fix(mise): migrate flint-managed tools to supported backends May 5, 2026
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger marked this pull request as ready for review May 5, 2026 15:32
@zeitlinger zeitlinger requested a review from a team as a code owner May 5, 2026 15:32
Copilot AI review requested due to automatic review settings May 5, 2026 15:32
@zeitlinger zeitlinger enabled auto-merge (squash) May 5, 2026 15:32
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates Flint-managed mise.toml tool keys away from backend-specific identifiers (e.g. github:*) toward supported registry/native keys, while preserving an explicit migration path so flint-setup can automatically rewrite existing repos. It also updates CI/scaffolding to a newer mise release required for the new registry coverage.

Changes:

  • Migrate Flint-managed tool keys to supported identifiers (e.g. shellcheck, google-java-format, aqua:*) and mark legacy keys as obsolete for automated rewriting.
  • Update registry logic/tests, README snippets, Renovate metadata, and fixtures to reflect the new canonical keys.
  • Bump GitHub Actions mise setup to v2026.5.0 and update the standalone-binary SHA256 values used by jdx/mise-action.

Reviewed changes

Copilot reviewed 51 out of 51 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/cases/xmllint/failure/files/mise.toml Update xmloxide tool key fixture to aqua:*.
tests/cases/xmllint/clean/files/mise.toml Update xmloxide tool key fixture to aqua:*.
tests/cases/shellcheck/sourced-file/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/shellcheck/failure/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/shellcheck/config-dir/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/shellcheck/clean/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/google-java-format/failure/files/mise.toml Update google-java-format fixture to bare key.
tests/cases/google-java-format/clean/files/mise.toml Update google-java-format fixture to bare key.
tests/cases/google-java-format/auto-fix/files/mise.toml Update google-java-format fixture to bare key.
tests/cases/general/unsupported-alternate-config/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/time-flag/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/init-idempotent/test.toml Adjust init expected output to new normalization/hook messages.
tests/cases/general/init-idempotent/files/mise.toml Update Flint self-pin fixture to aqua:grafana/flint.
tests/cases/general/flint-setup-unaffected-old-version/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/flint-setup-obsolete-key/test.toml Update obsolete-key migration expectations for ShellCheck.
tests/cases/general/exclude-paths/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/env-var-exclude/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/baseline-tool-upgrade/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/baseline-tool-upgrade/changes/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/baseline-new-linter/changes/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/baseline-flint-upgrade/files/mise.toml Update ShellCheck + Flint fixtures to new keys.
tests/cases/general/baseline-flint-upgrade/changes/mise.toml Update ShellCheck + Flint fixtures to new keys.
tests/cases/general/baseline-flint-settings-change/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/baseline-excluded-config-change/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/baseline-config-change/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/auto-review-unfixable/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/auto-review-two-linters/files/mise.toml Update ShellCheck fixture to bare shellcheck.
tests/cases/general/auto-fix-and-review/files/mise.toml Update ShellCheck fixture to bare shellcheck.
src/setup.rs Introduce explicit obsolete key migrations (Flint github:*aqua:*) and adjust tests.
src/registry/tests.rs Update obsolete-key detection assertions for ShellCheck/xmloxide and README snippet expectations.
src/registry/obsolete.rs Simplify obsolete-key presence logic after reversing ShellCheck migration direction.
src/registry/mod.rs Ensure aqua:grafana/flint is treated as a managed linter key.
src/registry/mise.rs Treat aqua:grafana/flint as a Flint tool key and update alias documentation/example.
src/registry/checks.rs Update canonical mise tool keys and migration sources for shellcheck/xmllint/google-java-format checks.
src/readme_snippets.rs Update quickstart key list to bare shellcheck.
src/main.rs Update embedded tool examples/tests to bare shellcheck.
src/init/tests.rs Update obsolete-key detection tests and normalization expectations for new keys.
src/init/scaffold.rs Bump scaffolded workflow to mise v2026.5.0 with updated SHA256.
src/init/mise_tools.rs Switch Flint self-pin to aqua:grafana/flint and update related tests/logic.
src/bin/sync-readme-snippets.rs Render README snippets using the new canonical tool keys.
README.md Update install and quickstart snippets to aqua:grafana/flint and bare shellcheck.
mise.toml Update repo’s own tool pins to new canonical keys (aqua:*, bare tool names).
docs/cli.md Update docs to refer to aqua:grafana/flint as the pinned Flint key.
docs/alternatives.md Update migration guidance to use bare google-java-format.
default.json Update Renovate grouping metadata to match new tool keys.
.github/workflows/test.yml Bump mise version/SHA256 in CI matrix.
.github/workflows/release-plz.yml Bump mise version/SHA256 in release workflow.
.github/workflows/release-assets.yml Bump mise version/SHA256 in release-assets workflow matrix.
.github/workflows/lint.yml Bump mise version/SHA256 in lint workflow.
.github/renovate.json5 Update README shellcheck regex manager and linter dep grouping to new keys.
.github/renovate-tracked-deps.json Refresh Renovate dependency snapshot to reflect new tool keys.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/registry/mise.rs
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger requested a review from martincostello May 6, 2026 06:43
@zeitlinger zeitlinger merged commit 939b980 into main May 6, 2026
13 checks passed
@zeitlinger zeitlinger deleted the codex/shellcheck-bare-mise-key branch May 6, 2026 08:30
This was referenced May 8, 2026
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.

3 participants