Choose languages for your environment¶
You can define many different languages in your configuration files. This page describes how to use some of the more common ones.
Your environment will have Python (and specified dependencies) installed when you use one of the following configuration files:
By default, the environment will have |default_python|.
Changed in version 0.8: Upgraded default Python from 3.6 to 3.7.
Specifying a version of Python¶
To specify a specific version of Python, you have two options:
Use environment.yml. Conda environments let you define the Python version in
environment.yml. To do so, add
python=X.Xto your dependencies section, like so:
name: python 2.7 dependencies: - python=2.7 - numpy
Use runtime.txt with requirements.txt. If you are using
environment.yml, you can specify the Python runtime version in a separate file called
runtime.txt. This file contains a single line of the following form:
The R Language¶
To ensure that R is installed, you must specify a version of R in a
file. This takes the following form:
The date corresponds to the state of the MRAN repository at this day. Make sure
that you choose a day with the desired version of your packages. For example,
to use the MRAN repository on January 1st, 2018, add this line to
Note that to install specific packages with the R environment, you should
install.R configuration file.
To build an environment with Julia, include a configuration file called
Project.toml. The format of this file is documented at
the Julia Pkg.jl documentation.
To specify a specific version of Julia to install, put a Julia version in the
[compat] section of the
Project.toml file, as described
Languages not covered here¶
If a language is not “officially” supported by a build pack, it can often be
installed with a
postBuild script. This will run arbitrary
and can be used to download / install a language.
Using multiple languages at once¶
It may also be possible to combine multiple languages in a single environment. The details on how to accomplish this with all possible combinations are outside the scope of this guide. However we recommend that you take a look at the Multi-Language Demo repository for some inspiration.