Changeset View
Changeset View
Standalone View
Standalone View
swh/loader/package/crates/loader.py
Show First 20 Lines • Show All 331 Lines • ▼ Show 20 Lines | ) -> Optional[Release]: | ||||
k: v for k, v in i_metadata_raw["package"].items() if k in i_metadata_keys | k: v for k, v in i_metadata_raw["package"].items() if k in i_metadata_keys | ||||
} | } | ||||
p_info.i_metadata = IntrinsicPackageMetadata(**i_metadata) # type: ignore[misc] | p_info.i_metadata = IntrinsicPackageMetadata(**i_metadata) # type: ignore[misc] | ||||
author = extract_author(p_info) | author = extract_author(p_info) | ||||
description = extract_description(p_info) | description = extract_description(p_info) | ||||
message = ( | message = ( | ||||
f"Synthetic release for Crate source package {p_info.name} " | f"Synthetic release for Crate source package {p_info.name} " | ||||
f"version {p_info.version}\n" | f"version {p_info.version}\n\n" | ||||
f"{description}\n" | f"{description}\n" | ||||
) | ) | ||||
# The only way to get a value for updated_at is through extrinsic metadata | # The only way to get a value for updated_at is through extrinsic metadata | ||||
updated_at = p_info.e_metadata_version.get("updated_at") | updated_at = p_info.e_metadata_version.get("updated_at") | ||||
return Release( | return Release( | ||||
name=version.encode(), | name=version.encode(), | ||||
author=author, | author=author, | ||||
date=TimestampWithTimezone.from_iso8601(updated_at), | date=TimestampWithTimezone.from_iso8601(updated_at), | ||||
message=message.encode(), | message=message.encode(), | ||||
target_type=ObjectType.DIRECTORY, | target_type=ObjectType.DIRECTORY, | ||||
target=directory, | target=directory, | ||||
synthetic=True, | synthetic=True, | ||||
) | ) |