Repository navigation
v0.5.3
Fixed
-
The
.gitignoreof a new catalog covers no Python artefact. Measured on
seven freshly created catalogs:__pycache__/,.pytest_cache/and.venv/
showed up as untracked from the first test run, because the template only
covered progress files, the private key and the working directories. A
clutteredgit statusis how real changes get missed. Six patterns added. -
The whitespace hooks were rewriting
LICENSE.end-of-file-fixer
stripped its final newline on every run: on the same seven catalogs,
git statusshowedM LICENSEwith no human having touched it. A licence
text is recognised character for character, which is how GitHub identifies
it, so both hooks now exclude it. The same defect had been fixed in this
repository earlier the same day, for the packaged licence templates. -
A new catalog did not check its lockfile. The thirteen established
repositories all carry theuv lock --checkhook; the socle produced none.
A lockfile that drifts from itspyproject.tomlno longer locks anything,
and it is the file vulnerability scanners read.The socle cannot produce a lockfile, since resolving one needs the network.
The hook therefore ships with its instruction, andnew catalognow names
uv lockas the first step, in both languages.
Added
- Three ratchets.
tests/test_socle_du_catalogue.pynow checks that the
.gitignorecovers the tool artefacts, that neither whitespace hook touches
LICENSE, and that the lockfile is checked on commit with its instruction
spelled out. Proved by three mutations, each caught, and by behaviour: a
catalog created with this branch shows zero untracked file after a test
run and zero modified file after the whitespace hooks.