diff --git a/tuf/api/dsse.py b/tuf/api/dsse.py index d027d14013..493fefd1d0 100644 --- a/tuf/api/dsse.py +++ b/tuf/api/dsse.py @@ -81,7 +81,7 @@ def from_bytes(cls, data: bytes) -> SimpleEnvelope[T]: except Exception as e: raise DeserializationError from e - return envelope + return cast(SimpleEnvelope[T], envelope) def to_bytes(self) -> bytes: """Return envelope as JSON bytes. diff --git a/tuf/api/serialization/json.py b/tuf/api/serialization/json.py index a031ef8255..dcff79e029 100644 --- a/tuf/api/serialization/json.py +++ b/tuf/api/serialization/json.py @@ -98,7 +98,10 @@ def serialize(self, signed_obj: Signed) -> bytes: """ try: signed_dict = signed_obj.to_dict() - canonical_bytes = encode_canonical(signed_dict).encode("utf-8") + canon_str = encode_canonical(signed_dict) + # encode_canonical cannot return None if output_function is not set + assert canon_str is not None # noqa: S101 + canonical_bytes = canon_str.encode("utf-8") except Exception as e: raise SerializationError from e