chore: merge main into the p3 fixes

This commit is contained in:
Abdessamad Derraz committed 2026-10-26 21:41:34 +01:00
commit 738c0e7ca2
2 files changed
+14 -4

No files matched your search

+8 -4
View File
@@ -1427,10 +1427,14 @@ class TheBatoceraPort(unittest.TestCase):
return device, ports
def console_switch(self, device: Device) -> dict[str, str]:
(device.root / "active").write_text("tty2\n")
number = re.fullmatch(r"/dev/pts/(\d+)", device.console)
self.assertIsNotNone(number)
self.number = number.group(1)
# The console in front before the switch: never the pty the test
# was given, which was /dev/pts/2 on a busy machine, so the launcher
# found itself already in front and switched nowhere.
self.home = "3" if self.number == "2" else "2"
(device.root / "active").write_text(f"tty{self.home}\n")
return {"RB_VT_ACTIVE": str(device.root / "active"), "RB_VT_PREFIX": "/dev/pts/",
"RB_VT_SWITCH": self.number}
@@ -1475,7 +1479,7 @@ class TheBatoceraPort(unittest.TestCase):
[call] = device.tui_calls()
self.assertEqual(call["stdin"], device.console)
chvt = [line for line in device.tools() if line.startswith("chvt")]
self.assertEqual(chvt, [f"chvt {self.number}", "chvt 2"])
self.assertEqual(chvt, [f"chvt {self.number}", f"chvt {self.home}"])
device.assert_console_restored()
def test_a_refused_console_switch_shows_nothing_on_an_unseen_console(self):
@@ -1489,8 +1493,8 @@ class TheBatoceraPort(unittest.TestCase):
self.assertLess(device.elapsed, 20)
self.assertEqual(device.tui_calls(), [])
chvt = [line for line in device.tools() if line.startswith("chvt")]
self.assertEqual(chvt, [f"chvt {self.number}", "chvt 2"])
self.assertEqual((device.root / "active").read_text(), "tty2\n")
self.assertEqual(chvt, [f"chvt {self.number}", f"chvt {self.home}"])
self.assertEqual((device.root / "active").read_text(), f"tty{self.home}\n")
log = (ports / "retrobios" / "log.txt").read_text()
self.assertIn(f"console {self.number} did not come to the front", log)
self.assertNotIn("\x1bc", device.screen)
+6
View File
@@ -581,6 +581,12 @@ match no entry. Both land in the `--json` report (`new_files`, with
since the pin or an undeclared hash makes the profile stale. `--tree-diff`
shows added, removed and renamed files in the directories the refs point at.
Branch tips, tags and releases are cached for six hours. `--fresh` asks the
forges again for them, which matters right after an upstream commit or a
hand-set pin: a tip cached before the pin reads as behind it. It is refused
with `--offline`. A run that writes a profile also rebuilds the site's record
of cited source paths (`website/src/data/source-paths.json`).
Writes are explicit and mechanical only. `--backfill-commits` fills a
missing `source_commit`, `--rebase-refs` recales `SHIFTED` and `RENAMED`
line ranges and moves `source_commit` to HEAD with them, all or nothing,