Replace Makefile with just#725
Merged
Merged
Conversation
Migrate the task runner from Make to just (casey/just). - Add justfile mirroring the Makefile recipes. just recipe names cannot contain '/', so the namespaced targets become argument-dispatching recipes: 'make test/pyathena' -> 'just test pyathena', 'make docs/build' -> 'just docs build'. The per-target lint dependency is preserved (_test-pyathena depends on lint). - Delete Makefile. - CI: install just via taiki-e/install-action in test-suite.yaml and docs.yaml; docs-lint.yaml gets just from mise (added to .mise.toml, alongside markdownlint-cli2). - Update tox config (allowlist_externals + commands) and docs (testing.md, CLAUDE.md) to the just commands. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
`just test` / `just docs` with no argument, or with -h/--help, now print a usage listing of available targets instead of erroring, improving discoverability of the argument-dispatched recipes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2ce5099 to
15007c1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
WHAT
Migrate the task runner from
Maketojust.Add a
justfilemirroring everyMakefilerecipe; delete theMakefile.justrecipe names cannot contain/, so the namespaced Make targets become argument-dispatching recipes (keeping the old slash hierarchy as command-argument grouping):make)just)make test/pyathenajust test pyathenamake test/sqlajust test sqlamake test/sqla-asyncjust test sqla-asyncmake docs/buildjust docs buildmake docs/lintjust docs lintmake docs/formatjust docs formatmake format/lint/tox/tooljust format/lint/tox/toolThe per-target
lintdependency is preserved (_test-pyathena: lint).CI installs
justviataiki-e/install-actionintest-suite.yamlanddocs.yaml.docs-lint.yamlalready usesjdx/mise-action, sojustis added to the committed.mise.tomland installed by mise there (same asmarkdownlint-cli2).Update
pyproject.tomltox config (allowlist_externals+ per-env commands) and the docs (docs/testing.md,CLAUDE.md).WHY
justis a simpler, cross-project task runner than Make (no.PHONYboilerplate, clearer syntax, reusable across repos). It can be managed globally viamise, while CI pins the installer for reproducibility.Verified locally:
just --list,just lint(ruff + format check + mypy, all green on 82 source files), andjust docs lint(markdownlint, 0 errors).