pub struct NodeMaintainer { /* private fields */ }Expand description
Resolves and manages node_modules for a given project.
Implementations§
Source§impl NodeMaintainer
impl NodeMaintainer
Sourcepub fn builder() -> NodeMaintainerOptions
pub fn builder() -> NodeMaintainerOptions
Create a new NodeMaintainerOptions builder to use toconfigure a
NodeMaintainer.
Sourcepub async fn resolve_manifest(
root: CorgiManifest,
) -> Result<NodeMaintainer, NodeMaintainerError>
pub async fn resolve_manifest( root: CorgiManifest, ) -> Result<NodeMaintainer, NodeMaintainerError>
Resolves a NodeMaintainer using an existing CorgiManifest.
Sourcepub async fn resolve_spec(
root_spec: impl AsRef<str>,
) -> Result<NodeMaintainer, NodeMaintainerError>
pub async fn resolve_spec( root_spec: impl AsRef<str>, ) -> Result<NodeMaintainer, NodeMaintainerError>
Resolves a NodeMaintainer using a particular package spec (for
example, foo@1.2.3 or ./root) as its “root” package.
Sourcepub async fn write_lockfile(
&self,
path: impl AsRef<Path>,
) -> Result<(), NodeMaintainerError>
pub async fn write_lockfile( &self, path: impl AsRef<Path>, ) -> Result<(), NodeMaintainerError>
Writes the contents of a package-lock.kdl file to the file path.
Sourcepub fn to_lockfile(&self) -> Result<Lockfile, NodeMaintainerError>
pub fn to_lockfile(&self) -> Result<Lockfile, NodeMaintainerError>
Returns a crate::Lockfile representation of the current resolved graph.
Sourcepub fn to_kdl(&self) -> Result<KdlDocument, NodeMaintainerError>
pub fn to_kdl(&self) -> Result<KdlDocument, NodeMaintainerError>
Returns a kdl::KdlDocument representation of the current resolved graph.
Sourcepub fn package_at_path(&self, path: &Path) -> Option<Package>
pub fn package_at_path(&self, path: &Path) -> Option<Package>
Returns a Package for the given package spec, if it is present in
the dependency tree. The path should be relative to the root of the
project, and can optionally start with "node_modules/".
Sourcepub fn package_count(&self) -> usize
pub fn package_count(&self) -> usize
Number of unique packages in the dependency tree.
Sourcepub async fn prune(&self) -> Result<usize, NodeMaintainerError>
pub async fn prune(&self) -> Result<usize, NodeMaintainerError>
Scans the node_modules directory and removes any extraneous files or
directories, including previously-installed packages that are no
longer valid.
Sourcepub async fn extract(&self) -> Result<usize, NodeMaintainerError>
pub async fn extract(&self) -> Result<usize, NodeMaintainerError>
Extracts the node_modules/ directory to the project root,
downloading packages as needed. Whether this method creates files or
hard links depends on the current filesystem and the cache and
prefer_copy options.
Auto Trait Implementations§
impl Freeze for NodeMaintainer
impl !RefUnwindSafe for NodeMaintainer
impl Send for NodeMaintainer
impl Sync for NodeMaintainer
impl Unpin for NodeMaintainer
impl !UnwindSafe for NodeMaintainer
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more