Dependencies¶
There are multiple dependencies that need to be met before installing and running the GME
software (i.e., the gme
Python package and its related Jupyter notebooks).
The basic requirement is to have Python 3.8
(or later) installed. Most of GME
development has been with 3.8, and current testing is against this version. While we have resisted using recent innovations (such as the walrus operator), problems may arise using any older version of Python.
The gme
package relies heavily on NumPy
, SymPy
, SciPy
, and Matplotlib
, and several other Python packages. We list below the vintages of these packages guaranteed to work with GME
; newer versions may deprecate functionality that GME
depends on.
The ‘geomorphysics library’ package gmplib
is also needed by gme
: it provides a set of utility functions for JSON parameter file parsing, general file I/O, and graphics.
Dependency on the gmplib
package leads to a consequent dependency on the Python packages PIL
(Pillow), json
, and IPython
.
Release 1.0 of GME
has been developed with and tested against the following:
Python package |
Version |
Needed by |
---|---|---|
NumPy |
1.19.4 |
gme, Jupyter notebooks |
SymPy |
1.9 |
gme, Jupyter notebooks |
SciPy |
1.5.0 |
gme |
Matplotlib |
3.2.2 |
gme |
gmplib |
1.0 |
gme, Jupyter notebooks |
json |
2.0.9 |
gmplib |
PIL |
7.2.0 |
gmplib |
IPython |
7.15.0 |
gmplib, Jupyter notebooks |
Jupyter core |
4.6.3 |
Jupyter notebooks |
jupyter-notebook |
6.0.3 |
Jupyter notebooks |
nbconvert |
5.6.1 |
batch execution of Jupyter notebooks |
jupyter_contrib_nbextensions |
0.4.1 |
Jupyter notebooks (optional) |
Of course, each of these Python packages brings with it another set of dependencies, most of which will be automatically met if installation is performed with pip
.