What changed in version 7.0

Upgrading

To upgrade a production system, install the new system in a new virtualenv, then migrate your database:

reahl migratedb etc

Licensing changes

We’re excited to announce a significant change in our project’s licensing terms. In the past, some components of Reahl were LGPL licensed and others were AGPL licensed. In response to your feedback, we are transitioning the remaining AGPL Reahl components to the GNU Lesser General Public License (LGPL).

Final move to PEP 621

Since version 6.0 Reahl projects were defined in a setup.cfg file.

In order to stay breast of changes in the Python packaging infrastructure this version requires a project to be defined in a standard PEP 621 pyproject.toml file instead.

See Configuring your component via pyproject.toml.

Migrating your setup.cfg to pyproject.toml

  1. Ensure that in [build-system] you include in requires at least: - setuptools >= 68 - toml - reahl-component-metadata >= 7.0.0

  2. As before, use setuptools as build backend:: build-backend = “setuptools.build_meta”

  3. For everything configured in the ‘component =’ option, add the appropriate configuration as per Configuring your component via pyproject.toml.

  4. Similarly, translate the rest of your setup.cfg config to pyproject.toml as per the setuptools documentation.

Removal of deprecated functionality

Everything deprecated before this version is removed in version 7.0.

The major such deprecations worth mentioning are: - The use of ExposedNames instead of the old @exposed. - The use of ExecutionContext as context manager. - Implementing ExecutionContext by means of Contextvars only (previously this could be configured).

Bug fixes

  • Fixes to documentation (#403).

  • Fixed incorrect packaging of examples (#406).

  • Fixed breaking migration (#407).

Updated dependencies

Some dependencies on thirdparty python packages have been loosened to include a higher max version:

  • Babel between 2.1 and 2.12

  • wrapt between 1.11.0 and 1.15

  • Pygments between 2.13 and 2.16

  • tzlocal between 2.0 and 5.0

  • plotly between 5.1.0 and 5.16

  • docutils between 0.14 and 0.20

  • alembic between 0.9.6 and 1.12

  • beautifulsoup4 between 4.6 and 4.12

  • watchdog between 0.8.3 and 3.0

The dependency on SqlAlchemy has been updated to support 1.4 up to and including 2.0.

Some javascript dependencies were updated to newer versions:

  • Jquery to 3.7.1

  • js-cookie to 3.0.5

  • plotlyjs to 2.26.0