Skip to content
allan johns edited this page Nov 8, 2015 · 28 revisions


  1. What Is Rez?
  2. What Is Rez For?
  3. What Problem Does Rez Solve?
## What Is Rez?

Rez is a cross-platform software package management API and set of tools. Rez can build and install packages, and resolve environments at runtime using use a dependency resolution algorithm to avoid version conflicts. Both third party and internally developed packages can be made into Rez packages, and any kind of package (python, compiled, etc) is supported.

The main tools are:

  • rez-env: Creates a configured shell containing a set of requested packages. Supports bash, tcsh and cmd (Windows), and can be extended to other shells.

  • rez-build: Builds a package of any type (python, C++ etc), and installs it locally for testing. Supports cmake, and can be extended to other build systems.

  • rez-release: Builds and centrally deploys a package, and updates the associated source control repository (creating tags etc). Supports git, mercurial and svn, and can be extended to other repository types.

  • rez-gui: A fully fledged graphical interface for creating resolved environments, launching tools and comparing different environments.

To see a listing of all the command line tools that rez provides, see here.

## What Is Rez For?

TODO

## What Problem Does Rez Solve?

TODO