portage-ng v1.4.0
Pre-release
Pre-release
What's Changed (since v1.3.0)
The headline of this release is tree-wide validation: on the latest full-tree tinderbox run (Aug 01, 19,384 packages, portage-ng and emerge building the same targets in identical fresh sessions), the "portage-ng FAIL / emerge OK" bucket dropped from 594 packages (3.1%) to zero. There is no longer a single package in the corpus that traditional Portage can build and portage-ng cannot — on this corpus portage-ng now builds a strict superset of what emerge builds (18,113 vs 14,590 packages).
Full-tree build outcomes (Aug 01 run vs Jul 13 run)
| Outcome | Aug 01 | Jul 13 | Δ |
|---|---|---|---|
| Both OK | 14,590 (75.3%) | 13,996 (72.2%) | +594 |
| portage-ng OK / emerge FAIL | 3,523 (18.2%) | 3,659 (18.9%) | −136 |
| Both FAIL | 1,271 (6.6%) | 1,135 (5.9%) | +136 |
| portage-ng FAIL / emerge OK | 0 (0%) | 594 (3.1%) | −594 |
Both runs cover the same 19,384-package corpus (tinderbox-ng matrix runs, fresh OverlayFS session per engine per package).
Unmerge ordering (Kahn's last stand)
- Depclean's uninstall order is now derived by the same proving pass as install ordering, using unmerge bindings (
Rules/unmerging.pl): each removable package provesscheduled/1,requires/2releases dependency claims so consumers unmerge before their dependencies, and cycles surface as explicit retained-claim assumptions kahn.pldeleted — the last procedural scheduler is gone; every ordering decision in portage-ng is now proof-based
Packaging
- portage-ng can now install itself: new live ebuild
sys-apps/portage-ng-9999in the bundled overlay (git-r3, Gentoo-oriented defaults, wrapper script), with the builder↔ebuild contract documented in the handbook
Robustness & output
- Message output fixed on newer SWI-Prolog releases: own
keep_line_pos/2replaces the removed system predicate --syncconsole output polished: profile and security-advisory (GLSA) sections print clean headers and friendlier summaries
Documentation
- Handbook restructured around configuration proofs and plan proofs
- Chapter 1 reworked: deduplicated introduction, version-agnostic EAPI wording, Simply-Logical-style explanation of terms, new closed-world/closure and Pengines illustrations, and the origin story of the
::-logo - The unmerge pass is documented in the handbook; the standalone ordering design doc is retired
AGENTS.mdadded for cloud agents (environment setup, sandbox limits)
Full Changelog: v1.3.0...v1.4.0