From 7713c365dc75f4dbe2b737a9ad771a9d38e5f486 Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Wed, 28 Oct 2026 12:25:30 +0100 Subject: [PATCH] fix: a refused installer said in fewer words The first install page stays within its word budget, and the tests run under Python 3.8. --- tests/test_install_tui.py | 4 ++-- tests/test_site_bootstrap.py | 2 +- wiki/first-install.md | 4 +--- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/tests/test_install_tui.py b/tests/test_install_tui.py index 1b1430913..58c61895f 100644 --- a/tests/test_install_tui.py +++ b/tests/test_install_tui.py @@ -4777,7 +4777,7 @@ class EndToEnd(unittest.TestCase): # The second folder the run writes to, named before # anything is written, and again on the result. self.assertIn("1 file read from RetroArch's save directory goes to a " - "folder per core under:\n ~/MySaves", screen) + "folder per core under:\n ~/MySaves", screen) term.send("\r") screen = term.wait("6 files installed.") # Spelled in full on the result, as its other folders. @@ -12374,7 +12374,7 @@ class AuditTwentyOneAndFourteen(unittest.TestCase): self.assertTrue(all(line.endswith(" \\") for line in lines[:-1]), lines) for line in lines: # An option never ends a line without its value. - self.assertFalse(line.removesuffix(" \\").rstrip().endswith( + self.assertFalse((line[:-2] if line.endswith(" \\") else line).rstrip().endswith( ("--platform", "--dest", "--manifest", "--system")), lines) # The shell reads the lines as the command: the same words. proc = subprocess.run(["sh", "-c", "\n".join(lines)], capture_output=True, text=True, diff --git a/tests/test_site_bootstrap.py b/tests/test_site_bootstrap.py index 4babf8b43..4d37f8700 100644 --- a/tests/test_site_bootstrap.py +++ b/tests/test_site_bootstrap.py @@ -113,7 +113,7 @@ class ServedCopies(unittest.TestCase): page = (REPO_ROOT / "wiki" / "first-install.md").read_text(encoding="utf-8") answer = page.split("does not match its expected fingerprint.", 1)[1].split("###", 1)[0] self.assertNotIn("cut short", answer) - self.assertIn("proxy or an antivirus", " ".join(answer.split())) + self.assertIn("something changed the file", answer) def test_a_stale_pin_stops_the_build(self): """code_audit_21 P3-2: a pin that is not the installer's was served, diff --git a/wiki/first-install.md b/wiki/first-install.md index 14413381e..6d3c6eb99 100644 --- a/wiki/first-install.md +++ b/wiki/first-install.md @@ -159,9 +159,7 @@ curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --platform retropie - ### Error: the downloaded installer does not match its expected fingerprint. -Nothing ran. The file was changed on its way, most often by a proxy or an -antivirus that rewrites downloads. Run the command from another network, or -with that web protection paused. +Nothing ran: something changed the file. Try another network. ### Cannot create ...