fn new()

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 })
    }