Rename to rpmroute

The router began as a port of FreeRouting and has grown its own engine
(negotiated congestion, tree nets, exact checks, axis escapes), and
'freeroute' was one letter from the project it no longer follows. The
package, module and command are now rpmroute; the freeroute command stays
as an alias, and the RPMROUTE / RPMROUTE_ORACLE_JAVA variables fall back
to the old FREEROUTE names. Version 2026.10.07. Routing is unchanged: a
PCBench board routes to a byte-identical session either way.
This commit is contained in:
2026-10-07 14:10:36 -06:00
parent 45aee463a8
commit a6aa1991a1
95 changed files with 346 additions and 334 deletions
+14 -11
View File
@@ -3,9 +3,9 @@ requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "freeroute"
version = "2026.07.14"
description = "Native Python PCB autorouter — a Java-free port of the FreeRouting engine (Specctra DSN in, SES out)"
name = "rpmroute"
version = "2026.10.07"
description = "Native Python PCB autorouter with negotiated congestion and tree routing (Specctra DSN in, SES out)"
readme = "README.md"
license = "GPL-3.0-or-later"
license-files = ["LICENSE"]
@@ -40,14 +40,17 @@ requires-python = ">=3.10"
dependencies = []
[project.urls]
"Homepage" = "https://git.supported.systems/warehack.ing/freeroute"
"Repository" = "https://git.supported.systems/warehack.ing/freeroute"
"Issues" = "https://git.supported.systems/warehack.ing/freeroute/issues"
# The Java engine this is a port of; freeroute ships no upstream code.
"Upstream" = "https://github.com/freerouting/freerouting"
"Homepage" = "https://git.supported.systems/warehack.ing/rpmroute"
"Repository" = "https://git.supported.systems/warehack.ing/rpmroute"
"Issues" = "https://git.supported.systems/warehack.ing/rpmroute/issues"
# Where it started: a port of the Java FreeRouting engine. It has since grown
# its own router (negotiation, tree nets, exact checks) and ships no upstream code.
"Origin" = "https://github.com/freerouting/freerouting"
[project.scripts]
freeroute = "freeroute.cli:main"
rpmroute = "rpmroute.cli:main"
# the name it had until 2026-10-07, kept so existing scripts keep working
freeroute = "rpmroute.cli:main"
[dependency-groups]
dev = [
@@ -57,7 +60,7 @@ dev = [
]
[tool.hatch.build.targets.wheel]
packages = ["src/freeroute"]
packages = ["src/rpmroute"]
[tool.hatch.build.targets.sdist]
# Ship the package, the licence, and the docs — nothing else. `reference/` is a
@@ -95,7 +98,7 @@ select = ["E", "W", "F", "I", "B", "C4", "UP", "SIM"]
ignore = ["E501"]
[tool.ruff.lint.isort]
known-first-party = ["freeroute"]
known-first-party = ["rpmroute"]
force-sort-within-sections = true
[tool.pytest.ini_options]