From d7e0e562f3ddd63300680d073044ebe10a3602f7 Mon Sep 17 00:00:00 2001 From: Kwabena Amponsah Date: Tue, 18 Aug 2026 12:37:45 +0100 Subject: [PATCH] Prepare 2.1.0 release, add CHANGELOG and fix docs build --- .readthedocs.yaml | 8 +++-- CHANGELOG.md | 71 +++++++++++++++++++++++++++++++++++++++++++ app-manager | 2 +- appredict-docker | 2 +- client-direct | 2 +- docs/RtD/conf.py | 36 +++++++--------------- docs/requirements.txt | 7 +++++ 7 files changed, 98 insertions(+), 30 deletions(-) create mode 100644 CHANGELOG.md create mode 100644 docs/requirements.txt diff --git a/.readthedocs.yaml b/.readthedocs.yaml index a39405d..1c76f6a 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -7,9 +7,13 @@ version: 2 # Set the version of Python and other tools you might need build: - os: ubuntu-22.04 + os: ubuntu-24.04 tools: - python: "3.11" + python: "3.12" + +python: + install: + - requirements: docs/requirements.txt # Additional (apart from default HTML) formats formats: diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..8cf2b9e --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,71 @@ +# Changelog + +Notable changes to AP-Nimbus in each version. + +This repository is the umbrella for three submodules, which are versioned and +released together. + +- [`app-manager`](app-manager/CHANGELOG.md) +- [`appredict-docker`](appredict-docker/CHANGELOG.md) +- [`client-direct`](client-direct/CHANGELOG.md) + +## [2.1.0] - 2026-08-17 + +Highlights across the stack: + +- `appredict-docker` stays at Chaste `2024.1` and ApPredict `v2024.1`. +- `client-direct` gains **opt-in LDAP authentication**. +- `app-manager` no longer passes undefined arguments through to ApPredict. +- All images are now multiarch for `linux/amd64` and `linux/arm64`. + +### Changed + +- Submodules advanced to 2.1.0: `app-manager`, `appredict-docker` and + `client-direct`. +- Documentation version bumped to 2.1.0. + +## [2.0.0] - 2024-09-10 + +Highlights across the stack: + +- `appredict-docker` base images upgraded from Debian buster to bullseye. +- `appredict-docker` advanced to Chaste `2024.1` and ApPredict `v2024.1`. +- `app-manager` advanced to Node 20. +- `client-direct` upgraded to Python 3.8–3.12. + +### Changed + +- Submodules advanced to 2.0.0: `app-manager`, `appredict-docker` and + `client-direct`. +- Updated the license and the Read the Docs revision. + +## [1.0.0] - 2023-07-24 + +First coordinated release of the three submodules. `app-manager`, +`appredict-docker` and `client-direct` each moved into their own repository, +leaving this as the umbrella repository and the home of documentation. + +### Added + +- Read the Docs v2 build configuration. +- Documentation covering how to update ApPredict, how to work with the git + submodules, Django migrations, assigning the Django superuser, and building + `client-direct` from a modified Dockerfile. + +### Changed + +- Consistent naming of Docker entities throughout the documentation. + +## Earlier milestones + +These tags mark states that predate the current three-repository layout: + +- `app-manager-0.0.13` (2022-07-07) — last state of `app-manager` before it moved + to its own repository, where it continues at `0.0.14`. +- `last_client_direct_prototype` (2022-04-06) — final prototype client, before + the current Django implementation. +- `last_python2` (2020-07-23) — last ApPredict images built against Python 2. + +[2.1.0]: https://github.com/CardiacModelling/ap-nimbus/compare/v2.0.0...v2.1.0 +[2.0.0]: https://github.com/CardiacModelling/ap-nimbus/compare/v1.0.0...v2.0.0 +[1.0.0]: https://github.com/CardiacModelling/ap-nimbus/releases/tag/v1.0.0 diff --git a/app-manager b/app-manager index 31d8afb..63c0559 160000 --- a/app-manager +++ b/app-manager @@ -1 +1 @@ -Subproject commit 31d8afbd703364ad7bb93b5471264fb750f60401 +Subproject commit 63c0559af0dc2c96aaddaf2cf7dd2aee0958442c diff --git a/appredict-docker b/appredict-docker index deb3c01..db550df 160000 --- a/appredict-docker +++ b/appredict-docker @@ -1 +1 @@ -Subproject commit deb3c01a59755df71bb7c0b5cbcbb40e69c6b4ea +Subproject commit db550dfcd5b14ce70d075e097a954fef49f0dc8a diff --git a/client-direct b/client-direct index 70a58e3..229f8cc 160000 --- a/client-direct +++ b/client-direct @@ -1 +1 @@ -Subproject commit 70a58e38cfba45d2b3fdf6495087831ee5e8de20 +Subproject commit 229f8ccea5d768f365033fb783ee69d906e0b2c8 diff --git a/docs/RtD/conf.py b/docs/RtD/conf.py index 581a568..9986ac9 100644 --- a/docs/RtD/conf.py +++ b/docs/RtD/conf.py @@ -45,14 +45,14 @@ # General information about the project. project = u'AP-Nimbus' -copyright = u'2024, University of Nottingham' +copyright = u'2026, University of Nottingham' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. -version = '2.0.0' +version = '2.1.0' # The full version, including alpha/beta/rc tags. release = version @@ -99,7 +99,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the @@ -258,25 +258,11 @@ # If true, do not generate a @detailmenu in the "Top" node's menu. #texinfo_no_detailmenu = False -# Following courtesy of http://stackoverflow.com/questions/23211695/modifying-content-width-of-the-sphinx-theme-read-the-docs -# Required a `pip install sphinx_rtd_theme` - -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' - -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] - # Override default css to get a larger width for local build - def setup(app): - #app.add_javascript("custom.js") - app.add_css_file('style.css') -else: - # Override default css to get a larger width for ReadTheDoc build - html_context = { - 'css_files': [ - 'https://media.readthedocs.org/css/sphinx_rtd_theme.css', - 'https://media.readthedocs.org/css/readthedocs-doc-embed.css', - '_static/style.css', - ], - } +# Use the Read the Docs theme for local and hosted builds alike, so the two +# match. Sphinx locates the theme via its entry point, so no import or +# html_theme_path is needed. Installed via docs/requirements.txt. + + +# Override the default css to get a larger content width. +def setup(app): + app.add_css_file('style.css') diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..cedde71 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,7 @@ +# Documentation build dependencies. +# +# Pinned so local builds match the Read the Docs build. +# +# Sphinx 9.x requires Python >= 3.12, which .readthedocs.yaml pins. +sphinx==9.1.0 +sphinx_rtd_theme==3.1.0