You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 39c02aa
Browse filesBrowse the repository at this point in the historyBrowse files
its engineering practices rather than its Go/desktop stack.
8
+
9
+
| Reference | FlyPython adaptation |
10
+
| --- | --- |
11
+
|[Makefile](https://github.com/yetone/magpie/blob/main/Makefile)| Guard repository-relative recipes against the wrong working directory; extend the existing command entry point rather than add another task runner. |
12
+
|[.gitattributes](https://github.com/yetone/magpie/blob/main/.gitattributes)| Force LF for text checkouts, keeping source checksums and generated output stable across platforms. Binary files remain auto-detected. |
13
+
|[CLAUDE.md](https://github.com/yetone/magpie/blob/main/CLAUDE.md)| Import the existing AGENTS.md; do not maintain two copies of the same agent rules. |
14
+
|[test workflow](https://github.com/yetone/magpie/blob/main/.github/workflows/test.yml)| Allow manual validation; do not cancel an in-progress default-branch run on every new push, while superseded PR runs are canceled. |
15
+
16
+
## Local commands
17
+
18
+
Use a POSIX shell and `make` from this repository (or `make -C path/to/python`).
19
+
`make setup` requires uv, selects `.python-version`, and syncs
20
+
`requirements-dev.lock.txt` into `.venv`. It does not update dependency locks.
21
+
Use `make check PYTHON=.venv/bin/python` after setup; the Make default remains
22
+
`python3` so existing CI and activated environments keep working. Native Windows
23
+
contributors can run the direct Python commands in CONTRIBUTING.md or use WSL.
24
+
25
+
`make generated-check` runs validation and read-only checks of catalog/radar,
26
+
README sections, content manifest and course solution hashes. `make generate`
27
+
regenerates those artifacts sequentially; `make all` regenerates, then checks.
28
+
The ordering holds under `make -j` too. No target publishes content or deploys.
29
+
30
+
## Intentionally not copied
31
+
32
+
- Go, Bun, GTK/WebKit, native binary packaging and Docker publishing do not fit
33
+
this content-and-Python-tools repository.
34
+
- No automatic website pin update, release or production deployment is added.
35
+
- Existing exact locks, CI Python version matrix, least-privilege permissions,
36
+
SHA-pinned actions and job timeout remain intact.
37
+
- No mass formatting or line-ending renormalization is performed. If a future
38
+
byte-sensitive fixture deliberately needs CRLF, add a narrow per-file
39
+
attributes exception; do not disable LF for ordinary source files.
40
+
41
+
Configuration regression tests verify the thin agent entry point, wrong-directory
42
+
Make guard, locked setup command, read-only generated checks and parallel-safe
43
+
regeneration ordering. They run in the existing pytest/CI suite.
0 commit comments