Janet 1.31.0-4e5889e Documentation
(Other Versions: 1.29.1 1.28.0 1.27.0 1.26.0 1.25.1 1.24.0 1.23.0 1.22.0 1.21.0 1.20.0 1.19.0 1.18.1 1.17.1 1.16.1 1.15.0 1.13.1 1.12.2 1.11.1 1.10.1 1.9.1 1.8.1 1.7.0 1.6.0 1.5.1 1.5.0 1.4.0 1.3.1 )

Project Management

Index

pm/bundle-install pm/curl pm/do-rule pm/download-bundle pm/download-git-bundle pm/download-tar-bundle pm/git pm/import-rules pm/load-lockfile pm/load-project-meta pm/make-jpm-env pm/make-lockfile pm/out-of-tree-config pm/post-deps pm/require-jpm pm/resolve-bundle pm/tar pm/update-git-bundle pm/update-installed


pm/bundle-install function source
(bundle-install bundle &opt no-deps)

Install a bundle from a git repository.
Community Examples

pm/curl function source
(curl & args)

Make a call to curl
Community Examples

pm/do-rule function source
(do-rule target)

Evaluate a given rule in a one-off manner.
Community Examples

pm/download-bundle function source
(download-bundle url bundle-type &opt tag shallow)

Download the package source (using git) to the local cache. Return the path to the downloaded or cached soure code.
Community Examples

pm/download-git-bundle function source
(download-git-bundle bundle-dir url tag shallow)

Download a git bundle from a remote respository
Community Examples

pm/download-tar-bundle function source
(download-tar-bundle bundle-dir url &opt force-gz)

Download a dependency from a tape archive. The archive should have exactly one top level directory that contains the contents of the project.
Community Examples

pm/git function source
(git & args)

Make a call to git.
Community Examples

pm/import-rules function source
(import-rules path &opt base-env)

Import another file that defines more rules. This ruleset is merged into the current ruleset.
Community Examples

pm/load-lockfile function source
(load-lockfile &opt filename)

Load packages from a lockfile.
Community Examples

pm/load-project-meta function source
(load-project-meta &opt path)

Load the metadata from a project.janet file without doing a full evaluation of the project.janet file. Returns a struct with the project metadata. Raises an error if no metadata found.
Community Examples

pm/make-jpm-env function source
(make-jpm-env &opt base-env)

Create an environment that is preloaded with jpm symbols.
Community Examples

pm/make-lockfile function source
(make-lockfile &opt filename)

Community Examples

pm/out-of-tree-config function source
(out-of-tree-config path &opt options)

Create an out of tree build configuration. This lets a user have a debug or release build, as well as other configuration on a one time basis. This works by creating a new directory with a project.janet that loads in the original project.janet file with some settings changed.
Community Examples

pm/post-deps macro source
(post-deps & body)

Run code at the top level if jpm dependencies are installed. Build code that imports dependencies should be wrapped with this macro, as project.janet needs to be able to run successfully even without dependencies installed.
Community Examples

pm/require-jpm function source
(require-jpm path &opt base-env)

Require a jpm file project file. This is different from a normal require in that code is loaded in the jpm environment.
Community Examples

pm/resolve-bundle function source
(resolve-bundle bundle)

Convert any bundle string/table to the normalized table form.
Community Examples

pm/tar function source
(tar & args)

Make a call to tar.
Community Examples

pm/update-git-bundle function source
(update-git-bundle bundle-dir tag shallow)

Fetch latest tag version from remote repository
Community Examples

pm/update-installed function source
(update-installed)

Update all previously installed packages to their latest versions.
Community Examples