Skip to content

Commit 6410a9a

Browse files
pelsonbjlittle
authored andcommitted
Tidy up the root of the repository for v2.1 (#3034)
A bunch of miscellaneous changes in preparation for the v2.1 release: * Move CONTRIBUTING.md to a .github/ folder. See also: https://help.github.com/articles/setting-guidelines-for-repository-contributors/ * Updated the .gitignore to reflect what gets produce in day-to-day iris development * Reduced the amount of redundancy in INSTALL. It now points to the requirements/ directory which is what we actually test. * Updated minimum dependencies in requirements (because that is all we test): * Numpy>=1.14 * Matplotlib>=2 * cf_units>=2
1 parent 3be2571 commit 6410a9a

File tree

4 files changed

+12
-109
lines changed

4 files changed

+12
-109
lines changed
File renamed without changes.

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,12 @@ develop-eggs
1515

1616
# Installer logs
1717
pip-log.txt
18+
pip-cache
1819

1920
# Unit test / coverage reports
2021
.coverage
2122
.tox
23+
.pytest_cache
2224

2325
#Translations
2426
*.mo
@@ -51,6 +53,7 @@ docs/iris/src/_static/random_image.js
5153
docs/iris/src/_templates/gallery.html
5254
docs/iris/src/examples/
5355
docs/iris/src/iris/
56+
docs/iris/src/matplotlibrc
5457

5558
# Example test results
5659
docs/iris/iris_image_test_output/

INSTALL

Lines changed: 6 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,10 @@ https://github.com/SciTools/iris.
3434

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

40-
python setup.py install
40+
pip install .
4141

4242

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

49-
python setup.py develop
50-
51-
52-
Build and runtime requirements
53-
==============================
54-
These are external packages which you will need to have installed before
55-
installing and running Iris.
56-
57-
Many of these packages are available in Linux package managers
58-
such as aptitude and yum. For example, it may be possible to install
59-
Numpy using::
60-
61-
apt-get install python-numpy
62-
63-
If you are installing dependencies with a package manager on Linux,
64-
you may need to install the development packages (look for a "-dev"
65-
postfix) in addition to the core packages.
66-
67-
68-
python 2.7 or 3.5+ (http://www.python.org/)
69-
Iris requires Python 2.7 or Python 3.5+.
70-
71-
numpy (http://numpy.scipy.org/)
72-
Python package for scientific computing including a powerful N-dimensional
73-
array object.
74-
75-
scipy (http://www.scipy.org/)
76-
Python package for scientific computing.
77-
78-
cartopy v0.11.0 or later (http://github.com/SciTools/cartopy/)
79-
Python package which provides cartographic tools for python.
80-
81-
dask v0.15.0 or later (https://dask.pydata.org/)
82-
Python package for parallel computing.
83-
84-
PyKE v1.1.1 or later (http://pyke.sourceforge.net/)
85-
Python knowledge-based inference engine.
86-
87-
netcdf4-python (http://netcdf4-python.googlecode.com/)
88-
Python interface to the netCDF version 4 C library.
89-
(It is strongly recommended to ensure your installation uses a
90-
thread-safe build of HDF5 to avoid segmentation faults when using
91-
lazy evaluation.)
92-
93-
cf_units v2.0 or later (https://github.com/SciTools/cf_units)
94-
CF data units handling, using udunits.
95-
96-
setuptools v36.0 or later (http://pypi.python.org/pypi/setuptools/)
97-
Python package for installing/removing python packages.
98-
99-
100-
The full list of packages may be found in the repository at
101-
``requirements/core.txt``.
102-
103-
104-
Optional
105-
''''''''
106-
These are optional packages which you may want to install to enable
107-
additonal Iris functionality such as plotting and
108-
loading/saving GRIB. These packages are required for the full Iris test
109-
suite to run.
110-
111-
gdal (https://pypi.python.org/pypi/GDAL/)
112-
Python package for the Geospatial Data Abstraction Library (GDAL).
113-
114-
graphviz (http://www.graphviz.org/)
115-
Graph visualisation software.
116-
117-
iris-grib (https://github.com/scitools/iris-grib)
118-
Iris interface to ECMWF's GRIB API
119-
120-
matplotlib (https://matplotlib.org)
121-
Python package for 2D plotting.
122-
123-
mock (http://pypi.python.org/pypi/mock/)
124-
Python mocking and patching package for testing. Note that this package
125-
is only required to support the Iris unit tests.
126-
127-
nose (https://nose.readthedocs.io/en/latest/)
128-
Python package for software testing. Iris is not compatible with nose2.
129-
130-
pep8 (https://pypi.python.org/pypi/pep8)
131-
Python package for software testing.
132-
133-
pandas (http://pandas.pydata.org)
134-
Python package providing high-performance, easy-to-use data structures and
135-
data analysis tools.
136-
137-
PythonImagingLibrary (http://effbot.org/zone/pil-index.htm)
138-
Python package for image processing.
139-
140-
pyugrid (https://github.com/pyugrid/pyugrid)
141-
A Python API to utilize data written using the unstructured grid
142-
UGRID conventions.
143-
144-
shapely (https://github.com/Toblerity/Shapely)
145-
Python package for the manipulation and analysis of planar geometric
146-
objects.
147-
148-
mo_pack (https://github.com/SciTools/mo_pack)
149-
A Python wrapper to libmo_unpack, giving WGDOS packing and unpacking.
49+
pip install -e .
15050

15151

15252
Generating conda requirements
15353
'''''''''''''''''''''''''''''
15454

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

15858
python requirements/gen_conda_requirements.py > conda_requirements.txt
15959

160-
This may be installed with::
60+
This may then be installed with::
16161

16262
conda create -n my_iris_env --file conda_requirements.txt
16363

requirements/core.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
# Without these, iris won't even import.
55

66
cartopy
7-
matplotlib
7+
matplotlib>=2
88
netcdf4<1.4
9-
numpy
9+
numpy>=1.14
1010
scipy
1111
# pyke (not pip installable) #conda: pyke
12-
cf_units
12+
cf_units>=2
1313
dask>=0.17.1

0 commit comments

Comments
 (0)