These packages provide one-line installs for RAPIDS as well as environment setups for RAPIDS users and the RAPIDS containers.
These meta-packages are available in two channels:
| Channel Name | Purpose |
|---|---|
rapidsai |
Release versions of the packages; tied to a stable release of RAPIDS |
rapidsai-nightly |
Nightly versions of the packages; allows for install of WIP nightly versions of RAPIDS |
The install meta-packages are for RAPIDS installation and version pinning of core libraries to a RAPIDS release:
| Package Name | Purpose |
|---|---|
rapids |
Provide a one package install for all RAPIDS libraries, version matched to a RAPIDS release |
rapids-xgboost |
Defines the version of xgboost used for a RAPIDS release |
Packages without version restrictions do not need to use the following process
and can be simply added as a conda package name to the recipe. For all other
packages, follow this process to add/update versions used across all
meta-packages:
- Examine the
meta.yamlrecipe to be modified - Check if there is a pre-existing version definition like
cupy {{ cupy_version }}
- If so, skip to the section Updating Versions
- If not, continue with the section Adding Versions
For new packages or those that do not have defined versions they need to be added.
To add a package with versioning to the recipe we need the PACKAGE_NAME and
the VERSIONING_NAME added to the file.
PACKAGE_NAME- is the conda package nameVERSIONING_NAME- is the conda package name with-replaced with_and a suffix of_versionadded- For example
cupywould becomecupy_versionscikit-learnwould becomescikit_learn_version
- For example
Once the PACKAGE_NAME and VERSIONING_NAME are ready, we can add them to
the meta.yml as follows:
PACKAGE_NAME {{ VERSIONING_NAME }}
- NOTE: The
VERSIONING_NAMEmust be surrounded by the{{ }}for the substitution to work.
Using our examples of cupy and scikit-learn we would have these entries in
the meta.yaml:
cupy {{ cupy_version }}
scikit-learn {{ scikit_learn_version }}
In conda/recipes is versions.yaml - These are versions used by CI for testing in PRs and conda builds.
In this file we specify the version for the newly created VERSIONING_NAME.
For each VERSIONING_NAME we need a VERSION_SPEC. This can be any of the
standard conda version specifiers:
>=1.8.0
>=0.48,<0.49
>=7.0,<8.0.0a0
=2.5
NOTE: =2.5.* is not a valid version spec. Please use =2.5 instead
which will be interpreted as =2.5.*. Otherwise conda build throws a
warning message with the definition of .*. For example:
WARNING conda.models.version:get_matcher(531): Using .* with relational operator
is superfluous and deprecated and will be removed in a future version of conda.
Your spec was 0.23.*, but conda is ignoring the .* and treating it as 0.23
Combined together each of the versions files would add the following for each
VERSIONING_NAME:
VERSIONING_NAME:
- 'VERSION_SPEC'
Using our examples of cupy and scikit-learn we would have these entries in
the meta.yaml:
cupy_version:
- '>=7.0,<8.0.0a0'
scikit_learn_version:
- '=0.21.3'
Edit the versions.yaml file in conda/recipes and update the VERSION_SPEC
as desired. If there is no defined version spec, see Modifying Versions Files
for information on how to add one.
