Commit Graph
4279 Commits
Author SHA1 Message Date
Abdessamad Derraz 83076818b0 chore: merge origin/main 2026-11-06 05:18:32 +01:00
Abdessamad Derraz f12ba5632b fix: run retired_files through run_cli
The new script's entry point skipped run_cli and its options were in no
tools.md row, which two suite checks hold every tracked script to.
2026-11-06 05:18:11 +01:00
Abdessamad Derraz acd2ef31fd fix: keep the Run by row out of the search
Setup names on 530 emulator pages lowered their weight in the index and
ranked the data page first for batocera folder and retroarch system
folder. The row is left out of the search, as the card's setup lists are.
2026-11-06 04:41:13 +01:00
Abdessamad Derraz 5621737c29 fix: name an emulator's packs once per page
A Packed line on each file card put the MAME parts, BizHawk, blueMSX,
FBNeo and GroovyMAME over the 10,000 element budget. The Run by row of
the page already names the setups that pack the emulator's files.
2026-11-06 04:32:04 +01:00
Abdessamad Derraz b7def89e19 chore: merge installer fixes, third pass 2026-11-06 04:28:18 +01:00
Abdessamad Derraz 350cd6d600 feat: keep the address of a file that left
files/?sha1= of a file the collection no longer holds answered that no
file the site knows has the hash. generate_db.py now records each sha1 a
rebuild drops in retired.json, with the day and the file in its place,
backfilled from the history since 0d586ef6b (4,139 files). The lookup
answers with it and leads to the successor's card.
2026-11-06 04:24:44 +01:00
Abdessamad Derraz 578050b8e5 docs: keep the SD card answer within its budget
Naming MiSTer took the FAQ four words over its pinned ceiling. The
sentence keeps every card the installer finds and drops the words that
repeated it.
2026-11-06 04:23:11 +01:00
Abdessamad Derraz b23931e14d feat: find archive members by their CRC32
The lookup held a member only where a profile's contents: declares it,
so 26,014 of the 33,403 members of collection archives answered nothing.
Each member's CRC32 is now an archive-member record leading to its
archive's card, read from the central directory, and files/ names the
archive holding it.
2026-11-06 04:12:20 +01:00
Abdessamad Derraz 0aa5dd8487 docs: name MiSTer among the cards found by itself
install.py tells a MiSTer card by its MiSTer binary and menu.rbf since
73b82375d. installer.md said so, the FAQ and the README did not, and sent a
MiSTer user to --dest the card's root, where nothing reads the files.
2026-11-06 04:09:07 +01:00
Abdessamad Derraz 302f2a1df9 docs: name launcher records among removal proofs
tools.md listed what keeps a platform entry out of removal_candidates
without the platform's launchers: records, which candidates.py checks
right after a path (_PROOF_ORDER).
2026-11-06 04:07:55 +01:00
Abdessamad Derraz 548a1bc636 docs: regenerate installer samples with manifests
testing-guide listed the generated artifacts without derivable.json and
the run samples of wiki/installer.md, and tools.md gave the manifest
command alone. The nightly's commit rules also had no place for the two
files its offline pipeline rewrites, so autorun stopped on them.
2026-11-06 04:06:45 +01:00
Abdessamad Derraz 78e2b85c1b refactor: pick the install box setup from guides
The default setup named RetroArch in page code, which a test forbids. It
is now the setup whose guide runs under the most of the box's OS tabs,
then on the most systems, then one with a release ZIP.
2026-11-06 04:05:20 +01:00
Abdessamad Derraz ffc4632bb1 docs: describe a platform list without judging it
adding-a-platform said a platform's list leaves files out. It now says
the files its list does not name.
2026-11-06 04:05:06 +01:00
Abdessamad Derraz 28d310d8bc fix: preselect RetroArch in a system's install box
The box showed the first setup by name, AmberELEC on 17 system pages,
under Windows tabs. It now selects RetroArch, which runs on every system
the box has a tab for, else a setup the release publishes a ZIP for.
2026-11-06 04:02:14 +01:00
Abdessamad Derraz f1dfe39030 chore: record the GroovyMAME part of Other
Filing device sets under each of their systems gave the Other page a
GroovyMAME part of its own, recorded so its address keeps a target.
2026-11-06 03:58:46 +01:00
Abdessamad Derraz 6015552fb2 fix: offer Lakka's card route from Linux only
Lakka keeps /storage on the card's ext4 partition (Lakka-LibreELEC
4696b48f scripts/mkimage:72, 95), which Windows and macOS do not open, and
its page offered them a card route. card_run is now [linux], and a page
with no Windows route says only Linux opens the card.
2026-11-06 03:58:38 +01:00
Abdessamad Derraz 422de84ac8 chore: ask for the Lakka card in the platform menu
The manual platform menu test expected /storage/system for Lakka on a computer. Lakka is a card setup now, so the menu finds its card's STORAGE part: the default-folder case uses RetroPie, and a Lakka case checks the card.
2026-11-06 03:51:54 +01:00
Abdessamad Derraz 7e504e8469 fix: show and count data archive downloads
A data tree's archive came with no progress line, and the run ended on the BIOS bytes alone (310.5 KB where 82 MB arrived). Its download now draws the progress line and adds its bytes and time to the end line, a cut attempt taken back. It writes no progress event: those count the download event's files.
2026-11-06 03:51:36 +01:00
Abdessamad Derraz 657e3bc55b docs: say what archived means on the RetroPie page
The RetroPie guide note still tied the archived status to a scraping
schedule no tool runs. The doc test now reads _guides.yml too.
2026-11-06 03:51:05 +01:00
Abdessamad Derraz 2f81aa9c0f fix: write region names in pack READMEs as labels
packreadme title-cased each slug, printing asia-ntsc as Asia Ntsc.
region.label() holds the words the site already used, and both read it.
2026-11-06 03:50:49 +01:00
Abdessamad Derraz 00aac8dc72 docs: say what catalog.json lists
index.json called the catalog every published file, while the one-item
documents of emulators/, platforms/, systems/ and lookup/ are in none of
its items. The description and the data page now say so.
2026-11-06 03:48:37 +01:00
Abdessamad Derraz 225cdaff22 fix: show exact sizes where the code compares them
A size validated by the emulator is shown with its bytes on the emulator
page, and a collection card's badge gives the exact size, in whole KB or
MB only when it is one. raze's three DUKE3D.GRP read 42.3 MB alike.
2026-11-06 03:44:57 +01:00
Abdessamad Derraz 2ecbea56b5 fix: skip data trees a read-only folder refuses
A BIOS folder this user cannot write no longer tries each data tree's archive and blames its URL with a raw errno. The tree is counted failed for the same cause as the BIOS files, so the summary keeps its one line and its advice.
2026-11-06 03:44:17 +01:00
Abdessamad Derraz f8702a19f7 feat: treat a Lakka card as a card setup
Lakka keeps its BIOS on its STORAGE partition (/storage/system). A computer now tells that partition by the retroarch.cfg RetroArch writes there, whose system_directory is Lakka's /tmp/system overlay, and --platform lakka on a computer asks for the card instead of writing to /storage/system here.
2026-11-06 03:41:18 +01:00
Abdessamad Derraz a2e8809945 fix: map a card's image name to its board
Batocera and KNULLI write the image name, not the board, to the card's board file (post-image-script.sh). The target scraper now records each board's images from Config.in, the target lists carry them, and the installer maps a card's image to its board. KNULLI's boot/knulli.board is read too.
2026-11-06 03:40:34 +01:00
Abdessamad Derraz 6d6a79019a feat: name the setups on each emulator page
An emulator page said nothing of the setups that run it, and a file
card's Platforms line named only the setups whose own list holds the file.
A Run by row lists the platforms resolve_platform_cores gives, and each
card names the packs that carry the file for their emulators.
2026-11-06 03:37:17 +01:00
Abdessamad Derraz 9efb34c761 fix: resolve the data directory source link
The Fetched from line printed source_url with {version} unsubstituted, a
404 on six pages, and Revision showed a zip's ETag as a revision. The URL
now carries the registry version, and only a git commit is shown, linked.
2026-11-06 03:30:12 +01:00
Abdessamad Derraz 81acb00536 feat: fill the large file issue form
validate_pr linked the bare missing-bios form for a file too large for git
and then said to put it in the pull request and under bios/. The link now
carries filename, sha1, md5 and size, and the pull request advice is left
out for such a file.
2026-11-06 03:29:24 +01:00
Abdessamad Derraz f1f2254be8 docs: drop the upstream remote from CONTRIBUTING
profile_sync.py finds and fetches the project's main by itself. The
documented --base upstream/main failed in any clone without that remote,
where the same command without --base passes.
2026-11-06 03:28:36 +01:00
Abdessamad Derraz 4581a54882 docs: list mame among the trees dedup keeps
tools.md named 14 of the 15 NODEDUP_DIRS. The test matched the missing
mame inside _mame_clones.json and now compares the list item by item.
2026-11-06 03:26:59 +01:00
Abdessamad Derraz adf969c70b docs: link the start pages from the README
Quick install linked only the installer reference. It now names the first
install, troubleshooting and FAQ pages.
2026-11-06 03:26:24 +01:00
Abdessamad Derraz 7b4c03afc2 docs: say what the archived status changes
The README, the setup pages and adding-a-platform tied archived to a
scraping schedule and a CI matrix that do not exist. Archived keeps a
platform out of the runs that cover every platform unless
--include-archived is passed.
2026-11-06 03:20:01 +01:00
Abdessamad Derraz ab1866fd66 feat: compare the site npm pins with the registry
The ci area of check_freshness read the PyPI and action pins only. The
exact versions website/package.json pins (astro, starlight) now get a row
each, STALE once npm publishes a newer release.
2026-11-06 03:17:31 +01:00
Abdessamad Derraz 349914fda2 fix: list boards offline from the given list
--list-targets offline was refused, and its advice to give --manifest or --from-pack was refused in turn. It now reads the boards where --target reads them: the pack's list or targets/<platform>.json beside --manifest.
2026-11-06 03:16:00 +01:00
Abdessamad Derraz 33db4e9c83 fix: file a device set under each of its systems
The site read an entry's system: only, so the 430 MAME entries that list
systems: were filed under no section. It now reads common.entry_system_ids
for an entry that names its own systems.
2026-11-06 03:15:39 +01:00
Abdessamad Derraz 8c3e653234 fix: key the arcade sha1 cache by the database
The cache compared id(db), so a database freed and replaced at the same
address answered with the first one's Arcade set.
2026-11-06 03:15:07 +01:00
Abdessamad Derraz 55ac3162f5 docs: name the slot function the pack reads
architecture.md said the pack and verify decide through slots.arbitrate(),
while a test forbids them to call it: they read slot_choices() through
pack_overrides(). build_claim_index, the name-keyed index the module
docstring described, had no caller outside its own tests.
2026-11-06 03:13:57 +01:00
Abdessamad Derraz b873c6a9fb fix: skip the report excerpt without the assets
The excerpt quotes verify over the whole collection. The PR workflow
restores none of the release assets, so the run there printed other
counts and failed on every push since the engine batch. The test now
names how many assets are absent and skips.
2026-11-06 02:20:14 +01:00
Abdessamad Derraz 6acd48a344 chore: merge narrowed pack comparison 2026-11-06 01:37:34 +01:00
Abdessamad Derraz 172639d0dd chore: merge demul profile 2026-11-06 01:01:37 +01:00
Abdessamad Derraz 1008b4b0f5 chore: merge maker folder name matches 2026-11-06 00:58:46 +01:00
Abdessamad Derraz c4bf864e02 docs: count the demul sets in the collection 2026-11-06 00:23:40 +01:00
Abdessamad Derraz 83b50c9acf chore: merge core data trees 2026-11-06 00:09:19 +01:00
Abdessamad Derraz 0983ae0188 chore: merge origin/main 2026-11-06 00:07:47 +01:00
Abdessamad Derraz d265453b32 feat: compare narrowed packs with verify
Step 5 builds the --required-only, --no-game-data, --region, --target
and --system packs of every platform in memory and compares their paths
with verify run under the same narrowing. verify_platform gains
required_only, generate_pack a record mode. A run samples three regions,
targets and systems per platform (155 packs, about 3 minutes);
--full-narrowings compares all 1,150 (25 minutes). A test fails when
_narrowings() gains a dimension that is neither compared nor exempted.
2026-11-06 00:07:40 +01:00
Abdessamad Derraz 20a6266923 fix: keep platform_system out of the site contract
The published platform contract validates against platform.schema.json, which does not carry the resolver's per-entry system key. The two inheritance tests and the alias call check read the new entry shape, and the testing guide lists test_maker_folder_names.
2026-11-05 23:54:47 +01:00
Abdessamad Derraz 43b71ded72 feat: collect dcdev 0.260 and build demul dc.zip
set5v0.972.ic507 (Katana Set5 v0.972, crc32 1a2f2a91, sha1 08df891f) entered MAME's dcdev set in 0.260. It comes from the archive.org item MAME_0.278_ROMs_non-merged_2025, whose dcdev.zip is the TorrentZip of the 0.260+ recipe. It becomes the primary dcdev.zip, and the five-member pre-0.260 set is kept as a variant.

Demul's dc set (11 rows of demul.exe's table) is built with build_torrentzip from members checked against the table's crc32 and sha1, in bios/Other/demul/. Only Demul reads dc.zip, so only its manifest entries move.
2026-11-05 23:40:43 +01:00
Abdessamad Derraz 755259517f feat: assemble the naomi.zip demul reads
Demul 0.7 reads 44 NAOMI BIOS rows from naomi.zip, the HOTD2, F355 and Airline Pilots BIOS among them. No copy held them all. The set is built with build_torrentzip from members already in the collection, each checked against the crc32 and sha1 of demul.exe's table, and kept in bios/Other/demul/. Batocera, KNULLI and RetroBat place it at bios/naomi.zip, the file MAME cores there also open, so it carries the nine MAME members the Demul table does not list.

The resolver left another emulator's own copy out of the member and superset ranking, so Flycast and the MAME cores keep the copies they were served.
2026-11-05 23:37:06 +01:00
Abdessamad Derraz 7cc732bd7f feat: profile demul from its BIOS table
Demul 0.7 build 251220 (demul.exe sha1 e326ae66, the build RetroBat and Batocera 43.1 ship) loads its BIOS from MAME-style sets named in seven tables in the executable: dc, naomi, naomi2, segasp, awbios, hikaru, mie and segadimm, each member checked by size, crc32 and sha1. The profile lists every set with its members and cites the tables and the loader by address. dc_boot.bin, dc_flash.bin, naomigd.zip, hod2bios.zip, f355bios.zip, f355dlx.zip, airlbios.zip and jvs13551.zip are not read by this build and leave the profile.
2026-11-05 23:28:09 +01:00
Abdessamad Derraz 49ff682eda chore: merge origin/main 2026-11-05 23:25:48 +01:00