pub struct WorkspaceLoadOptions<'a> {
pub registry: &'a [RegistryPackageSource],
pub patches: &'a [PatchedPackageSource],
pub ports: &'a [PortPackageSource],
pub registry_policy: RegistryPolicy<'a>,
pub include_dev_for: &'a BTreeSet<String>,
pub port_policy: PortPolicy<'a>,
}Expand description
Options bag for the workspace loader. Threads custom policy (registry / patches / ports / dev-dep activation) through a single call.
Fields§
§registry: &'a [RegistryPackageSource]Already-resolved registry package sources.
patches: &'a [PatchedPackageSource]Active patches (resolved by cabin-workspace::patch).
ports: &'a [PortPackageSource]Foundation ports that have already been prepared by
cabin_port::prepare (downloaded, checksum-verified,
safely extracted with strip_prefix, overlay applied).
The loader resolves a DependencySource::Port
declaration to the matching entry here.
registry_policy: RegistryPolicy<'a>How the loader treats a missing-registry edge: every parent
is strict by default; pre-resolution loads use
RegistryPolicy::StrictFor to scope enforcement (or
disable it with an empty set).
include_dev_for: &'a BTreeSet<String>Names of packages whose [dev-dependencies] should be
loaded as real graph edges. Empty matches the
cabin build policy of treating dev-deps as
declaration-only; cabin test populates this with the
names of the test-running packages.
port_policy: PortPolicy<'a>How the loader resolves DependencySource::Port entries.
Defaults to PortPolicy::Strict — every port-dep must
be present in ports (and on disk, for port-path).
Callers that scope port preparation to a narrower
selection than the full primary-package set use
PortPolicy::TolerateExcept with the selected names
so siblings’ missing ports are silently skipped while
selected packages still surface the typed
PortDependencyNotPrepared / PortDirectoryMissing
diagnostic.
Trait Implementations§
Source§impl<'a> Clone for WorkspaceLoadOptions<'a>
impl<'a> Clone for WorkspaceLoadOptions<'a>
Source§fn clone(&self) -> WorkspaceLoadOptions<'a>
fn clone(&self) -> WorkspaceLoadOptions<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more