diff --git a/docs/Makefile b/docs/Makefile index a5c0035c..3c232f49 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -18,9 +18,10 @@ allapi: rm -rf ./details/api sphinx-apidoc -Mfe -o ./details/api ../lib/ncdata +# N.B. when no changelog entries pending, *don't* add a release section. +# - this gives a "clean" changelog when building a release version. towncrier: - if [ -e changelog_fragments/*.rst ]; then towncrier build --yes; fi - + if [ "$$(ls changelog_fragments | grep "\.rst")" != "" ]; then towncrier build --yes; fi # Tweaked "make html", which restores the changelog state after docs build. html-keeplog: html diff --git a/docs/changelog_fragments/173.dev.rst b/docs/changelog_fragments/173.dev.rst new file mode 100644 index 00000000..b795db7b --- /dev/null +++ b/docs/changelog_fragments/173.dev.rst @@ -0,0 +1 @@ +Fix xarray 2025.09.1 problem. diff --git a/docs/changelog_fragments/174.doc.rst b/docs/changelog_fragments/174.doc.rst new file mode 100644 index 00000000..8cfdde19 --- /dev/null +++ b/docs/changelog_fragments/174.doc.rst @@ -0,0 +1 @@ +Document how to create a developer installation. diff --git a/docs/changelog_fragments/175.dev.rst b/docs/changelog_fragments/175.dev.rst new file mode 100644 index 00000000..18673593 --- /dev/null +++ b/docs/changelog_fragments/175.dev.rst @@ -0,0 +1,2 @@ +Test against given Python versions : currently 3.12 and 3.13. +**Not** python 3.14, for now, due to emerging problems with dependencies (notably Iris). diff --git a/docs/details/developer_notes.rst b/docs/details/developer_notes.rst index d0b052af..965adf14 100644 --- a/docs/details/developer_notes.rst +++ b/docs/details/developer_notes.rst @@ -19,7 +19,7 @@ with a ``towncrier`` command-line command: * "feat": user features * "doc": documentation changes * "bug": bug fixes - * "def": general developer-relevant changes + * "dev": general developer-relevant changes * "misc": miscellaneous (For reference, these categories are configured in ``pyproject.toml``). @@ -29,6 +29,19 @@ with a ``towncrier`` command-line command: * N.B. for this to work well, every change should be identified with a matching github issue. If there are multiple associated PRs, they should all be linked to the issue. +.. _developer_install: + +Developer Installation +---------------------- +For an editable installation, make a Python environment containing at least **numpy, +netCDF4, dask and pip**. It is also highly recommended to get +`towncrier `_ and +`pre-commit `_. +(and enable pre-commit with ``$ pre-commit install``). + +Then, cd to your checkout, and ``$ pip install -e .``. +This should result in an editable development installation. + Documentation build ------------------- @@ -83,7 +96,7 @@ Release actions #. create a new env with test dependencies - * ``$ conda create -n ncdtmp python=3.11 iris xarray filelock requests pytest pip`` + * ``$ conda create -n ncdtmp python=3.13 iris xarray filelock requests pytest pip`` * ( N.B. 'filelock' and 'requests' are *test dependencies* of iris ) #. install the new package with diff --git a/docs/userdocs/getting_started/installation.rst b/docs/userdocs/getting_started/installation.rst index 2c805c10..fb64ccfe 100644 --- a/docs/userdocs/getting_started/installation.rst +++ b/docs/userdocs/getting_started/installation.rst @@ -29,3 +29,8 @@ Check install > + +Developer Installation +---------------------- +To work on changes to the ncdata code, you will need an "editable installation". +See : :ref:`developer_install`.