From da4671fa87a4ef2ddd4a3aa2cc9ed3d1c16087af Mon Sep 17 00:00:00 2001 From: J08nY Date: Wed, 26 Apr 2023 13:30:51 +0200 Subject: Fix CVE and CPE dataset datetime load. --- src/sec_certs/dataset/cpe.py | 2 +- src/sec_certs/dataset/cve.py | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/sec_certs/dataset/cpe.py b/src/sec_certs/dataset/cpe.py index aadac766..f7cbf9d5 100644 --- a/src/sec_certs/dataset/cpe.py +++ b/src/sec_certs/dataset/cpe.py @@ -58,7 +58,7 @@ class CPEDataset(JSONPathDataset, ComplexSerializableType): @property def serialized_attributes(self) -> list[str]: - return ["last_update_timestamp", "was_enhanced_with_vuln_cpes", "cpes"] + return ["last_update_timestamp", "cpes"] @classmethod def from_dict(cls, dct: dict[str, Any]) -> CPEDataset: diff --git a/src/sec_certs/dataset/cve.py b/src/sec_certs/dataset/cve.py index fbf2883a..52d988b1 100644 --- a/src/sec_certs/dataset/cve.py +++ b/src/sec_certs/dataset/cve.py @@ -38,10 +38,6 @@ class CVEDataset(JSONPathDataset, ComplexSerializableType): self._cves_with_vulnerable_configurations: list[CVE] = [] self.last_update_timestamp = last_update_timestamp - @property - def serialized_attributes(self) -> list[str]: - return ["last_update_timestamp", "cves"] - def __iter__(self): yield from self.cves.values() @@ -57,6 +53,15 @@ class CVEDataset(JSONPathDataset, ComplexSerializableType): def __eq__(self, other: object): return isinstance(other, CVEDataset) and self.cves == other.cves + @property + def serialized_attributes(self) -> list[str]: + return ["last_update_timestamp", "cves"] + + @classmethod + def from_dict(cls, dct: dict[str, Any]) -> CVEDataset: + dct["last_update_timestamp"] = datetime.fromisoformat(dct["last_update_timestamp"]) + return cls(**dct) + @property def look_up_dicts_built(self) -> bool: return bool(self._cpe_uri_to_cve_ids_lookup) -- cgit v1.3.1