File tree Expand file tree Collapse file tree 9 files changed +13
-10
lines changed
crates/resolver-tests/src
tests/testsuite/cargo_add/add_no_vendored_package_with_vendor Expand file tree Collapse file tree 9 files changed +13
-10
lines changed Original file line number Diff line number Diff line change @@ -112,6 +112,7 @@ pub fn resolve_with_config_raw(
112112 let matched = match kind {
113113 QueryKind :: Exact => dep. matches ( summary) ,
114114 QueryKind :: Fuzzy => true ,
115+ QueryKind :: Normalized => true ,
115116 } ;
116117 if matched {
117118 self . used . insert ( summary. package_id ( ) ) ;
Original file line number Diff line number Diff line change @@ -584,7 +584,7 @@ fn get_latest_dependency(
584584 }
585585 MaybeWorkspace :: Other ( query) => {
586586 let possibilities = loop {
587- match registry. query_vec ( & query, QueryKind :: Fuzzy ) {
587+ match registry. query_vec ( & query, QueryKind :: Normalized ) {
588588 std:: task:: Poll :: Ready ( res) => {
589589 break res?;
590590 }
@@ -707,7 +707,7 @@ fn select_package(
707707 MaybeWorkspace :: Other ( query) => {
708708 let possibilities = loop {
709709 // Exact to avoid returning all for path/git
710- match registry. query_vec ( & query, QueryKind :: Exact ) {
710+ match registry. query_vec ( & query, QueryKind :: Normalized ) {
711711 std:: task:: Poll :: Ready ( res) => {
712712 break res?;
713713 }
@@ -934,7 +934,7 @@ fn populate_available_features(
934934 }
935935
936936 let possibilities = loop {
937- match registry. query_vec ( & query, QueryKind :: Exact ) {
937+ match registry. query_vec ( & query, QueryKind :: Normalized ) {
938938 std:: task:: Poll :: Ready ( res) => {
939939 break res?;
940940 }
Original file line number Diff line number Diff line change @@ -109,6 +109,7 @@ impl<'cfg> Source for DirectorySource<'cfg> {
109109 let matches = packages. filter ( |pkg| match kind {
110110 QueryKind :: Exact => dep. matches ( pkg. summary ( ) ) ,
111111 QueryKind :: Fuzzy => true ,
112+ QueryKind :: Normalized => dep. matches ( pkg. summary ( ) ) ,
112113 } ) ;
113114 for summary in matches. map ( |pkg| pkg. summary ( ) . clone ( ) ) {
114115 f ( IndexSummary :: Candidate ( summary) ) ;
Original file line number Diff line number Diff line change @@ -555,6 +555,7 @@ impl<'cfg> Source for PathSource<'cfg> {
555555 let matched = match kind {
556556 QueryKind :: Exact => dep. matches ( s) ,
557557 QueryKind :: Fuzzy => true ,
558+ QueryKind :: Normalized => dep. matches ( s) ,
558559 } ;
559560 if matched {
560561 f ( IndexSummary :: Candidate ( s. clone ( ) ) )
Original file line number Diff line number Diff line change @@ -793,6 +793,7 @@ impl<'cfg> Source for RegistrySource<'cfg> {
793793 let matched = match kind {
794794 QueryKind :: Exact => dep. matches( s. as_summary( ) ) ,
795795 QueryKind :: Fuzzy => true ,
796+ QueryKind :: Normalized => true ,
796797 } ;
797798 if !matched {
798799 return ;
@@ -831,7 +832,7 @@ impl<'cfg> Source for RegistrySource<'cfg> {
831832 return Poll :: Ready ( Ok ( ( ) ) ) ;
832833 }
833834 let mut any_pending = false ;
834- if kind == QueryKind :: Fuzzy {
835+ if kind == QueryKind :: Fuzzy || kind == QueryKind :: Normalized {
835836 // Attempt to handle misspellings by searching for a chain of related
836837 // names to the original name. The resolver will later
837838 // reject any candidates that have the wrong name, and with this it'll
Original file line number Diff line number Diff line change @@ -180,6 +180,9 @@ pub enum QueryKind {
180180 /// whereas an `Registry` source may return dependencies that have the same
181181 /// canonicalization.
182182 Fuzzy ,
183+ /// Match a denpendency in all ways and will normalize the package name.
184+ /// Each source defines what normalizing means.
185+ Normalized ,
183186}
184187
185188/// A download status that represents if a [`Package`] has already been
Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ version = "0.0.0"
4747 . arg_line ( "cbindgen" )
4848 . current_dir ( cwd)
4949 . assert ( )
50- . success ( )
50+ . failure ( )
5151 . stdout_matches_path ( curr_dir ! ( ) . join ( "stdout.log" ) )
5252 . stderr_matches_path ( curr_dir ! ( ) . join ( "stderr.log" ) ) ;
5353
Original file line number Diff line number Diff line change 33[package ]
44name = " cargo-list-test-fixture"
55version = " 0.0.0"
6-
7- [dependencies ]
8- aa = " 0.0.0"
Original file line number Diff line number Diff line change 1- warning: translating `cbindgen` to `aa`
2- Adding aa v0.0.0 to dependencies.
1+ error: the crate `cbindgen` could not be found in registry index.
You can’t perform that action at this time.
0 commit comments