From c8c7978ebd9df14bd02b79dab95cdaa85c457022 Mon Sep 17 00:00:00 2001 From: Nathan Date: Sat, 25 Oct 2025 08:56:36 -0600 Subject: [PATCH 1/4] WIP: whats new for 4.4 --- .../scaffold_an_app_via_the_portal.rst | 2 +- docs/whats_new.rst | 75 +++++++++++++------ docs/whats_new/prior_releases.rst | 39 ++++++++++ 3 files changed, 92 insertions(+), 24 deletions(-) diff --git a/docs/recipes/scaffold_an_app_via_the_portal.rst b/docs/recipes/scaffold_an_app_via_the_portal.rst index ec86ed00c..161faa4c8 100644 --- a/docs/recipes/scaffold_an_app_via_the_portal.rst +++ b/docs/recipes/scaffold_an_app_via_the_portal.rst @@ -1,4 +1,4 @@ -.. _scaffold_an_app_via_the_portal : +.. _scaffold_an_app_via_the_portal: diff --git a/docs/whats_new.rst b/docs/whats_new.rst index d33844d02..7f00f79b2 100644 --- a/docs/whats_new.rst +++ b/docs/whats_new.rst @@ -4,50 +4,79 @@ What's New ********** -**Last Updated:** November 2024 +**Last Updated:** October 2025 Refer to this article for information about each new release of Tethys Platform. Release |version| -================== +================= -Major Features +Drop Django 3.2 +--------------- + +* Tethys Platform has dropped support for Django 3.2 due to its end-of-life status. +* Users are encouraged to upgrade to Django 4.2 or later to take advantage of the latest features and security updates. + +See: :ref:`development_installation` and `PR 1202 `_ + +Component Apps -------------- -Django 4/5 Support -.................. +* Build dynamic, pure-Python Tethys Apps using ReactPy--no JavaScript required. + +See: :ref:`tethys_components` + +Scaffold Apps Graphically +------------------------- + +* https://github.com/tethysplatform/tethys/pull/1180 + +See: :ref:`scaffold_an_app_via_the_portal` + +Cookie Consent +-------------- + +* https://github.com/tethysplatform/tethys/pull/1199 + +See: :ref:`cookie_consent` -* Tethys Platform 4.3 is compatible with Django versions 4.2 - 5.x. It is now recommended to explicitly specify the version of Django that you want when you create your tethys environment. +Recipes +------- -See: :ref:`development_installation` +* https://github.com/tethysplatform/tethys/pull/1195 +* https://github.com/tethysplatform/tethys/pull/1178 -New Logo -........ +See: :ref:`recipes` -* The new logo design that is on the `Tethys Platform `_ website is now in the default configuration of the Tethys Portal. +Automated PyPI Package Uploads +------------------------------ -Single App Mode -............... +* https://github.com/tethysplatform/tethys/pull/1193 -* Tethys can now be used to deploy just a single app by setting the new `MULTIPLE_APP_MODE` setting to `False`. +See: TODO -See: :ref:`tethys_portal_config_settings` +Container Scanning +------------------ -Paths API -......... +* https://github.com/tethysplatform/tethys/pull/1197 -* The new Paths API replaces the Workspaces API (which will still be supported until version 5.0) and provides access to the new Media directories and the App Resources directory. It also makes better use of the Python `pathlib` library. +See: TODO -See: :ref:`tethys_paths_api` +Clear Option for Collectstatic +------------------------------ -Async Support for the Jobs Table Gizmo -...................................... +* `Clear static files and recollect on every start-up `_ -* Jobs Table actions callbacks are now asynchronous enabling them to run without blocking the webserver. Custom actions can also be `async`. +See: TODO -See: :ref:`jobs-table` +Bug Fixes +--------- -For a full list of changes in version 4.3 refer to ``_ +* `Component App fixes `_ +* `SINGLE_APP_MODE Url Fix with React App `_ +* `Fix Conda Deprecation for failing tests: conda.cli.python_api -> conda.testing.conda_cli `_ +* `Quotas bug fix `_ +* `Scaffold fixes `_ Prior Release Notes =================== diff --git a/docs/whats_new/prior_releases.rst b/docs/whats_new/prior_releases.rst index c80998700..310da2c9a 100644 --- a/docs/whats_new/prior_releases.rst +++ b/docs/whats_new/prior_releases.rst @@ -7,6 +7,45 @@ Prior Release Notes Information about prior releases is shown here. +Release 4.3 +=========== + +Django 4/5 Support +------------------ + +* Tethys Platform 4.3 is compatible with Django versions 4.2 - 5.x. It is now recommended to explicitly specify the version of Django that you want when you create your tethys environment. + +See: :ref:`development_installation` + +New Logo +-------- + +* The new logo design that is on the `Tethys Platform `_ website is now in the default configuration of the Tethys Portal. + +Single App Mode +--------------- + +* Tethys can now be used to deploy just a single app by setting the new `MULTIPLE_APP_MODE` setting to `False`. + +See: :ref:`tethys_portal_config_settings` + +Paths API +--------- + +* The new Paths API replaces the Workspaces API (which will still be supported until version 5.0) and provides access to the new Media directories and the App Resources directory. It also makes better use of the Python `pathlib` library. + +See: :ref:`tethys_paths_api` + +Async Support for the Jobs Table Gizmo +-------------------------------------- + +* Jobs Table actions callbacks are now asynchronous enabling them to run without blocking the webserver. Custom actions can also be `async`. + +See: :ref:`jobs-table` + +For a full list of changes in version 4.3 refer to ``_ + + Release 4.2 =========== From c3fccb516e1c475a2991c9b1a0f16c1d558889f4 Mon Sep 17 00:00:00 2001 From: Nathan Date: Mon, 17 Nov 2025 16:58:59 -0700 Subject: [PATCH 2/4] Filled out the whats new for Tethys 4.4 --- docs/whats_new.rst | 52 +++++++++++++++++++++++++++++++--------------- 1 file changed, 35 insertions(+), 17 deletions(-) diff --git a/docs/whats_new.rst b/docs/whats_new.rst index 7f00f79b2..267571c19 100644 --- a/docs/whats_new.rst +++ b/docs/whats_new.rst @@ -4,18 +4,19 @@ What's New ********** -**Last Updated:** October 2025 +**Last Updated:** November 2025 Refer to this article for information about each new release of Tethys Platform. Release |version| ================= -Drop Django 3.2 ---------------- +Django 3.2 Support Dropped +-------------------------- * Tethys Platform has dropped support for Django 3.2 due to its end-of-life status. * Users are encouraged to upgrade to Django 4.2 or later to take advantage of the latest features and security updates. +* Tethys Platform has been compatible with Django 4.2 and Django 5.x since version 4.3 allowing you to migrate before updating to Tethys Platform 4.4. See: :ref:`development_installation` and `PR 1202 `_ @@ -29,54 +30,71 @@ See: :ref:`tethys_components` Scaffold Apps Graphically ------------------------- -* https://github.com/tethysplatform/tethys/pull/1180 +* Tethys Portal features an option to scaffold and import apps graphically. +* This feature is currently only supported for admin/staff users in development mode (i.e. DEBUG=True). See: :ref:`scaffold_an_app_via_the_portal` -Cookie Consent --------------- +Cookie Privacy Consent +---------------------- -* https://github.com/tethysplatform/tethys/pull/1199 +* Tethys Portal now supports an optional cookie privacy consent management using the `django-cookie-consent `_ library. +* When enabled, end users will be presented with a cookie consent banner upon their first visit to the portal. +* App developers can add a new cookies.yaml file to their apps to declare and categorize cookies used by their apps. See: :ref:`cookie_consent` +Paths API CLI +-------------- + +* Tethys Platform now includes a new CLI for the Paths API, allowing for easier management and interaction with paths in Tethys apps. +* Use the Paths CLI to find the location of the various workspaces and media directories associated with Tethys apps. +* Add files to app and user workspaces and media directories directly from the command line. + Recipes ------- -* https://github.com/tethysplatform/tethys/pull/1195 -* https://github.com/tethysplatform/tethys/pull/1178 +* Introducing Recipes--a new documentation tool featuring condensed, step-by-step guides for common Tethys Platform tasks. +* Recipes are designed to help both new and experienced users quickly find and implement solutions for various Tethys Platform functionalities. +* Recipes are reference guides that complement the more detailed tutorials and reference documentation. +* More recipes will be added over time. See: :ref:`recipes` Automated PyPI Package Uploads ------------------------------ -* https://github.com/tethysplatform/tethys/pull/1193 +* Tethys Platform now features automated uploads to PyPI for new releases. +* This enables support for installing Tethys Platform with pip and other PyPI-based package managers. -See: TODO +See: The "Pip" tab on :ref:`quick_start` and :ref:`getting_started_install_tethys` Container Scanning ------------------ -* https://github.com/tethysplatform/tethys/pull/1197 +* Tethys Platform Docker images are now automatically scanned for vulnerabilities. +* Many vulnerabilities have been identified and resolved in the official Docker images starting with version 4.4. +* For the most secure image, use images for the latest versions of Python and Django that are supported by Tethys Platform. -See: TODO +See: `PR 1197 `_ Clear Option for Collectstatic ------------------------------ +* A new option has been added to the `tethys manage collectstatic` command to clear existing static files before collecting new ones. +* A new `STATIC_ROOT_CLEAR` environment variable (default "True") has been added to the Docker image to enable static files reset on every start-up. +* This prevents stale static files persisting across deployments when the static files are stored in a persistent volume. -* `Clear static files and recollect on every start-up `_ - -See: TODO +See: :ref:`tethys_manage_cmd` and `PR 1188 `_ Bug Fixes --------- * `Component App fixes `_ * `SINGLE_APP_MODE Url Fix with React App `_ -* `Fix Conda Deprecation for failing tests: conda.cli.python_api -> conda.testing.conda_cli `_ +* `Fix Conda deprecated API: conda.cli.python_api -> conda.testing.conda_cli `_ * `Quotas bug fix `_ * `Scaffold fixes `_ +* `Updated MFA Admin placeholder name `_ Prior Release Notes =================== From 47f36ac815d062fb25640437fe5a3cf4dbd40c14 Mon Sep 17 00:00:00 2001 From: Nathan Date: Mon, 17 Nov 2025 17:14:04 -0700 Subject: [PATCH 3/4] fix reference to quickstart --- docs/whats_new.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/whats_new.rst b/docs/whats_new.rst index 267571c19..d5088c7cc 100644 --- a/docs/whats_new.rst +++ b/docs/whats_new.rst @@ -67,7 +67,7 @@ Automated PyPI Package Uploads * Tethys Platform now features automated uploads to PyPI for new releases. * This enables support for installing Tethys Platform with pip and other PyPI-based package managers. -See: The "Pip" tab on :ref:`quick_start` and :ref:`getting_started_install_tethys` +See: The "Pip" tab on :ref:`quickstart` and :ref:`getting_started_install_tethys` Container Scanning ------------------ From 1618861a38312a935bc40c359acce4f4830cf983 Mon Sep 17 00:00:00 2001 From: Nathan Date: Tue, 18 Nov 2025 08:59:58 -0700 Subject: [PATCH 4/4] Rebase and add refs for paths cli --- docs/tethys_sdk/paths.rst | 2 ++ docs/whats_new.rst | 2 ++ 2 files changed, 4 insertions(+) diff --git a/docs/tethys_sdk/paths.rst b/docs/tethys_sdk/paths.rst index f12198622..5a2d07bc5 100644 --- a/docs/tethys_sdk/paths.rst +++ b/docs/tethys_sdk/paths.rst @@ -236,6 +236,8 @@ For the ``workspace`` and ``media`` paths the location of the paths from all app The ``public`` and the ``resources`` directories are relative to the source code of the app (i.e. not centralized). Even when the ``collectstatic`` command is used to copy all static files to a central location the :ref:`tethys_paths_api` will return the the public directory that is relative to the app source code. +.. _tethys_paths_cli: + Command Line Interface ========================== The Paths API can be accessed through the command line interface (CLI) using the ``paths`` command. This command provides a way to list paths for specific apps or users and add files to those destinations. diff --git a/docs/whats_new.rst b/docs/whats_new.rst index d5088c7cc..116a1c624 100644 --- a/docs/whats_new.rst +++ b/docs/whats_new.rst @@ -51,6 +51,8 @@ Paths API CLI * Use the Paths CLI to find the location of the various workspaces and media directories associated with Tethys apps. * Add files to app and user workspaces and media directories directly from the command line. +See: :ref:`paths_cmd` and :ref:`tethys_paths_cli` + Recipes -------