def extract_metadata()

in src/kernels/wheel.py [0:0]


def extract_metadata(name: str, version: str, variant_path: Path) -> Metadata:
    """
    Extract metadata from the variant path.
    """
    if variant_path.name == "torch-universal":
        return Metadata(
            name=name,
            version=version,
            cuda_version=None,
            cxx_abi_version=None,
            torch_version=None,
            os=None,
            platform=None,
        )

    if not variant_path.name.startswith("torch"):
        raise ValueError("Currently only conversion of Torch kernels is supported.")

    variant_parts = variant_path.name.removeprefix("torch").split("-")
    if len(variant_parts) != 5:
        raise ValueError(f"Invalid variant name: {variant_path.name}")

    torch_version = f"{variant_parts[0][:-1]}.{variant_parts[0][-1:]}"
    cpp_abi_version = variant_parts[1].removeprefix("cxx")
    cuda_version = variant_parts[2].removeprefix("cu")
    platform = variant_parts[3].replace("-", "_")
    os = variant_parts[4]

    return Metadata(
        name=name,
        version=version,
        cuda_version=cuda_version,
        cxx_abi_version=cpp_abi_version,
        torch_version=torch_version,
        os=os,
        platform=platform,
    )