Tags: ansible/molecule
Tags
chore(deps): update pep621 (#4627) This PR contains the following updates: | Update | Change | |---|---| | lockFileMaintenance | All locks refreshed | 🔧 This Pull Request updates lock files to use the latest dependency versions. --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on monday" in timezone UTC, Automerge - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) in timezone UTC. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/ansible/molecule). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDIuMTEiLCJ1cGRhdGVkSW5WZXIiOiI0My4xMDIuMTEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImNob3JlIiwiZGVwZW5kZW5jaWVzIiwicGVwNjIxIl19--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
fix: validate subcommand name before dynamic import (#4620) Validation for subcommand names in `execute_subcommand` ensures that only alphanumeric characters and underscores are processed. While checking the command execution flow, I noticed that `import_module` was receiving values directly from the scenario configuration without sanitization. This change prevents potential unintended module loading attempts through special characters or path traversal sequences in the subcommand string. Existing tests for command execution remain unchanged, and I added a new test case to verify that invalid subcommand names are correctly rejected with a `MoleculeError`. Verified the changes locally with `ruff` to ensure compliance with the project's linting standards.
chore: Add check for platform versions (#4584) This pull request introduces several updates to platform compatibility management and dependency constraints, as well as minor configuration changes. The most significant changes are the addition of explicit package version rules for Renovate, updates to dependency versions, and the inclusion of a new pre-commit hook for platform constraint checking. **Platform compatibility and dependency management:** * Added explicit `packageRules` in `renovate.json` to restrict versions of key dependencies (e.g., `ansible-core`, `cffi`, `django`, `importlib-metadata`, `jsonschema`, `packaging`, `pyyaml`, `python-gnupg`, `setuptools`) for platform compatibility. * Updated the `packaging` dependency version in `pyproject.toml` to require at least `23.2` instead of `25.0`, aligning with the new Renovate constraint. **Pre-commit and configuration updates:** * Added a new pre-commit hook `check-platform-constraints` from `ansible/team-devtools` to enforce platform compatibility during development. **Minor dictionary and housekeeping updates:** * Removed the word `levelname` from `.config/dictionary.txt` to clean up the custom dictionary. --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
chore(deps): update all dependencies (#4576) This PR contains the following updates: | Package | Change | Age | Confidence | Type | Update | Pending | |---|---|---|---|---|---|---| | [ansible-compat](https://redirect.github.com/ansible/ansible-compat) ([changelog](https://redirect.github.com/ansible/ansible-compat/releases)) | `25.8.2` -> `25.11.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | project.dependencies | minor | | | [ansible-lint](https://redirect.github.com/ansible/ansible-lint) ([changelog](https://redirect.github.com/ansible/ansible-lint/releases)) | `25.9.2` -> `25.11.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | minor | | | [ansible-navigator](https://redirect.github.com/ansible/ansible-navigator) ([changelog](https://redirect.github.com/ansible/ansible-navigator/releases)) | `25.9.0` -> `25.11.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | minor | | | [ansible/ansible-lint](https://redirect.github.com/ansible/ansible-lint) | `v25.9.2` -> `v25.11.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | minor | | | [astral-sh/ruff-pre-commit](https://redirect.github.com/astral-sh/ruff-pre-commit) | `v0.14.4` -> `v0.14.5` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [astral-sh/uv-pre-commit](https://redirect.github.com/astral-sh/uv-pre-commit) | `0.9.8` -> `0.9.10` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [biomejs/pre-commit](https://redirect.github.com/biomejs/pre-commit) | `v2.3.4` -> `v2.3.6` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [click](https://redirect.github.com/pallets/click) ([changelog](https://click.palletsprojects.com/page/changes/)) | `8.3.0` -> `8.3.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | project.dependencies | patch | | | [pycqa/pylint](https://redirect.github.com/pycqa/pylint) | `v4.0.2` -> `v4.0.3` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [pylint](https://redirect.github.com/pylint-dev/pylint) ([changelog](https://pylint.readthedocs.io/en/latest/whatsnew/3/)) | `4.0.2` -> `4.0.3` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | patch | | | [pytest](https://redirect.github.com/pytest-dev/pytest) ([changelog](https://docs.pytest.org/en/stable/changelog.html)) | `9.0.0` -> `9.0.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | patch | | | [streetsidesoftware/cspell-cli](https://redirect.github.com/streetsidesoftware/cspell-cli) | `v9.2.1` -> `v9.3.3` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | minor | | | [tombi-toml/tombi-pre-commit](https://redirect.github.com/tombi-toml/tombi-pre-commit) | `v0.6.41` -> `v0.6.50` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | `v0.6.52` (+1) | | | All locks refreshed | | | | lockFileMaintenance | | | [ruff](https://docs.astral.sh/ruff) ([source](https://redirect.github.com/astral-sh/ruff), [changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md)) | `0.14.4` -> `0.14.5` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | patch | | | [tox-ansible](https://redirect.github.com/ansible/tox-ansible) ([changelog](https://redirect.github.com/ansible/tox-ansible/releases)) | `25.8.0` -> `25.11.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | minor | | Note: The `pre-commit` manager in Renovate is not supported by the `pre-commit` maintainers or community. Please do not report any problems there, instead [create a Discussion in the Renovate repository](https://redirect.github.com/renovatebot/renovate/discussions/new) if you have any questions. --- ### Release Notes <details> <summary>ansible/ansible-compat (ansible-compat)</summary> ### [`v25.11.0`](https://redirect.github.com/ansible/ansible-compat/releases/tag/v25.11.0) [Compare Source](https://redirect.github.com/ansible/ansible-compat/compare/v25.8.2...v25.11.0) #### Maintenance - chore(deps): update all dependencies ([#​543](https://redirect.github.com/ansible/ansible-compat/issues/543)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​542](https://redirect.github.com/ansible/ansible-compat/issues/542)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​540](https://redirect.github.com/ansible/ansible-compat/issues/540)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​539](https://redirect.github.com/ansible/ansible-compat/issues/539)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - Add finalize workflow for secure sonarcloud checks ([#​538](https://redirect.github.com/ansible/ansible-compat/issues/538)) [@​alisonlhart](https://redirect.github.com/alisonlhart) - Update sonar-project.properties configuration ([#​536](https://redirect.github.com/ansible/ansible-compat/issues/536)) [@​alisonlhart](https://redirect.github.com/alisonlhart) - chore(deps): update all dependencies ([#​537](https://redirect.github.com/ansible/ansible-compat/issues/537)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore: tell uv to use unreleased ansible-core when running with py314 ([#​535](https://redirect.github.com/ansible/ansible-compat/issues/535)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - \[pre-commit.ci] pre-commit autoupdate ([#​534](https://redirect.github.com/ansible/ansible-compat/issues/534)) @​[pre-commit-ci\[bot\]](https://redirect.github.com/apps/pre-commit-ci) </details> <details> <summary>ansible/ansible-lint (ansible-lint)</summary> ### [`v25.11.0`](https://redirect.github.com/ansible/ansible-lint/releases/tag/v25.11.0) [Compare Source](https://redirect.github.com/ansible/ansible-lint/compare/v25.9.2...v25.11.0) ##### Fixes - fix: require ansible-core>=2.17.10 ([#​4835](https://redirect.github.com/ansible/ansible-lint/issues/4835)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - fix: ignore internal types false positives with jinja\[invalid] ([#​4823](https://redirect.github.com/ansible/ansible-lint/issues/4823)) [@​anusshukla](https://redirect.github.com/anusshukla) - fix: make repository key optional in galaxy.yml ([#​4798](https://redirect.github.com/ansible/ansible-lint/issues/4798)) [@​rivv0](https://redirect.github.com/rivv0) - fix: github action ref doesn't checkout that ref ([#​4774](https://redirect.github.com/ansible/ansible-lint/issues/4774)) [@​rohun-apex](https://redirect.github.com/rohun-apex) - fix: add set-environment and unset-environment in executable\_options for systemctl ([#​4785](https://redirect.github.com/ansible/ansible-lint/issues/4785)) [@​ziegenberg](https://redirect.github.com/ziegenberg) - Fix typos ([#​4814](https://redirect.github.com/ansible/ansible-lint/issues/4814)) [@​jsf9k](https://redirect.github.com/jsf9k) ##### Maintenance - chore: pre-commit autoupdate ([#​4834](https://redirect.github.com/ansible/ansible-lint/issues/4834)) @​[pre-commit-ci\[bot\]](https://redirect.github.com/apps/pre-commit-ci) - chore: Test cspell configuration ([#​4828](https://redirect.github.com/ansible/ansible-lint/issues/4828)) [@​alisonlhart](https://redirect.github.com/alisonlhart) - chore(deps): update all dependencies ([#​4817](https://redirect.github.com/ansible/ansible-lint/issues/4817)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - Add finalize workflow for secure sonarcloud checks ([#​4820](https://redirect.github.com/ansible/ansible-lint/issues/4820)) [@​alisonlhart](https://redirect.github.com/alisonlhart) - Update sonar-project.properties ([#​4815](https://redirect.github.com/ansible/ansible-lint/issues/4815)) [@​alisonlhart](https://redirect.github.com/alisonlhart) </details> <details> <summary>ansible/ansible-navigator (ansible-navigator)</summary> ### [`v25.11.0`](https://redirect.github.com/ansible/ansible-navigator/releases/tag/v25.11.0) [Compare Source](https://redirect.github.com/ansible/ansible-navigator/compare/v25.9.0...v25.11.0) #### Fixes - fix: avoid using hub.docker.com ([#​2051](https://redirect.github.com/ansible/ansible-navigator/issues/2051)) [@​ssbarnea](https://redirect.github.com/ssbarnea) #### Maintenance - chore: rename sonar config file ([#​2056](https://redirect.github.com/ansible/ansible-navigator/issues/2056)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - chore(deps): update all dependencies ([#​2060](https://redirect.github.com/ansible/ansible-navigator/issues/2060)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore: use ansible/actions/matrix ([#​2061](https://redirect.github.com/ansible/ansible-navigator/issues/2061)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - \[pre-commit.ci] pre-commit autoupdate ([#​2054](https://redirect.github.com/ansible/ansible-navigator/issues/2054)) @​[pre-commit-ci\[bot\]](https://redirect.github.com/apps/pre-commit-ci) - chore(deps): update all dependencies ([#​2053](https://redirect.github.com/ansible/ansible-navigator/issues/2053)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2052](https://redirect.github.com/ansible/ansible-navigator/issues/2052)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2050](https://redirect.github.com/ansible/ansible-navigator/issues/2050)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2049](https://redirect.github.com/ansible/ansible-navigator/issues/2049)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2048](https://redirect.github.com/ansible/ansible-navigator/issues/2048)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2047](https://redirect.github.com/ansible/ansible-navigator/issues/2047)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2046](https://redirect.github.com/ansible/ansible-navigator/issues/2046)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2045](https://redirect.github.com/ansible/ansible-navigator/issues/2045)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2044](https://redirect.github.com/ansible/ansible-navigator/issues/2044)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2043](https://redirect.github.com/ansible/ansible-navigator/issues/2043)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​2042](https://redirect.github.com/ansible/ansible-navigator/issues/2042)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) </details> <details> <summary>astral-sh/ruff-pre-commit (astral-sh/ruff-pre-commit)</summary> ### [`v0.14.5`](https://redirect.github.com/astral-sh/ruff-pre-commit/releases/tag/v0.14.5) [Compare Source](https://redirect.github.com/astral-sh/ruff-pre-commit/compare/v0.14.4...v0.14.5) See: <https://github.com/astral-sh/ruff/releases/tag/0.14.5> </details> <details> <summary>astral-sh/uv-pre-commit (astral-sh/uv-pre-commit)</summary> ### [`v0.9.10`](https://redirect.github.com/astral-sh/uv-pre-commit/releases/tag/0.9.10) [Compare Source](https://redirect.github.com/astral-sh/uv-pre-commit/compare/0.9.9...0.9.10) See: <https://github.com/astral-sh/uv/releases/tag/0.9.10> ### [`v0.9.9`](https://redirect.github.com/astral-sh/uv-pre-commit/releases/tag/0.9.9) [Compare Source](https://redirect.github.com/astral-sh/uv-pre-commit/compare/0.9.8...0.9.9) See: <https://github.com/astral-sh/uv/releases/tag/0.9.9> </details> <details> <summary>biomejs/pre-commit (biomejs/pre-commit)</summary> ### [`v2.3.6`](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.5...v2.3.6) [Compare Source](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.5...v2.3.6) ### [`v2.3.5`](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.4...v2.3.5) [Compare Source](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.4...v2.3.5) </details> <details> <summary>pallets/click (click)</summary> ### [`v8.3.1`](https://redirect.github.com/pallets/click/blob/HEAD/CHANGES.rst#Version-831) [Compare Source](https://redirect.github.com/pallets/click/compare/8.3.0...8.3.1) Released 2025-11-15 - Don't discard pager arguments by correctly using `subprocess.Popen`. :issue:`3039` :pr:`3055` - Replace `Sentinel.UNSET` default values by `None` as they're passed through the `Context.invoke()` method. :issue:`3066` :issue:`3065` :pr:`3068` - Fix conversion of `Sentinel.UNSET` happening too early, which caused incorrect behavior for multiple parameters using the same name. :issue:`3071` :pr:`3079` - Hide `Sentinel.UNSET` values as `None` when looking up for other parameters through the context inside parameter callbacks. :issue:`3136` :pr:`3137` - Fix rendering when `prompt` and `confirm` parameter `prompt_suffix` is empty. :issue:`3019` :pr:`3021` - When `Sentinel.UNSET` is found during parsing, it will skip calls to `type_cast_value`. :issue:`3069` :pr:`3090` </details> <details> <summary>pycqa/pylint (pycqa/pylint)</summary> ### [`v4.0.3`](https://redirect.github.com/pylint-dev/pylint/releases/tag/v4.0.3) [Compare Source](https://redirect.github.com/pycqa/pylint/compare/v4.0.2...v4.0.3) ## What's new in Pylint 4.0.3? Release date: 2025-11-13 ## False Positives Fixed - Add Enum dunder methods `_generate_next_value_`, `_missing_`, `_numeric_repr_`, `_add_alias_`, and `_add_value_alias_` to the list passed to `--good-dunder-names`. Closes [#​10435](https://redirect.github.com/pycqa/pylint/issues/10435) - Fixed false positive for `invalid-name` with `typing.Annotated`. Closes [#​10696](https://redirect.github.com/pycqa/pylint/issues/10696) - Fix false positive for `f-string-without-interpolation` with template strings when using format spec. Closes [#​10702](https://redirect.github.com/pycqa/pylint/issues/10702) - Fix a false positive when an UPPER\_CASED class attribute was raising an `invalid-name` when typed with `Final`. Closes [#​10711](https://redirect.github.com/pycqa/pylint/issues/10711) - Fix a false positive for `unbalanced-tuple-unpacking` when a tuple is assigned to a function call and the structure of the function's return value is ambiguous. Closes [#​10721](https://redirect.github.com/pycqa/pylint/issues/10721) ## Other Bug Fixes - Make 'ignore' option work as expected again. Closes [#​10669](https://redirect.github.com/pycqa/pylint/issues/10669) - Fix crash for `consider-using-assignment-expr` when a variable annotation without assignment is used as the `if` test expression. Closes [#​10707](https://redirect.github.com/pycqa/pylint/issues/10707) - Fix crash for `prefer-typing-namedtuple` and `consider-math-not-float` when a `slice` object is called. Closes [#​10708](https://redirect.github.com/pycqa/pylint/issues/10708) </details> <details> <summary>pylint-dev/pylint (pylint)</summary> ### [`v4.0.3`](https://redirect.github.com/pylint-dev/pylint/releases/tag/v4.0.3) [Compare Source](https://redirect.github.com/pylint-dev/pylint/compare/v4.0.2...v4.0.3) ## What's new in Pylint 4.0.3? Release date: 2025-11-13 ## False Positives Fixed - Add Enum dunder methods `_generate_next_value_`, `_missing_`, `_numeric_repr_`, `_add_alias_`, and `_add_value_alias_` to the list passed to `--good-dunder-names`. Closes [#​10435](https://redirect.github.com/pylint-dev/pylint/issues/10435) - Fixed false positive for `invalid-name` with `typing.Annotated`. Closes [#​10696](https://redirect.github.com/pylint-dev/pylint/issues/10696) - Fix false positive for `f-string-without-interpolation` with template strings when using format spec. Closes [#​10702](https://redirect.github.com/pylint-dev/pylint/issues/10702) - Fix a false positive when an UPPER\_CASED class attribute was raising an `invalid-name` when typed with `Final`. Closes [#​10711](https://redirect.github.com/pylint-dev/pylint/issues/10711) - Fix a false positive for `unbalanced-tuple-unpacking` when a tuple is assigned to a function call and the structure of the function's return value is ambiguous. Closes [#​10721](https://redirect.github.com/pylint-dev/pylint/issues/10721) ## Other Bug Fixes - Make 'ignore' option work as expected again. Closes [#​10669](https://redirect.github.com/pylint-dev/pylint/issues/10669) - Fix crash for `consider-using-assignment-expr` when a variable annotation without assignment is used as the `if` test expression. Closes [#​10707](https://redirect.github.com/pylint-dev/pylint/issues/10707) - Fix crash for `prefer-typing-namedtuple` and `consider-math-not-float` when a `slice` object is called. Closes [#​10708](https://redirect.github.com/pylint-dev/pylint/issues/10708) </details> <details> <summary>pytest-dev/pytest (pytest)</summary> ### [`v9.0.1`](https://redirect.github.com/pytest-dev/pytest/releases/tag/9.0.1) [Compare Source](https://redirect.github.com/pytest-dev/pytest/compare/9.0.0...9.0.1) ### pytest 9.0.1 (2025-11-12) #### Bug fixes - [#​13895](https://redirect.github.com/pytest-dev/pytest/issues/13895): Restore support for skipping tests via `raise unittest.SkipTest`. - [#​13896](https://redirect.github.com/pytest-dev/pytest/issues/13896): The terminal progress plugin added in pytest 9.0 is now automatically disabled when iTerm2 is detected, it generated desktop notifications instead of the desired functionality. - [#​13904](https://redirect.github.com/pytest-dev/pytest/issues/13904): Fixed the TOML type of the verbosity settings in the API reference from number to string. - [#​13910](https://redirect.github.com/pytest-dev/pytest/issues/13910): Fixed <span class="title-ref">UserWarning: Do not expect file\_or\_dir</span> on some earlier Python 3.12 and 3.13 point versions. #### Packaging updates and notes for downstreams - [#​13933](https://redirect.github.com/pytest-dev/pytest/issues/13933): The tox configuration has been adjusted to make sure the desired version string can be passed into its `package_env` through the `SETUPTOOLS_SCM_PRETEND_VERSION_FOR_PYTEST` environment variable as a part of the release process -- by `webknjaz`. #### Contributor-facing changes - [#​13891](https://redirect.github.com/pytest-dev/pytest/issues/13891), [#​13942](https://redirect.github.com/pytest-dev/pytest/issues/13942): The CI/CD part of the release automation is now capable of creating GitHub Releases without having a Git checkout on disk -- by `bluetech` and `webknjaz`. - [#​13933](https://redirect.github.com/pytest-dev/pytest/issues/13933): The tox configuration has been adjusted to make sure the desired version string can be passed into its `package_env` through the `SETUPTOOLS_SCM_PRETEND_VERSION_FOR_PYTEST` environment variable as a part of the release process -- by `webknjaz`. </details> <details> <summary>streetsidesoftware/cspell-cli (streetsidesoftware/cspell-cli)</summary> ### [`v9.3.3`](https://redirect.github.com/streetsidesoftware/cspell-cli/releases/tag/v9.3.3) [Compare Source](https://redirect.github.com/streetsidesoftware/cspell-cli/compare/v9.3.2...v9.3.3) ##### Trivial updates and changes. - Work on NPM Publishing ([#​730](https://redirect.github.com/streetsidesoftware/cspell-cli/issues/730)) ([25b6eae](https://redirect.github.com/streetsidesoftware/cspell-cli/commit/25b6eae8b8afc7260a889437cb4b54f8e3df5008)) ### [`v9.3.2`](https://redirect.github.com/streetsidesoftware/cspell-cli/releases/tag/v9.3.2) [Compare Source](https://redirect.github.com/streetsidesoftware/cspell-cli/compare/v9.3.1...v9.3.2) ##### Trivial updates and changes. - Update CSpell version (9.3.2) ([#​726](https://redirect.github.com/streetsidesoftware/cspell-cli/issues/726)) ([344ffb7](https://redirect.github.com/streetsidesoftware/cspell-cli/commit/344ffb7d06af4803f5e37e3b909f1f3137d5fcf9)) ### [`v9.3.1`](https://redirect.github.com/streetsidesoftware/cspell-cli/releases/tag/v9.3.1) [Compare Source](https://redirect.github.com/streetsidesoftware/cspell-cli/compare/v9.3.0...v9.3.1) ##### Trivial updates and changes. - Update CSpell version (9.3.1) ([#​722](https://redirect.github.com/streetsidesoftware/cspell-cli/issues/722)) ([be44634](https://redirect.github.com/streetsidesoftware/cspell-cli/commit/be446342a3508fd0f69c08366971e5e8c656ef47)) ### [`v9.3.0`](https://redirect.github.com/streetsidesoftware/cspell-cli/releases/tag/v9.3.0) [Compare Source](https://redirect.github.com/streetsidesoftware/cspell-cli/compare/v9.2.1...v9.3.0) ##### Features - Update CSpell version (9.3.0) ([#​719](https://redirect.github.com/streetsidesoftware/cspell-cli/issues/719)) ([7b263a4](https://redirect.github.com/streetsidesoftware/cspell-cli/commit/7b263a40a1c7d1c71ee1dc86dd04792b3843f640)) </details> <details> <summary>tombi-toml/tombi-pre-commit (tombi-toml/tombi-pre-commit)</summary> ### [`v0.6.50`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.50) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.49...v0.6.50) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.50> ### [`v0.6.49`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.49) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.48...v0.6.49) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.49> ### [`v0.6.48`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.48) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.47...v0.6.48) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.48> ### [`v0.6.47`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.47) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.46...v0.6.47) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.47> ### [`v0.6.46`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.46) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.45...v0.6.46) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.46> ### [`v0.6.45`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.45) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.44...v0.6.45) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.45> ### [`v0.6.44`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.44) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.42...v0.6.44) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.44> ### [`v0.6.42`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.42) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.41...v0.6.42) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.42> </details> <details> <summary>astral-sh/ruff (ruff)</summary> ### [`v0.14.5`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0145) [Compare Source](https://redirect.github.com/astral-sh/ruff/compare/0.14.4...0.14.5) Released on 2025-11-13. ##### Preview features - \[`flake8-simplify`] Apply `SIM113` when index variable is of type `int` ([#​21395](https://redirect.github.com/astral-sh/ruff/pull/21395)) - \[`pydoclint`] Fix false positive when Sphinx directives follow a "Raises" section (`DOC502`) ([#​20535](https://redirect.github.com/astral-sh/ruff/pull/20535)) - \[`pydoclint`] Support NumPy-style comma-separated parameters (`DOC102`) ([#​20972](https://redirect.github.com/astral-sh/ruff/pull/20972)) - \[`refurb`] Auto-fix annotated assignments (`FURB101`) ([#​21278](https://redirect.github.com/astral-sh/ruff/pull/21278)) - \[`ruff`] Ignore `str()` when not used for simple conversion (`RUF065`) ([#​21330](https://redirect.github.com/astral-sh/ruff/pull/21330)) ##### Bug fixes - Fix syntax error false positive on alternative `match` patterns ([#​21362](https://redirect.github.com/astral-sh/ruff/pull/21362)) - \[`flake8-simplify`] Fix false positive for iterable initializers with generator arguments (`SIM222`) ([#​21187](https://redirect.github.com/astral-sh/ruff/pull/21187)) - \[`pyupgrade`] Fix false positive on relative imports from local `.builtins` module (`UP029`) ([#​21309](https://redirect.github.com/astral-sh/ruff/pull/21309)) - \[`pyupgrade`] Consistently set the deprecated tag (`UP035`) ([#​21396](https://redirect.github.com/astral-sh/ruff/pull/21396)) ##### Rule changes - \[`refurb`] Detect empty f-strings (`FURB105`) ([#​21348](https://redirect.github.com/astral-sh/ruff/pull/21348)) ##### CLI - Add option to provide a reason to `--add-noqa` ([#​21294](https://redirect.github.com/astral-sh/ruff/pull/21294)) - Add upstream linter URL to `ruff linter --output-format=json` ([#​21316](https://redirect.github.com/astral-sh/ruff/pull/21316)) - Add color to `--help` ([#​21337](https://redirect.github.com/astral-sh/ruff/pull/21337)) ##### Documentation - Add a new "Opening a PR" section to the contribution guide ([#​21298](https://redirect.github.com/astral-sh/ruff/pull/21298)) - Added the PyScripter IDE to the list of "Who is using Ruff?" ([#​21402](https://redirect.github.com/astral-sh/ruff/pull/21402)) - Update PyCharm setup instructions ([#​21409](https://redirect.github.com/astral-sh/ruff/pull/21409)) - \[`flake8-annotations`] Add link to `allow-star-arg-any` option (`ANN401`) ([#​21326](https://redirect.github.com/astral-sh/ruff/pull/21326)) ##### Other changes - \[`configuration`] Improve error message when `line-length` exceeds `u16::MAX` ([#​21329](https://redirect.github.com/astral-sh/ruff/pull/21329)) ##### Contributors - [@​njhearp](https://redirect.github.com/njhearp) - [@​11happy](https://redirect.github.com/11happy) - [@​hugovk](https://redirect.github.com/hugovk) - [@​Gankra](https://redirect.github.com/Gankra) - [@​ntBre](https://redirect.github.com/ntBre) - [@​pyscripter](https://redirect.github.com/pyscripter) - [@​danparizher](https://redirect.github.com/danparizher) - [@​MichaReiser](https://redirect.github.com/MichaReiser) - [@​henryiii](https://redirect.github.com/henryiii) - [@​charliecloudberry](https://redirect.github.com/charliecloudberry) </details> <details> <summary>ansible/tox-ansible (tox-ansible)</summary> ### [`v25.11.1`](https://redirect.github.com/ansible/tox-ansible/releases/tag/v25.11.1) [Compare Source](https://redirect.github.com/ansible/tox-ansible/compare/v25.11.0...v25.11.1) ##### Fixes - tests - Expects ansible-compat as dependency ([#​509](https://redirect.github.com/ansible/tox-ansible/issues/509)) [@​KB-perByte](https://redirect.github.com/KB-perByte) ### [`v25.11.0`](https://redirect.github.com/ansible/tox-ansible/releases/tag/v25.11.0) [Compare Source](https://redirect.github.com/ansible/tox-ansible/compare/v25.8.0...v25.11.0) ##### Fixes - Add ansible-core==2.20 ([#​508](https://redirect.github.com/ansible/tox-ansible/issues/508)) [@​KB-perByte](https://redirect.github.com/KB-perByte) - fix: adopt tox.uv and modern packaging ([#​494](https://redirect.github.com/ansible/tox-ansible/issues/494)) [@​ssbarnea](https://redirect.github.com/ssbarnea) ##### Maintenance - chore(deps): update all dependencies ([#​507](https://redirect.github.com/ansible/tox-ansible/issues/507)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​506](https://redirect.github.com/ansible/tox-ansible/issues/506)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​505](https://redirect.github.com/ansible/tox-ansible/issues/505)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​504](https://redirect.github.com/ansible/tox-ansible/issues/504)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - Add finalize workflow for secure sonarcloud checks ([#​503](https://redirect.github.com/ansible/tox-ansible/issues/503)) [@​alisonlhart](https://redirect.github.com/alisonlhart) - Update sonar-project.properties configuration ([#​501](https://redirect.github.com/ansible/tox-ansible/issues/501)) [@​alisonlhart](https://redirect.github.com/alisonlhart) - chore(deps): update all dependencies ([#​502](https://redirect.github.com/ansible/tox-ansible/issues/502)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore: pre-commit autoupdate ([#​499](https://redirect.github.com/ansible/tox-ansible/issues/499)) @​[pre-commit-ci\[bot\]](https://redirect.github.com/apps/pre-commit-ci) - chore: rename sonar config file ([#​500](https://redirect.github.com/ansible/tox-ansible/issues/500)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - chore(deps): update all dependencies ([#​498](https://redirect.github.com/ansible/tox-ansible/issues/498)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​497](https://redirect.github.com/ansible/tox-ansible/issues/497)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​496](https://redirect.github.com/ansible/tox-ansible/issues/496)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​495](https://redirect.github.com/ansible/tox-ansible/issues/495)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​493](https://redirect.github.com/ansible/tox-ansible/issues/493)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​492](https://redirect.github.com/ansible/tox-ansible/issues/492)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update all dependencies ([#​491](https://redirect.github.com/ansible/tox-ansible/issues/491)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.12.12 ([#​489](https://redirect.github.com/ansible/tox-ansible/issues/489)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update actions/setup-python action to v6 ([#​488](https://redirect.github.com/ansible/tox-ansible/issues/488)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): update pre-commit hook jsh9/pydoclint to v0.7.3 ([#​487](https://redirect.github.com/ansible/tox-ansible/issues/487)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore(deps): pin dependencies ([#​485](https://redirect.github.com/ansible/tox-ansible/issues/485)) @​[renovate\[bot\]](https://redirect.github.com/apps/renovate) - chore: configure renovate ([#​483](https://redirect.github.com/ansible/tox-ansible/issues/483)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - chore: update tests to work with newer tox ([#​484](https://redirect.github.com/ansible/tox-ansible/issues/484)) [@​ssbarnea](https://redirect.github.com/ssbarnea) - Bump the dependencies group across 1 directory with 18 updates ([#​474](https://redirect.github.com/ansible/tox-ansible/issues/474)) @​[dependabot\[bot\]](https://redirect.github.com/apps/dependabot) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on monday" in timezone UTC, Automerge - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) in timezone UTC. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/ansible/molecule). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQyLjE2LjEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImNob3JlIiwiZGVwZW5kZW5jaWVzIl19--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
chore(deps): update all dependencies (#4573) This PR contains the following updates: | Package | Change | Age | Confidence | Type | Update | Pending | |---|---|---|---|---|---|---| | ansible-core | `2.20.0rc3` -> `2.20.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | project.dependencies | patch | | | [astral-sh/ruff-pre-commit](https://redirect.github.com/astral-sh/ruff-pre-commit) | `v0.14.3` -> `v0.14.4` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [astral-sh/uv-pre-commit](https://redirect.github.com/astral-sh/uv-pre-commit) | `0.9.7` -> `0.9.8` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [biomejs/pre-commit](https://redirect.github.com/biomejs/pre-commit) | `v2.3.2` -> `v2.3.4` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | | | [coverage](https://redirect.github.com/coveragepy/coveragepy) | `7.11.0` -> `7.11.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | patch | `7.11.3` (+1) | | [jsh9/pydoclint](https://redirect.github.com/jsh9/pydoclint) | `0.7.6` -> `0.8.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | minor | | | [tombi-toml/tombi-pre-commit](https://redirect.github.com/tombi-toml/tombi-pre-commit) | `v0.6.39` -> `v0.6.41` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | repository | patch | `v0.6.42` | | | All locks refreshed | | | | lockFileMaintenance | | | [ruff](https://docs.astral.sh/ruff) ([source](https://redirect.github.com/astral-sh/ruff), [changelog](https://redirect.github.com/astral-sh/ruff/blob/main/CHANGELOG.md)) | `0.14.3` -> `0.14.4` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependency-groups | patch | | Note: The `pre-commit` manager in Renovate is not supported by the `pre-commit` maintainers or community. Please do not report any problems there, instead [create a Discussion in the Renovate repository](https://redirect.github.com/renovatebot/renovate/discussions/new) if you have any questions. --- ### Release Notes <details> <summary>astral-sh/ruff-pre-commit (astral-sh/ruff-pre-commit)</summary> ### [`v0.14.4`](https://redirect.github.com/astral-sh/ruff-pre-commit/releases/tag/v0.14.4) [Compare Source](https://redirect.github.com/astral-sh/ruff-pre-commit/compare/v0.14.3...v0.14.4) See: <https://github.com/astral-sh/ruff/releases/tag/0.14.4> </details> <details> <summary>astral-sh/uv-pre-commit (astral-sh/uv-pre-commit)</summary> ### [`v0.9.8`](https://redirect.github.com/astral-sh/uv-pre-commit/releases/tag/0.9.8) [Compare Source](https://redirect.github.com/astral-sh/uv-pre-commit/compare/0.9.7...0.9.8) See: <https://github.com/astral-sh/uv/releases/tag/0.9.8> </details> <details> <summary>biomejs/pre-commit (biomejs/pre-commit)</summary> ### [`v2.3.4`](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.3...v2.3.4) [Compare Source](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.3...v2.3.4) ### [`v2.3.3`](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.2...v2.3.3) [Compare Source](https://redirect.github.com/biomejs/pre-commit/compare/v2.3.2...v2.3.3) </details> <details> <summary>coveragepy/coveragepy (coverage)</summary> ### [`v7.11.1`](https://redirect.github.com/coveragepy/coveragepy/blob/HEAD/CHANGES.rst#Version-7111--2025-11-07) [Compare Source](https://redirect.github.com/coveragepy/coveragepy/compare/7.11.0...7.11.1) - Fix: some chanages to details of how the measurement core is chosen, and how conflicting settings are handled. The "sysmon" core cannot be used with some conurrency settings, with dynamic context, and in Python 3.12/3.13, with branch measurement. - If the core is not specified and defaults to "sysmon" (Python 3.14+), but other settings conflict with sysmon, then the "ctrace" core will be used instead with no warning. For concurrency conflicts, this used to produce an error, as described in `issue 2064`\_. - If the "sysmon" core is explicitly requested in your configuration, but other settings conflict, an error is now raised. This used to produce a warning. - Fix: some multi-line case clauses or for loops (and probably other constructs) could cause incorrect claims of missing branches with the sys.monitoring core, as described in `issue 2070`\_. This is now fixed. - Fix: when running in pytest under coverage, a `breakpoint()` would stop in the wrong frame, one level down from where it should, as described in `issue 1420`\_. This was due to a coverage change in v6.4.1 that seemed to give a slight performance improvement, but I couldn't reproduce the performance gain, so it's been reverted, fixing the debugger problem. - A new debug option `--debug=core` shows which core is in use and why. - Split `sqlite` debugging information out of the `sys` :ref:`coverage debug <cmd_debug>` and :ref:`cmd_run_debug` options since it's bulky and not very useful. - Updated the :ref:`howitworks` page to better describe the three different measurement cores. .. \_issue 1420: [#​1420](https://redirect.github.com/coveragepy/coveragepy/issues/1420) .. \_issue 2064: [#​2064](https://redirect.github.com/coveragepy/coveragepy/issues/2064) .. \_issue 2070: [#​2070](https://redirect.github.com/coveragepy/coveragepy/issues/2070) .. \_changes\_7-11-0: </details> <details> <summary>jsh9/pydoclint (jsh9/pydoclint)</summary> ### [`v0.8.1`](https://redirect.github.com/jsh9/pydoclint/blob/HEAD/CHANGELOG.md#081---2025-11-03) [Compare Source](https://redirect.github.com/jsh9/pydoclint/compare/0.8.0...0.8.1) - Changed - The logic to detect docstring style mismatches, fixing a false positive case where non-Sphinx style docstrings are detected as Sphinx style (because there are some rST keywords in them) - Full diff - <jsh9/pydoclint@0.8.0...0.8.1> ### [`v0.8.0`](https://redirect.github.com/jsh9/pydoclint/blob/HEAD/CHANGELOG.md#081---2025-11-03) [Compare Source](https://redirect.github.com/jsh9/pydoclint/compare/0.7.6...0.8.0) - Changed - The logic to detect docstring style mismatches, fixing a false positive case where non-Sphinx style docstrings are detected as Sphinx style (because there are some rST keywords in them) - Full diff - <jsh9/pydoclint@0.8.0...0.8.1> </details> <details> <summary>tombi-toml/tombi-pre-commit (tombi-toml/tombi-pre-commit)</summary> ### [`v0.6.41`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.41) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.40...v0.6.41) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.41> ### [`v0.6.40`](https://redirect.github.com/tombi-toml/tombi-pre-commit/releases/tag/v0.6.40) [Compare Source](https://redirect.github.com/tombi-toml/tombi-pre-commit/compare/v0.6.39...v0.6.40) See: <https://github.com/tombi-toml/tombi/releases/tag/v0.6.40> </details> <details> <summary>astral-sh/ruff (ruff)</summary> ### [`v0.14.4`](https://redirect.github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#0144) [Compare Source](https://redirect.github.com/astral-sh/ruff/compare/0.14.3...0.14.4) Released on 2025-11-06. ##### Preview features - \[formatter] Allow newlines after function headers without docstrings ([#​21110](https://redirect.github.com/astral-sh/ruff/pull/21110)) - \[formatter] Avoid extra parentheses for long `match` patterns with `as` captures ([#​21176](https://redirect.github.com/astral-sh/ruff/pull/21176)) - \[`refurb`] Expand fix safety for keyword arguments and `Decimal`s (`FURB164`) ([#​21259](https://redirect.github.com/astral-sh/ruff/pull/21259)) - \[`refurb`] Preserve argument ordering in autofix (`FURB103`) ([#​20790](https://redirect.github.com/astral-sh/ruff/pull/20790)) ##### Bug fixes - \[server] Fix missing diagnostics for notebooks ([#​21156](https://redirect.github.com/astral-sh/ruff/pull/21156)) - \[`flake8-bugbear`] Ignore non-NFKC attribute names in `B009` and `B010` ([#​21131](https://redirect.github.com/astral-sh/ruff/pull/21131)) - \[`refurb`] Fix false negative for underscores before sign in `Decimal` constructor (`FURB157`) ([#​21190](https://redirect.github.com/astral-sh/ruff/pull/21190)) - \[`ruff`] Fix false positives on starred arguments (`RUF057`) ([#​21256](https://redirect.github.com/astral-sh/ruff/pull/21256)) ##### Rule changes - \[`airflow`] extend deprecated argument `concurrency` in `airflow..DAG` (`AIR301`) ([#​21220](https://redirect.github.com/astral-sh/ruff/pull/21220)) ##### Documentation - Improve `extend` docs ([#​21135](https://redirect.github.com/astral-sh/ruff/pull/21135)) - \[`flake8-comprehensions`] Fix typo in `C416` documentation ([#​21184](https://redirect.github.com/astral-sh/ruff/pull/21184)) - Revise Ruff setup instructions for Zed editor ([#​20935](https://redirect.github.com/astral-sh/ruff/pull/20935)) ##### Other changes - Make `ruff analyze graph` work with jupyter notebooks ([#​21161](https://redirect.github.com/astral-sh/ruff/pull/21161)) ##### Contributors - [@​chirizxc](https://redirect.github.com/chirizxc) - [@​Lee-W](https://redirect.github.com/Lee-W) - [@​musicinmybrain](https://redirect.github.com/musicinmybrain) - [@​MichaReiser](https://redirect.github.com/MichaReiser) - [@​tjkuson](https://redirect.github.com/tjkuson) - [@​danparizher](https://redirect.github.com/danparizher) - [@​renovate](https://redirect.github.com/renovate) - [@​ntBre](https://redirect.github.com/ntBre) - [@​gauthsvenkat](https://redirect.github.com/gauthsvenkat) - [@​LoicRiegel](https://redirect.github.com/LoicRiegel) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on monday" in timezone UTC, Automerge - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) in timezone UTC. 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/ansible/molecule). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJjaG9yZSIsImRlcGVuZGVuY2llcyJdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Replace to_bool calls with boolean function (#4542) This PR replaces all calls to the to_bool function with the existing boolean function for consistency. Changes: - Replace to_bool function calls with boolean function calls in config.py and ansi_output.py - Add optional default parameter to boolean function to return fallback value for invalid inputs - Apply default parameter to environment variable parsing to prevent TypeError exceptions - Move boolean function tests from test_ansi_output.py to test_util.py for proper organization - Add comprehensive test coverage for the new default parameter functionality - Update type annotations and add proper docstring documentation The boolean function now accepts a default parameter that provides graceful fallback for invalid environment variable values while maintaining strict behavior when no default is specified.
Consolidate command class loggers into base.Base property (#4486) Depends on PR #4487 Problem: Command classes had duplicate logger setup code across 7+ files. Solution: Single @Property _log in base.Base with automatic step derivation. Key Changes: - Added @Property _log to base.Base with automatic step naming - Removed individual logger setups from 7 command classes - Eliminated 50+ lines of duplicate code - Updated tests for scenario logger pattern Impact: - Future command classes get logger automatically - Consistent scenario->step format across all commands - Perfect architectural separation of concerns Testing: All command tests pass with proper context validation. --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Bump the dependencies group in /.config with 7 updates (#4459) Bumps the dependencies group in /.config with 7 updates: | Package | From | To | | --- | --- | --- | | [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2025.6.15` | | [coverage](https://github.com/nedbat/coveragepy) | `7.8.2` | `7.9.1` | | [cryptography](https://github.com/pyca/cryptography) | `45.0.3` | `45.0.4` | | [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.4` | | ruamel-yaml | `0.18.13` | `0.18.14` | | [zipp](https://github.com/jaraco/zipp) | `3.22.0` | `3.23.0` | Updates `certifi` from 2025.4.26 to 2025.6.15 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d"><code>e767d59</code></a> 2025.06.15 (<a href="https://redirect.github.com/certifi/python-certifi/issues/357">#357</a>)</li> <li><a href="https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802"><code>3e70765</code></a> Bump actions/setup-python from 5.5.0 to 5.6.0</li> <li><a href="https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c"><code>9afd2ff</code></a> Bump actions/download-artifact from 4.2.1 to 4.3.0</li> <li><a href="https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620"><code>d7c816c</code></a> remove code that's no longer required that 3.7 is our minimum (<a href="https://redirect.github.com/certifi/python-certifi/issues/351">#351</a>)</li> <li><a href="https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9"><code>1899613</code></a> Declare setuptools as the build backend in pyproject.toml (<a href="https://redirect.github.com/certifi/python-certifi/issues/350">#350</a>)</li> <li><a href="https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207"><code>c874142</code></a> update CI for ubuntu 20.04 deprecation (<a href="https://redirect.github.com/certifi/python-certifi/issues/348">#348</a>)</li> <li>See full diff in <a href="https://github.com/certifi/python-certifi/compare/2025.04.26...2025.06.15">compare view</a></li> </ul> </details> <br /> Updates `coverage` from 7.8.2 to 7.9.1 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst">coverage's changelog</a>.</em></p> <blockquote> <h2>Version 7.9.1 — 2025-06-13</h2> <ul> <li> <p>The "no-ctracer" warning is not issued for Python pre-release versions. Coverage doesn't ship compiled wheels for those versions, so this was far too noisy.</p> </li> <li> <p>On Python 3.14+, the "sysmon" core is now the default if it's supported for your configuration. Plugins and dynamic contexts are still not supported with it.</p> </li> </ul> <p>.. _changes_7-9-0:</p> <h2>Version 7.9.0 — 2025-06-11</h2> <ul> <li> <p>Added a <code>[run] core</code> configuration setting to specify the measurement core, which was previously only available through the COVERAGE_CORE environment variable. Finishes <code>issue 1746</code>_.</p> </li> <li> <p>Fixed incorrect rendering of f-strings with doubled braces, closing <code>issue 1980</code>_.</p> </li> <li> <p>If the C tracer core can't be imported, a warning ("no-ctracer") is issued with the reason.</p> </li> <li> <p>The C tracer core extension module now conforms to <code>PEP 489</code><em>, closing <code>issue 1977</code></em>. Thanks, <code>Adam Turner <pull 1978_></code>_.</p> </li> <li> <p>Fixed a "ValueError: min() arg is an empty sequence" error caused by strange empty modules, found by <code>oss-fuzz</code>_.</p> </li> </ul> <p>.. _issue 1746: <a href="https://redirect.github.com/nedbat/coveragepy/issues/1746">nedbat/coveragepy#1746</a> .. _issue 1977: <a href="https://redirect.github.com/nedbat/coveragepy/issues/1977">nedbat/coveragepy#1977</a> .. _pull 1978: <a href="https://redirect.github.com/nedbat/coveragepy/pull/1978">nedbat/coveragepy#1978</a> .. _issue 1980: <a href="https://redirect.github.com/nedbat/coveragepy/issues/1980">nedbat/coveragepy#1980</a> .. _PEP 489: <a href="https://peps.python.org/pep-0489">https://peps.python.org/pep-0489</a> .. _oss-fuzz: <a href="https://google.github.io/oss-fuzz/">https://google.github.io/oss-fuzz/</a></p> <p>.. _changes_7-8-2:</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/nedbat/coveragepy/commit/4fa1b717978c2d9e40636a10363b618e152f4c4e"><code>4fa1b71</code></a> docs: sample HTML for 7.9.1</li> <li><a href="https://github.com/nedbat/coveragepy/commit/5cf757b42d1649ccbc74488471ab9270cb7d99f2"><code>5cf757b</code></a> docs: prep for 7.9.1</li> <li><a href="https://github.com/nedbat/coveragepy/commit/bea6204982b75f6a20f5afbf3534bd3776e126dd"><code>bea6204</code></a> fix: better defaulting of core</li> <li><a href="https://github.com/nedbat/coveragepy/commit/7795441563fb0afe9439a857a5e0df50336f73dd"><code>7795441</code></a> fix: fewer warnings, default to sys.monitoring on 3.14+</li> <li><a href="https://github.com/nedbat/coveragepy/commit/18aa07456965c7d26e028aebaf825b96b7638d74"><code>18aa074</code></a> fix: some custom builds don't have <strong>file</strong></li> <li><a href="https://github.com/nedbat/coveragepy/commit/8c5bf659f4b4412685a828c01870cfc9a23186ac"><code>8c5bf65</code></a> chore: make upgrade</li> <li><a href="https://github.com/nedbat/coveragepy/commit/128c4f4e452f08e52fe1d6fbebb8392ae2dc7297"><code>128c4f4</code></a> build: bump version to 7.9.1</li> <li><a href="https://github.com/nedbat/coveragepy/commit/452d86ffa16cd0c1b729c7d206f59bc1010aee94"><code>452d86f</code></a> docs: sample HTML for 7.9.0</li> <li><a href="https://github.com/nedbat/coveragepy/commit/a670927ae6d248f369d54fbe22d9546b6a25c25e"><code>a670927</code></a> docs: prep for 7.9.0</li> <li><a href="https://github.com/nedbat/coveragepy/commit/3b0cb870f6abac8e4a7607094c467a7d766a44f4"><code>3b0cb87</code></a> build: windows 3.14 is fixed</li> <li>Additional commits viewable in <a href="https://github.com/nedbat/coveragepy/compare/7.8.2...7.9.1">compare view</a></li> </ul> </details> <br /> Updates `cryptography` from 45.0.3 to 45.0.4 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst">cryptography's changelog</a>.</em></p> <blockquote> <p>45.0.4 - 2025-06-09</p> <pre><code> * Fixed decrypting PKCS#8 files encrypted with SHA1-RC4. (This is not considered secure, and is supported only for backwards compatibility.) <p>.. _v45-0-3:<br /> </code></pre></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pyca/cryptography/commit/678c0c59f743e3b301fbd34f1d26112db0cc2216"><code>678c0c5</code></a> prepare for 45.0.4 release (<a href="https://redirect.github.com/pyca/cryptography/issues/13058">#13058</a>)</li> <li>See full diff in <a href="https://github.com/pyca/cryptography/compare/45.0.3...45.0.4">compare view</a></li> </ul> </details> <br /> Updates `requests` from 2.32.3 to 2.32.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/requests/releases">requests's releases</a>.</em></p> <blockquote> <h2>v2.32.4</h2> <h2>2.32.4 (2025-06-10)</h2> <p><strong>Security</strong></p> <ul> <li>CVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted environment will retrieve credentials for the wrong hostname/machine from a netrc file. (<a href="https://redirect.github.com/psf/requests/issues/6965">#6965</a>)</li> </ul> <p><strong>Improvements</strong></p> <ul> <li>Numerous documentation improvements</li> </ul> <p><strong>Deprecations</strong></p> <ul> <li>Added support for pypy 3.11 for Linux and macOS. (<a href="https://redirect.github.com/psf/requests/issues/6926">#6926</a>)</li> <li>Dropped support for pypy 3.9 following its end of support. (<a href="https://redirect.github.com/psf/requests/issues/6926">#6926</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/psf/requests/blob/main/HISTORY.md">requests's changelog</a>.</em></p> <blockquote> <h2>2.32.4 (2025-06-10)</h2> <p><strong>Security</strong></p> <ul> <li>CVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted environment will retrieve credentials for the wrong hostname/machine from a netrc file.</li> </ul> <p><strong>Improvements</strong></p> <ul> <li>Numerous documentation improvements</li> </ul> <p><strong>Deprecations</strong></p> <ul> <li>Added support for pypy 3.11 for Linux and macOS.</li> <li>Dropped support for pypy 3.9 following its end of support.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd"><code>021dc72</code></a> Polish up release tooling for last manual release</li> <li><a href="https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396"><code>821770e</code></a> Bump version and add release notes for v2.32.4</li> <li><a href="https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401"><code>59f8aa2</code></a> Add netrc file search information to authentication documentation (<a href="https://redirect.github.com/psf/requests/issues/6876">#6876</a>)</li> <li><a href="https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b"><code>5b4b64c</code></a> Add more tests to prevent regression of CVE 2024 47081</li> <li><a href="https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae"><code>7bc4587</code></a> Add new test to check netrc auth leak (<a href="https://redirect.github.com/psf/requests/issues/6962">#6962</a>)</li> <li><a href="https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef"><code>96ba401</code></a> Only use hostname to do netrc lookup instead of netloc</li> <li><a href="https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2"><code>7341690</code></a> Merge pull request <a href="https://redirect.github.com/psf/requests/issues/6951">#6951</a> from tswast/patch-1</li> <li><a href="https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0"><code>6716d7c</code></a> remove links</li> <li><a href="https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae"><code>a7e1c74</code></a> Update docs/conf.py</li> <li><a href="https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f"><code>c799b81</code></a> docs: fix dead links to kenreitz.org</li> <li>Additional commits viewable in <a href="https://github.com/psf/requests/compare/v2.32.3...v2.32.4">compare view</a></li> </ul> </details> <br /> Updates `ruamel-yaml` from 0.18.13 to 0.18.14 Updates `zipp` from 3.22.0 to 3.23.0 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/jaraco/zipp/blob/main/NEWS.rst">zipp's changelog</a>.</em></p> <blockquote> <h1>v3.23.0</h1> <h2>Features</h2> <ul> <li>Add a compatibility shim for Python 3.13 and earlier. (<a href="https://redirect.github.com/jaraco/zipp/issues/145">#145</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/jaraco/zipp/commit/ccb41118d730036782d809b71773b719c48a680d"><code>ccb4111</code></a> Finalize</li> <li><a href="https://github.com/jaraco/zipp/commit/5b5725d143f7bbcddabd91cfed3a708f24a3ed66"><code>5b5725d</code></a> Merge pull request <a href="https://redirect.github.com/jaraco/zipp/issues/146">#146</a> from jaraco/debt/backport-<a href="https://redirect.github.com/jaraco/zipp/issues/133337">gh-133337</a></li> <li><a href="https://github.com/jaraco/zipp/commit/c1dca821330e29b11d55dde216464656480c6740"><code>c1dca82</code></a> Remove unused dependency.</li> <li><a href="https://github.com/jaraco/zipp/commit/717d770655b041c7b5e94cb89393a62761058582"><code>717d770</code></a> Add a compatibility shim for Python 3.13 and earlier.</li> <li><a href="https://github.com/jaraco/zipp/commit/d860de467a5887a6f09e5b66e4ef51f2e9c516fa"><code>d860de4</code></a> <a href="https://redirect.github.com/jaraco/zipp/issues/133306">gh-133306</a>: Use \z instead of \Z in regular expressions in the stdlib (<a href="https://redirect.github.com/jaraco/zipp/issues/133337">GH-133337</a>)</li> <li>See full diff in <a href="https://github.com/jaraco/zipp/compare/v3.22.0...v3.23.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Abhinav Anand <abanand@redhat.com>
PreviousNext