Skip to content

Update all dependencies#328

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/all
Open

Update all dependencies#328
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/all

Conversation

@renovate

@renovate renovate Bot commented Mar 8, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change Age Confidence
actions/checkout action major v6v7 age confidence
actions/github-script action major v8v9 age confidence
actions/setup-python (changelog) action digest a309ff8ece7cb0
codecov/codecov-action action major v5v7 age confidence
fastapi (changelog) dependencies minor 0.136.30.139.0 age confidence
pubtools-pulplib (changelog) dependencies minor 2.43.32.44.0 age confidence
pytest (changelog) test minor 9.0.39.1.1 age confidence
pytest-cov (changelog) dev minor 7.0.07.1.0 age confidence
redis final digest 1c054d52838d55
registry.access.redhat.com/ubi9/python-39 final digest f54df76ec92339
snok/install-poetry (changelog) action digest 76e04a9a783c32
testfixtures (changelog) test minor 12.0.012.2.0 age confidence

Release Notes

actions/checkout (actions/checkout)

v7.0.0

Compare Source

v7

Compare Source

actions/github-script (actions/github-script)

v9.0.0

Compare Source

New features:

  • getOctokit factory function — Available directly in the script context. Create additional authenticated Octokit clients with different tokens for multi-token workflows, GitHub App tokens, and cross-org access. See Creating additional clients with getOctokit for details and examples.
  • Orchestration ID in user-agent — The ACTIONS_ORCHESTRATION_ID environment variable is automatically appended to the user-agent string for request tracing.

Breaking changes:

  • require('@​actions/github') no longer works in scripts. The upgrade to @actions/github v9 (ESM-only) means require('@​actions/github') will fail at runtime. If you previously used patterns like const { getOctokit } = require('@​actions/github') to create secondary clients, use the new injected getOctokit function instead — it's available directly in the script context with no imports needed.
  • getOctokit is now an injected function parameter. Scripts that declare const getOctokit = ... or let getOctokit = ... will get a SyntaxError because JavaScript does not allow const/let redeclaration of function parameters. Use the injected getOctokit directly, or use var getOctokit = ... if you need to redeclare it.
  • If your script accesses other @actions/github internals beyond the standard github/octokit client, you may need to update those references for v9 compatibility.
What's Changed
New Contributors

Full Changelog: actions/github-script@v8.0.0...v9.0.0

v9

Compare Source

codecov/codecov-action (codecov/codecov-action)

v7.0.0

Compare Source

⚠️ Due to migration issues with keybase, we are unable to update our keys under the codecovsecurity account. We have deleted the account and are using codecovsecops with the original gpg key

What's Changed

Full Changelog: codecov/codecov-action@v6.0.1...v7.0.0

v7

Compare Source

v6.0.2

Compare Source

This is a copy of the v7.0.0 release to make updates easier

What's Changed

Full Changelog: codecov/codecov-action@v6.0.1...v6.0.2

v6.0.1

Compare Source

What's Changed

Full Changelog: codecov/codecov-action@v6.0.0...v6.0.1

v6.0.0

Compare Source

⚠️ This version introduces support for node24 which make cause breaking changes for systems that do not currently support node24. ⚠️
What's Changed

Full Changelog: codecov/codecov-action@v5.5.4...v6.0.0

v6

Compare Source

fastapi/fastapi (fastapi)

v0.139.0

Compare Source

Features
  • ✨ Support dependencies in app.frontend(), e.g. for automatic cookie authentication for the frontend. PR #​15908 by @​tiangolo.
Translations
Internal

v0.138.2

Compare Source

Refactors
  • ♻️ Make app.frontend() return 404 for methods other than GET or HEAD with no static file matches. PR #​15863 by @​tiangolo.
Internal

v0.138.1

Compare Source

Refactors
Internal

v0.138.0

Compare Source

Features
  • ✨ Add support for app.frontend("/", directory="dist") and router.frontend("/", directory="dist"). PR #​15800 by @​tiangolo.
Docs
Translations
Internal

v0.137.2

Compare Source

Features
  • ✨ Add iter_route_contexts() for advanced use cases that used to use router.routes (e.g. Jupyverse). PR #​15785 by @​tiangolo.
Translations
Internal

v0.137.1

Compare Source

Fixes

v0.137.0

Compare Source

Breaking Changes

Unblocks ✨ SO MANY THINGS ✨

Before this, router.include_router(other_router) would take each path operation from other_router and "clone" it, or recreate it from scratch.

This would mean that in the end there was only one top level router, part of the app.

The way it is structured here is that there are a few additional classes to handle intermediate metadata for router and route inclusion. That way the information of "router X includes Y and Y includes Z" is stored somewhere, without affecting (recreating / clonning) the final route.

Non Objectives

Dependencies for 404: previously I intended to support dependencies that would be executed even for 404, but that would conflict with the fact that a router could not find a match, but the next router did find a match. Executing dependencies in the router that did not find a match would not make sense, they could consume the request, body, etc. This original idea was discarded.

Specific Breaking Changes

Now router.routes is no longer a plain list of APIRoute objects, it can contain these intermediate objects that can contain additional routers, forming a tree.

Any logic that depended on iterating on the router.routes directly would be affected, that logic cannot expect to be able to extract data from a plain list of routes, as it's no longer a plain list but a tree.

Additionally, any logic that iterated on router.routes to modify them would now also see these new objects, and would not see all the routes in the app.

router.routes should be considered an internal implementation detail, only passed around to the FastAPI functions that need it.

Features
  • Adding routes (path operations) after a router is included now works, they are reflected as they are not copied.
  • Including subrouter in mainrouter can be done before adding routes (path operations) to subrouter, because now the the entire object is stored instead of copying the routes.
  • As routes are not copied, in some cases that might save some memory.
Alpha Features

This is not documented yet, so it's not officially supported yet and could change in the future.

But, as APIRoute and APIRouter instances are now preserved, they could be customized.

APIRouter has two new methods, .matches() and .handle(), counterpart to the existing ones in APIRoute. With this a router could customize how it matches and handles requests. For example, it could match only requests that include some specific header, for example for handling versions in headers.

Still, for now, consider this very experimental and potentially changing and breaking in the future.

Future Features Enabled
  • Custom APIRoute subclasses (undocumented, but alraedy works as desccribed above)
  • Custom APIRouter subclasses (undocumented, but already works as described above)
  • Dependencies per router
  • Exception handlers per router
  • Middleware per router
  • Other features planned
Docs
Translations
Internal
release-engineering/pubtools-pulplib (pubtools-pulplib)

v2.44.0

Compare Source

Added
  • Added pulp3 client
pytest-dev/pytest (pytest)

v9.1.1

Compare Source

pytest 9.1.1 (2026-06-19)

Bug fixes

  • #​14220: Fixed a logic bug in pytest.RaisesGroup which would might cause it to display incorrect "It matches FooError() which was paired with BarError" messages.
  • #​14591: Fixed a regression in pytest 9.1.0 which caused overriding a parametrized fixture with an indirect @​pytest.mark.parametrize to fail with "duplicate parametrization of '<fixture name>'".
  • #​14606: Fixed list-item typing errors from mypy in @pytest.mark.parametrize <pytest.mark.parametrize ref> argvalues parameter.
  • #​14608: Fixed a regression in pytest 9.1.0 where conftest.py files located in <invocation dir>/test* were no longer loaded as initial conftests when invoked without arguments.
    This could cause certain hooks (like pytest_addoption) in these files to not fire.

v9.1.0

Compare Source

pytest 9.1.0 (2026-06-13)
Removals and backward incompatible breaking changes
  • #​14533: When using --doctest-modules, autouse fixtures with module, package or session scope that are defined inline in Python test modules (not plugins or conftests) will now possibly execute twice.

    If this is undesirable, move the fixture definition to a conftest.py file if possible.

    Technical explanation for those interested:
    When using --doctest-modules, pytest possibly collects Python modules twice, once as pytest.Module and once as a DoctestModule (depending on the configuration).
    Due to improvements in pytest's fixture implementation, if e.g. the DoctestModule collects a fixture, it is now visible to it only, and not to the Module.
    This means that both need to register the fixtures independently.

Deprecations (removal in next major release)
  • #​10819: Added a deprecation warning for class-scoped fixtures defined as instance methods (without @classmethod). Such fixtures set attributes on a different instance than the test methods use, leading to unexpected behavior. Use @classmethod decorator instead -- by yastcher.

    See 10819 and 14011.

  • #​12882: Calling request.getfixturevalue() <pytest.FixtureRequest.getfixturevalue> during teardown to request a fixture that was not already requested is now deprecated and will become an error in pytest 10.

    See dynamic-fixture-request-during-teardown for details.

  • #​13409: Using non-~collections.abc.Collection iterables (such as generators, iterators, or custom iterable objects) for the argvalues parameter in @pytest.mark.parametrize <pytest.mark.parametrize ref> and metafunc.parametrize <pytest.Metafunc.parametrize> is now deprecated.

    These iterables get exhausted after the first iteration,
    leading to tests getting unexpectedly skipped in cases such as running pytest.main() multiple times,
    using class-level parametrize decorators,
    or collecting tests multiple times.

    See parametrize-iterators for details and suggestions.

  • #​13946: The private config.inicfg attribute is now deprecated.
    Use config.getini() <pytest.Config.getini> to access configuration values instead.

    See config-inicfg for more details.

  • #​14004: Passing baseid to ~pytest.FixtureDef or nodeid strings to fixture registration APIs is now deprecated. These are internal pytest APIs that are used by some plugins.

    Use the node parameter instead for fixture scoping. This enables more robust node-based
    matching instead of string prefix matching.
    If you've used nodeid=None, pass node=session instead.

    This will be removed in pytest 10.

  • #​14335: The method of configuring hooks using markers, deprecated since pytest 7.2, is now scheduled to be removed in pytest 10.
    See hook-markers for more details.

  • #​14434: The --pastebin option is now deprecated.
    The same functionality is now available in an external plugin, pytest-pastebin.
    See pastebin-deprecated for more details.

  • #​14513: The private FixtureDef.has_location attribute is now deprecated and will be removed in pytest 10.
    See fixturedef-has-location-deprecated for details.

  • #​1764: pytest.console_main is now deprecated and will be removed in pytest 10.
    It was never intended for programmatic use; use pytest.main instead.

New features
  • #​12376: Added pytest.register_fixture() to register fixtures using an imperative interface.

    This is an advanced function intended for use by plugins.

    Normally, fixtures should be registered declaratively using the @pytest.fixture <pytest.fixture> decorator.
    Pytest looks for these fixture definitions during the collection phase and registers them automatically.
    For some plugin usecases the declarative interface can be cumbersome or unviable, in which case this imperative interface can be used.

  • #​14023: Added --report-chars long CLI option.

  • #​14371: Added --max-warnings command-line option and max_warnings configuration option to fail the test run when the number of warnings exceeds a given threshold -- by miketheman.

  • #​6757: Added the assertion_text_diff_style configuration option, allowing
    string equality failures to be rendered as separate Left: and Right:
    blocks instead of ndiff output.

  • #​8395: Added support for ~datetime.datetime and ~datetime.timedelta comparisons with pytest.approx. An explicit abs or rel tolerance as a ~datetime.timedelta is required and relative tolerance is not supported for datetime comparisons -- by hamza-mobeen.

Improvements in existing functionality
  • #​11225: pytest.warns now shows "Regex pattern did not match" instead of "DID NOT WARN" when warnings were emitted but the match pattern did not match.

  • #​11295: Improved output of --fixtures-per-test by excluding internal-implementation fixtures generated by @pytest.mark.parametrize and similar.

  • #​13241: pytest.raises, pytest.warns and pytest.deprecated_call now uses ParamSpec for the type hint to the (old and not recommended) callable overload, instead of Any. This allows type checkers to raise errors when passing incorrect function parameters.
    func can now also be passed as a kwarg, which the type hint previously showed as possible but didn't accept.

  • #​13862: Improved the readability of "DID NOT RAISE" error messages by using the exception type's name instead of its repr.

  • #​14026: Added test coverage for compiled regex patterns in pytest.raises match parameter.

  • #​14137: pytest.ScopeName is now public to allow using it in function signatures.

  • #​14342: Marked yield_fixture as deprecated to type checkers using the deprecated decorator. Note it
    has originally been deprecated <yield-fixture-deprecated> in pytest 6.2 already.

  • #​14373: Added type annotations for pytest.approx.

  • #​14430: When using --setup-show, a space is now printed after the test name (and possibly used fixtures), to separate it from the test result.

  • #​14441: Reduced the default number of gc.collect() passes in the unraisableexception plugin from 5 to 1 on CPython, where reference counting makes a single pass sufficient. PyPy retains 5 passes due to object resurrection via __del__. This can noticeably speed up test suites that trigger many pytester runs.

  • #​14461: Improved assertion failure explanations for equality comparisons between mapping objects that are not dict instances.

  • #​14513: The order in which fixture definitions overriding each other are resolved is now determined first by their visibility in the collection tree rather than by the order in which they are registered.

    A fixture defined for a more specific node (e.g. a module or an item) now always takes precedence over one with the same name defined for a more general node (e.g. the session), even when the more general one was registered later.
    Fixtures with non-comparable visibility or the same visibility keep the existing behavior of "last registered wins".
    This change is supposed to only affect plugins which register multiple fixtures programmatically with the same name.

  • #​14524: Add official Python 3.15 support.

  • #​1764: Improved argparse program name to show pytest, python -m pytest, or pytest.main() based on how pytest was invoked, making help and error messages clearer.

  • #​8265: Emit a PytestCollectionWarning when a module-level __getattr__ returns None for pytestmark instead of raising AttributeError.

    Previously this caused a cryptic TypeError: got None instead of Mark error.
    Now pytest issues a helpful warning and continues collecting the module normally.

Bug fixes
  • #​13192: Fixed | (pipe) not being treated as a regex meta-character that needs escaping in pytest.raises(match=...) <pytest.raises>.

  • #​13484: Fixed -W option values being duplicated in Config.known_args_namespace.

  • #​13626: Fixed function-scoped fixture values being kept alive after a test was interrupted by KeyboardInterrupt or early exit,
    allowing them to potentially be released more promptly.

  • #​13784: Fixed capteesys producing doubled output when used with --capture=no (-s).

  • #​13817: Fixed a secondary AttributeError masking the original error when an option argument fails to initialize.

  • #​13884: Fixed rare internal IndexError caused by builtins.compile being overridden in client code.

  • #​13885: Fixed autouse fixtures defined inside a unittest.TestCase class running even when the class is decorated with unittest.skip or unittest.skipIf -- regression since pytest 8.1.0.

  • #​13917: unittest.SkipTest is no longer considered an interactive exception, i.e. pytest_exception_interact is no longer called for it.

  • [#​13963](https://redirect.github.com/pytest-dev/pyte

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "every weekend"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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 if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot requested review from drepelov and rbikar as code owners March 8, 2026 09:09
@github-actions

github-actions Bot commented Mar 8, 2026

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@codecov-commenter

codecov-commenter commented Mar 8, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (eaf7fe6) to head (c4f1da2).

Additional details and impacted files
@@            Coverage Diff            @@
##            master      #328   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           21        21           
  Lines         1319      1319           
=========================================
  Hits          1319      1319           
Flag Coverage Δ
unit-tests 100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions

github-actions Bot commented Mar 9, 2026

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

github-actions Bot commented Mar 9, 2026

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@renovate renovate Bot force-pushed the renovate/all branch from 2148051 to 21b12c2 Compare May 9, 2026 00:27
@github-actions

github-actions Bot commented May 9, 2026

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@renovate renovate Bot force-pushed the renovate/all branch from 21b12c2 to 4e2ff80 Compare May 9, 2026 01:59
@github-actions

github-actions Bot commented May 9, 2026

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@renovate renovate Bot force-pushed the renovate/all branch from 4e2ff80 to 09aaaa1 Compare May 11, 2026 04:46
@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@renovate renovate Bot force-pushed the renovate/all branch from 09aaaa1 to f9f9918 Compare May 11, 2026 07:03
@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@renovate renovate Bot force-pushed the renovate/all branch from f9f9918 to a896cb7 Compare May 11, 2026 08:34
@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

@renovate renovate Bot force-pushed the renovate/all branch 8 times, most recently from c3076c8 to 6a0fc1d Compare May 18, 2026 06:58
@renovate renovate Bot force-pushed the renovate/all branch 9 times, most recently from b87ecd8 to 3032957 Compare May 25, 2026 17:33
@renovate renovate Bot force-pushed the renovate/all branch from 3032957 to 520e4ef Compare May 26, 2026 09:55
@github-actions

Copy link
Copy Markdown

Warning: The mypy type checker has found some errors. See the mypy job for details

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant