diff --git a/tests/test_audit_regressions.py b/tests/test_audit_regressions.py index 67ecbfae..54383aef 100644 --- a/tests/test_audit_regressions.py +++ b/tests/test_audit_regressions.py @@ -4886,5 +4886,33 @@ class AProfilePathIsTheEmulatorsNotOurs(unittest.TestCase): self.assertIn(".variants/", errors[0]) + +class DocumentedExamplesHoldTogether(unittest.TestCase): + """The verification block downloaded RetroArch_BIOS_Pack.zip*, a name + no release ever published (packs are versioned and split), and the + first-install example ended on "72 files installed" after announcing a + download of 12,893.""" + + def test_the_verification_pattern_matches_published_pack_names(self): + import fnmatch + import re + + page = (ROOT / "wiki" / "release-process.md").read_text(encoding="utf-8") + patterns = re.findall(r"--pattern '([^']*Pack[^']*)'", page) + self.assertTrue(patterns) + for name in ("RetroArch_Lakka_v1.22.2_BIOS_Pack.part1of2.zip", + "RetroArch_v1.22.2_BIOS_Pack.zip"): + with self.subTest(name=name): + self.assertTrue(any(fnmatch.fnmatch(name, p) for p in patterns)) + + def test_the_first_install_example_counts_one_number(self): + import re + + page = (ROOT / "wiki" / "first-install.md").read_text(encoding="utf-8") + downloading = re.search(r"Downloading (\d+) files", page).group(1) + done = re.search(r"Done\. (\d+) files installed", page).group(1) + self.assertEqual(done, downloading) + + if __name__ == "__main__": unittest.main() diff --git a/wiki/first-install.md b/wiki/first-install.md index dc261494..c0ca27e1 100644 --- a/wiki/first-install.md +++ b/wiki/first-install.md @@ -110,7 +110,7 @@ command again picks up where it stopped. This is what a finished run looks like: ``` -Done. 72 files installed, 0 files already up to date. +Done. 12893 files installed, 0 files already up to date. Location: /userdata/bios To check this later, run the same command with --check. ``` diff --git a/wiki/release-process.md b/wiki/release-process.md index b59b72de..85886320 100644 --- a/wiki/release-process.md +++ b/wiki/release-process.md @@ -243,7 +243,7 @@ is `allowed_signers` at the repository root, so anyone can check a download without trusting the release page it came from: ```bash -gh release download --pattern 'SHA256SUMS.txt*' --pattern 'RetroArch_BIOS_Pack.zip*' +gh release download --pattern 'SHA256SUMS.txt*' --pattern 'RetroArch_*BIOS_Pack*' curl -fsSLO https://raw.githubusercontent.com/Abdess/retrobios/main/allowed_signers ssh-keygen -Y verify -f allowed_signers -I releases@retrobios -n file \ diff --git a/wiki/troubleshooting.md b/wiki/troubleshooting.md index 1d5b51c5..c908a37e 100644 --- a/wiki/troubleshooting.md +++ b/wiki/troubleshooting.md @@ -285,11 +285,11 @@ python scripts/download.py --list bash scripts/download.sh --list ``` -A pack's name lists every platform it serves. Releases built before -October 2026 ship RetroArch and Lakka as one `RetroArch_Lakka` pack; later -ones give Lakka its own, since Lakka runs on Linux where two names that differ -by case are two files. The installer and the download scripts find the right -pack either way. +A pack's name lists every platform it serves. Releases up to v2026.10.10 +ship RetroArch and Lakka as one `RetroArch_Lakka` pack; the next ones give +Lakka its own, since Lakka runs on Linux where two names that differ by case +are two files. The installer and the download scripts find the right pack +either way. **A pack in several parts will not extract:**