@@ -38,7 +38,7 @@ pub struct RegistryQueryer<'a> {
3838 Rc < ( HashSet < InternedString > , Rc < Vec < DepInfo > > ) > ,
3939 > ,
4040 /// all the cases we ended up using a supplied replacement
41- used_replacements : HashMap < PackageId , PackageId > ,
41+ used_replacements : HashMap < PackageId , Summary > ,
4242}
4343
4444impl < ' a > RegistryQueryer < ' a > {
@@ -60,7 +60,11 @@ impl<'a> RegistryQueryer<'a> {
6060 }
6161
6262 pub fn used_replacement_for ( & self , p : PackageId ) -> Option < ( PackageId , PackageId ) > {
63- self . used_replacements . get ( & p) . map ( |& r| ( p, r) )
63+ self . used_replacements . get ( & p) . map ( |r| ( p, r. package_id ( ) ) )
64+ }
65+
66+ pub fn replacement_summary ( & self , p : PackageId ) -> Option < & Summary > {
67+ self . used_replacements . get ( & p)
6468 }
6569
6670 /// Queries the `registry` to return a list of candidates for `dep`.
@@ -78,10 +82,7 @@ impl<'a> RegistryQueryer<'a> {
7882 self . registry . query (
7983 dep,
8084 & mut |s| {
81- ret. push ( Candidate {
82- summary : s,
83- replace : None ,
84- } ) ;
85+ ret. push ( Candidate { summary : s } ) ;
8586 } ,
8687 false ,
8788 ) ?;
@@ -157,12 +158,9 @@ impl<'a> RegistryQueryer<'a> {
157158 for dep in summary. dependencies ( ) {
158159 debug ! ( "\t {} => {}" , dep. package_name( ) , dep. version_req( ) ) ;
159160 }
160- if let Some ( r) = & replace {
161- self . used_replacements
162- . insert ( summary. package_id ( ) , r. package_id ( ) ) ;
161+ if let Some ( r) = replace {
162+ self . used_replacements . insert ( summary. package_id ( ) , r) ;
163163 }
164-
165- candidate. replace = replace;
166164 }
167165
168166 // When we attempt versions for a package we'll want to do so in a
0 commit comments