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