pesde CLI
The pesde CLI is the primary way to interact with pesde projects. It provides commands for installing dependencies, running scripts, and more.
pesde auth
Authentication-related commands.
-i, --index
: The index of which token to manipulate. May be a URL or an alias. Defaults to the default index of the current project or the default index set in the config.
pesde auth login
Sets the token for the index.
-t, --token
: The token to set.
If no token is provided, you will be prompted to authenticate with GitHub. A code will be provided that you can paste into the GitHub authentication prompt.
pesde auth logout
Removes the stored token for the index.
pesde auth whoami
Prints the username of the currently authenticated user of the index. Only works if the token is a GitHub token.
pesde auth token
Prints the token for the index.
pesde config
Configuration-related commands.
pesde config default-index
pesde config default-index [INDEX]
Configures the default index. If no index is provided, the current default index is printed.
-r, --reset
: Resets the default index.
The default index is pesde-index
.
pesde cas
Content-addressable storage (CAS) related commands.
pesde cas prune
Removes unused CAS files and packages.
pesde init
Initializes a new pesde project in the current directory.
pesde add
pesde add <PACKAGE>
Adds a package to the dependencies of the current project.
-i, --index <INDEX>
: The index in which to search for the package.-t, --target <TARGET>
: The target environment for the package.-a, --alias <ALIAS>
: The alias to use for the package, defaults to the package name.-p, --peer
: Adds the package as a peer dependency.-d, --dev
: Adds the package as a dev dependency.
The following formats are supported:
pesde add pesde/hellopesde add wally#pesde/hellopesde add gh#acme/package#mainpesde add https://git.acme.local/package.git#aeff6pesde add workspace:pesde/hellopesde add path:/home/user/package
pesde remove
pesde remove <ALIAS>
Removes a package from the dependencies of the current project.
pesde install
Installs dependencies for the current project.
--locked
: Whether to error if the lockfile is out of date.--prod
: Whether to not linking dev dependencies.--network-concurrency <CONCURRENCY>
: The number of concurrent network requests to make at most. Defaults to 16.--force
: Whether to force reinstall all packages even if they are already installed (useful if there is any issue with the current installation).
pesde update
Updates the dependencies of the current project.
--no-install
: Whether to only update the lockfile without installing the dependencies.--network-concurrency <CONCURRENCY>
: The number of concurrent network requests to make at most. Defaults to 16.--force
: Whether to force reinstall all packages even if they are already installed (useful if there is any issue with the current installation).
pesde outdated
Lists outdated dependencies of the current project.
pesde list
Lists the dependencies of the current project.
pesde run
Runs a script from the current project using Lune.
pesde run [SCRIPT] [ -- <ARGS>...]
If no script is provided, it will run the script specified by target.bin
in pesde.toml
.
If a path is provided, it will run the script at that path.
If a script defined in [scripts]
is provided, it will run that script.
If a package name is provided, it will run the script specified by target.bin
in that package.
Arguments can be passed to the script by using --
followed by the arguments.
pesde run foo -- --arg1 --arg2
pesde publish
Publishes the current project to the pesde registry.
-d, --dry-run
: Whether to perform a dry run. This will output a tarball containing the package that would be published, but will not actually publish it.-y, --yes
: Whether to skip the confirmation prompt.-i, --index
: Name of the index to publish to. Defaults todefault
.--no-verify
: Whether to skip syntax validation of the exports of the package.
pesde yank
Yanks a version of a package from the registry.
--undo
: Whether to unyank the package.-i, --index
: Name of the index to yank from. Defaults todefault
.
pesde deprecate
pesde deprecate <PACKAGE> [REASON]
Deprecates a package in the registry. A non-empty reason must be provided.
--undo
: Whether to undepricate the package.-i, --index
: Name of the index to deprecate from. Defaults todefault
.
pesde patch
pesde patch <PACKAGE>
Prepares a patching environment for a package. This will copy the source code of the package to a temporary directory.
The package specified must be in the format <name>@<version> <target>
.
pesde patch-commit
pesde patch-commit <PATH>
Applies the changes made in the patching environment created by pesde patch
.
pesde x
Runs a one-off binary package.
pesde x <PACKAGE>
This is useful for running a binary package without installing it or outside of a pesde project.
pesde x pesde/hello
pesde self-install
Performs the pesde installation process. This should be the first command run after downloading the pesde binary.
pesde self-upgrade
Upgrades the pesde binary to the latest version.
--use-cached
: Whether to use the version displayed in the “upgrade available” message instead of checking for the latest version.