Skip to content

Commit 8f5bdc4

Browse files
committed
Auto merge of #7326 - Eh2406:map_dependencies, r=ehuss
`map_dependencies` is doing a deep clone, so lets make it cheaper This removes a `FeatureMap::clone` that I noticed when profiling no-op builds of cargo, benchmarks show a ~5% improvement. Looks like #6880 means that there is a ref to every `Summery` so the `Rc::make_mut` dose a deep clone.
2 parents e9fc779 + 880337a commit 8f5bdc4

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/cargo/core/summary.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ pub struct Summary {
2626
struct Inner {
2727
package_id: PackageId,
2828
dependencies: Vec<Dependency>,
29-
features: FeatureMap,
29+
features: Rc<FeatureMap>,
3030
checksum: Option<String>,
3131
links: Option<InternedString>,
3232
namespaced_features: bool,
@@ -64,7 +64,7 @@ impl Summary {
6464
inner: Rc::new(Inner {
6565
package_id: pkg_id,
6666
dependencies,
67-
features: feature_map,
67+
features: Rc::new(feature_map),
6868
checksum: None,
6969
links: links.map(|l| l.into()),
7070
namespaced_features,

0 commit comments

Comments
 (0)