mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-03 22:49:17 +00:00 
			
		
		
		
	make `rustc_attr_parsing` less dominant in the rustc crate graph It has/had a glob re-export of `rustc_attr_data_structures`, which is a crate much lower in the graph, and a lot of crates were using it *just* (or *mostly*) for that re-export, while they can rely on `rustc_attr_data_structures` directly. Previous graph:  Graph with this PR:  The first commit keeps the re-export, and just changes the dependency if possible. The second commit is the "breaking change" which removes the re-export, and "explicitly" adds the `rustc_attr_data_structures` dependency where needed. It also switches over some src/tools/*. The second commit is actually a lot more involved than I expected. Please let me know if it's a better idea to back it out and just keep the first commit.
		
			
				
	
	
		
			64 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TOML
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TOML
		
	
	
	
	
	
[package]
 | 
						|
name = "rustc_codegen_ssa"
 | 
						|
version = "0.0.0"
 | 
						|
edition = "2024"
 | 
						|
 | 
						|
[dependencies]
 | 
						|
# tidy-alphabetical-start
 | 
						|
ar_archive_writer = "0.4.2"
 | 
						|
arrayvec = { version = "0.7", default-features = false }
 | 
						|
bitflags = "2.4.1"
 | 
						|
bstr = "1.11.3"
 | 
						|
# Pinned so `cargo update` bumps don't cause breakage. Please also update the
 | 
						|
# `cc` in `rustc_llvm` if you update the `cc` here.
 | 
						|
cc = "=1.2.16"
 | 
						|
either = "1.5.0"
 | 
						|
itertools = "0.12"
 | 
						|
pathdiff = "0.2.0"
 | 
						|
regex = "1.4"
 | 
						|
rustc_abi = { path = "../rustc_abi" }
 | 
						|
rustc_arena = { path = "../rustc_arena" }
 | 
						|
rustc_ast = { path = "../rustc_ast" }
 | 
						|
rustc_attr_data_structures = { path = "../rustc_attr_data_structures" }
 | 
						|
rustc_attr_parsing = { path = "../rustc_attr_parsing" }
 | 
						|
rustc_data_structures = { path = "../rustc_data_structures" }
 | 
						|
rustc_errors = { path = "../rustc_errors" }
 | 
						|
rustc_fluent_macro = { path = "../rustc_fluent_macro" }
 | 
						|
rustc_fs_util = { path = "../rustc_fs_util" }
 | 
						|
rustc_hashes = { path = "../rustc_hashes" }
 | 
						|
rustc_hir = { path = "../rustc_hir" }
 | 
						|
rustc_incremental = { path = "../rustc_incremental" }
 | 
						|
rustc_index = { path = "../rustc_index" }
 | 
						|
rustc_macros = { path = "../rustc_macros" }
 | 
						|
rustc_metadata = { path = "../rustc_metadata" }
 | 
						|
rustc_middle = { path = "../rustc_middle" }
 | 
						|
rustc_query_system = { path = "../rustc_query_system" }
 | 
						|
rustc_serialize = { path = "../rustc_serialize" }
 | 
						|
rustc_session = { path = "../rustc_session" }
 | 
						|
rustc_span = { path = "../rustc_span" }
 | 
						|
rustc_symbol_mangling = { path = "../rustc_symbol_mangling" }
 | 
						|
rustc_target = { path = "../rustc_target" }
 | 
						|
rustc_trait_selection = { path = "../rustc_trait_selection" }
 | 
						|
serde_json = "1.0.59"
 | 
						|
smallvec = { version = "1.8.1", features = ["union", "may_dangle"] }
 | 
						|
tempfile = "3.2"
 | 
						|
thin-vec = "0.2.12"
 | 
						|
thorin-dwp = "0.9"
 | 
						|
tracing = "0.1"
 | 
						|
wasm-encoder = "0.219"
 | 
						|
# tidy-alphabetical-end
 | 
						|
 | 
						|
[target.'cfg(unix)'.dependencies]
 | 
						|
# tidy-alphabetical-start
 | 
						|
libc = "0.2.50"
 | 
						|
# tidy-alphabetical-end
 | 
						|
 | 
						|
[dependencies.object]
 | 
						|
version = "0.36.2"
 | 
						|
default-features = false
 | 
						|
features = ["read_core", "elf", "macho", "pe", "xcoff", "unaligned", "archive", "write", "wasm"]
 | 
						|
 | 
						|
[target.'cfg(windows)'.dependencies.windows]
 | 
						|
version = "0.61.0"
 | 
						|
features = ["Win32_Globalization"]
 |