[Midnightbsd-cvs] [MidnightBSD/mports] 8a5568: *: fix broken PORTSCOUT limit configurations (#1257)
Lucas Holt
noreply at github.com
Sat Sep 12 07:25:17 EDT 2026
Branch: refs/heads/master
Home: https://github.com/MidnightBSD/mports
Commit: 8a556830f4274776d0f82c0dba1b3b52693900b0
https://github.com/MidnightBSD/mports/commit/8a556830f4274776d0f82c0dba1b3b52693900b0
Author: Lucas Holt <luke at foolishgames.com>
Date: 2026-09-12 (Sat, 12 Sep 2026)
Changed paths:
M deskutils/baobab/Makefile
M devel/aws-c-event-stream/Makefile
M devel/dconf/Makefile
M devel/gitg/Makefile
M devel/gsettings-desktop-schemas/Makefile
M devel/rubygem-vite_ruby-gitlab/Makefile
M devel/universal-ctags/Makefile
M devel/xxhash/Makefile
M editors/gedit/Makefile
M editors/neovim-qt/Makefile
M emulators/wine/Makefile
M games/five-or-more/Makefile
M games/gnome-nibbles/Makefile
M games/swell-foop/Makefile
M games/tali/Makefile
M graphics/GraphicsMagick/Makefile
M graphics/clutter/Makefile
M graphics/eog-plugins/Makefile
M graphics/ming/Makefile
M lang/mono6.8/Makefile
M misc/py-polars/Makefile
M multimedia/cheese/Makefile
M net/freebsd-uucp/Makefile
M security/gcr3/Makefile
M sysutils/tracker3/Makefile
M textproc/gspell/Makefile
M textproc/yelp-tools/Makefile
M x11-themes/mate-themes/Makefile
M x11-toolkits/gtk30/Makefile
M x11-toolkits/gtk40/Makefile
Log Message:
-----------
*: fix broken PORTSCOUT limit configurations (#1257)
Audited every `PORTSCOUT` setting in the tree (526 ports) against the
parser in `Portscout::API` and the limit checks in `FindNewestFile()`,
and fixed the 30 that could never report an update. Each one either
failed to parse or excluded the port's own current version, so portscout
was silently reporting nothing for them.
### What was checked
Validation mirrored portscout's real behaviour rather than the
documented syntax:
- Tokens must match `^([A-Za-z]+):(.*)$` after `make -V` expansion;
recognised keys are `site`, `limit`, `limitw`, `skipv`, `skipb`,
`ignore`.
- `limit` must be a compilable Perl regex; `limitw` must match
`^(\d{1,2}),(even|odd)$`.
- For GitHub/GitLab ports, `FindNewestFile()` normalises the tag —
non-digit prefixes and suffixes stripped, non-digit separators rewritten
as dots — so limits must be written against e.g. `1.2.5`, not
`NTPsec_1_2_5`.
- A limit that rejects the port's own version is always a bug.
### Classes of bug fixed
**Invalid syntax (2)** — `graphics/GraphicsMagick` had a stray backslash
inside a character class (`[0-9\]`) so the regex did not compile;
`textproc/gspell` used `limitw:even` without the required component
index.
**Wrong key (3)** — `graphics/clutter`, `x11-toolkits/gtk30`,
`x11-toolkits/gtk40` used `limit:1,even` instead of `limitw:1,even`,
turning the even/odd selector into a literal regex matching nothing.
gtk30/gtk40 also gain an explicit major-version limit, because
portscout's automatic limiting for version-suffixed port names does not
trigger for two-digit suffixes.
**Written against the tag, not the normalised version (7)** —
`devel/xxhash` (`^v…`), `misc/py-polars` (`^py-`), `graphics/ming`
(`^ming-`), `devel/universal-ctags` (`^p6`), `net/freebsd-uucp` (`^1_`);
plus `\d` that had lost its backslashes in `devel/aws-c-event-stream`
and `editors/neovim-qt`, and `\.*$` (zero or more dots, anchored) in
`x11-themes/mate-themes`.
**Stale branch pins (5)** — `deskutils/baobab` (`^47.` at 48.0),
`editors/gedit` (`^48.` at 50.0), `emulators/wine` (`^8.0` at 9.0),
`devel/rubygem-vite_ruby-gitlab` (`^3.3.` at 3.10.2), `lang/mono6.8`
(required a non-zero third component, at 6.8.0.123).
**Obsolete GNOME even/odd (13)** — GNOME no longer uses even/odd minor
versions, so `limitw:1,even` excluded the installed version in
`devel/dconf`, `devel/gsettings-desktop-schemas`, `games/five-or-more`,
`games/gnome-nibbles`, `games/swell-foop`, `games/tali`,
`graphics/eog-plugins`, `multimedia/cheese`, `textproc/yelp-tools`;
`devel/gitg`'s version is a single component so the selector could never
apply. `security/gcr3` and `sysutils/tracker3` keep a major-version pin
instead, since gcr 4 and tracker 3 ship from separate ports.
### Verification
- Re-ran the audit after the changes: 0 issues across all 526 ports.
- `bmake -V PORTSCOUT` confirms the intended expansion in every changed
port.
- `portlint` on all 30 ports: no new warnings. The pre-existing fatals
in `devel/xxhash`, `net/freebsd-uucp` and `multimedia/cheese` are
unchanged (confirmed against an unmodified tree).
- Note: `net/ntpsec`'s `limit:^\d+\.` looks wrong against
`DISTVERSION=1_2_3` but is correct — portscout rewrites the underscores
to dots. Left alone.
No functional change to any package, so no `PORTREVISION` bumps.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_017JRCQA17KgZSRk2vV96wbT
## Summary by Sourcery
Correct Portscout limits across the ports tree so affected ports can
reliably detect upstream updates.
Bug Fixes:
- Fix broken Portscout configurations across 30 ports so valid upstream
updates are no longer silently excluded.
Enhancements:
- Audit and correct Portscout version limits, syntax, selectors, and
version normalization assumptions across the affected ports.
Tests:
- Revalidate all 526 port configurations and confirm the corrected ports
pass portlint without new warnings.
Signed-off-by: Lucas Holt <luke at foolishgames.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
To unsubscribe from these emails, change your notification settings at https://github.com/MidnightBSD/mports/settings/notifications
More information about the Midnightbsd-cvs
mailing list