Skip to content

Commit

Permalink
Write What's New for Tethys 3.3.0 Release (#683)
Browse files Browse the repository at this point in the history
* Write What's New for Tethys 3.3.0 Release

* Update docs/whats_new.rst

Co-authored-by: sdc50 <[email protected]>

Co-authored-by: sdc50 <[email protected]>
  • Loading branch information
swainn and sdc50 authored Apr 16, 2021
1 parent ad4d82b commit cabdbfb
Show file tree
Hide file tree
Showing 4 changed files with 131 additions and 43 deletions.
2 changes: 2 additions & 0 deletions docs/tethys_portal/tethys_users.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _tethys_user_pages:

************
Tethys Users
************
Expand Down
5 changes: 5 additions & 0 deletions docs/tethys_sdk/app_class.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _app_base_class_api:

******************
App Base Class API
******************
Expand Down Expand Up @@ -49,6 +51,9 @@ Class Methods
.. automethod:: tethys_apps.base.TethysAppBase.get_custom_setting
:noindex:

.. automethod:: tethys_apps.base.TethysAppBase.set_custom_setting
:noindex:

.. automethod:: tethys_apps.base.TethysAppBase.get_persistent_store_connection
:noindex:

Expand Down
96 changes: 53 additions & 43 deletions docs/whats_new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,80 +4,90 @@
What's New
**********

**Last Updated:** November 2020
**Last Updated:** April 2021

Refer to this article for information about each new release of Tethys Platform.

Release |version|
==================

Multi-Factor Authentication
===========================
Select Input Gizmo
==================

* Add ``id`` attribute to the ``form-group`` of the ``SelectInput`` gizmo to allow it to be selected in custom JavaScript.

See: `Pull Request 616 <https://github.com/tethysplatform/tethys/pull/616>`_

* Implemented Multi Factor Authentication via the `Django MFA2 app <https://pypi.org/project/django-mfa2/>`_.
* Time-based One Time Password (TOTP) method is enabled by default, but users must opt-in.
* Added MFA settings to User Profile Pages
* The Email OTP method has also been tested extensively and verified to work.
* Other methods have not been tested.
Cesium Map View Gizmo
=====================

See: :ref:`multi_factor_auth_config`
* Add support for time-enabled layers for CesiumMapView gizmo via the ``MVLayer`` specification.
* This is done by listing timesteps corresponding the times of a time-enabled WMD layer via the ``times`` parameter of ``MVLayer``.
* Note: time-enabled layers are not supported in MapView gizmo yet.

Additional Single Sign-On Backends
==================================
See: :ref:`gizmo_mvlayer`

* Added four new officially supported Single Sign-On/Social Authentication Methods.
* Renamed Documentation for "Social Authentication" to the more general "Single Sign On".
* New methods include: :ref:`social_auth_azuread`, :ref:`social_adfs`, :ref:`social_auth_onelogin`, and :ref:`social_auth_okta`.
Single Sign On
==============

* Single Sign On / Social Login via ArcGIS Online / Enterprise Portal now supported. See: :ref:`social_auth_arcgis`.
* Add clarification and fix typos in documentation for OneLogin SSO. See: :ref:`social_auth_onelogin`.

See: :ref:`single_sign_on_config`

Automatic Lockout
=================
Multi-Tenant SSO
================

* Tethys Portal can now be configured to automatically lockout users after multiple failed login attempts.
* This feature is opt-in.
* Implemented Multi-Tenant SSO support for providers that support it.
* Allows Tethys Portals to use authentication from different tenants of the same authentication service.
* When enabled, users are prompted to provide the name of their tenant/organization before being redirected to login page for that provider.
* Supported providers include: OneLogin, Okta, Azure AD, and Microsoft ADFS.

See: :ref:`advanced_config_lockout`
See: :ref:`multi_tenant_sso_config`

User Profile and Settings
=========================

Jobs Table
==========
* Removed the username from the URL pattern for User Profile and Settings pages to address security concern.
* Viewing other user's profiles is no longer possible.
* The profile and settings pages only display profile and settings for the logged-in user.

* The Status and Actions Columns have been revamped to simplify the Jobs Table.
* All action buttons (Delete, Resubmit, View Logs, etc.) have been moved into a drop down menu in the actions column.
* Simple versions of each status are now shown for single-status jobs instead of a filled progress bar.
* The progress bar is still used to show the status of multiple-status jobs (i.e. workflows).
* Several arguments for the Jobs Table are now deprecated in favor of a simpler method.
* Gizmo Showcase was updated for the Jobs Table.
See: :ref:`tethys_user_pages`

See: :ref:`jobs-table`
Password Reset
==============

Cesium Map View
===============
* Changes configuration for Password Reset feature of Tethys Portal to be the same as the configuration for MFA email support.
* This allows the emails sent by the Password Reset and MFA features to be sent from the same email address and alias.

* Added support for ENV and VIEWPARAMS when using MVLayer with Cesium Map View.
See: :ref:`setup_email_capabilities`

See: :ref:`cesium-map-view`
Tethys App Settings
===================

jQuery
======
* Added ``set_custom_setting method`` to ``TethysAppBase`` to allow setting ``CustomSettings`` programmatically.
* Added a UUID type to ``CustomSetting`` model.
* UUID type can take ``uuid`` instances or strings.

* Updated jQuery to 3.5.1 to address known vulnerability in previous version.
See: :ref:`app_base_class_api`

Documentation
-------------
Tethys App Admin Settings
=========================

* Added documentation that describes how to configure Tethys Platform to use REDIS as a Channels backend for production.
* Adds ``color`` parameter to the App Settings admin page to allow portal admins to change app color.

See: :ref:`production_channels_config` and :ref:`production_official_docker`
See: `Issue 656 <https://github.com/tethysplatform/tethys/issues/656>`_

Bug Fixes
=========

* Fixed an issue with the tethys command line interface not working on systems without Docker installed.
* Fixed issue with Add User admin page that would prevent adding additional users after the first user was added.
* Modified the Condor Scheduler admin pages to use the PasswordInput field for the password fields.
* Updated the default ASGI configuration file so that it can be killed properly by supervisor when stopped.
* Resolves issue with default Gravatar image not displaying for users who haven't defined an email address. See: `Issue 637 <https://github.com/tethysplatform/tethys/issues/637>`_.
* Fixes an issue where renaming an installed app in the admin pages would cause the app throw 500 errors and no longer be accessible. See: `Issue 653 <https://github.com/tethysplatform/tethys/issues/653>`_.
* Removed EXIF, IPTC, and XMP metadata from all Tethys Portal images to address metadata leakage security concern. See: `Issue 630 <https://github.com/tethysplatform/tethys/issues/630>`_.
* Resolves various issues with JobsTable gizmo: dates not being parsed correctly, set job status to error if exception raised during call to ``execute()``, label could not be set when retrieving jobs through job manager. See: `Issue 641 <https://github.com/tethysplatform/tethys/issues/641>`_.
* Fixes issue where a user's API token was not visible when MFA was enabled and `MFA_REQUIRED` was `False`. See: `Issue 626 <https://github.com/tethysplatform/tethys/issues/626>`_
* Move ``TethysJob`` model import out of module scope in ``JobsTable`` gizmo to prevent import issues. See: `Pull Request 618 <https://github.com/tethysplatform/tethys/pull/618>`_.
* Pin Django Channels dependency to 2.* to prevent accidental upgrades to 3.*, which breaks Tethys. See: `Pull Request 680 <https://github.com/tethysplatform/tethys/pull/680>`_

Prior Release Notes
===================
Expand Down
71 changes: 71 additions & 0 deletions docs/whats_new/prior_releases.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,77 @@ Prior Release Notes

Information about prior releases is shown here.

Release 3.2
===========

Multi-Factor Authentication
===========================

* Implemented Multi Factor Authentication via the `Django MFA2 app <https://pypi.org/project/django-mfa2/>`_.
* Time-based One Time Password (TOTP) method is enabled by default, but users must opt-in.
* Added MFA settings to User Profile Pages
* The Email OTP method has also been tested extensively and verified to work.
* Other methods have not been tested.

See: :ref:`multi_factor_auth_config`

Additional Single Sign-On Backends
==================================

* Added four new officially supported Single Sign-On/Social Authentication Methods.
* Renamed Documentation for "Social Authentication" to the more general "Single Sign On".
* New methods include: :ref:`social_auth_azuread`, :ref:`social_adfs`, :ref:`social_auth_onelogin`, and :ref:`social_auth_okta`.

See: :ref:`single_sign_on_config`

Automatic Lockout
=================

* Tethys Portal can now be configured to automatically lockout users after multiple failed login attempts.
* This feature is opt-in.

See: :ref:`advanced_config_lockout`


Jobs Table
==========

* The Status and Actions Columns have been revamped to simplify the Jobs Table.
* All action buttons (Delete, Resubmit, View Logs, etc.) have been moved into a drop down menu in the actions column.
* Simple versions of each status are now shown for single-status jobs instead of a filled progress bar.
* The progress bar is still used to show the status of multiple-status jobs (i.e. workflows).
* Several arguments for the Jobs Table are now deprecated in favor of a simpler method.
* Gizmo Showcase was updated for the Jobs Table.

See: :ref:`jobs-table`

Cesium Map View
===============

* Added support for ENV and VIEWPARAMS when using MVLayer with Cesium Map View.

See: :ref:`cesium-map-view`

jQuery
======

* Updated jQuery to 3.5.1 to address known vulnerability in previous version.

Documentation
-------------

* Added documentation that describes how to configure Tethys Platform to use REDIS as a Channels backend for production.

See: :ref:`production_channels_config` and :ref:`production_official_docker`

Bug Fixes
=========

* Fixed an issue with the tethys command line interface not working on systems without Docker installed.
* Fixed issue with Add User admin page that would prevent adding additional users after the first user was added.
* Modified the Condor Scheduler admin pages to use the PasswordInput field for the password fields.
* Updated the default ASGI configuration file so that it can be killed properly by supervisor when stopped.

Release 3.1
===========

Expand Down

0 comments on commit cabdbfb

Please sign in to comment.