Commit Graph
2268 Commits
Author SHA1 Message Date
Abdessamad Derraz ccec5486e5 refactor: name site tests by subject
The site test modules were cut by review pass (test_site_r2_css to test_site_r5_wiki): the passes of one subject become one module, and the modules that stood alone take the name of what they hold. The installer test classes named after a review take the name of what they test. One test left --manifest set for the tests after it, which the new order showed: it now resets the sources.
2026-11-05 12:51:52 +01:00
Abdessamad Derraz 97b72c95c5 chore: merge knulli target scraper 2026-11-05 12:42:54 +01:00
Abdessamad Derraz a9ecfea1a6 feat: add knulli target scraper
KNULLI builds per board on Batocera's Kconfig model from its own tree (knulli-cfw/knulli-linux at the tag platforms/knulli.yml pins): configs/knulli-*.board, package/system/knulli-system/Config.in, knulli-es-system/es_systems.yml and the knulli-cfw/buildroot submodule. Ten boards, the armhf library builds excluded.
2026-11-05 12:42:23 +01:00
Abdessamad Derraz 313693e58b fix: settle batocera kconfig before mapping cores
Continued if-conditions were cut at their first line, so GLES3 held on every board, and selects guarded by a negation stayed on once fired. Derived flags are read line by line, each pass rebuilds the symbol set from the board, and the architecture comes from the board's BR2_<arch> choice.
2026-11-05 12:42:19 +01:00
Abdessamad Derraz 79238c8f1d fix: read a gap report without its entry tally 2026-11-05 12:35:05 +01:00
Abdessamad Derraz 9c128e46b2 feat: apply the board a mounted card names 2026-11-05 12:34:38 +01:00
Abdessamad Derraz ddafc2ff42 feat: carry the board list in the pack 2026-11-05 12:30:06 +01:00
Abdessamad Derraz 1e96968744 fix: record list parts by their front matter 2026-11-05 12:24:18 +01:00
Abdessamad Derraz d5e5146819 feat: hold bumps of profiles one platform ships
A bulk advance moved fheroes2, supertux and supermariowar past the
revision EmuELEC compiles, and nothing stopped it: bump_commit refused
built_by only. It now leaves a profile a single registered platform ships
until it carries pin_frozen or the new pin_follows, which says that
platform builds the branch tip.

hode, bermuda, bennugd-monolithic and ccleste are held on the
PKG_VERSION of their EmuELEC v4.8 package.mk, equal to their pins.
rigelengine was one commit past it (README.md only) and goes back to
f05996f9.
2026-11-05 12:23:41 +01:00
Abdessamad Derraz 394ef44e57 fix: one system slug for bermuda syndrome
bermuda.yml (the EmuELEC build) and bsyndrome.yml (RetroBat's bs.exe)
document the same cyxx/bermuda engine under two slugs, bermuda-syndrome
and bsyndrome, so the site gave the game two system pages. bsyndrome now
files its entries under bermuda-syndrome.
2026-11-05 12:23:41 +01:00
Abdessamad Derraz 964812f977 chore: drop review tags from comments
Comments, docstrings and test texts ended on tags that name private review notes no clone holds. The tags go, the facts stay. Test methods named after a finding number are named after what they hold. test_prose_style refuses a tag that comes back. install.py changes in comments only: its pin and the launcher index follow.
2026-11-05 12:19:12 +01:00
Abdessamad Derraz 4dd43aa627 feat: set up Termux storage from the one-liner 2026-11-05 12:18:39 +01:00
Abdessamad Derraz 832b2890d4 docs: say what the unsourceable count is 2026-11-05 12:17:51 +01:00
Abdessamad Derraz e3a9d6479b fix: badge a differing hash as Other hash 2026-11-05 12:16:59 +01:00
Abdessamad Derraz b62ebf384b feat: reach the network share from a Mac or Linux 2026-11-05 12:16:29 +01:00
Abdessamad Derraz bef8b50669 fix: compare --changed with the project main line
In a fork's clone origin/main is the fork: once pushed it is HEAD, and
profile_sync --changed --strict checked nothing and passed while the PR's
CI then failed. The default base is now the line validate_pr.py reads:
upstream/main or origin/main when that remote is the project, the
project's main fetched otherwise.
2026-11-05 12:16:28 +01:00
Abdessamad Derraz 6fb79cab6d fix: redirect every list part that goes away 2026-11-05 12:15:26 +01:00
Abdessamad Derraz 4efd64be70 feat: publish a Logiqx DAT per setup 2026-11-05 12:13:47 +01:00
Abdessamad Derraz 398246b064 feat: link the change reports and the wanted CSV 2026-11-05 12:11:12 +01:00
Abdessamad Derraz ef477036d6 docs: say the lookup takes a checksum tool's line 2026-11-05 12:10:07 +01:00
Abdessamad Derraz 9c17943996 feat: read the hash out of a checksum tool's line 2026-11-05 12:09:55 +01:00
Abdessamad Derraz 2c81e1a1af feat: watch the rom folder pins 2026-11-05 12:09:10 +01:00
Abdessamad Derraz ea2e0b10c4 fix: find an archive by the ROM a list pins in it 2026-11-05 12:08:26 +01:00
Abdessamad Derraz c34ed4d2a1 feat: watch the game catalogs for new DATs 2026-11-05 12:06:04 +01:00
Abdessamad Derraz 7fea45fc54 fix: look data directory files up by every hash 2026-11-05 12:01:53 +01:00
Abdessamad Derraz 673e70d791 feat: refuse an arcade index off its profile pin 2026-11-05 12:01:17 +01:00
Abdessamad Derraz 3a306d0970 feat: link each missing file to its platform entry 2026-11-05 12:00:45 +01:00
Abdessamad Derraz f0afe6a6fb refactor: parse each source YAML once per run 2026-11-05 12:00:15 +01:00
Abdessamad Derraz 593260a5ed fix: name orphaned pins on the triage line
needs_review counts an orphaned pin and a moved repository, but the
triage line only added stale prose and unchecked refs, so pcem read
"1 to review" for an upstream_commit outside its branch history.
2026-11-05 11:59:33 +01:00
Abdessamad Derraz fbad34adbd fix: badge only the platforms that read a file 2026-11-05 11:59:32 +01:00
Abdessamad Derraz 141042dd81 refactor: narrow the install list once per cores 2026-11-05 11:59:21 +01:00
Abdessamad Derraz 739f651a16 feat: check refs into a submodule
idtech4a++ cites xash3d-fwgs filesystem/filesystem.c, starship and
ghostship Torch src/Companion.cpp: files of submodules of the declared
repository. No blob of the declared tree answers, so the parts stayed
external and a bump moved the submodule commit with nothing checked.
A project word now also resolves to the one submodule named after it,
and a file under a submodule is read in the repository .gitmodules
names, at the commit the declared revision pins it to.
2026-11-05 11:58:22 +01:00
Abdessamad Derraz 55b63dbc6e refactor: look up core file versions by slot 2026-11-05 11:58:10 +01:00
Abdessamad Derraz 5e9c2c87b6 fix: link prose citations of two-repo profiles 2026-11-05 11:57:58 +01:00
Abdessamad Derraz 5ef7a9fabf refactor: hash each profile entry once 2026-11-05 11:57:08 +01:00
Abdessamad Derraz 8ddaabe07a fix: check the core file at a refused pin path
The integrity check let a platform file the frontend's hash refuses
hold its path, so the core file the builder ships there was never
compared (finding 3).
2026-11-05 11:57:06 +01:00
Abdessamad Derraz 8dcf531625 fix: report pinned trees the source record lacks 2026-11-05 11:57:01 +01:00
Abdessamad Derraz dde6229775 fix: count a core's release asset as packed
verify replayed the core extras offline: a release asset an online
build fetched and packed took no path in its report (finding 2).
2026-11-05 11:55:53 +01:00
Abdessamad Derraz 4fbc028e20 fix: refuse an offline run with no data cached 2026-11-05 11:54:47 +01:00
Abdessamad Derraz 71020c3974 fix: list a pending release asset as packed
verify counted it OK but kept its path out of pack_destinations, so an
online step 5 reported the fetched file as pack only (finding 1).
2026-11-05 11:54:42 +01:00
Abdessamad Derraz 25b5523024 fix: name the file each emulator reads in slots
A keep line gave every emulator the file of the first profile claim:
Recalbox's neocdz.zip line said geolith reads the archive fbneo reads.
The JSON 'expected' lists each file with its emulators (finding 4).
2026-11-05 11:53:58 +01:00
Abdessamad Derraz 6190f30d2d fix: account for every profile entry in gaps 2026-11-05 11:53:29 +01:00
Abdessamad Derraz 8d0ba26a0f docs: show --required-only in the README 2026-11-05 11:53:11 +01:00
Abdessamad Derraz f2e25aeea2 feat: list platforms with --list-platforms
install.py took --list-platforms, generate_pack.py --list and verify.py
nothing. Both tools now take --list-platforms and print the same list
from common.py. generate_pack.py keeps --list (finding 80).
2026-11-05 11:52:26 +01:00
Abdessamad Derraz 3f07924faf fix: validate_pr reads each platform's own check
A file was matched by its container sha1 or md5 alone. A zipped_file
member, a Recalbox member digest, a RetroDECK sha256 and a RomM size and
crc32 are now read the way verify reads them, and an identical copy's
folder is where its variants go.
2026-11-05 11:51:56 +01:00
Abdessamad Derraz 000877689f fix: name the split directory by the pack stem
The prefix was assembled by hand and kept a '/' or ':' the full pack
name makes safe (finding 17).
2026-11-05 11:50:44 +01:00
Abdessamad Derraz 442d49e4e1 chore: drop the scheduled campaign job 2026-11-05 11:50:35 +01:00
Abdessamad Derraz d7d6f3e412 fix: one hash mismatch rule for diff and export
diff_truth read sha1, md5 and crc32 and let one shared value settle the
entry, while export_native corrected each of the four fields on its own.
contradicted_hashes is now the single decision both read.
2026-11-05 11:50:09 +01:00
Abdessamad Derraz 92ee0cf118 fix: align freshness details in one column 2026-11-05 11:49:45 +01:00
Abdessamad Derraz 1718813728 fix: skip a platform without the --system asked
--all --system built every pack asked for and exited 1 on a platform
that has no such system. The scope is now decided before the lock:
skipped under --all, refused under --platform (finding 15).
2026-11-05 11:49:41 +01:00