Fix: a pragma comment on the continuation lines of a multi-line statement
now excludes the statement and its body, the same as if the pragma is
on the first line. This closes issue 754. The fix was contributed by
Daniel Diniz <pull 1773_>.
Fix: very complex source files like this one <resolvent_lookup_>_ could
cause a maximum recursion error when creating an HTML report. This is now
fixed, closing issue 1774_.
HTML report improvements:
Support files (JavaScript and CSS) referenced by the HTML report now have
hashes added to their names to ensure updated files are used instead of
stale cached copies.
Missing branch coverage explanations that said "the condition was never
false" now read "the condition was always true" because it's easier to
understand.
Column sort order is remembered better as you move between the index pages,
fixing issue 1766. Thanks, Daniel Diniz <pull 1768_>.
Added initial support for function and class reporting in the HTML report.
There are now three index pages which link to each other: files, functions,
and classes. Other reports don't yet have this information, but it will be
added in the future where it makes sense. Feedback gladly accepted!
Finishes issue 780_.
Other HTML report improvements:
There is now a "hide covered" checkbox to filter out 100% files, finishing
issue 1384_.
#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:
pytest_ignore_collect{.interpreted-text role="hook"} - the path parameter - use collection_path instead.
pytest_collect_file{.interpreted-text role="hook"} - the path parameter - use file_path instead.
pytest_pycollect_makemodule{.interpreted-text role="hook"} - the path parameter - use module_path instead.
pytest_report_header{.interpreted-text role="hook"} - the startdir parameter - use start_path instead.
pytest_report_collectionfinish{.interpreted-text role="hook"} - the startdir parameter - use start_path instead.
The replacement parameters are available since pytest 7.0.0.
The old parameters will be removed in pytest 9.0.0.
See legacy-path-hooks-deprecated{.interpreted-text role="ref"} for more details.
Features
#11871: Added support for reading command line arguments from a file using the prefix character @, like e.g.: pytest @tests.txt. The file must have one argument per line.
See Read arguments from file <args-from-file>{.interpreted-text role="ref"} for details.
Improvements
#11523: pytest.importorskip{.interpreted-text role="func"} will now issue a warning if the module could be found, but raised ImportError{.interpreted-text role="class"} instead of ModuleNotFoundError{.interpreted-text role="class"}.
The warning can be suppressed by passing exc_type=ImportError to pytest.importorskip{.interpreted-text role="func"}.
See import-or-skip-import-error{.interpreted-text role="ref"} for details.
#11728: For unittest-based tests, exceptions during class cleanup (as raised by functions registered with TestCase.addClassCleanup <unittest.TestCase.addClassCleanup>{.interpreted-text role="meth"}) are now reported instead of silently failing.
#11777: Text is no longer truncated in the short test summary info section when -vv is given.
#12112: Improved namespace packages detection when consider_namespace_packages{.interpreted-text role="confval"} is enabled, covering more situations (like editable installs).
#9502: Added PYTEST_VERSION{.interpreted-text role="envvar"} environment variable which is defined at the start of the pytest session and undefined afterwards. It contains the value of pytest.__version__, and among other things can be used to easily check if code is running from within a pytest run.
Bug Fixes
#12065: Fixed a regression in pytest 8.0.0 where test classes containing setup_method and tests using @staticmethod or @classmethod would crash with AttributeError: 'NoneType' object has no attribute 'setup_method'.
Now the request.instance <pytest.FixtureRequest.instance>{.interpreted-text role="attr"} attribute of tests using @staticmethod and @classmethod is no longer None, but a fresh instance of the class, like in non-static methods.
- Add support for multiple appending override options (-x, --override) on command line - by :user:`amitschang`. (:issue:`3261`)
- Add support for inverting exit code success criteria using bang (!) (:issue:`3271`)
Bugfixes - 4.15.0
Fix issue that the leading character c was dropped from packages in constraints files - by :user:jugmac00. (:issue:3247)
Allow appending to deps with --override testenv.deps+=foo - by :user:stefanor. (:issue:3256)
Fix non-existing branch rewrite in the documentation to main. (:issue:3257)
Update test typing for build 1.2.0, which has an explicit Distribution type - by :user:stefanor. (:issue:3260)
Fix broken input parsing for --discover flag. - by :user:mimre25 (:issue:3272)
Improved Documentation - 4.15.0
- Rephrase ``--discover`` flag's description to avoid confusion between paths and executables. - by :user:`mimre25` (:issue:`3274`)
v4.14.2 (2024-03-22)
Bugfixes - 4.14.2
- Add provision arguments to ToxParser to fix crash when provisioning new tox environment without list-dependencies by :user:`seyidaniels` (:issue:`3190`)
Improved Documentation - 4.14.2
</code></pre>
<ul>
<li>Removed unused line from the 'fresh_subprocess' documentation. (:issue:<code>3241</code>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/tox-dev/tox/commit/261b4ca55686059489b1314c440f0e2fca21aca5"><code>261b4ca</code></a> release 4.15.0</li>
<li><a href="https://github.com/tox-dev/tox/commit/c54dfbd9ad4aad9f0ef5503b7dff2558cdf64208"><code>c54dfbd</code></a> fix(parser): Fix --discover parsed incorrectly from env (<a href="https://redirect.github.com/tox-dev/tox/issues/3274">#3274</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/809e10f9871e75cf7b07063f47393f9c10861174"><code>809e10f</code></a> Add bang to invert exit code (<a href="https://redirect.github.com/tox-dev/tox/issues/3271">#3271</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/822c9d07699aa090fb8d37cb94247ea0d085125b"><code>822c9d0</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/tox-dev/tox/issues/3267">#3267</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/0e5a3dbb9a1c7eb1df56421cc4bca5e187626ccd"><code>0e5a3db</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/tox-dev/tox/issues/3265">#3265</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/f5850c0d3a893cbb6d9de192fe8e6e857573499b"><code>f5850c0</code></a> Support multiple override appends (<a href="https://redirect.github.com/tox-dev/tox/issues/3261">#3261</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/c2be62972e7f7b3e79260e5c96e4fe5bf76f5929"><code>c2be629</code></a> Allow appending to deps with the command line (<a href="https://redirect.github.com/tox-dev/tox/issues/3259">#3259</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/d28a9ee0ea28b2356b24a0d0e0ed70c0141d41cc"><code>d28a9ee</code></a> Update installation.rst (<a href="https://redirect.github.com/tox-dev/tox/issues/3257">#3257</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/a19a9467cfae5a0fc2c1b6faf1845d412898c693"><code>a19a946</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/tox-dev/tox/issues/3258">#3258</a>)</li>
<li><a href="https://github.com/tox-dev/tox/commit/a22fe8ffce73acdfc2aefd70228ede0337aac19b"><code>a22fe8f</code></a> Fix type-checking (<a href="https://redirect.github.com/tox-dev/tox/issues/3260">#3260</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/tox-dev/tox/compare/4.14.1...4.15.0">compare view</a></li>
</ul>
</details>
<br />
Updates `babel` from 2.14.0 to 2.15.0
Release notes
* 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)
[#221](https://github.com/Kozea/cairocffi/issues/221) <https://github.com/Kozea/cairocffi/pull/225>_:
Add environment variable to set folder where DLLs are installed on Windows
[#225](https://github.com/Kozea/cairocffi/issues/225) <https://github.com/Kozea/cairocffi/pull/225>_:
Use Ruff instead of Flake8 and isort
Version 1.6.1
.............
Released on 2023-07-24
[#217](https://github.com/Kozea/cairocffi/issues/217) <https://github.com/Kozea/cairocffi/issues/217>_:
Repair installation with PyInstaller
Version 1.6.0
.............
Released on 2023-06-12
This version uses a new CFFI mode that may break your program.
CairoCFFI now uses Flit for packaging and is also distributed as a Python
wheel.
Please test carefully and don’t hesitate to report issues before using it in
production.
[#216](https://github.com/Kozea/cairocffi/issues/216) <https://github.com/Kozea/cairocffi/pull/216>_:
Use ABI-level in-line CFFI mode
Version 1.5.1
.............
Released on 2023-04-15
[#212](https://github.com/Kozea/cairocffi/issues/212) <https://github.com/Kozea/cairocffi/issues/212>_:
Bring back XCB support during wheel generation
* Restored Windows 7 compatibility for our pre-built wheels. Note that we do
not test on Windows 7 and wheels for our next release will not support it.
Microsoft no longer provides support for Windows 7 and users are encouraged
to upgrade.
This library adheres to Semantic Versioning 2.0 <http://semver.org/>_.
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>_
1.1.1
Worked around
CPython issue [#98778](https://github.com/agronholm/exceptiongroup/issues/98778) <https://github.com/python/cpython/issues/98778>_,
urllib.error.HTTPError(..., fp=None) raises KeyError on unknown attribute
access, on affected Python versions. (PR by Zac Hatfield-Dodds)
Bumps the dependencies group with 38 updates in the /.config directory:
7.4.3
7.5.1
8.1.1
8.2.0
0.6.1
0.7.0
4.14.1
4.15.0
2.14.0
2.15.0
1.1.1
1.2.1
1.6.1
1.7.0
42.0.5
42.0.7
0.20.1
0.21.2
1.2.0
1.2.1
3.13.1
3.14.0
3.1.42
3.1.43
3.6
3.7
7.0.2
7.1.0
3.3.1
3.4.0
3.1.3
3.1.4
24.3.1
25.2.0
3.5.2
3.6
1.8.0
1.8.1
1.5.3
1.6.0
1.2.0
1.2.1
9.5.13
9.5.21
0.2.15
0.2.17
23.2
24.0
10.2.0
10.3.0
2.16.1
2.20.0
4.2.0
4.2.1
1.4.0
1.5.0
2.21
2.22
2.17.2
2.18.0
10.7.1
10.8.1
1.0.0
1.1.0
2023.12.25
2024.5.10
1.2.1
1.3.0
0.9.0
0.12.3
4.10.0
4.11.0
20.25.1
20.26.1
3.17.0
3.18.1
Updates
coverage
from 7.4.3 to 7.5.1Changelog
Sourced from coverage's changelog.
... (truncated)
Commits
be938ea
docs: sample HTML for 7.5.102c66d7
docs: prep for 7.5.15fa9f67
fix: avoid max recursion errors in ast code. #177434af01d
build: easier to run metasmoke on desired python version6b0cac5
perf: cache _human_key to speed html report by about 10%fdc0ee8
docs: oops, typo60e6cb4
docs: changelog for #754 and #1773277c8c4
fix: '# pragma: no branch' in multiline if statements. #754 (#1773)34d3eb7
docs: update changelog for #1786. Thanks, Daniel Diniz2bb5ef2
fix(html): make HTML column sorting consistent across index pages (fix #1766)...Updates
pytest
from 8.1.1 to 8.2.0Release notes
Sourced from pytest's releases.
... (truncated)
Commits
6bd3f31
Tweak changelog for 8.2.09b6219b
Prepare release version 8.2.0835765c
Merge pull request #12130 from bluetech/fixtures-inline7e7503c
unittest: report class cleanup exceptions (#12250)882c4da
fixtures: inlinefail_fixturefunc
2e8fb9f
fixtures: extract a_check_fixturedef
methodacf2971
fixtures: inline_getnextfixturedef
into_get_active_fixturedef
3c77aec
fixtures: move "request" check earlyd217d68
fixtures: inline_compute_fixture_value
530be28
fixtures: use early return in_get_active_fixturedef
Updates
pytest-plus
from 0.6.1 to 0.7.0Release notes
Sourced from pytest-plus's releases.
Commits
ad5d88a
Upgrade GHA (#33)6569e74
Collect pytest logs on CI (#32)174d255
Bump actions/cache from 3 to 4 (#27)5e52042
Mention number of errors found (#31)Updates
tox
from 4.14.1 to 4.15.0Release notes
Sourced from tox's releases.
Changelog
Sourced from tox's changelog.
The following labels could not be found:
dependabot-deps-updates
.Looks like these dependencies are updatable in another way, so this is no longer needed.