-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathjustfile
More file actions
54 lines (44 loc) Β· 2.31 KB
/
justfile
File metadata and controls
54 lines (44 loc) Β· 2.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# SPDX-FileCopyrightText: 2026 PythonWoods <dev@pythonwoods.dev>
# SPDX-License-Identifier: Apache-2.0
#
# just β interactive developer workflow.
#
# Scope: commands that require an active environment or are not suitable for
# nox isolation (bootstrapping, live servers, release builds with env vars).
# Quality-assurance pipelines (lint, typecheck, tests, reuse, security) belong
# to noxfile.py and are invoked here only via `nox -s <session>`.
#
# Quick reference:
# just sync β install / update all dependency groups
# just check β self-lint: run Zenzic on its own documentation
# just test β run test suite (delegates to nox)
# just test-full β run test suite with thorough Hypothesis profile (ci)
# just preflight β full CI-equivalent pipeline (delegates to nox)
# just verify β preflight + check (pre-push gate)
# just clean β remove generated artefacts
runner := "uv run --active"
nox_runner := "uv run nox -s"
export BUILD_DATE := `date +'%Y/%m/%d'`
# βββ Workflow βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Install or update all dependency groups
sync:
uv sync --all-groups
# Self-linting: run Zenzic on its own documentation (The Sentinel's duty)
check:
{{ runner }} zenzic check all --strict
# Run the test suite (delegates to nox for reproducible isolation)
test *args:
{{ nox_runner }} tests {{ args }}
# Run the test suite with the thorough Hypothesis profile (ci β 500 examples)
test-full *args:
HYPOTHESIS_PROFILE=ci {{ nox_runner }} tests {{ args }}
# Run the full quality pipeline (lint, typecheck, tests, reuse, security)
preflight:
{{ nox_runner }} preflight
# Full local verification: CI-equivalent gate (single pipeline)
# Pillar 1: Zenzic guards the source BEFORE the build renders it.
verify: check preflight
# βββ Cleanup ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Remove generated artefacts (.nox is kept β reuse avoids reinstalling deps)
clean:
rm -rf dist/ .pytest_cache/ .hypothesis/ .zenzic-score.json coverage.xml