Skip to content

Add mise.toml#61

Merged
covingtron merged 1 commit into
mainfrom
copilot/add-mise-toml-file
Mar 14, 2026
Merged

Add mise.toml#61
covingtron merged 1 commit into
mainfrom
copilot/add-mise-toml-file

Conversation

Copilot AI commented Mar 1, 2026

Copy link
Copy Markdown
Contributor

mise combines asdf-style tool versioning, justfile-style task running, and — as an experiment — pre-commit hook orchestration in one .toml. This PR begins that migration, including building replacements to summarize, which can end up showing two tables in GitHub Actions, with more specialized mise run tabularize and mise run set-environment.

Background and Links

  • https://mise.jdx.dev/mise-cookbook/python.html#mise-uv
  • mise-ify the repo with an install task and a pre-commit task suite mirroring .pre-commit-hooks.yaml
  • mise PR #7905 (Feb 2026) introduced uv_venv_auto = 'create|source' for auto-creating and sourcing the venv on directory entry

Changes and Testing

  • Add mise.toml
  • Get basedpyright from PyPI instead of the NPM registry

Questions and Followup

  • Assuming uv and npm, are we specifying tool versions, installing as needed, setting $PATH, and running as simply and reliably as possible?
  • How badly is mise run-on-sources reinventing the wheel?
  • Is there a better way to compose autogeneration and autofixing, like when the upstream .gitignore project has trailing whitespace?

Copilot AI changed the title [WIP] Add mise.toml file with install and pre-commit configuration Add mise.toml with install and pre-commit tasks Mar 1, 2026
@covracer

covracer commented Mar 1, 2026

Copy link
Copy Markdown
Collaborator

@copilot use mise from GitHub action including preview auto install

Omit just fmt.

Simplify commands like by making reasonable assumptions like non empty git ls-files output, and using builtin file finding where available.

Comment on prettier-write that we want to use it for everything except markdown because it adds too much vertical whitespace.

Copilot AI commented Mar 1, 2026

Copy link
Copy Markdown
Contributor Author

@copilot use mise from GitHub action including preview auto install

Omit just fmt....

Done in 778f35f:

  • Added jdx/mise-action@v2 with experimental: 'true' and install: 'true' to check.yaml, plus [settings] experimental = true in mise.toml
  • Removed just-fmt task and its entry in pre-commit depends
  • Simplified all git ls-files … | xargs --no-run-if-empty CMD to CMD $(git ls-files …) throughout
  • Added comment on prettier-write that markdown is excluded to avoid excess vertical whitespace

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • mise.jdx.dev
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@covracer covracer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Use MIS in place of FORCEREDDY and PCAM. Also omit quotes in YAML where possible.

@covracer

covracer commented Mar 1, 2026

Copy link
Copy Markdown
Collaborator

How do I unblock the GitHub Actions network failures?

Similar to manual stage hook classification but inverted, make a pre-commit-fast task, and rename existing to pre-commit-all

Omit captain obvious descriptions. Only leave comments or descriptions explaining why some hooks aren't in the fast collection (slow or need Internet).

Prefer single quotes for less visual noise.

@covracer

covracer commented Mar 1, 2026

Copy link
Copy Markdown
Collaborator

@copilot see above

Also I added jdx.dev to allowlist

Copilot AI commented Mar 1, 2026

Copy link
Copy Markdown
Contributor Author

Use MIS in place of FORCEREDDY and PCAM. Also omit quotes in YAML where possible.

Done in ef81371: bash .biobuddies/includes.bash forcereadymise run install, .venv/bin/just pcam ...mise run pre-commit-fast, and experimental: 'true'/install: 'true' unquoted.

How do I unblock the GitHub Actions network failures?

Similar to manual stage hook classification but inverted, make a pre-commit-fast task, and rename existing to pre-commit-all...

Done in ef81371: added pre-commit-fast (17 local-only tasks) and renamed existing pre-commit to pre-commit-all (adds basedpyright, prettier-write, uv-pip-compile). Captain-obvious descriptions removed; basedpyright and prettier-write get # network: npx, uv-pip-compile gets # network: PyPI. Single quotes used throughout except where shell commands contain single-quote characters (git pathspecs like '*.py'). CI now runs mise run pre-commit-fast to avoid network failures.

@copilot see above

Also I added jdx.dev to allowlist

The pre-commit-fast task (ef81371) avoids all network-dependent hooks in CI. With jdx.dev on the allowlist, jdx/mise-action@v2 can install mise itself, and mise run install + mise run pre-commit-fast then runs cleanly without hitting PyPI or npm.

@covracer covracer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@copilot see inline comments

Comment thread .github/workflows/check.yaml Outdated
Comment thread .github/workflows/check.yaml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml
Comment thread mise.toml

Copilot AI commented Mar 1, 2026

Copy link
Copy Markdown
Contributor Author

@copilot see inline comments

All inline review comments addressed in 87b13d1.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/AleksaC/hadolint-py/commits/446db46ab58b26eb8e40d5626c1229e8cf75b3b5
    • Triggering command: /home/REDACTED/.local/bin/uv uv pip sync requirements.txt -q (http block)
  • https://api.github.com/repos/astral-sh/uv/releases/tags/0.9.18
    • Triggering command: /tmp/mise mise run install f prepare_metad (http block)
  • https://api.github.com/repos/astral-sh/uv/releases/tags/v0.9.18
    • Triggering command: /tmp/mise mise run install f prepare_metad (http block)
  • https://api.github.com/repos/charmbracelet/glow/releases/tags/2.1.0
    • Triggering command: /tmp/mise mise run install f prepare_metad (http block)
  • https://api.github.com/repos/charmbracelet/glow/releases/tags/v2.1.0
    • Triggering command: /tmp/mise mise run install f prepare_metad (http block)
  • https://api.github.com/repos/jdx/mise/releases/latest
    • Triggering command: /usr/bin/curl curl -fsSL REDACTED (http block)
  • mise.run
    • Triggering command: /usr/bin/curl curl -fsSL REDACTED (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Comment thread .gitignore Outdated
Comment thread README.md
Comment thread mise.toml
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
@covracer

covracer commented Mar 1, 2026

Copy link
Copy Markdown
Collaborator

@copilot see comments

Copilot AI commented Mar 1, 2026

Copy link
Copy Markdown
Contributor Author

@copilot see comments

All addressed in e97b565.

@covracer covracer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Comment thread .github/workflows/check.yaml Outdated
Comment thread documentation/djangocon-us-2024.md Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated

@covracer covracer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Comment thread .github/pull_request_template.md Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
Comment thread mise.toml Outdated
@covracer covracer force-pushed the copilot/add-mise-toml-file branch 25 times, most recently from 6f95de6 to 9add2ed Compare March 14, 2026 21:35
@covracer covracer force-pushed the copilot/add-mise-toml-file branch from 9add2ed to 6c0dbb5 Compare March 14, 2026 21:36
@covingtron covingtron changed the title Add mise.toml with install and pre-commit tasks Add mise.toml Mar 14, 2026
@covingtron covingtron merged commit 40dc979 into main Mar 14, 2026
2 checks passed
@covingtron covingtron deleted the copilot/add-mise-toml-file branch March 14, 2026 21:38
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