fix: read ti99sim version from its changelog

core_version went null although doc/CHANGES.html at the pin opens on
Version 0.16.0. ti99sim cites v0.16.0 and v0.0.11 parts side by side,
and with no documented version every part read as another program:
profile_sync reported 6 external, 0 to review, nothing checked. The v0.16.0
parts are anchored at the pin again, the v0.0.11 parts stay external.
This commit is contained in:
Abdessamad Derraz committed 2026-11-05 11:55:52 +01:00
1 parent fd93381c3e
commit d5c4cd3575
2 files changed
+25 -2

No files matched your search

+4 -2
View File
@@ -5,9 +5,11 @@ source: https://github.com/christianhaitian/ti99sim
upstream: https://www.mrousseau.org/programs/ti99sim/
profiled_date: "2026-03-29"
source_commit: "e3608541943b5258afe45b74e3f78e723df1fcbd"
core_version: null
core_version: "0.16.0"
version_basis:
kind: none
kind: file
path: "doc/CHANGES.html"
pattern: '<p>Version ([0-9][0-9.]*) - '
cores:
- ti99sim
+21
View File
@@ -501,6 +501,27 @@ class TestVerifyAtPin(unittest.TestCase):
self.assertIsNone(profile_sync.cites_another_version(same, "0.16.0"))
self.assertIsNone(profile_sync.cites_another_version(same, {"libretro": "v0.16.0"}))
def test_a_profile_citing_versions_documents_its_own(self):
"""ti99sim's core_version went null while doc/CHANGES.html at its pin
reads 0.16.0: every (v0.16.0) part then read as another version, and
the profile reported 0 to review with nothing checked."""
import yaml
root = Path(__file__).resolve().parents[1] / "emulators"
silent = []
for path in sorted(root.glob("*.yml")):
profile = yaml.safe_load(path.read_text(encoding="utf-8")) or {}
refs = " ".join(
str(entry.get("source_ref") or "") for entry in profile.get("files") or []
)
if not profile_sync._VERSION_NOTE_RE.search(refs):
continue
declared = profile.get("core_version")
values = declared.values() if isinstance(declared, dict) else [declared]
if not any(values):
silent.append(path.stem)
self.assertEqual(silent, [])
def test_a_name_stem_elsewhere_does_not_move_a_ref(self):
"""linapple cites the PRAVETS82 option, and the stem also names an install line."""
lines = ['option(ENABLE_ROM_CLONE_PRAVETS "" OFF)', "", "", "", "", "",