Commit Graph
655 Commits
Author SHA1 Message Date
Abdessamad Derraz ec4a06e872 fix: name a System.dat addition by its path 2026-10-17 11:54:05 +02:00
Abdessamad Derraz db179faf82 fix: write no platform size beside a truth hash 2026-10-17 11:53:18 +02:00
Abdessamad Derraz 5f62597e6f fix: keep two cores' revisions of a name apart
The truth model merged a pathless entry into another core's entry of
the same name even when their contents disagreed, so the export wrote
one core's size next to the other core's md5.
2026-10-17 11:52:40 +02:00
Abdessamad Derraz 5a01a45d6b chore: hold every target core name to a profile 2026-10-17 11:50:21 +02:00
Abdessamad Derraz 6cc969e043 fix: judge path conflicts by the builder verdict 2026-10-17 11:47:42 +02:00
Abdessamad Derraz 7ed5ed3cee fix: keep archives whole in verify's region filter 2026-10-17 10:43:54 +02:00
Abdessamad Derraz 83d8f62f68 fix: map bizhawk's ares to its n64 core only
BizHawk embeds ares as Ares64, its N64 core, whose 64DD IPL its own
FirmwareDatabase declares. Mapped to the whole ares profile, it pulled
thirty systems into the BizHawk pack and made slots accuse
FirmwareDatabase.cs of a wrong MSX.rom it never declared for ares.
2026-10-17 10:39:27 +02:00
Abdessamad Derraz af4b43d64c fix: tell a pack note by its name, not its path 2026-10-17 10:38:18 +02:00
Abdessamad Derraz ccb35b9b82 refactor: read the preferred-entry rule from packresolve 2026-10-17 10:38:18 +02:00
Abdessamad Derraz 5f47b77112 fix: judge prose of profiles pinned per build mode 2026-10-17 10:32:04 +02:00
Abdessamad Derraz 86043ed931 fix: count drift since the pin in profile triage 2026-10-17 10:31:48 +02:00
Abdessamad Derraz a9be4532af fix: report a refused forge as unread, not gone 2026-10-17 10:31:42 +02:00
Abdessamad Derraz 921de6a1a6 fix: refuse a truth pack a platform cannot fill 2026-10-17 10:31:02 +02:00
Abdessamad Derraz 7a6e494597 fix: name custom and system packs by their selection
Two --from-md5 runs with different hash lists wrote the same file, the
second replacing the first, and a pack limited to thirty systems built
a name longer than a file name may be. The custom pack now carries a
digest of its hash list, and a long system list keeps its first system,
a count and a digest, as the emulator pack does.
2026-10-17 10:28:11 +02:00
Abdessamad Derraz 4f43442036 fix: serve dolphin's PAL IPL for australia
Dolphin files the Australian country code under Region::PAL, whose
IPL lives in GC/EUR. Tagged europe alone, --region australia dropped
it and kept the American IPL, which Dolphin never reads for those
discs.
2026-10-17 09:20:13 +02:00
Abdessamad Derraz 1afe428e16 fix: credit any accepted version in the gap report 2026-10-17 08:55:02 +02:00
Abdessamad Derraz 45b58d2417 fix: write the truth model and clone map atomically 2026-10-17 08:54:29 +02:00
Abdessamad Derraz 53625156d6 fix: key the zip member index on all its inputs 2026-10-17 08:52:21 +02:00
Abdessamad Derraz d1807af791 fix: stop the scan on an unreadable database 2026-10-17 08:52:04 +02:00
Abdessamad Derraz e3c5d97b94 fix: free a path the builder refuses to fill
verify counted a declaration whose hash the frontend refuses as
occupying its path, while the builder leaves it out and a core file
takes the place; the report then called that core file missing from
the pack. It now reads the builder's verdict. The hidden-extras tests
move to RetroArch and RetroBat, which still fold case, and test the
same-bytes twin again instead of skipping.
2026-10-17 08:51:45 +02:00
Abdessamad Derraz 6e8f2df24f fix: keep both cases on lakka and retropie
Both run on Linux but inherited RetroArch's case folding, so a core
file differing from a platform name only by case left their packs:
MesenCE's bios.col and np2kai's lowercase 2608_*.wav, which those
cores open with that exact case. They are now case-sensitive, the
shared groups fold only where the platform does, and Lakka gets its
own pack instead of sharing RetroArch's.
2026-10-17 08:38:16 +02:00
Abdessamad Derraz 08b239f22a fix: resolve a name with its directory as a path 2026-10-17 08:29:34 +02:00
Abdessamad Derraz 51f3249a7d fix: give a shared core slot to the pinned claim
hypseus-singe asks for gamecontrollerdb.txt by name alone and, first
in profile order, took the BIOS root of Batocera, RetroBat and
RetroPie with C-Dogs' small table while Solarus pins its own by sha1.
A destination two cores claim now goes to the one naming its content.
2026-10-17 08:27:08 +02:00
Abdessamad Derraz 6810e8df9a fix: never prove a file by another emulator's tree
lrps2 names no hash for its GameIndex.yaml, and the only full-tail
copy was ARMSX2's: it counted as path proof and replaced the file
RetroArch pins on desktop targets, which have no ARMSX2. Upstream
PCSX2 took ARMSX2's patches.zip by name the same way. A copy in
another emulator's tree now proves nothing at any tail length, and
LRPS2's own GameIndex comes from the tree the buildbot publishes.
2026-10-17 08:12:24 +02:00
Abdessamad Derraz 24d161604b fix: let retrodeck's components name its cores
The registry list added clk and gsplus, which RetroDECK does not ship
as components, current or archived, and overrode the list the scraper
reads from the component manifests.
2026-10-17 04:45:13 +02:00
Abdessamad Derraz e09a37d21e feat: keep platform-built cores out of all_libretro
Recalbox compiles libretro/mame at 0.258 and 0.278 itself; typed
libretro, both profiles were resolved for every all_libretro platform
although the buildbot RetroArch installs from has neither. A profile
now names the platforms that build it (built_by), and is reached only
when a platform lists it by name.
2026-10-17 04:44:25 +02:00
Abdessamad Derraz d9ef6ad0ad feat: read retrobat's cores from its es_systems
RetroBat's platform file carried no core list, and a registry list
copied from Batocera stood in with ports RetroBat never runs and none
of its standalone emulators marked as such. The scraper now reads
es_systems.cfg at the release tag: libretro cores, and every other
emulator as standalone.
2026-10-17 03:40:09 +02:00
Abdessamad Derraz 6280f4c370 feat: read recalbox's cores from its system files
es_bios.xml names only the cores that need a BIOS, so a hand-kept
registry list stood in, with mame and mamemess that Recalbox does not
ship and without vice, ymir, vircon32 and others it does. The scraper
now reads each system.ini of recalbox-romfs2 at the scraped tag, and
the registry list is gone.
2026-10-17 03:31:11 +02:00
Abdessamad Derraz a4da6d205f feat: profile the MAME releases recalbox builds
Recalbox ships libretro/mame built at 0.258 and at 0.278, and no
profile described either release. mame_hash_scraper gains --release,
which reads the BIOS root sets at one mamedev tag and writes a profile
pinned to it; mame0258 and mame0278 are generated from it, every
source_ref anchored at its tag.
2026-10-17 03:31:11 +02:00
Abdessamad Derraz 6f0692aada chore: build a group's test pack under its given name 2026-10-17 02:52:49 +02:00
Abdessamad Derraz decd70b19e feat: pack every core batocera offers in es
Batocera's cores were read from configgen-defaults.yml, one per system,
and a hand-kept registry list overrode even that; DOSBox Staging,
melonDS DS and nine other cores a user can pick in ES were outside the
pack, while mamemess, which Batocera does not ship, was in. The
scraper now reads es_systems.yml, the registry list is gone, and the
target scraper names standalone emulators (amiberry, fsuae, vice)
instead of only the machines listed under them.
2026-10-17 02:26:14 +02:00
Abdessamad Derraz e5b8cede92 fix: agree on missing files in system packs
The emulator pack recorded only loose files as a path's occupant, so a
path an archive or data tree had filled was reported missing even with
the same bytes in the ZIP, and an archive several profiles ask for was
counted once per profile. verify registered neither, and credited one
profile's file at a path holding another's. Both now record archives
and tree members in pack order; --system snk-neogeo-mvs went from 113
missing in the pack and 51 in verify to 59 on both sides.
2026-10-17 02:20:25 +02:00
Abdessamad Derraz cb41a52b17 fix: skip region-dropped extras in the hidden report 2026-10-17 02:03:26 +02:00
Abdessamad Derraz 24f7ade261 fix: block a pin bump when git history is unreadable
realign_prose read a failing git log as an empty history and stopped
silently at an unreadable revision, so the stale-prose check answered
"nothing to move" and let --bump-commit through. It now reports such
citations to read again instead of passing them.
2026-10-17 02:00:39 +02:00
Abdessamad Derraz 03784eeceb fix: count instruction notes in pack_files 2026-10-17 01:59:50 +02:00
Abdessamad Derraz 42950a553c feat: refresh data trees once per online pipeline
Step 2 refreshed the data directories, then the pack build and the
manifest build refreshed them again, so a tree tracking a moving
branch could differ between the pack and the manifest. generate_pack
gains --no-refresh-data, which packs the cached trees and still
fetches release assets; the online pipeline passes it to both builds.
2026-10-17 01:59:20 +02:00
Abdessamad Derraz e26516fc0e fix: write a group's pack under the group's name
The RetroArch and Lakka pack was built under RetroArch's own name and
renamed afterwards, which overwrote then carried away a --platform
retroarch pack in the same directory, and failed on Windows where
os.rename refuses an existing target.
2026-10-17 01:58:15 +02:00
Abdessamad Derraz 29fb1a58e4 fix: name long emulator packs within a file name
--system snes joined 23 emulator names into the ZIP name and died
with ENAMETOOLONG before writing anything. The system pack now passes
its own name in, and an --emulator selection too long to join keeps
its first name, a count and a digest of the selection.
2026-10-17 01:57:53 +02:00
Abdessamad Derraz bf47d3d998 chore: run the pipeline to test its offline guard 2026-10-17 01:55:49 +02:00
Abdessamad Derraz 08761e250f chore: fail when the readme loses its contributors 2026-10-17 01:55:49 +02:00
Abdessamad Derraz 03275fe0b3 chore: fail the slots check when nothing is settled 2026-10-17 01:55:49 +02:00
Abdessamad Derraz 78162e7022 fix: write the database cache atomically 2026-10-17 01:54:35 +02:00
Abdessamad Derraz c14e3e90b1 fix: keep stella kidvid tapes out of bios packs 2026-10-17 01:51:15 +02:00
Abdessamad Derraz f22d4dfda1 fix: hold a collected directory in the gap report 2026-10-17 01:50:54 +02:00
Abdessamad Derraz 11b679252b fix: list only real systems as region fallbacks 2026-10-17 01:49:34 +02:00
Abdessamad Derraz 08aa0beb22 fix: tell a local DNS outage from a gone host 2026-10-17 01:47:26 +02:00
Abdessamad Derraz cd4a9143f7 fix: compare md5 one way in verify and packs 2026-10-17 01:47:16 +02:00
Abdessamad Derraz 20638fde93 fix: check packs with the builder's own verdict 2026-10-17 01:44:38 +02:00
Abdessamad Derraz 5c969a3651 fix: rank slots with the platform's own cores 2026-10-17 01:35:39 +02:00
Abdessamad Derraz 820d544d7d fix: resolve a file by its accepted adler32 2026-10-17 01:35:04 +02:00