Abdessamad Derraz
2e2fe2944c
fix: read the data registry from --platforms-dir
2026-10-06 09:10:57 +02:00
Abdessamad Derraz
d205d0bbc8
fix: keep display names out of pack file paths
2026-10-06 09:09:02 +02:00
Abdessamad Derraz
3b2a232a9d
fix: install the variant the pack ships
2026-10-06 09:08:33 +02:00
Abdessamad Derraz
0eb824c69c
refactor: extract emulator archive placement
2026-10-06 07:00:22 +02:00
Abdessamad Derraz
49a4b181bf
refactor: one mismatch rule for builder and verifier
2026-10-06 06:57:01 +02:00
Abdessamad Derraz
2c602596d1
refactor: pull mismatch and region steps from manifest
2026-10-06 06:45:45 +02:00
Abdessamad Derraz
a1ce1d2fa0
fix: hold the data dir lock while packing it
2026-10-06 04:56:16 +02:00
Abdessamad Derraz
c9f8f4b230
fix: choose regions among the files required-only keeps
2026-10-06 04:54:05 +02:00
Abdessamad Derraz
ce135b788f
fix: compare only the full pack to verify
2026-10-06 04:49:21 +02:00
Abdessamad Derraz
e8884e4341
fix: finalize only the packs this run names
2026-10-06 04:48:32 +02:00
Abdessamad Derraz
c37d7fc95a
fix: apply required-only to emulator pack archives
2026-10-06 04:46:03 +02:00
Abdessamad Derraz
c5566b7d06
fix: count undistributed split extras with the helper
2026-10-06 04:43:49 +02:00
Abdessamad Derraz
7498304e44
fix: give system packs their core extras
2026-10-06 04:42:35 +02:00
Abdessamad Derraz
7b62f7f702
fix: refuse every flag a quick mode does not read
2026-10-06 04:39:08 +02:00
Abdessamad Derraz
ac4776b2d0
fix: withhold a file only on the frontend digest
2026-10-06 04:21:47 +02:00
Abdessamad Derraz
dbc8d63318
fix: one agnostic substitute rule for pack and verify
2026-10-06 04:19:40 +02:00
Abdessamad Derraz
93f3560d19
refactor: split the all-variants flag refusals
2026-10-06 03:11:07 +02:00
Abdessamad Derraz
ab75123320
refactor: move flag refusals out of the main functions
2026-10-06 03:08:35 +02:00
Abdessamad Derraz
ec9bbd3424
fix: fail the run when a platform pack errors
2026-10-06 01:34:30 +02:00
Abdessamad Derraz
236d8322b0
fix: point pack guides at the path each platform reads
2026-10-06 01:33:33 +02:00
Abdessamad Derraz
1879c984f4
fix: decide slots on the region pass grouping
2026-10-06 00:26:36 +02:00
Abdessamad Derraz
64f84e7ca6
fix: verify the pack the flags name, by exact name
2026-10-06 00:13:38 +02:00
Abdessamad Derraz
8e532db6aa
fix: order same-named files by their owner's copy
2026-10-05 22:22:22 +02:00
Abdessamad Derraz
8e41ddc297
fix: ship the archive every member declaration accepts
2026-10-05 22:05:10 +02:00
Abdessamad Derraz
b12a3280e6
fix: give the install manifest the arbitrated file
2026-10-05 21:53:59 +02:00
Abdessamad Derraz
3177a57103
fix: emulator region report reads the pack drop set
2026-10-05 21:43:32 +02:00
Abdessamad Derraz
012bf2fec2
fix: one rule for the variant an emulator accepts
2026-10-05 21:36:14 +02:00
Abdessamad Derraz
0d7939588e
fix: one size predicate, size_options retired
2026-10-05 02:51:13 +02:00
Abdessamad Derraz
79c94468a0
fix: list in the manifest what the pack ships
2026-10-04 21:08:00 +02:00
Abdessamad Derraz
52f682cdd6
feat: publish a large pack as zips, not byte ranges
2026-10-04 18:09:24 +02:00
Abdessamad Derraz
63af5167ed
feat: state how many files each pack holds
2026-10-04 18:01:33 +02:00
Abdessamad Derraz
2efc37a738
feat: pack the files a directory entry names
2026-10-04 17:58:10 +02:00
Abdessamad Derraz
1ceb4b0c5a
fix: split platform groups on declared emulators
2026-10-04 17:48:00 +02:00
Abdessamad Derraz
59ccb5b7d5
feat: scope a profile data directory to a build mode
2026-10-04 17:09:14 +02:00
Abdessamad Derraz
97f741bf0f
fix: publish target lists as the builder resolves them
2026-10-04 16:55:30 +02:00
Abdessamad Derraz
08bce47668
fix: keep install manifests and release assets true
2026-09-14 01:17:49 +02:00
Abdessamad Derraz
1455e0423c
fix: arbitrate on the evidence the builder uses
2026-09-07 07:02:39 +02:00
Abdessamad Derraz
23c4dc2aae
fix: name every narrowed artifact from one list
2026-09-07 06:27:35 +02:00
Abdessamad Derraz
29fcfdef34
fix: refuse the flags a mode cannot apply
2026-09-07 06:14:24 +02:00
Abdessamad Derraz
aaa1aea452
fix: put every writing mode under the output lock
2026-09-07 05:57:25 +02:00
Abdessamad Derraz
6d97fbe127
fix: stop a check that cannot answer exiting zero
2026-09-07 05:39:50 +02:00
Abdessamad Derraz
1c976390d7
fix: let a refresh failure reach the exit code
2026-09-07 05:30:56 +02:00
Abdessamad Derraz
2a4dd59bb2
fix: narrow pack conformance by hardware target
2026-09-06 23:28:27 +02:00
Abdessamad Derraz
8128b47aeb
fix: skip full conformance on a targeted pack
2026-09-06 23:06:00 +02:00
Abdessamad Derraz
a4455ef6a7
fix: refuse flags verify-packs cannot honour
2026-09-06 23:01:14 +02:00
Abdessamad Derraz
fca005f6db
fix: narrow the manifest when required-only is set
2026-09-06 22:59:18 +02:00
Abdessamad Derraz
7b93285e1d
fix: read the build mode per emulator when arbitrating
2026-09-05 13:25:24 +02:00
Abdessamad Derraz
adcd177e12
feat: settle contested slots in the pack and the report
2026-09-05 09:08:43 +02:00
Abdessamad Derraz
75f4542ea8
refactor: scope validation to a platform's cores
2026-09-03 17:51:34 +02:00
Abdessamad Derraz
232ef1a6b8
fix: let the constrained declaration win in manifests too
...
A destination can be declared by more than one system, bare in one and
hash-constrained in another. generate_pack resolves that with
_preferred_entries so the constrained sibling claims the destination;
generate_manifest never did, and named whatever answered to the name.
RetroDECK's bios/d2fdc.zip is the case: declared with an md5 in the
arcade system and bare under apple-ii. The pack carried the right
archive, 262 bytes reached through the MAME clone map, while the
manifest sent install.py to a 256-byte Apple II ROM. Downloading the
ZIP and running the installer gave different files.
A test now hashes every manifest entry a platform pins and compares it
against what the platform declares: 3295 entries, on the platforms whose
frontend reads the bytes. It accepts any of several declarations for one
destination, the member-composite MD5 Recalbox pins for arcade archives,
and Batocera's 29-character prefixes. Reinstating the old manifest entry
fails it.
2026-08-23 12:14:56 +02:00