From aa0c238248319316a0bbfe3cbdf60d39d2097cbd Mon Sep 17 00:00:00 2001 From: Krasimir Georgiev Date: Mon, 29 Sep 2025 12:12:09 +0000 Subject: [PATCH] update CrateInfo.aliases to be a dict[Label, str] --- rust/private/providers.bzl | 2 +- rust/private/rust.bzl | 8 ++++---- rust/private/rustc.bzl | 3 +-- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/rust/private/providers.bzl b/rust/private/providers.bzl index f92a5fc8e7..524208fb6e 100644 --- a/rust/private/providers.bzl +++ b/rust/private/providers.bzl @@ -17,7 +17,7 @@ CrateInfo = provider( doc = "A provider containing general Crate information.", fields = { - "aliases": "Dict[Target, String]: Renamed and aliased crates", + "aliases": "Dict[Label, String]: Renamed and aliased crates", "cfgs": ( "List[str]: The set of enabled cfgs for this crate. Note that this field is populated only " + "when @rules_rust//rust/settings:collect_cfgs is set." diff --git a/rust/private/rust.bzl b/rust/private/rust.bzl index ec64852d77..a09f573fd8 100644 --- a/rust/private/rust.bzl +++ b/rust/private/rust.bzl @@ -222,7 +222,7 @@ def _rust_library_common(ctx, crate_type): srcs = depset(srcs), deps = depset(deps), proc_macro_deps = depset(proc_macro_deps), - aliases = ctx.attr.aliases, + aliases = {k.label: v for (k, v) in ctx.attr.aliases.items()}, output = rust_lib, rustc_output = generate_output_diagnostics(ctx, rust_lib), metadata = rust_metadata, @@ -287,7 +287,7 @@ def _rust_binary_impl(ctx): srcs = depset(srcs), deps = depset(deps), proc_macro_deps = depset(proc_macro_deps), - aliases = ctx.attr.aliases, + aliases = {k.label: v for k, v in ctx.attr.aliases.items()}, output = output, rustc_output = generate_output_diagnostics(ctx, output), metadata = rust_metadata, @@ -409,7 +409,7 @@ def _rust_test_impl(ctx): {}, )) aliases = dict(crate.aliases) - aliases.update(ctx.attr.aliases) + aliases.update({k.label: v for k, v in ctx.attr.aliases.items()}) # Build the test binary using the dependency's srcs. crate_info_dict = dict( @@ -483,7 +483,7 @@ def _rust_test_impl(ctx): srcs = depset(srcs), deps = depset(deps), proc_macro_deps = depset(proc_macro_deps), - aliases = ctx.attr.aliases, + aliases = {k.label: v for k, v in ctx.attr.aliases.items()}, output = output, rustc_output = generate_output_diagnostics(ctx, output), metadata = rust_metadata, diff --git a/rust/private/rustc.bzl b/rust/private/rustc.bzl index f475087e77..e6cd0f00af 100644 --- a/rust/private/rustc.bzl +++ b/rust/private/rustc.bzl @@ -230,7 +230,7 @@ def collect_deps( Args: deps (list): The deps from ctx.attr.deps. proc_macro_deps (list): The proc_macro deps from ctx.attr.proc_macro_deps. - aliases (dict): A dict mapping aliased targets to their actual Crate information. + aliases (dict[Label, str]): A dict mapping aliased targets to their actual Crate information. Returns: tuple: Returns a tuple of: @@ -270,7 +270,6 @@ def collect_deps( cc_info = dep_variant_info.cc_info, )) - aliases = {k.label: v for k, v in aliases.items()} for dep in crate_deps: (crate_info, dep_info) = _get_crate_and_dep_info(dep) cc_info = _get_cc_info(dep)