Fix error reporting on cached run after uninstallation of third party library (Shantanu, PR 17420)
Acknowledgements
Thanks to all mypy contributors who contributed to this release:
Alex Waygood
Ali Hamdan
Edward Paget
Evgeniy Slobodkin
Hashem
hesam
Hugo van Kemenade
Ihor
James Braza
Jelle Zijlstra
jhance
Jukka Lehtosalo
Loïc Simon
Marc Mueller
Matthieu Devlin
Michael R. Crusoe
Nikita Sobolev
Oskari Lehto
Riccardo Di Maio
Richard Si
roberfi
Roman Solomatin
Sam Xifaras
Shantanu
Spencer Brown
Srinivas Lade
Tamir Duberstein
youkaichao
I’d also like to thank my employer, Dropbox, for supporting mypy development.
Mypy 1.9
We’ve just uploaded mypy 1.9 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features, performance improvements 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.
Breaking Changes
Because the version of typeshed we use in mypy 1.9 doesn't support 3.7, neither does mypy 1.9. (Jared Hance, PR 16883)
... (truncated)
Commits
c28b525 [1.10 backport] Fix error reporting on cached run after uninstallation of thi...
#12355: Fix possible catastrophic performance slowdown on a certain parametrization pattern involving many higher-scoped parameters.
#12367: Fix a regression in pytest 8.2.0 where unittest class instances (a fresh one is created for each test) were not released promptly on test teardown but only on session teardown.
#12381: Fix possible "Directory not empty" crashes arising from concurent cache dir (.pytest_cache) creation. Regressed in pytest 8.2.0.
Improved Documentation
#12290: Updated Sphinx theme to use Furo instead of Flask, enabling Dark mode theme.
#12356: Added a subsection to the documentation for debugging flaky tests to mention
lack of thread safety in pytest as a possible source of flakyness.
#12363: The documentation webpages now links to a canonical version to reduce outdated documentation in search engine results.
8.2.1
pytest 8.2.1 (2024-05-19)
Improvements
#12334: Support for Python 3.13 (beta1 at the time of writing).
Bug Fixes
#12120: Fix [PermissionError]{.title-ref} crashes arising from directories which are not selected on the command-line.
#12191: Keyboard interrupts and system exits are now properly handled during the test collection.
#12300: Fixed handling of 'Function not implemented' error under squashfuse_ll, which is a different way to say that the mountpoint is read-only.
#12308: Fix a regression in pytest 8.2.0 where the permissions of automatically-created .pytest_cache directories became rwx------ instead of the expected rwxr-xr-x.
Trivial/Internal Changes
#12333: pytest releases are now attested using the recent Artifact Attestation support from GitHub, allowing users to verify the provenance of pytest's sdist and wheel artifacts.
8.2.0
pytest 8.2.0 (2024-04-27)
Deprecations
#12069: A deprecation warning is now raised when implementations of one of the following hooks request a deprecated py.path.local parameter instead of the pathlib.Path parameter which replaced it:
Silence deprecation warnings about unclosed event loops that occurred with certain CPython patch releases #817
Known issues
As of v0.23, pytest-asyncio attaches an asyncio event loop to each item of the test suite (i.e. session, packages, modules, classes, functions) and allows tests to be run in those loops when marked accordingly. Pytest-asyncio currently assumes that async fixture scope is correlated with the new event loop scope. This prevents fixtures from being evaluated independently from the event loop scope and breaks some existing test suites (see #706). For example, a test suite may require all fixtures and tests to run in the same event loop, but have async fixtures that are set up and torn down for each module. If you're affected by this issue, please continue using the v0.21 release, until it is resolved.
Support for loading distutils from the standard library is now deprecated, including use of SETUPTOOLS_USE_DISTUTILS=stdlib and importing distutils before importing setuptools. (#4137)
Bugfixes
pypa/distutils#268
v70.2.0
Features
Updated distutils including significant changes to support Cygwin and mingw compilers. (#4444)
Bugfixes
Fix distribution name normalisation (:pep:625) for valid versions that are
not canonical (e.g. 1.0-2). (#4434)
* Babel 2.15.0 will require Python 3.8 or newer. (:gh:`1048`)
Features
* CLDR: Upgrade to CLDR 44 (:gh:`1071`) (@akx)
* Dates: Support for the "fall back to short format" logic for time delta formatting (:gh:`1075`) (@akx)
* Message: More versatile .po IO functions (:gh:`1068`) (@akx)
* Numbers: Improved support for alternate spaces when parsing numbers (:gh:`1007`) (@ronnix's first contribution)
Infrastructure
Upgrade GitHub Actions (:gh:1054) (@cclauss's first contribution)
The Unicode license is now included in locale-data and in the documentation (:gh:1074) (@akx)
Exclusion patterns can now be multi-line, thanks to Daniel Diniz <pull 1807_>. This enables many interesting exclusion use-cases, including those
requested in issues 118 <issue 118_> (entire files), 996 <issue 996_>_ (multiple lines only when appearing together), 1741 <issue 1741_>_ (remainder of a function), and 1803 <issue 1803_>_
(arbitrary sequence of marked lines). See the :ref:multi_line_exclude
section of the docs for more details and examples.
The JSON report now includes per-function and per-class coverage information.
Thanks to Daniel Diniz <pull 1809_>_ for getting the work started. This
closes issue 1793_ and issue 1532_.
Fixed an incorrect calculation of "(no class)" lines in the HTML classes
report.
If you attempt to combine statement coverage data with branch coverage data,
coverage.py used to fail with the message "Can't combine arc data with line
data" or its reverse, "Can't combine line data with arc data." These
messages used internal terminology, making it hard for people to understand
the problem. They are now changed to mention "branch coverage data" and
"statement coverage data."
Fixed a minor branch coverage problem with wildcard match/case cases using
names or guard clauses.
Started testing on 3.13 free-threading (nogil) builds of Python. I'm not
claiming full support yet. Closes issue 1799_.
This library adheres to Semantic Versioning 2.0 <http://semver.org/>_.
1.2.2
Removed an assert in exceptiongroup._formatting that caused compatibility
issues with Sentry ([#123](https://github.com/agronholm/exceptiongroup/issues/123) <https://github.com/agronholm/exceptiongroup/issues/123>_)
1.2.1
Updated the copying of __notes__ to match CPython behavior (PR by CF Bolz-Tereick)
Corrected the type annotation of the exception handler callback to accept a
BaseExceptionGroup instead of BaseException
Fixed type errors on Python < 3.10 and the type annotation of suppress()
(PR by John Litborn)
1.2.0
Added special monkeypatching if Apport <https://github.com/canonical/apport>_ has
overridden sys.excepthook so it will format exception groups correctly
(PR by John Litborn)
Added a backport of contextlib.suppress() from Python 3.12.1 which also handles
suppressing exceptions inside exception groups
Fixed bare raise in a handler reraising the original naked exception rather than
an exception group which is what is raised when you do a raise in an except*
handler
1.1.3
catch() now raises a TypeError if passed an async exception handler instead of
just giving a RuntimeWarning about the coroutine never being awaited. (#66, PR by
John Litborn)
Fixed plain raise statement in an exception handler callback to work like a
raise in an except* block
Fixed new exception group not being chained to the original exception when raising an
exception group from exceptions raised in handler callbacks
Fixed type annotations of the derive(), subgroup() and split() methods to
match the ones in typeshed
1.1.2
Changed handling of exceptions in exception group handler callbacks to not wrap a
single exception in an exception group, as per
CPython issue 103590 <https://github.com/python/cpython/issues/103590>_
Bumps the development-dependencies group with 29 updates in the / directory:
24.4.0
24.4.2
3.9.1
3.27.0
1.9.0
1.10.1
5.1.0.20240311
5.1.0.20240425
8.1.1
8.2.2
0.23.6
0.23.7
9.5.18
9.5.29
69.5.1
70.3.0
3.1.6
3.3.0
2.14.0
2.15.0
7.4.4
7.6.0
0.6.1
0.6.2
1.2.0
1.2.2
3.13.4
3.15.4
2.5.35
2.6.0
6.11.0
8.0.0
1.8.0
1.9.1
24.0
24.1
4.2.0
4.2.2
5.9.8
6.0.0
2.17.2
2.18.0
10.7.1
10.8.1
1.10.0
2.0.1
2024.4.16
2024.5.15
0.12.4
0.13.0
4.11.0
4.12.2
20.25.3
20.26.3
4.0.0
4.0.1
3.18.1
3.19.2
Updates
black
from 24.4.0 to 24.4.2Release notes
Sourced from black's releases.
Changelog
Sourced from black's changelog.
Commits
3702ba2
Prepare release 24.4.2 (#4335)e4aaa8a
Fix incorrect f-string tokenization (#4332)ba88fc3
Simplify string tokenization regexes (#4331)5683242
New release templatee7fb048
Prepare release 24.4.1 (#4328)3f0f8f1
Support PEP 696 (#4327)2f88085
Github Action: Directly install from repo ifexport-subst
is skipped (#4313)12ce3db
Move changelog entry to right section (#4326)1354be2
Add support to style function definitions with newlines before function stubs...f4b644b
Prevent wrapping of multiline fstrings in parens (#4325)Updates
commitizen
from 3.9.1 to 3.27.0Release notes
Sourced from commitizen's releases.
... (truncated)
Changelog
Sourced from commitizen's changelog.
... (truncated)
Commits
e9aa5d9
bump: version 3.26.2 → 3.27.0912fda8
test: extend tests for 'TestJsonConfig' and 'TestYamlConfig'4bf8ca6
feat(config_files): add suport for "cz.toml" config file642fe8c
bump: version 3.26.1 → 3.26.23761124
fix(base.py): add encoding when open changlelog_fileee14038
docs: fix a few typos in CHANGELOG.md and .pre-commit-hooks.yamlc18c6a6
docs(cli/screenshots): update CLI screenshotsae73429
bump: version 3.26.0 → 3.26.18f4dbe9
test(commands): add skip_if_below_py_3_10 as the message of argument changes ...4636e50
refactor(KNOWN_SCHEMES): replace set comprehension for list comprehensionUpdates
mypy
from 1.9.0 to 1.10.1Changelog
Sourced from mypy's changelog.
... (truncated)
Commits
c28b525
[1.10 backport] Fix error reporting on cached run after uninstallation of thi...3faf0fc
Remove +dev for version for release 1.10a5998d2
Update CHANGELOG.md (#17159)62ea5b0
Various updates to changelog for 1.10 (#17158)2f0864c
Update CHANGELOG.md with draft for release 1.10 (#17150)e1443bb
fix: incorrect returned type of access descriptors on unions of types (#16604)5161ac2
Sync typeshed (#17124)e2fc1f2
Fix crash when expanding invalid Unpack in aCallable
alias (#17028)3ff6e47
Docs: docstrings in checker.py, ast_helpers.py (#16908)732d98e
Fix string formatting for string enums (#16555)Updates
types-mock
from 5.1.0.20240311 to 5.1.0.20240425Commits
Updates
pytest
from 8.1.1 to 8.2.2Release notes
Sourced from pytest's releases.
... (truncated)
Commits
329d371
Prepare release version 8.2.2214d098
Merge pull request #12414 from bluetech/backport-12409153a436
[8.2.x] fixtures: fix catastrophic performance problem inreorder_items
b41d5a5
Merge pull request #12412 from pytest-dev/backport-12408-to-8.2.x9bb73d7
[8.2.x] cacheprovider: fix "Directory not empty" crash from cache directory c...4569a01
[8.2.x] doc: Update trainings/events (#12402)1d103e5
[8.2.x] Clarify pytest_ignore_collect docs (#12386)240a252
[8.2.x] Add html_baseurl to sphinx conf.py (#12372)a5ee3c4
Merge pull request #12370 from pytest-dev/backport-12368-to-8.2.xf7358ae
[8.2.x] unittest: fix class instances no longer released on test teardown sin...Updates
pytest-asyncio
from 0.23.6 to 0.23.7Release notes
Sourced from pytest-asyncio's releases.
Commits
eb63d5a
docs: Prepared for release of v0.23.7.da04a7a
Build(deps): Bump exceptiongroup in /dependencies/default00c667a
Build(deps): Bump pytest from 8.1.1 to 8.2.0 in /dependencies/default3bd9cd8
[docs] Add changelog entry.15544f0
Revert GitHub Actions and Tox changes.6316b28
Deduplicate simplefilter snippet.3ffdfc5
asyncio.run(port_afinalizer())0107fd7
Remove extra space.3bf700a
Fix GH Action mapping.d15dc31
Fix 3109/3108 typo.Updates
mkdocs-material
from 9.5.18 to 9.5.29Release notes
Sourced from mkdocs-material's releases.
... (truncated)
Changelog
Sourced from mkdocs-material's changelog.
... (truncated)
Commits
4f8081c
Prepare 9.5.29 release33452c9
Fixed annotations in figure captions672c403
Documentation (#7361)c7c8fcb
Updated Galician translations5d1f77c
Documentationf5fea7c
Updated dependenciesbe7ab8a
Addednpm run fix
to fix ESLint errors (#7337)36e5263
Documentation73d50aa
Updated premium sponsors1b78c2c
Prepare 9.5.28 releaseUpdates
setuptools
from 69.5.1 to 70.3.0Changelog
Sourced from setuptools's changelog.
... (truncated)
Commits
356e9a0
Bump version: 70.2.0 → 70.3.0822280b
Merge pull request #4463 from pypa/bugfix/distutils-34f9518efc4e64c1
Add news fragment.b01183c
Merge https://github.com/pypa/distutils into bugfix/distutils-34f9518efe221581
Merge pull request pypa/distutils#267 from msys2-contrib/customize_compiler_m...34f9518
Merge pull request #4410 from pypa/debt/4137-deprecate-distutils-stdlibbacd9c6
sysconfig: skip customize_compiler() with MSVC Python again4a3406b
CI: also set CC/CXX when pip installing with mingw+clange9f0be9
Merge pull request #4453 from pypa/drop-gitignore70cda3d
Use '.yml' for consistency.Updates
argcomplete
from 3.1.6 to 3.3.0Release notes
Sourced from argcomplete's releases.
Changelog
Sourced from argcomplete's changelog.
Commits
c7cc834
v3.3.054a4846
Preserve compatibility with argparse option tuples of length 4057faff
ruff: preserve quote style9077be9
v3.2.3dd79ddf
Lazy completion loading for Zsh (#475)521082e
Conform to black formattingeafe0a3
Move debug_stream initialization to helper method (#471)2a6c23b
v3.2.29e9bd63
Expand tilde in zsh0be05e9
v3.2.1Updates
babel
from 2.14.0 to 2.15.0Release notes
Sourced from babel's releases.
Changelog
Sourced from babel's changelog.
Commits
40b194f
Prepare for 2.15.0 release (#1079)c2e6c6e
Encode support for the "fall back to short format" logic for time delta forma...1a03526
Include Unicode license inlocale-data
and in documentation (#1074)c0fb56e
Allow alternative space characters as group separator when parsing numbers (#...fe82fbc
Use CLDR 44 and adjust tests to match new data (#1071)e0d1018
Improve .po IO (#1068)40e60a1
Upgrade GitHub Actions (#1054)2a1709a
Drop support for Python 3.7 (EOL since June 2023) (#1048)Updates
coverage
from 7.4.4 to 7.6.0Changelog
Sourced from coverage's changelog.
... (truncated)
Commits
59a3cd7
docs: sample HTML for 7.6.07f27fa7
docs: prep for 7.6.06a268b0
docs: issues closed by the json region reporting5bfe9e7
chore: bump actions/setup-python from 5.1.0 to 5.1.1 (#1814)ab609ef
docs: mention json region reporting in the changes92d96b9
fix: json report needs 'no class' and 'no function' alsoe47e7e7
refactor: move duplicate code into methods3d6be2b
fix: json format should bump for regionsa9992d2
test: add a test of json regions with branches8b89764
test: json expectations should have explicit format numberUpdates
decli
from 0.6.1 to 0.6.2Updates
exceptiongroup
from 1.2.0 to 1.2.2Release notes
Sourced from exceptiongroup's releases.
Changelog
Sourced from exceptiongroup's changelog.
... (truncated)
Commits
2399d54
Added the release versionbec9651
Removed problematic assert that caused compatibility issuesf3f0ff6
Updated Ruff configurationbb43ee0
Fixed formatting tests failing on Python 3.13eb8fbbc
[pre-commit.ci] pre-commit autoupdate (#129)6ff8300
[pre-commit.ci] pre-commit autoupdate (#128)761933f
[pre-commit.ci] pre-commit autoupdate (#127)1b43294
[pre-commit.ci] pre-commit autoupdate (#125)dd87018
[pre-commit.ci] pre-commit autoupdate (#124)54d8b8d
[pre-commit.ci] pre-commit autoupdate (#121)Updates
filelock
from 3.13.4 to 3.15.4Release notes
Sourced from filelock's releases.