in tools/cargo-hakari/src/publish.rs [73:109]
fn new(
builder: HakariBuilder<'g>,
package: PackageMetadata<'g>,
output: OutputContext,
) -> Result<Self> {
let hakari_package = builder
.hakari_package()
.expect("hakari-package must be specified in hakari.toml");
let package_set = package.to_package_set();
let remove_ops = builder
.remove_dep_ops(&package_set, false)
.expect("hakari-package must be specified in hakari.toml");
let inner = if remove_ops.is_empty() {
info!(
"dependency from {} to {} not present",
package.name().style(output.styles.package_name),
hakari_package.name().style(output.styles.package_name),
);
None
} else {
info!(
"removing dependency from {} to {}",
package.name().style(output.styles.package_name),
hakari_package.name().style(output.styles.package_name),
);
remove_ops
.apply()
.wrap_err_with(|| format!("error removing dependency from {}", package.name()))?;
Some(TempRemoveDepInner {
builder,
package,
output,
})
};
Ok(Self { inner })
}