Reference

Commands

usage: ivpm [-h]
            {activate,build,pkg-info,share,update,init,git-status,git-update,snapshot,sync,status}
            ...

Positional Arguments

command

Possible choices: activate, build, pkg-info, share, update, init, git-status, git-update, snapshot, sync, status

Sub-commands

activate

Starts a new shell that contains the activated python virtual environment

ivpm activate [-h] [-c C] [-p PROJECT_DIR] [args ...]
Positional Arguments
args
Named Arguments
-c

When specified, executes the specified string

-p, --project-dir

Specifies the project directory to use (default: cwd)

build

Build all sub-projects with an IVPM-supported build infrastructure (Python)

ivpm build [-h] [-d DEP_SET] [-g]
Named Arguments
-d, --dep-set

Uses dependencies from specified dep-set instead of ‘default-dev’

-g, --debug

Enables debug for native extensions

Default: False

pkg-info

Collect paths/files for a listed set of packages

ivpm pkg-info [-h] [-k KIND] {incdirs,paths,libdirs,libs} pkgs [pkgs ...]
Positional Arguments
type

Possible choices: incdirs, paths, libdirs, libs

Specifies what info to query

pkgs
Named Arguments
-k, --kind

Specifies qualifiers on the type of info to query

share

Returns the ‘share’ directory, which includes cmake files, etc

ivpm share [-h] ...
Positional Arguments
path

update

Fetches packages specified in ivpm.yaml that have not already been loaded

ivpm update [-h] [-p PROJECT_DIR] [-d DEP_SET] [-a] [--skip-py-install]
            [--force-py-install] [--py-prerls-packages]
Named Arguments
-p, --project-dir

Specifies the project directory to use (default: cwd)

-d, --dep-set

Uses dependencies from specified dep-set instead of ‘default-dev’

-a, --anonymous-git

Clones git repositories in ‘anonymous’ mode

Default: False

--skip-py-install, --py-skip-install

Skip installation of Python packages

Default: False

--force-py-install, --py-force-install

Forces a re-install of Python packages

Default: False

--py-prerls-packages

Enable installation of pre-release packages

Default: False

init

Creates an initial ivpm.yaml file

ivpm init [-h] [-v VERSION] [-f] name
Positional Arguments
name
Named Arguments
-v, --version

Default: '0.0.1'

-f, --force

Default: False

git-status

Runs git status on any git packages (Note: deprecated. use ‘status’ instead)

ivpm git-status [-h] [-p PROJECT_DIR]
Named Arguments
-p, -project-dir

git-update

Updates any git packages (Note: deprecated. use ‘sync’ instead)

ivpm git-update [-h] [-p PROJECT_DIR]
Named Arguments
-p, -project-dir

snapshot

Creates a snapshot of required packages

ivpm snapshot [-h] [-p PROJECT_DIR] [-r] snapshot_dir
Positional Arguments
snapshot_dir

Specifies the directory where the snapshot will be created

Named Arguments
-p, -project-dir
-r, --rls-deps

Uses release deps from project root instead of dev deps

Default: False

sync

Synchronizes dependent packages with an upstream source (if available)

ivpm sync [-h]

status

Checks the status of sub-dependencies such as git repositories

ivpm status [-h]

YAML File Format

Package Definition

type

object

properties

  • name

Package name

Name of the package

type

string

  • deps-dir

Dependency directory name

Specifies directory where dependencies are stored. Defaults to ‘packages’

type

string

  • default-dep-set

Default dependency set

Specifies the default dep-set to use. Defaults to ‘default-dev’

type

string

  • dep-sets

Dependency sets

Specifies available dependency sets

type

array

items

Named package-dependency set

  • env-sets

#/defs/env-sets

  • path-sets

#/defs/path-sets

Named package-dependency set

type

object

properties

  • name

Dependency-set identifier. ‘default’ and ‘default-dev’ are builtin names

type

string

  • deps

Package dependencies

type

array

items

Package Dependency specification

Package Dependency specification

type

object

properties

  • required

[‘name’]

  • name

Package identifier

type

string

  • url

Source URL

URL from which to obtain the dependency. Used for all execpt ‘pypi’

type

string

  • src

Source type

Specifies the source type. Much of the time auto-detect works

type

string

anyOf

URL points to a Git repository

const

git

URL points to a .jar file. IVPM will not expand

const

jar

URL points to a gzip-compressed TAR file. IVPM will expand

const

tgz

URL points to a xz-compressed TAR File. IVPM will expand

const

txz

URL points to a zip file. IPVM will expand

const

zip

Dependency name is a PyPi package to be installed with pip

const

pypi

Source types are extensible. Consult documentation for other source types

type

string

  • type

Package type

Specifies package type. Most of the time auto-detect works

type

string

anyOf

Data package. IVPM will not attempt to interpret

const

raw

Python package that IVPM will install into the venv

const

python

Package types are extensible. Consult documentation for other package types

type

string

  • version

Version-specification string for Python packages from PyPi

type

string

  • anonymous

Clone using anonymous (non-PAT) Git

type

boolean

  • branch

Git branch to checkout

type

string

  • tag

Git tag to checkout

type

string

  • commit

Git commit to checkout

type

string

  • deps

When set to ‘skip’, sub-dependencies will not be loaded

type

string

  • depth

Git clone depth

type

integer

  • dep-set

Assuming the target is an IVPM package, Specifies the named dep-set to use

type

string