diff --git a/.github/actions/python-environment/action.yml b/.github/actions/python-environment/action.yml index bcda2582d..b8a5db9ed 100644 --- a/.github/actions/python-environment/action.yml +++ b/.github/actions/python-environment/action.yml @@ -73,7 +73,6 @@ runs: key: poetry-env-${{ steps.setup-cache-variables.outputs.POETRY_SHA }}-${{ steps.setup-cache-variables.outputs.IMAGE_OS }}-${{ steps.setup-cache-variables.outputs.IMAGE_VERSION }}-${{ runner.arch }}-${{ inputs.poetry-version }}-${{ inputs.python-version }}-${{ inputs.extras }} - name: Poetry install with extras - if: inputs.use-cache != 'true' || steps.cache-poetry-env.outputs.cache-hit != 'true' working-directory: ${{ inputs.working-directory }} shell: bash run: | diff --git a/.github/actions/security-issues/action.yml b/.github/actions/security-issues/action.yml index 478078c2b..66f002494 100644 --- a/.github/actions/security-issues/action.yml +++ b/.github/actions/security-issues/action.yml @@ -39,7 +39,7 @@ runs: - name: Install Python Toolbox / Security tool shell: bash run: | - pip install exasol-toolbox==1.9.0 + pip install exasol-toolbox==1.10.0 - name: Create Security Issue Report shell: bash diff --git a/doc/changes/changelog.md b/doc/changes/changelog.md index bac0c3576..15bad9e54 100644 --- a/doc/changes/changelog.md +++ b/doc/changes/changelog.md @@ -1,6 +1,7 @@ # Changelog * [unreleased](unreleased.md) +* [1.10.0](changes_1.10.0.md) * [1.9.0](changes_1.9.0.md) * [1.8.0](changes_1.8.0.md) * [1.7.4](changes_1.7.4.md) @@ -46,6 +47,7 @@ hidden: --- unreleased +changes_1.10.0 changes_1.9.0 changes_1.8.0 changes_1.7.4 diff --git a/doc/changes/changes_1.10.0.md b/doc/changes/changes_1.10.0.md new file mode 100644 index 000000000..ceedd92da --- /dev/null +++ b/doc/changes/changes_1.10.0.md @@ -0,0 +1,45 @@ +# 1.10.0 - 2025-10-10 +New `BasConfig` 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. + +```python +# 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` diff --git a/doc/changes/unreleased.md b/doc/changes/unreleased.md index f1bbd8fcc..79e701b84 100644 --- a/doc/changes/unreleased.md +++ b/doc/changes/unreleased.md @@ -1,31 +1 @@ # Unreleased - -## 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. - -```python -# 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 diff --git a/doc/user_guide/features/metrics/collecting_metrics.rst b/doc/user_guide/features/metrics/collecting_metrics.rst index b133a8ffa..179efc3ac 100644 --- a/doc/user_guide/features/metrics/collecting_metrics.rst +++ b/doc/user_guide/features/metrics/collecting_metrics.rst @@ -56,7 +56,7 @@ into a report: #. SonarQube analysis This summarization tool feeds into a feature-rich UI provided by - `Sonar `__. For further + `Sonar `__. For further details, see :ref:`sonarqube_analysis` Both of these reporting options require that the generated files from the :ref:`generated_metrics` diff --git a/doc/user_guide/features/metrics/sonar.rst b/doc/user_guide/features/metrics/sonar.rst index a48e4a337..696353a8a 100644 --- a/doc/user_guide/features/metrics/sonar.rst +++ b/doc/user_guide/features/metrics/sonar.rst @@ -3,7 +3,7 @@ SonarQube analysis ================== -The PTB supports using `SonarQube Cloud `__ +The PTB supports using `SonarQube Cloud `__ to analyze, visualize, & track linting, security, & coverage. All of our Python projects should be evaluated against the `Exasol Way`_ and subscribe to the `Clean as You Code `__ diff --git a/exasol/toolbox/version.py b/exasol/toolbox/version.py index b641d5ebc..224c32b60 100644 --- a/exasol/toolbox/version.py +++ b/exasol/toolbox/version.py @@ -9,7 +9,7 @@ """ MAJOR = 1 -MINOR = 9 +MINOR = 10 PATCH = 0 VERSION = f"{MAJOR}.{MINOR}.{PATCH}" __version__ = VERSION diff --git a/pyproject.toml b/pyproject.toml index a6bfef8e9..5884f3fb2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "exasol-toolbox" -version = "1.9.0" +version = "1.10.0" requires-python = ">=3.9,<4.0" description = "Your one-stop solution for managing all standard tasks and core workflows of your Python project." authors = [