diff --git a/module/move/willbe/src/action/publish_diff.rs b/module/move/willbe/src/action/publish_diff.rs index 6d5b71159a..9d21fec7ec 100644 --- a/module/move/willbe/src/action/publish_diff.rs +++ b/module/move/willbe/src/action/publish_diff.rs @@ -104,9 +104,10 @@ mod private let name = &package.name()?; let version = &package.version()?; - _ = cargo::pack( cargo::PackOptions::former().path( dir.as_ref() ).dry( false ).form() )?; - let l = CrateArchive::read( packed_crate::local_path( name, version, dir.clone() )? )?; - let r = CrateArchive::download_crates_io( name, version ).unwrap(); + _ = cargo::pack( cargo::PackOptions::former().path( dir.as_ref() ).allow_dirty( true ).no_verify( true ).dry( false ).form() )?; + let l = CrateArchive::read( packed_crate::local_path( name, version, dir )? )?; + let r = CrateArchive::download_crates_io( name, version ).unwrap(); + if let Some( out_path ) = &o.keep_archive { diff --git a/module/move/willbe/src/entity/package.rs b/module/move/willbe/src/entity/package.rs index 94d7c53321..97522326bf 100644 --- a/module/move/willbe/src/entity/package.rs +++ b/module/move/willbe/src/entity/package.rs @@ -380,6 +380,8 @@ mod private let pack = cargo::PackOptions { path : crate_dir.as_ref().into(), + allow_dirty : self.dry, + no_verify : self.dry, temp_path : self.base_temp_dir.clone(), dry : self.dry, }; diff --git a/module/move/willbe/src/tool/cargo.rs b/module/move/willbe/src/tool/cargo.rs index 83e376f59b..6a078e0eab 100644 --- a/module/move/willbe/src/tool/cargo.rs +++ b/module/move/willbe/src/tool/cargo.rs @@ -14,6 +14,10 @@ mod private pub struct PackOptions { pub( crate ) path : PathBuf, + #[ default( false ) ] + pub( crate ) allow_dirty : bool, + #[ default( false ) ] + pub( crate ) no_verify : bool, pub( crate ) temp_path : Option< PathBuf >, pub( crate ) dry : bool, } @@ -33,6 +37,8 @@ mod private { [ "package".to_string() ] .into_iter() + .chain( if self.allow_dirty { Some( "--allow-dirty".to_string() ) } else { None } ) + .chain( if self.no_verify { Some( "--no-verify".to_string() ) } else { None } ) .chain( self.temp_path.clone().map( | p | vec![ "--target-dir".to_string(), p.to_string_lossy().into() ] ).into_iter().flatten() ) .collect() }