Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 16, 2025

Bumps the minor group with 5 updates in the / directory:

Package From To
mypy 1.15.0 1.16.0
types-setuptools 80.3.0.20250505 80.9.0.20250529
pytest 8.3.5 8.4.0
hypothesis 6.131.9 6.135.10
setuptools 80.3.1 80.9.0

Updates mypy from 1.15.0 to 1.16.0

Changelog

Sourced from mypy's changelog.

Mypy Release Notes

Next Release

Remove Support for targeting Python 3.8

Mypy now requires --python-version 3.9 or greater. Support for only Python 3.8 is fully removed now. Given an unsupported version, mypy will default to the oldest supported one, currently 3.9.

This change is necessary because typeshed stopped supporting Python 3.8 after it reached its End of Life in October 2024.

Contributed by Marc Mueller (PR 19157, PR 19162).

Initial Support for Python 3.14

Mypy is now tested on 3.14 and mypyc works with 3.14.0b3 and later. Mypyc compiled wheels of mypy itself will be available for new versions after 3.14.0rc1 is released.

Note that not all new features might be supported just yet.

Contributed by Marc Mueller (PR 19164)

Deprecated Flag: --force-uppercase-builtins

Mypy only supports Python 3.9+. The --force-uppercase-builtins flag is now deprecated and a no-op. It will be removed in a future version.

Contributed by Marc Mueller (PR 19176)

Mypy 1.16

We’ve just uploaded mypy 1.16 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features and bug fixes. You can install it as follows:

python3 -m pip install -U mypy

You can read the full documentation for this release on Read the Docs.

Different Property Getter and Setter Types

Mypy now supports using different types for a property getter and setter:

class A:
    _value: int
@property

</tr></table>

... (truncated)

Commits
  • 9e72e96 Update version to 1.16.0
  • 8fe719f Add changelog for 1.16 (#19138)
  • 2a036e7 Revert "Infer correct types with overloads of Type[Guard | Is] (#19161)
  • b6da4fc Allow enum members to have type objects as values (#19160)
  • 334469f [mypyc] Improve documentation of native and non-native classes (#19154)
  • a499d9f Document --allow-redefinition-new (#19153)
  • 96525a2 Merge commit '9e45dadcf6d8dbab36f83d9df94a706c0b4f9207' into release-1.16
  • 9e45dad Clear more data in TypeChecker.reset() instead of asserting (#19087)
  • 772cd0c Add --strict-bytes to --strict (#19049)
  • 0b65f21 Admit that Final variables are never redefined (#19083)
  • Additional commits viewable in compare view

Updates types-setuptools from 80.3.0.20250505 to 80.9.0.20250529

Commits

Updates pytest from 8.3.5 to 8.4.0

Release notes

Sourced from pytest's releases.

8.4.0

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.

... (truncated)

Commits
  • 315b3ae Prepare release version 8.4.0
  • 1498ba3 Merge pull request #13467 from pytest-dev/towncrier-create
  • e4389ac Remove resultlog from the docs (#13465)
  • 64b2301 scripts/release: add missing build to towncrier call
  • 4c205cf testing/plugins_integration: update Django (#13463)
  • 4dcbcc9 Merge pull request #13458 from pytest-dev/dup-param-error
  • 5293016 Merge pull request #13459 from pytest-dev/pyright-minor-fixes
  • 7a48181 Add pyright configuration
  • 9fc6db9 pytester: avoid confusing x self parameter
  • 9aa198b mark/expression: fix self -> cls
  • Additional commits viewable in compare view

Updates hypothesis from 6.131.9 to 6.135.10

Release notes

Sourced from hypothesis's releases.

Hypothesis for Python - version 6.135.10

Fix a rare race condition in "fetch()", where we might have read from a non-existent directory.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.9

Refactor some internal code related to patches to make it easier to test.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.8

Add type hints to internal code for patching.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.7

Fixes a race condition in "add_listener()" for "DirectoryBasedExampleDatabase" after version 6.135.1 where the listener might have tried to read a file that doesn't exist.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.6

This patch corrects the f-string formatting of a few array-related error messages.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.5

Improve the error message when applying "@​given" to a pytest fixture with pytest 8.4.0.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.4

Further improve the performance of the constants-collection feature introduced in version 6.131.1, by ignoring large files and files with many constants.

The canonical version of these notes (with links) is on readthedocs.

Hypothesis for Python - version 6.135.3

This release adds the experimental and unstable "OBSERVABILITY_CHOICES" option for observability. If set, the choice sequence is included in "metadata.choice_nodes", and choice sequence spans are included in "metadata.choice_spans".

These are relatively low-level implementation detail of Hypothesis,

... (truncated)

Commits
  • 2578b70 Bump hypothesis-python version to 6.135.10 and update changelog
  • aaeab32 Merge pull request #4438 from tybug/db-race
  • 8a5775d typo
  • 06cfd37 fix rare race condition
  • 8c25be6 Bump hypothesis-python version to 6.135.9 and update changelog
  • 0ab579a Merge pull request #4437 from tybug/patching
  • 5bed6d6 format
  • 9defe1a fix edge case in constants test
  • 7271f61 Merge branch 'master' into patching
  • ea3e01d Bump hypothesis-python version to 6.135.8 and update changelog
  • Additional commits viewable in compare view

Updates setuptools from 80.3.1 to 80.9.0

Changelog

Sourced from setuptools's changelog.

v80.9.0

Features

  • Set a deadline for the removal of pkg_resources later this year (December). (#3085)
  • Removed reliance on pkg_resources in test_wheel. (#3085)

v80.8.0

Features

  • Replaced more references to pkg_resources with importlib equivalents in wheel odule. (#3085)
  • Restore explicit LICENSE file. (#5001)
  • Removed no longer used build dependency on coherent.licensed. (#5003)

v80.7.1

Bugfixes

  • Only attempt to fetch eggs for unsatisfied requirements. (#4998)
  • In installer, when discovering egg dists, let metadata discovery search each egg. (#4998)

v80.7.0

Features

  • Removed usage of pkg_resources from installer. Set an official deadline on the installer deprecation to 2025-10-31. (#4997)

Misc

v80.6.0

Features

... (truncated)

Commits
  • 9c4d383 Bump version: 80.8.0 → 80.9.0
  • 05cb3c8 Merge pull request #5014 from pypa/debt/pkg_resources-deadline
  • 3b0bf5b Adjust ignore
  • 9c28cdf Set a deadline for the removal of pkg_resources later this year (December).
  • a3bfef9 Merge pull request #5013 from DimitriPapadopoulos/ISC
  • 64bf9d0 Enforce ruff/flake8-implicit-str-concat rules (ISC)
  • 3250c25 Fix broken link in docs (#4947)
  • 5ccf50e Merge pull request #5006 from pypa/feature/remove-more-pkg_resources
  • 134e587 Suppress nitpicky typecheck in pyright.
  • 0bf2663 Add news fragment.
  • Additional commits viewable in compare view

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 commands and options

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

Bumps the minor group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.16.0` |
| [types-setuptools](https://github.com/typeshed-internal/stub_uploader) | `80.3.0.20250505` | `80.9.0.20250529` |
| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.0` |
| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.9` | `6.135.10` |
| [setuptools](https://github.com/pypa/setuptools) | `80.3.1` | `80.9.0` |



Updates `mypy` from 1.15.0 to 1.16.0
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](python/mypy@v1.15.0...v1.16.0)

Updates `types-setuptools` from 80.3.0.20250505 to 80.9.0.20250529
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

Updates `pytest` from 8.3.5 to 8.4.0
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](pytest-dev/pytest@8.3.5...8.4.0)

Updates `hypothesis` from 6.131.9 to 6.135.10
- [Release notes](https://github.com/HypothesisWorks/hypothesis/releases)
- [Commits](HypothesisWorks/hypothesis@hypothesis-python-6.131.9...hypothesis-python-6.135.10)

Updates `setuptools` from 80.3.1 to 80.9.0
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](pypa/setuptools@v80.3.1...v80.9.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor
- dependency-name: types-setuptools
  dependency-version: 80.9.0.20250529
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor
- dependency-name: pytest
  dependency-version: 8.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor
- dependency-name: hypothesis
  dependency-version: 6.135.10
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor
- dependency-name: setuptools
  dependency-version: 80.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added part:tooling Affects the development tooling (CI, deployment, dependency management, etc.) type:tech-debt Improves the project without visible changes for users labels Jun 16, 2025
@dependabot dependabot bot requested a review from a team as a code owner June 16, 2025 16:43
@dependabot dependabot bot requested review from florian-wagner-frequenz and removed request for a team June 16, 2025 16:43
@dependabot dependabot bot added the part:tooling Affects the development tooling (CI, deployment, dependency management, etc.) label Jun 16, 2025
@dependabot dependabot bot added the type:tech-debt Improves the project without visible changes for users label Jun 16, 2025
@florian-wagner-frequenz
Copy link
Contributor

So it seems like pytest may have changed signatures between the versions.

@llucax
Copy link
Contributor

llucax commented Jun 17, 2025

CI failing because of a new failed mypy check:

nox > mypy 
tests/config/test_util.py:63: error: Argument 2 to "load_config" has incompatible type "Any | None"; expected "Mapping[str, Any]"  [arg-type]

Probably an easy fix.

@llucax
Copy link
Contributor

llucax commented Jun 17, 2025

So it seems like pytest may have changed signatures between the versions.

I didn't get what you mean by this 🤔

@florian-wagner-frequenz
Copy link
Contributor

So it seems like pytest may have changed signatures between the versions.

I didn't get what you mean by this 🤔

I mean that probably pytest changed a signature of something which is causing mypy to fail?
I will look into it.

@florian-wagner-frequenz
Copy link
Contributor

Okay, it seems you're right and I was led astray by it occuring in the context of a test. Seems that mypy is now flagging something it didn't flag before. I will just fix it since it's in a test.

@llucax
Copy link
Contributor

llucax commented Jun 17, 2025

Yeah, eventually I would like to split linting from testing, because linting usually can be done one time (we don't need to lint on all archs and python version) and testing we need to do in the matrix.

@florian-wagner-frequenz
Copy link
Contributor

Yeah, eventually I would like to split linting from testing, because linting usually can be done one time (we don't need to lint on all archs and python version) and testing we need to do in the matrix.

I mean in this case it wouldn't have saved us as the lint was from a test case (see the fixing PR), but I agree with splitting testing out. Linting, format checking etc. are based on the source code and not the target, so they can happen either as a pre-step or in parallel to the test-matrix.

@florian-wagner-frequenz
Copy link
Contributor

@dependabot rebase

@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Jun 24, 2025

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabot dependabot bot closed this Jun 24, 2025
@dependabot dependabot bot deleted the dependabot/pip/minor-31b71e2e8d branch June 24, 2025 13:49
@github-project-automation github-project-automation bot moved this from To do to Done in Python SDK Roadmap Jun 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

part:tooling Affects the development tooling (CI, deployment, dependency management, etc.) type:tech-debt Improves the project without visible changes for users

Projects

Development

Successfully merging this pull request may close these issues.

2 participants