diff --git a/.readthedocs.yaml b/.readthedocs.yaml
index 8e7d60f367..50ee5a7322 100644
--- a/.readthedocs.yaml
+++ b/.readthedocs.yaml
@@ -10,19 +10,15 @@ build:
os: ubuntu-22.04
tools:
python: "mambaforge-4.10"
+ jobs:
+ post_create_environment:
+ - pip install . --no-deps
# Declare the requirements required to build your docs
conda:
environment:
environment.yml
-python:
- install:
- - method: pip
- path: .
- extra_requirements:
- - doc
-
# Build documentation in the doc directory with Sphinx
sphinx:
configuration: doc/conf.py
diff --git a/doc/contributing.rst b/doc/contributing.rst
index 153a081b3a..17f4d10beb 100644
--- a/doc/contributing.rst
+++ b/doc/contributing.rst
@@ -635,13 +635,13 @@ When adding or removing dependencies, please consider applying the changes in
the following files:
- ``environment.yml``
- contains development dependencies that cannot be installed from
- `PyPI `_
+ contains all the development dependencies; these are all from
+ `conda-forge `_
- ``setup.py``
contains all Python dependencies, regardless of their installation source
Note that packages may have a different name on
-`conda-forge `__ than on PyPI_.
+`conda-forge `__ than on `PyPI `_.
Several test jobs on CircleCI_ related to the installation of the tool will only
run if you change the dependencies.
diff --git a/environment.yml b/environment.yml
index 21795e34b2..5873831080 100644
--- a/environment.yml
+++ b/environment.yml
@@ -2,24 +2,67 @@
name: esmvaltool
channels:
- conda-forge
+ - nodefaults
dependencies:
- cartopy
- cf-units>=3.0.0,<3.1.0 # github.com/ESMValGroup/ESMValCore/issues/1655
- cftime
+ - dask
- compilers
- # 1.8.18/py39, they seem weary to build manylinux wheels
- # and pypi ver built with older gdal
- - fiona
+ - esgf-pyclient>=0.3.1
- esmpy!=8.1.0 # see github.com/ESMValGroup/ESMValCore/issues/1208
+ - fiona
+ - fire
- geopy
+ - humanfriendly
+ - importlib_resources
- iris>=3.2.1
- - mypy>=0.990
+ - isodate
+ - jinja2
+ - nc-time-axis
- nested-lookup
- netcdf4!=1.6.1 # github.com/ESMValGroup/ESMValCore/issues/1723
+ - numpy
- pandas
- pillow
- pip!=21.3
+ - prov
+ - psutil
+ - pybtex
- python>=3.8
- python-stratify
+ - pyyaml
+ - requests
- scipy>=1.6
+ - shapely
+ - yamale
+ # Python packages needed for building docs
+ - autodocsumm>=0.2.2
+ - sphinx>=5
+ - sphinx_rtd_theme
+ # Python packages needed for testing
+ - flake8<5.0 # github.com/ESMValGroup/ESMValCore/issues/1696
+ - mypy>=0.990
+ - pytest>=3.9,!=6.0.0rc1,!=6.0.0
+ - pytest-cov>=2.10.1
+ - pytest-env
+ - pytest-html!=2.1.0
+ - pytest-metadata>=1.5.1
+ - pytest-mypy
+ - pytest-mock
+ - pytest-xdist
+ # Not on conda-forge - ESMValTool_sample_data==0.0.3
+ # Still for testing, MyPy library stubs
+ - types-requests
+ - types-pkg_resources
+ - types-PyYAML
+ # Python packages needed for installing in development mode
+ - codespell
+ - docformatter
+ - isort
+ - pre-commit
+ - prospector!=1.1.6.3,!=1.1.6.4
+ # Not on conda forge - vprof
+ - yamllint
+ - yapf
diff --git a/setup.py b/setup.py
index 25e996e274..291b9955d0 100755
--- a/setup.py
+++ b/setup.py
@@ -77,8 +77,8 @@
],
# Documentation dependencies
'doc': [
- 'autodocsumm',
- 'sphinx>2',
+ 'autodocsumm>=0.2.2',
+ 'sphinx>5',
'sphinx_rtd_theme',
],
# Development dependencies