The version-constrained carried packages are named in three places: the
voculinux depends, the stock pre-install line and the pkgver loop of the
install smoke. Nothing required them to agree, so a third gap package
could be added to one place and missed in the others. The new test
requires all three to name the same set.
Also corrects the README "Version floors" wording: the offline
stock-version test only records the versions verified on 2026-11-06,
and the install smoke's pkgver check is the live signal.
Refs #16
Void's stock python3-PyAudio (0.2.12_5) and python3-pysocks (1.7.0_8) sit
below the project floors (pyaudio>=0.2.13, PySocks>=1.7.1). voculinux
depended on both by bare name, which an installed stock package already
satisfies, so a user who had the stock packages was never upgraded.
- add packaging/void/srcpkgs/python3-pysocks: PySocks 1.7.1 from the PyPI
sdist that uv.lock pins (sha256 3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0)
- voculinux depends on python3-PyAudio>=0.2.14_1 and python3-pysocks>=1.7.1_1
- the install smoke installs the stock packages first, then voculinux, and
fails unless each reads back as its carried pkgver
- tests: each constraint must name its carried template's current version
and revision; the stock version must sit below the floor; the depends
parser refuses malformed tokens instead of stripping them
- docs: "Version floors" in packaging/void/README.md; a pointer in
docs/RELEASE_PROCESS.md
Refs #16