pub struct NodeMaintainerOptions { /* private fields */ }

Implementations§

source§

impl NodeMaintainerOptions

source

pub fn new() -> Self

Create a new builder for NodeMaintainer.

source

pub fn cache(self, cache: impl AsRef<Path>) -> Self

Configure the cache location that NodeMaintainer will use.

source

pub fn concurrency(self, concurrency: usize) -> Self

Controls number of concurrent operations during various restore steps (resolution fetches, extractions, etc). Tuning this might help reduce memory usage.

source

pub fn script_concurrency(self, concurrency: usize) -> Self

Controls number of concurrent script executions while running run_script. This option is separate from concurrency because executing concurrent scripts is a much heavier operation.

source

pub fn kdl_lock( self, kdl_lock: impl IntoKdl ) -> Result<Self, NodeMaintainerError>

Configure the KDL lockfile that NodeMaintainer will use.

If this option is not specified, NodeMaintainer will try to read the lockfile from <root>/package-lock.kdl.

source

pub fn npm_lock( self, npm_lock: impl AsRef<str> ) -> Result<Self, NodeMaintainerError>

Configure the NPM lockfile that NodeMaintainer will use.

If this option is not specified, NodeMaintainer will try to read the lockfile from <root>/package-lock.json.

source

pub fn registry(self, registry: Url) -> Self

Registry used for unscoped packages.

Defaults to https://registry.npmjs.org.

source

pub fn scope_registry(self, scope: impl AsRef<str>, registry: Url) -> Self

Registry to use for a given @scope. That is, what registry to use when looking up a package like @foo/pkg. This option can be provided multiple times.

source

pub fn root(self, path: impl AsRef<Path>) -> Self

Root directory of the project.

source

pub fn default_tag(self, tag: impl AsRef<str>) -> Self

Default dist-tag to use when resolving package versions.

source

pub fn prefer_copy(self, prefer_copy: bool) -> Self

When extracting packages, prefer to copy files files instead of linking them.

This option has no effect if hard linking fails (for example, if the cache is on a different drive), or if the project is on a filesystem that supports Copy-on-Write (zfs, btrfs, APFS (macOS), etc).

source

pub fn validate(self, validate: bool) -> Self

When this is true, node-maintainer will validate integrity hashes for all files extracted from the cache, as well as verify that any files in the existing node_modules are unmodified. If verification fails, the packages will be reinstalled.

source

pub fn on_resolution_added<F>(self, f: F) -> Selfwhere F: Fn() + Send + Sync + 'static,

source

pub fn on_resolve_progress<F>(self, f: F) -> Selfwhere F: Fn(&Package) + Send + Sync + 'static,

source

pub fn on_prune_progress<F>(self, f: F) -> Selfwhere F: Fn(&Path) + Send + Sync + 'static,

source

pub fn on_extract_progress<F>(self, f: F) -> Selfwhere F: Fn(&Package) + Send + Sync + 'static,

source

pub fn on_script_start<F>(self, f: F) -> Selfwhere F: Fn(&Package, &str) + Send + Sync + 'static,

source

pub fn on_script_line<F>(self, f: F) -> Selfwhere F: Fn(&str) + Send + Sync + 'static,

source

pub async fn resolve_manifest( self, root: CorgiManifest ) -> Result<NodeMaintainer, NodeMaintainerError>

Resolves a NodeMaintainer using an existing CorgiManifest.

source

pub async fn resolve_spec( self, 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.

Trait Implementations§

source§

impl Clone for NodeMaintainerOptions

source§

fn clone(&self) -> NodeMaintainerOptions

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Default for NodeMaintainerOptions

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more