Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Nov 29, 2024

This PR contains the following updates:

Package Type Update Change Age Confidence
lockFileMaintenance All locks refreshed
allure-pytest (source) integration minor ^2.13.5 -> ^2.15.0 age confidence
codespell lint minor 2.3.0 -> 2.4.1 age confidence
juju (changelog) integration minor >=3.5.2.1 -> >=3.6.1.3 age confidence
pytest (changelog) integration minor ^8.3.3 -> ^8.4.2 age confidence
pytest-operator integration minor ^0.38.0 -> ^0.43.2 age confidence
ruff (source, changelog) lint minor ^0.8.0 -> ^0.14.3 age confidence
ruff (source, changelog) format minor ^0.8.0 -> ^0.14.3 age confidence

🔧 This Pull Request updates lock files to use the latest dependency versions.


Release Notes

allure-framework/allure-python (allure-pytest)

v2.15.0

Compare Source

🚀 New Features

  • feat: add titlePath to results generated by all allure-python integrations (via #​870) - @​delatrie

🐞 Bug Fixes

  • fix(pytest): properly include nested classes in fullName, historyId, testCaseId, and subSuite (via #​869) - @​delatrie

👀 Links

Commits since 2.14.3

v2.14.3

Compare Source

🔬 Improvements

🐞 Bug Fixes

  • fix(pytest): can't change a fixture's title in pytest 8.4 or later (via #​866) - @​delatrie

👀 Links

Commits since 2.14.2

v2.14.2

Compare Source

This release fixes a couple of issues with Allure Behave.

🐞 Bug Fixes

👀 Links

Commits since 2.14.1

v2.14.1

Compare Source

👀 Links

Commits since 2.14.0

v2.14.0

Compare Source

🚀 New Features

🔬 Improvements

  • allure-pytest-bdd: unexpected errors make tests and steps broken instead of failed (via #​845) - @​delatrie
  • allure-pytest-bdd: pytest parameters of a test are now not duplicated in the test's name (via #​845) - @​delatrie

🐞 Bug Fixes

  • commons: invalid SVG media type in allure.attachment_type.SVG (#​840; fixed via #​841) - @​harmin-parra
  • allure-pytest-bdd: invalid test results are generated for scenarios with pytest parameters (#​655; fixed via #​845) - @​delatrie
  • allure-pytest-bdd: a skipped teardown overwrite the test's status (fixed via #​845) - @​delatrie
  • commons: cleaning the Allure Resuts directory causes FileNotFoundError when running in a parallel environment (#​807; fixed via #​809) - @​hokor

⬆️ Dependency Updates

  • allure-pytest-bdd: drop the official support for pytest-bdd 3 and 4 (via #​849) - @​delatrie
  • commons: drop the official support for Python 3.7 - @​delatrie

📖 Documentation improvements

👻 Internal changes

👀 Links

Commits since 2.13.5

codespell-project/codespell (codespell)

v2.4.1

Compare Source

What's Changed

New Contributors

Full Changelog: codespell-project/codespell@v2.4.0...v2.4.1

v2.4.0

Compare Source

What's Changed

New Contributors

Full Changelog: codespell-project/codespell@v2.3.0...v2.4.0

juju/python-libjuju (juju)

v3.6.1.3: - Mind your Ps and Qs

Compare Source

This release of python-libjuju fixes a nasty bug where trailing 'P', 'Q', and '=' characters were stripped from secret values. This is a good reminder to migrate your charm's Juju integration tests to jubilant if possible.

Note that python-libjuju is not under active development, and will only receive critical bugfixes and security fixes for Juju 3.6. There are no plans to support Juju 4.0, so please migrate to jubilant.

What's Changed

Full Changelog: juju/python-libjuju@3.6.1.2...3.6.1.3

v3.6.1.2

Compare Source

Belated release notes and tag for 3.6.1.2 release on May 26, 2025.

What's Changed

Full Changelog: juju/python-libjuju@3.6.1.1...3.6.1.2

v3.6.1.1

Compare Source

What's Changed

New Contributors

Full Changelog: juju/python-libjuju@3.6.1.0...3.6.1.1

v3.6.1.0

Compare Source

What's Changed

New Contributors

Full Changelog: juju/python-libjuju@3.6.0.0...3.6.1.0

v3.6.0.0

Compare Source

What's Changed

Highlights

correct parsing of storage constraints, can be specified as strings or dicts
enable attachment of binary files as charm resources
allow newest websockets
better type hints, should be visible through pytest-operator in your integration tests

Full list

New Contributors

Full Changelog: juju/python-libjuju@3.5.2.0...3.6.0.0

pytest-dev/pytest (pytest)

v8.4.2

Compare Source

pytest 8.4.2 (2025-09-03)

Bug fixes

  • #​13478: Fixed a crash when using console_output_style{.interpreted-text role="confval"} with times and a module is skipped.

  • #​13530: Fixed a crash when using pytest.approx{.interpreted-text role="func"} and decimal.Decimal{.interpreted-text role="class"} instances with the decimal.FloatOperation{.interpreted-text role="class"} trap set.

  • #​13549: No longer evaluate type annotations in Python 3.14 when inspecting function signatures.

    This prevents crashes during module collection when modules do not explicitly use from __future__ import annotations and import types for annotations within a if TYPE_CHECKING: block.

  • #​13559: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in pytest.Parser.addini{.interpreted-text role="meth"}.

  • #​13563: pytest.approx{.interpreted-text role="func"} now only imports numpy if NumPy is already in sys.modules. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.

Improved documentation

  • #​13577: Clarify that pytest_generate_tests is discovered in test modules/classes; other hooks must be in conftest.py or plugins.

Contributor-facing changes

  • #​13480: Self-testing: fixed a few test failures when run with -Wdefault or a similar override.
  • #​13547: Self-testing: corrected expected message for test_doctest_unexpected_exception in Python 3.14.
  • #​13684: Make pytest's own testsuite insensitive to the presence of the CI environment variable -- by ogrisel{.interpreted-text role="user"}.

v8.4.1

Compare Source

pytest 8.4.1 (2025-06-17)

Bug fixes

  • #​13461: Corrected _pytest.terminal.TerminalReporter.isatty to support
    being called as a method. Before it was just a boolean which could
    break correct code when using -o log_cli=true).

  • #​13477: Reintroduced pytest.PytestReturnNotNoneWarning{.interpreted-text role="class"} which was removed by accident in pytest [8.4]{.title-ref}.

    This warning is raised when a test functions returns a value other than None, which is often a mistake made by beginners.

    See return-not-none{.interpreted-text role="ref"} for more information.

  • #​13497: Fixed compatibility with Twisted 25+.

Improved documentation

  • #​13492: Fixed outdated warning about faulthandler not working on Windows.

v8.4.0

Compare Source

pytest 8.4.0 (2025-06-02)

Removals and backward incompatible breaking changes

  • #​11372: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.

  • #​12346: Tests will now fail, instead of raising a warning, if they return any value other than None.

  • #​12874: We dropped support for Python 3.8 following its end of life (2024-10-07).

  • #​12960: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.

    See the docs <yield tests deprecated>{.interpreted-text role="ref"} for more information.

Deprecations (removal in next major release)

  • #​10839: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or autouse=True. For guidance on how to work around this warning see sync-test-async-fixture{.interpreted-text role="ref"}.

New features

  • #​11538: Added pytest.RaisesGroup{.interpreted-text role="class"} as an equivalent to pytest.raises{.interpreted-text role="func"} for expecting ExceptionGroup{.interpreted-text role="exc"}. Also adds pytest.RaisesExc{.interpreted-text role="class"} which is now the logic behind pytest.raises{.interpreted-text role="func"} and used as parameter to pytest.RaisesGroup{.interpreted-text role="class"}. RaisesGroup includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating except* <except_star>{.interpreted-text role="ref"}. See assert-matching-exception-groups{.interpreted-text role="ref"} and docstrings for more information.

  • #​12081: Added capteesys{.interpreted-text role="fixture"} to capture AND pass output to next handler set by --capture=.

  • #​12504: pytest.mark.xfail{.interpreted-text role="func"} now accepts pytest.RaisesGroup{.interpreted-text role="class"} for the raises parameter when you expect an exception group. You can also pass a pytest.RaisesExc{.interpreted-text role="class"} if you e.g. want to make use of the check parameter.

  • #​12713: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.

    This lets users still see condensed summary output of failures for quick reference in log files from job outputs, being especially useful if non-condensed output is very verbose.

  • #​12749: pytest traditionally collects classes/functions in the test module namespace even if they are imported from another file.

    For example:

contents of src/domain.py

class Testament: ...

contents of tests/test_testament.py

from domain import Testament

def test_testament(): ...
```

In this scenario with the default options, pytest will collect the class [Testament]{.title-ref} from [tests/test_testament.py]{.title-ref} because it starts with [Test]{.title-ref}, even though in this case it is a production class being imported in the test module namespace.

This behavior can now be prevented by setting the new `collect_imported_tests`{.interpreted-text role="confval"} configuration option to `false`, which will make pytest collect classes/functions from test files **only** if they are defined in that file.

\-- by `FreerGit`{.interpreted-text role="user"}
  • #​12765: Thresholds to trigger snippet truncation can now be set with truncation_limit_lines{.interpreted-text role="confval"} and truncation_limit_chars{.interpreted-text role="confval"}.

    See truncation-params{.interpreted-text role="ref"} for more information.

  • #​13125: console_output_style{.interpreted-text role="confval"} now supports times to show execution time of each test.

  • #​13192: pytest.raises{.interpreted-text role="func"} will now raise a warning when passing an empty string to match, as this will match against any value. Use match="^$" if you want to check that an exception has no message.

  • #​13192: pytest.raises{.interpreted-text role="func"} will now print a helpful string diff if matching fails and the match parameter has ^ and $ and is otherwise escaped.

  • #​13192: You can now pass with pytest.raises(check=fn): <pytest.raises>{.interpreted-text role="func"}, where fn is a function which takes a raised exception and returns a boolean. The raises fails if no exception was raised (as usual), passes if an exception is raised and fn returns True (as well as match and the type matching, if specified, which are checked before), and propagates the exception if fn returns False (which likely also fails the test).

  • #​13228: hidden-param{.interpreted-text role="ref"} can now be used in id of pytest.param{.interpreted-text role="func"} or in
    ids of Metafunc.parametrize <pytest.Metafunc.parametrize>{.interpreted-text role="py:func"}.
    It hides the parameter set from the test name.

  • #​13253: New flag: --disable-plugin-autoload <disable_plugin_autoload>{.interpreted-text role="ref"} which works as an alternative to PYTEST_DISABLE_PLUGIN_AUTOLOAD{.interpreted-text role="envvar"} when setting environment variables is inconvenient; and allows setting it in config files with addopts{.interpreted-text role="confval"}.

Improvements in existing functionality

  • #​10224: pytest's short and long traceback styles (how-to-modifying-python-tb-printing{.interpreted-text role="ref"})
    now have partial 657{.interpreted-text role="pep"} support and will show specific code segments in the
    traceback.

    ================================
    

@renovate renovate bot requested review from a team, carlcsaposs-canonical, paulomach, shayancanonical, sinclert-canonical and taurus-forever and removed request for a team November 29, 2024 01:34
@renovate
Copy link
Contributor Author

renovate bot commented Nov 29, 2024

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: poetry.lock
Updating dependencies
Resolving dependencies...


The current project's supported Python range (>=3.8,<4.0) is not compatible with some of the required packages Python requirement:
  - juju requires Python >=3.8.6, so it will not be satisfied for Python >=3.8,<3.8.6

Because juju (3.6.1.3) requires Python >=3.8.6
 and no versions of juju match >3.6.1.3, juju is forbidden.
So, because non-package-mode depends on juju (>=3.6.1.3), version solving failed.

  • Check your dependencies Python requirement: The Python requirement can be specified via the `python` or `markers` properties
    
    For juju, a possible solution would be to set the `python` property to ">=3.8.6,<4.0"

    https://python-poetry.org/docs/dependency-specification/#python-restricted-dependencies,
    https://python-poetry.org/docs/dependency-specification/#using-environment-markers

@renovate renovate bot force-pushed the renovate/python-dependencies branch 3 times, most recently from 7a8f9aa to 7306534 Compare December 9, 2024 01:33
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from e37b093 to 0dceb5e Compare December 20, 2024 01:34
@renovate renovate bot force-pushed the renovate/python-dependencies branch 4 times, most recently from 2fd591b to ae402fa Compare January 10, 2025 01:31
@renovate renovate bot force-pushed the renovate/python-dependencies branch from ae402fa to 60d15ba Compare January 13, 2025 01:33
@renovate renovate bot force-pushed the renovate/python-dependencies branch 4 times, most recently from cb5690d to 61f0665 Compare January 22, 2025 01:33
@renovate renovate bot force-pushed the renovate/python-dependencies branch 3 times, most recently from b8e444b to 3697e97 Compare January 31, 2025 01:30
@renovate renovate bot force-pushed the renovate/python-dependencies branch from 3697e97 to 9954865 Compare February 7, 2025 01:30
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from 371d5d3 to 31c3ba3 Compare February 10, 2025 01:31
@renovate renovate bot force-pushed the renovate/python-dependencies branch from cf41145 to 811c6a9 Compare April 15, 2025 01:12
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from fec3664 to dc38336 Compare April 29, 2025 01:06
@renovate renovate bot force-pushed the renovate/python-dependencies branch from dc38336 to 1c983a3 Compare May 6, 2025 01:02
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from a6c22bc to a774634 Compare May 20, 2025 01:47
@renovate renovate bot force-pushed the renovate/python-dependencies branch from a774634 to 392f6cd Compare May 27, 2025 01:02
@renovate renovate bot force-pushed the renovate/python-dependencies branch from 392f6cd to 08fd9c7 Compare June 3, 2025 01:47
@renovate renovate bot force-pushed the renovate/python-dependencies branch from 08fd9c7 to 6463625 Compare June 10, 2025 01:49
@renovate renovate bot force-pushed the renovate/python-dependencies branch from 6463625 to 1318f73 Compare June 24, 2025 01:27
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from 482fdce to a71bfe7 Compare July 8, 2025 01:48
@renovate renovate bot force-pushed the renovate/python-dependencies branch from a71bfe7 to b64d7d2 Compare July 15, 2025 01:06
@renovate renovate bot force-pushed the renovate/python-dependencies branch from b64d7d2 to f67d6d7 Compare July 22, 2025 01:38
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from 929cc74 to b953f1c Compare August 5, 2025 01:49
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from afda0a8 to 210e3ca Compare August 19, 2025 01:47
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from ee9ebd1 to 48c8869 Compare September 2, 2025 01:40
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from 93dd2b5 to d8f2998 Compare September 16, 2025 01:25
@renovate renovate bot force-pushed the renovate/python-dependencies branch from d8f2998 to 0c7f345 Compare September 23, 2025 01:24
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from 82ed924 to 2529363 Compare October 7, 2025 01:48
@renovate renovate bot force-pushed the renovate/python-dependencies branch 2 times, most recently from 660b7b7 to 9fa9b2a Compare October 21, 2025 01:37
@renovate renovate bot force-pushed the renovate/python-dependencies branch from 9fa9b2a to 34aeff7 Compare October 28, 2025 01:38
@renovate renovate bot force-pushed the renovate/python-dependencies branch from 34aeff7 to 6e14888 Compare November 4, 2025 01:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants