Build and packaging library
  • Python 54.1%
  • Makefile 33.7%
  • Shell 12.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jan Lindemann 3ac649cdf1
lib.App: Tidy up subcommand registration
The subcommand registration in _build_parser() defines a SubCommand
helper class inside the add_cmds_to_parser() closure, so a fresh class
object is created on every call. It also stores command names and
aliases in a dictionary without checking for duplicates, so a colliding
name or alias is silently overwritten, and it relies on every subparser
level sharing the dest = 'command' attribute to descend one level per
re-parse, an invariant that is not documented anywhere.

Hoist the helper to a module-level _SubCommand NamedTuple, log a
warning when a subcommand name or alias collides with an earlier one at
the same level, and document the dest = 'command' invariant next to the
re-parse.

Assisted-by: unsloth/Qwen3.8-27B-GGUF:Q4_K_M with pi.dev v0.84.2
Signed-off-by: Jan Lindemann <jan@janware.com>
2026-08-15 15:58:47 +02:00
.github/workflows ci.yaml: test-packaging.yaml@{master-test -> master} 2026-06-08 19:43:15 +02:00
bin bin, make, scripts: Re-add files necessary for packaging jw-build 2025-11-14 11:22:50 +01:00
conf py-check.mk: Run isort with "make format" 2026-08-11 16:45:14 +02:00
make projects-dir.mk: Add diff-projects target 2026-08-11 16:45:14 +02:00
scripts cache.mk: Include from topdir.mk, not make.mk 2026-07-22 14:38:24 +02:00
src lib.App: Tidy up subcommand registration 2026-08-15 15:58:47 +02:00
test lib.App: Make default log values overridable 2026-08-10 20:26:40 +02:00
.gitignore cache.mk: Include from topdir.mk, not make.mk 2026-07-22 14:38:24 +02:00
HASH Release 1.0.0-252@suse-tumbleweed/x86_64 2026-08-12 03:57:37 +00:00
Makefile cache.mk: Include from topdir.mk, not make.mk 2026-07-22 14:38:24 +02:00
RELEASES Release 1.0.0-252@suse-tumbleweed/x86_64 2026-08-12 03:57:37 +00:00
VERSION Start version: 1.0.0-252 2026-08-12 03:32:24 +00:00