Skip to content

Commit adcb3ca

Browse files
authored
build(justfile): Migrate from Makefile to just (#60)
## Summary - Migrate from Makefile to just command runner (v1.45.0) - Add `[group]` attributes for organized recipe listing in `just --list` - Update CI, .tmuxp.yaml, and AGENTS.md to use just commands ## Changes - Add just 1.45.0 to .tool-versions - Add root justfile with test, lint, docs, format, and typing groups - Add docs/justfile with build, validate, dev, and misc groups - Update .tmuxp.yaml development workflow - Update CI docs workflow - Update AGENTS.md documentation - Remove legacy Makefiles
2 parents b08957a + cc87445 commit adcb3ca

9 files changed

Lines changed: 373 additions & 258 deletions

File tree

.github/workflows/docs.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ jobs:
5454
if: env.PUBLISH == 'true'
5555
run: uv sync --all-extras --dev
5656

57+
- name: Install just
58+
if: env.PUBLISH == 'true'
59+
uses: extractions/setup-just@v2
60+
5761
- name: Print python versions
5862
if: env.PUBLISH == 'true'
5963
run: |
@@ -63,7 +67,7 @@ jobs:
6367
- name: Build documentation
6468
if: env.PUBLISH == 'true'
6569
run: |
66-
pushd docs; make SPHINXBUILD='uv run sphinx-build' html; popd
70+
cd docs && just html
6771
6872
- name: Configure AWS Credentials
6973
if: env.PUBLISH == 'true'

.tmuxp.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ windows:
1111
panes:
1212
- focus: true
1313
- pane
14-
- make watch_mypy
15-
- make watch_test
14+
- just watch-mypy
15+
- just watch-test
1616
- window_name: docs
1717
layout: main-horizontal
1818
options:
@@ -22,4 +22,4 @@ windows:
2222
- focus: true
2323
- pane
2424
- pane
25-
- make start
25+
- just start

.tool-versions

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1+
just 1.45.0
12
uv 0.9.18
23
python 3.14 3.13.11 3.12.12 3.11.14 3.10.19

AGENTS.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Key features:
2626

2727
This project uses:
2828
- Python 3.10+
29+
- [just](https://github.com/casey/just) for command running (see also https://just.systems/)
2930
- [uv](https://github.com/astral-sh/uv) for dependency management
3031
- [ruff](https://github.com/astral-sh/ruff) for linting and formatting
3132
- [mypy](https://github.com/python/mypy) for type checking
@@ -49,7 +50,7 @@ uv pip install --editable . -G dev
4950

5051
```bash
5152
# Run all tests
52-
make test
53+
just test
5354
# or directly with pytest
5455
uv run pytest
5556

@@ -60,7 +61,7 @@ uv run pytest tests/test_doctest_docutils.py
6061
uv run pytest tests/test_doctest_docutils.py::test_function_name
6162

6263
# Run tests with test watcher
63-
make start
64+
just start
6465
# or
6566
uv run ptw .
6667

@@ -72,26 +73,26 @@ uv run ptw . --now --doctest-modules
7273

7374
```bash
7475
# Run ruff for linting
75-
make ruff
76+
just ruff
7677
# or directly
7778
uv run ruff check .
7879

7980
# Format code with ruff
80-
make ruff_format
81+
just ruff-format
8182
# or directly
8283
uv run ruff format .
8384

8485
# Run ruff linting with auto-fixes
8586
uv run ruff check . --fix --show-fixes
8687

8788
# Run mypy for type checking
88-
make mypy
89+
just mypy
8990
# or directly
9091
uv run mypy src tests
9192

9293
# Watch mode for linting (using entr)
93-
make watch_ruff
94-
make watch_mypy
94+
just watch-ruff
95+
just watch-mypy
9596
```
9697

9798
### Development Workflow
@@ -108,13 +109,13 @@ Follow this workflow for code changes (see `.cursor/rules/dev-loop.mdc`):
108109

109110
```bash
110111
# Build documentation
111-
make build_docs
112+
just build-docs
112113

113114
# Start documentation server with auto-reload
114-
make start_docs
115+
just start-docs
115116

116117
# Update documentation CSS/JS
117-
make design_docs
118+
just design-docs
118119
```
119120

120121
## Code Architecture

CHANGES

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,14 @@ $ uvx --from 'gp-libs' --prerelease allow gp-libs
3030

3131
<!-- To maintainers and contributors: Please add notes for the forthcoming version below -->
3232

33+
### Development
34+
35+
- Migrate from Make to just for task running (#60)
36+
37+
Replaces `Makefile` and `docs/Makefile` with `justfile` and `docs/justfile` using
38+
[just](https://just.systems/) 1.45.0. Recipes are organized with `[group]` attributes
39+
for improved discoverability via `just --list`.
40+
3341
### Documentation
3442

3543
- Migrate docs deployment to AWS OIDC authentication and AWS CLI

Makefile

Lines changed: 0 additions & 55 deletions
This file was deleted.

docs/Makefile

Lines changed: 0 additions & 189 deletions
This file was deleted.

0 commit comments

Comments
 (0)