diff --git a/rust2rpm/metadata.py b/rust2rpm/metadata.py index 8d28985..fc53f6f 100644 --- a/rust2rpm/metadata.py +++ b/rust2rpm/metadata.py @@ -286,14 +286,17 @@ class Metadata: for dep in md["dependencies"]: if dep["kind"] == "dev": continue - deps_by_name[dep["name"]].append(Dependency.from_json(dep)) + deps_by_name[dep["rename"] or dep["name"]].append(Dependency.from_json(dep)) deps_by_feature = {} + local_features = set(md["features"]) | set( + d["rename"] for d in md["dependencies"] if d["rename"] is not None + ) for feature, f_deps in md["features"].items(): features = {None} deps = set() for dep in f_deps: - if dep in md["features"]: + if dep in local_features: features.add(dep) else: pkg, _, f = dep.partition("/")