@@ -162,7 +162,7 @@ impl CargoWorkspace {
162162 meta. current_dir ( parent) ;
163163 }
164164 if let Some ( target) = cargo_features. target . as_ref ( ) {
165- meta. other_options ( & [ String :: from ( "--filter-platform" ) , target. clone ( ) ] ) ;
165+ meta. other_options ( vec ! [ String :: from( "--filter-platform" ) , target. clone( ) ] ) ;
166166 }
167167 let meta = meta. exec ( ) . with_context ( || {
168168 format ! ( "Failed to run `cargo metadata --manifest-path {}`" , cargo_toml. display( ) )
@@ -305,19 +305,13 @@ pub fn load_extern_resources(
305305
306306 let mut res = ExternResources :: default ( ) ;
307307
308- for message in cargo_metadata:: parse_messages ( output. stdout . as_slice ( ) ) {
308+ for message in cargo_metadata:: Message :: parse_stream ( output. stdout . as_slice ( ) ) {
309309 if let Ok ( message) = message {
310310 match message {
311311 Message :: BuildScriptExecuted ( BuildScript { package_id, out_dir, cfgs, .. } ) => {
312312 res. out_dirs . insert ( package_id. clone ( ) , out_dir) ;
313- res. cfgs . insert (
314- package_id,
315- // FIXME: Current `cargo_metadata` uses `PathBuf` instead of `String`,
316- // change when https://github.com/oli-obk/cargo_metadata/pulls/112 reaches crates.io
317- cfgs. iter ( ) . filter_map ( |c| c. to_str ( ) . map ( |s| s. to_owned ( ) ) ) . collect ( ) ,
318- ) ;
313+ res. cfgs . insert ( package_id, cfgs) ;
319314 }
320-
321315 Message :: CompilerArtifact ( message) => {
322316 if message. target . kind . contains ( & "proc-macro" . to_string ( ) ) {
323317 let package_id = message. package_id ;
@@ -330,6 +324,8 @@ pub fn load_extern_resources(
330324 }
331325 Message :: CompilerMessage ( _) => ( ) ,
332326 Message :: Unknown => ( ) ,
327+ Message :: BuildFinished ( _) => { }
328+ Message :: TextLine ( _) => { }
333329 }
334330 }
335331 }
0 commit comments