Skip to content

Releases: exasol/python-toolbox

1.10.0

10 Oct 12:12
cca9bd2

Choose a tag to compare

1.10.0 - 2025-10-10

New BaseConfig class and improved Setup Python Github Action.

BaseConfig class for PTB attributes

The BaseConfig class was introduced in this version. This class is used to consolidate
the attributes needed for the PTB's functionalities into an inherited object which can
be expanded upon as needed. At this point, the BaseConfig class includes
python_versions, exasol_versions, and create_major_version_tags. Users of
the PTB should update their noxconfig.py to start using this feature.

# noxconfig.py
from exasol.toolbox.config import BaseConfig


# existing Config should inherit from BaseConfig
class Config(BaseConfig):
    # if present, remove any attributes already in the BaseConfig from the added attributes
    ...


# if no overlapping attributes with `BaseConfig` were present in `Config`, then this is unmodified.
PROJECT_CONFIG = Config()
# if no overlapping attributes with `BaseConfig` were present in `Config`, then this should be modified.
PROJECT_CONFIG = Config(python_versions=(...), exasol_versions=(...), create_major_version_tags=True)

Feature

  • #465: Created BaseConfig class to better synchronize attributes needed for the PTB's
    growing functionalities

Internal:

  • Call poetry install always in setup python actions

Dependency Updates

main

  • Updated dependency coverage:7.10.3 to 7.10.6
  • Updated dependency import-linter:2.3 to 2.4
  • Updated dependency shibuya:2025.7.24 to 2025.8.16
  • Added dependency sphinx-toolbox:4.0.0
  • Updated dependency typer:0.16.0 to 0.17.3

1.9.0

28 Aug 12:50
9c3a592

Choose a tag to compare

1.9.0 - 2025-08-28

This release fixes stability problems with the Github action python-environment. Optionally, the nox task release:trigger now creates an additional tag with pattern v<MajorVersion>.

Refactorings

  • #530: Nox task release:trigger also creates v* tag
  • #553: Use Local copy of poetry installer in Github actions python-environment

1.8.0

14 Aug 07:28
08c6536

Choose a tag to compare

1.8.0 - 2025-08-14

With the refactoring of the dependency:audit, we use poetry export. For how it can
be added (project-specific or globally), see the
poetry export documentation.

Within the report.yml, the actions/download-artifact@v4.2.1 was upgraded to
v5.0.0. This upgrade should not affect the existing functionality of the standard
GitHub workflows from the PTB. However, there are breaking changes that affect cases
where artifacts are downloaded by ID. For further details, please see the
release notes for 5.0.0.

Feature

  • #469: Moved manual approval for slow tests to merge-gate.yml

Refactoring

  • #517: Refactored dependency:audit & split up to support upcoming work
  • #541: Refactored test code using prysk and removed prysk as a dependency

Bugfix

  • #533: Fixed project-template tests to run with unreleased PTB to better detect issues pre-release

Dependency Updates

main

  • Updated dependency coverage:7.10.1 to 7.10.3
  • Updated dependency mypy:1.17.0 to 1.17.1
  • Updated dependency pre-commit:4.2.0 to 4.3.0
  • Removed dependency prysk:0.20.0
  • Updated dependency pylint:3.3.7 to 3.3.8
  • Updated dependency pytest:7.4.4 to 8.4.1

1.7.4

06 Aug 10:49
31b1ad7

Choose a tag to compare

1.7.4 - 2025-08-06

This release fixes a bug in the GH action actions/python-environment where the wrong Python version was installed in the Poetry environment.

Bugfixes

  • #527: Use correct Python version in actions/python-environment

1.7.3

04 Aug 16:02
997be54

Choose a tag to compare

1.7.3 - 2025-08-04

Bugfixes

  • #523: Fixed pipx installation for older versions of pip

1.7.2

31 Jul 12:45
34fc607

Choose a tag to compare

1.7.2 - 2025-07-31

Summary

GPU runners throughout our various Python repositories were breaking due to underlying
changes in the runners. This affected the usage of the python-environment/action,
and it could be resolved by adding --break-system-packages to the pip install
command. The behavior then is to default to the user installation, which avoids
the global issues the GPU runners were running into.

Bugfix

  • Modified pip install statement to include --break-system-packages

1.7.1

30 Jul 11:49
f1d5746

Choose a tag to compare

1.7.1 - 2025-07-30

Documentation

  • #512: Consolidated and added to deploying documentation pages
  • #510: Consolidated information of metrics & updated to include more about Sonar

Bugfix

  • #514: Altered docstring in version.py to pass autosummary

1.7.0

28 Jul 15:00
46801d8

Choose a tag to compare

1.7.0 - 2025-07-28

Summary

This version of the PTB alters the nox session release:prepare to include direct dependency changes between the current and latest tag (based on the poetry.lock files).
This benefits developers by automating the cumbersome process of determining what changed between tags, and it does so
in a deterministic and consistent way. If there are dependency changes, then they will be rendered
as:

## Dependency Updates

### `main`
* Updated dependency `package_1:0.0.1` to `0.1.0`

### `dev`
* Added dependency `package_2:0.2.0`

Documentation

  • #504: Removed Issue Tracking & Style Guides, moved & updated "Create a release", moved & updated "Collecting metrics"

Feature

  • #382: Added onto nox session release:prepare to append dependency changes between current and latest tag

Refactoring

  • #498: Centralized changelog code relevant for release:trigger & robustly tested

Dependency Updates

main

  • Updated dependency furo:2024.8.6 to 2025.7.19
  • Updated dependency mypy:1.16.1 to 1.17.0
  • Updated dependency shibuya:2025.5.30 to 2025.7.14

1.6.1

16 Jul 09:12
d8a216b

Choose a tag to compare

1.6.1 - 2025-07-16

Summary

This version of the PTB resolves many bugs associated with the cookiecutter template
and creating a new project that uses the PTB.

If any directories or files specified in your noxconfig.py via Config.source should
not be included in a Sonar analysis, it is recommended to add the following to
your pyproject.toml under the [tool.sonar] section:

exclusions = "<source-directory>/version.py,<source_directory>/<directory-to-ignore>/*"

Bugfixes

  • #489: Fixed .pre-commit-config.yaml to use existing nox tasks
  • #490: Fixed artifacts:validate & sonar:check to work for newly created projects
  • #484: Fixed hint command text in version.py to include -s for executing nox task

Documentation

  • #488: Updated user guide to make clearer under which conditions branch protections based on GitHub actions can be enacted

Refactoring

  • #482: Updated pull_request_template.md to reflect checks we should regularly perform

1.6.0

27 Jun 08:38
74e5352

Choose a tag to compare

1.6.0 - 2025-06-27

Summary

Links in the Documentation

This version of the PTB adds nox tasks to check links present in our documentation:

links:list - List all the links within the documentation
links:check - Checks whether all links in the documentation are accessible

links:check is run in the CI checks.yml. If this step fails in the CI, it will cause
the build to break. Please check the output & manually resolve the issues. There might
be some cases where you need to update your doc/conf.py with specific values for the allowed
options for the Linkcheck Builder.

We recommend the following values be added:

linkcheck_rate_limit_timeout = 60
linkcheck_timeout = 15
linkcheck_delay = 30
linkcheck_retries = 2
linkcheck_anchors = False
linkcheck_ignore: list[str] = []
linkcheck_allowed_redirects = {
    # All HTTP redirections from the source URI to
    # the canonical URI will be treated as "working".
    r"https://github\.com/.*": r"https://github\.com/login*"
}

✨ Features

  • #409: Doc link & checks

Refactoring

  • Switched deprecated Pydantic class-based config to ConfigDict

Security

  • #477: Switched sonar:check to use SONAR_TOKEN from the environment