From 4051fbea289aa55f1f9adafc1e51e2dfbc5b5671 Mon Sep 17 00:00:00 2001 From: khalid Date: Thu, 4 Jun 2026 15:05:14 +0100 Subject: [PATCH 1/7] fix: make manifest_version change backward compatible --- src/simdb/cli/manifest.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index 77ba7d05..b4fc4edd 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -580,6 +580,9 @@ def validate(self) -> None: else: raise InvalidManifest(f"Unknown manifest version {version}.") + if "version" in self._data and "manifest_version" not in self._data: + self._data["manifest_version"] = self._data.pop("version") + for section in self._data: if section not in section_validators: raise InvalidManifest(f"Unknown manifest section found {section}.") From 1da348edba6eb05873db9831f179f3a8cb7d2500 Mon Sep 17 00:00:00 2001 From: khalid Date: Thu, 4 Jun 2026 20:41:44 +0100 Subject: [PATCH 2/7] fix: format fix --- src/simdb/cli/manifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index b4fc4edd..8561f24b 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -582,7 +582,7 @@ def validate(self) -> None: if "version" in self._data and "manifest_version" not in self._data: self._data["manifest_version"] = self._data.pop("version") - + for section in self._data: if section not in section_validators: raise InvalidManifest(f"Unknown manifest section found {section}.") From 025a9f8abf21b59976d29d131784e83e86368d82 Mon Sep 17 00:00:00 2001 From: Jonathan Hollocombe Date: Tue, 16 Jun 2026 13:23:59 +0100 Subject: [PATCH 3/7] Updating to check for version 1 and adding a warning --- src/simdb/cli/manifest.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index 8561f24b..13131753 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -580,8 +580,13 @@ def validate(self) -> None: else: raise InvalidManifest(f"Unknown manifest version {version}.") - if "version" in self._data and "manifest_version" not in self._data: - self._data["manifest_version"] = self._data.pop("version") + if "manifest_version" not in self._data.keys(): + if "version" in self._data and self._data["version"] == 1: + warnings.warn("Found version field for manifest version 1, please update to manifest_version", + DeprecationWarning) + self._data["manifest_version"] = self._data.pop("version") + else: + warnings.warn("No version given in manifest, assuming version 2.") for section in self._data: if section not in section_validators: From 18ef6d3daa0d5425d40aeed30404792e75634f22 Mon Sep 17 00:00:00 2001 From: Jonathan Hollocombe Date: Tue, 16 Jun 2026 13:28:04 +0100 Subject: [PATCH 4/7] applying ruff formatting --- src/simdb/cli/manifest.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index 13131753..bb5c37b4 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -582,8 +582,10 @@ def validate(self) -> None: if "manifest_version" not in self._data.keys(): if "version" in self._data and self._data["version"] == 1: - warnings.warn("Found version field for manifest version 1, please update to manifest_version", - DeprecationWarning) + warnings.warn( + "Found version field for manifest version 1, please update to manifest_version", + DeprecationWarning, + ) self._data["manifest_version"] = self._data.pop("version") else: warnings.warn("No version given in manifest, assuming version 2.") From a3f28d1cce10d17de90d1b68b64eb059d73600ed Mon Sep 17 00:00:00 2001 From: Jonathan Hollocombe Date: Tue, 16 Jun 2026 13:31:10 +0100 Subject: [PATCH 5/7] adding missing import --- src/simdb/cli/manifest.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index bb5c37b4..f435b9ad 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -1,6 +1,7 @@ import os import re import urllib.parse +import warnings from enum import Enum, auto from pathlib import Path from typing import Dict, Iterable, List, Optional, TextIO, Tuple, Type, Union @@ -580,7 +581,7 @@ def validate(self) -> None: else: raise InvalidManifest(f"Unknown manifest version {version}.") - if "manifest_version" not in self._data.keys(): + if "manifest_version" not in self._data: if "version" in self._data and self._data["version"] == 1: warnings.warn( "Found version field for manifest version 1, please update to manifest_version", From c929e2322b4e3a40e3606c2ea02f3319b2e5c14f Mon Sep 17 00:00:00 2001 From: Jonathan Hollocombe Date: Tue, 16 Jun 2026 13:43:12 +0100 Subject: [PATCH 6/7] fixing linter issues --- src/simdb/cli/manifest.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index f435b9ad..ceed7c4c 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -584,12 +584,16 @@ def validate(self) -> None: if "manifest_version" not in self._data: if "version" in self._data and self._data["version"] == 1: warnings.warn( - "Found version field for manifest version 1, please update to manifest_version", + "Found version field for manifest version 1, please update " + "to manifest_version", DeprecationWarning, + stacklevel=1, ) self._data["manifest_version"] = self._data.pop("version") else: - warnings.warn("No version given in manifest, assuming version 2.") + warnings.warn( + "No version given in manifest, assuming version 2.", stacklevel=1 + ) for section in self._data: if section not in section_validators: From 20a4ac425b2251d0a830d2618a24a525f97634b6 Mon Sep 17 00:00:00 2001 From: Jonathan Hollocombe Date: Tue, 16 Jun 2026 14:50:02 +0100 Subject: [PATCH 7/7] correcting update --- src/simdb/cli/manifest.py | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/src/simdb/cli/manifest.py b/src/simdb/cli/manifest.py index ceed7c4c..739bf32e 100644 --- a/src/simdb/cli/manifest.py +++ b/src/simdb/cli/manifest.py @@ -565,7 +565,18 @@ def validate(self) -> None: ) if "manifest_version" not in self._data: - print("warning: no version given in manifest, assuming version 2.") + if "version" in self._data and self._data["version"] == 1: + warnings.warn( + "Found version field for manifest version 1, please update " + "to manifest_version", + DeprecationWarning, + stacklevel=1, + ) + self._data["manifest_version"] = self._data.pop("version") + else: + warnings.warn( + "No version given in manifest, assuming version 2.", stacklevel=1 + ) version = self.version @@ -581,20 +592,6 @@ def validate(self) -> None: else: raise InvalidManifest(f"Unknown manifest version {version}.") - if "manifest_version" not in self._data: - if "version" in self._data and self._data["version"] == 1: - warnings.warn( - "Found version field for manifest version 1, please update " - "to manifest_version", - DeprecationWarning, - stacklevel=1, - ) - self._data["manifest_version"] = self._data.pop("version") - else: - warnings.warn( - "No version given in manifest, assuming version 2.", stacklevel=1 - ) - for section in self._data: if section not in section_validators: raise InvalidManifest(f"Unknown manifest section found {section}.")