@@ -149,15 +149,15 @@ impl ChangeFixture {
149149 for entry in fixture {
150150 let text = if entry. text . contains ( CURSOR_MARKER ) {
151151 if entry. text . contains ( ESCAPED_CURSOR_MARKER ) {
152- entry. text . replace ( ESCAPED_CURSOR_MARKER , CURSOR_MARKER )
152+ entry. text . replace ( ESCAPED_CURSOR_MARKER , CURSOR_MARKER ) . into ( )
153153 } else {
154154 let ( range_or_offset, text) = extract_range_or_offset ( & entry. text ) ;
155155 assert ! ( file_position. is_none( ) ) ;
156156 file_position = Some ( ( file_id, range_or_offset) ) ;
157- text
157+ text. into ( )
158158 }
159159 } else {
160- entry. text . clone ( )
160+ entry. text . as_str ( ) . into ( )
161161 } ;
162162
163163 let meta = FileMeta :: from_fixture ( entry, current_source_root_kind) ;
@@ -195,7 +195,10 @@ impl ChangeFixture {
195195 let prev = crates. insert ( crate_name. clone ( ) , crate_id) ;
196196 assert ! ( prev. is_none( ) , "multiple crates with same name: {}" , crate_name) ;
197197 for dep in meta. deps {
198- let prelude = meta. extern_prelude . contains ( & dep) ;
198+ let prelude = match & meta. extern_prelude {
199+ Some ( v) => v. contains ( & dep) ,
200+ None => true ,
201+ } ;
199202 let dep = CrateName :: normalize_dashes ( & dep) ;
200203 crate_deps. push ( ( crate_name. clone ( ) , dep, prelude) )
201204 }
@@ -206,7 +209,7 @@ impl ChangeFixture {
206209 default_env. extend ( meta. env . iter ( ) . map ( |( x, y) | ( x. to_owned ( ) , y. to_owned ( ) ) ) ) ;
207210 }
208211
209- source_change. change_file ( file_id, Some ( text. into ( ) ) ) ;
212+ source_change. change_file ( file_id, Some ( text) ) ;
210213 let path = VfsPath :: new_virtual_path ( meta. path ) ;
211214 file_set. insert ( file_id, path) ;
212215 files. push ( file_id) ;
@@ -443,7 +446,7 @@ struct FileMeta {
443446 path : String ,
444447 krate : Option < ( String , CrateOrigin , Option < String > ) > ,
445448 deps : Vec < String > ,
446- extern_prelude : Vec < String > ,
449+ extern_prelude : Option < Vec < String > > ,
447450 cfg : CfgOptions ,
448451 edition : Edition ,
449452 env : Env ,
@@ -473,7 +476,7 @@ impl FileMeta {
473476 Self {
474477 path : f. path ,
475478 krate : f. krate . map ( |it| parse_crate ( it, current_source_root_kind, f. library ) ) ,
476- extern_prelude : f. extern_prelude . unwrap_or_else ( || deps . clone ( ) ) ,
479+ extern_prelude : f. extern_prelude ,
477480 deps,
478481 cfg,
479482 edition : f. edition . map_or ( Edition :: CURRENT , |v| Edition :: from_str ( & v) . unwrap ( ) ) ,
0 commit comments