Harden packaging for a public release

Add the GPLv3 text (the package declared the licence but never shipped it),
a py.typed marker, and an sdist include/exclude allowlist so the distribution
carries only src/, docs/, README, LICENSE and pyproject. reference/ is a clone
of the GPL FreeRouting Java tree kept purely as a porting reference and must
never be redistributed inside this package; tests, caches and build output are
excluded too.

Switch to the PEP 639 SPDX licence expression with license-files, widen the
classifiers, and add an -o alias for -do. Rewrite the README around the engine
matrix: what each track and pass actually does, and what this is not (no
FreeRouting density parity on dense boards, and --diagonal is a recovery and
shortening pass, not a diagonal-native search).
This commit is contained in:
2026-07-13 18:17:13 -06:00
parent 758ba1fbe3
commit bf868b7b05
6 changed files with 853 additions and 20 deletions
+1 -1
View File
@@ -70,7 +70,7 @@ def build_parser() -> argparse.ArgumentParser:
"-de", "--design", dest="design", help="input .dsn (FreeRouting-compatible alias)"
)
parser.add_argument(
"-do", "--output", dest="output", help="output .ses file (default: stdout)"
"-do", "-o", "--output", dest="output", help="output .ses file (default: stdout)"
)
parser.add_argument(
"-mp",