Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tidy up the root of the repository for v2.1 #3034

Merged
merged 1 commit into from
May 31, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,12 @@ develop-eggs

# Installer logs
pip-log.txt
pip-cache

# Unit test / coverage reports
.coverage
.tox
.pytest_cache

#Translations
*.mo
Expand Down Expand Up @@ -51,6 +53,7 @@ docs/iris/src/_static/random_image.js
docs/iris/src/_templates/gallery.html
docs/iris/src/examples/
docs/iris/src/iris/
docs/iris/src/matplotlibrc

# Example test results
docs/iris/iris_image_test_output/
Expand Down
112 changes: 6 additions & 106 deletions INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ https://github.com/SciTools/iris.

Iris makes use of a range of other libraries and python modules. These
dependencies must be in place before you can successfully install
Iris. Once you have satisfied the requirements detailed below,
extract the iris source package, cd to the new directory, and enter::
Iris. Once you have satisfied the requirements detailed in the
``requirements`` directory, go to the root of Iris' and run::

python setup.py install
pip install .


In-place build - an alternative for developers
Expand All @@ -46,118 +46,18 @@ We are very keen to encourage contributions to Iris. For this type of
development activity an in-place build can be useful. Once you've cloned
the Iris git repository you can perform an in-place build with::

python setup.py develop


Build and runtime requirements
==============================
These are external packages which you will need to have installed before
installing and running Iris.

Many of these packages are available in Linux package managers
such as aptitude and yum. For example, it may be possible to install
Numpy using::

apt-get install python-numpy

If you are installing dependencies with a package manager on Linux,
you may need to install the development packages (look for a "-dev"
postfix) in addition to the core packages.


python 2.7 or 3.5+ (http://www.python.org/)
Iris requires Python 2.7 or Python 3.5+.

numpy (http://numpy.scipy.org/)
Python package for scientific computing including a powerful N-dimensional
array object.

scipy (http://www.scipy.org/)
Python package for scientific computing.

cartopy v0.11.0 or later (http://github.com/SciTools/cartopy/)
Python package which provides cartographic tools for python.

dask v0.15.0 or later (https://dask.pydata.org/)
Python package for parallel computing.

PyKE v1.1.1 or later (http://pyke.sourceforge.net/)
Python knowledge-based inference engine.

netcdf4-python (http://netcdf4-python.googlecode.com/)
Python interface to the netCDF version 4 C library.
(It is strongly recommended to ensure your installation uses a
thread-safe build of HDF5 to avoid segmentation faults when using
lazy evaluation.)

cf_units v2.0 or later (https://github.com/SciTools/cf_units)
CF data units handling, using udunits.

setuptools v36.0 or later (http://pypi.python.org/pypi/setuptools/)
Python package for installing/removing python packages.


The full list of packages may be found in the repository at
``requirements/core.txt``.


Optional
''''''''
These are optional packages which you may want to install to enable
additonal Iris functionality such as plotting and
loading/saving GRIB. These packages are required for the full Iris test
suite to run.

gdal (https://pypi.python.org/pypi/GDAL/)
Python package for the Geospatial Data Abstraction Library (GDAL).

graphviz (http://www.graphviz.org/)
Graph visualisation software.

iris-grib (https://github.com/scitools/iris-grib)
Iris interface to ECMWF's GRIB API

matplotlib (https://matplotlib.org)
Python package for 2D plotting.

mock (http://pypi.python.org/pypi/mock/)
Python mocking and patching package for testing. Note that this package
is only required to support the Iris unit tests.

nose (https://nose.readthedocs.io/en/latest/)
Python package for software testing. Iris is not compatible with nose2.

pep8 (https://pypi.python.org/pypi/pep8)
Python package for software testing.

pandas (http://pandas.pydata.org)
Python package providing high-performance, easy-to-use data structures and
data analysis tools.

PythonImagingLibrary (http://effbot.org/zone/pil-index.htm)
Python package for image processing.

pyugrid (https://github.com/pyugrid/pyugrid)
A Python API to utilize data written using the unstructured grid
UGRID conventions.

shapely (https://github.com/Toblerity/Shapely)
Python package for the manipulation and analysis of planar geometric
objects.

mo_pack (https://github.com/SciTools/mo_pack)
A Python wrapper to libmo_unpack, giving WGDOS packing and unpacking.
pip install -e .


Generating conda requirements
'''''''''''''''''''''''''''''

Requirements for Iris are stored in the ``requirements`` directory in the root of the source repository.
It is possible to generate a requirements file suitable for conda use with::
It is possible to generate a requirements file suitable for use with conda::

python requirements/gen_conda_requirements.py > conda_requirements.txt

This may be installed with::
This may then be installed with::

conda create -n my_iris_env --file conda_requirements.txt

Expand Down
6 changes: 3 additions & 3 deletions requirements/core.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
# Without these, iris won't even import.

cartopy
matplotlib
matplotlib>=2
netcdf4<1.4
numpy
numpy>=1.14
scipy
# pyke (not pip installable) #conda: pyke
cf_units
cf_units>=2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hoo-rah! To all of the above! 😄

dask>=0.17.1