See 8.0.0rc1 and 8.0.0rc2 for the full changes since pytest 7.4!
Bug Fixes
#11842: Properly escape the reason of a skip <pytest.mark.skip ref>{.interpreted-text role="ref"} mark when writing JUnit XML files.
#11861: Avoid microsecond exceeds 1_000_000 when using log-date-format with %f specifier, which might cause the test suite to crash.
8.0.0rc2
pytest 8.0.0rc2 (2024-01-17)
Improvements
#11233: Improvements to -r for xfailures and xpasses:
Report tracebacks for xfailures when -rx is set.
Report captured output for xpasses when -rX is set.
For xpasses, add - in summary between test name and reason, to match how xfail is displayed.
#11825: The pytest_plugin_registered{.interpreted-text role="hook"} hook has a new plugin_name parameter containing the name by which plugin is registered.
Bug Fixes
#11706: Fix reporting of teardown errors in higher-scoped fixtures when using [--maxfail]{.title-ref} or [--stepwise]{.title-ref}.
#11758: Fixed IndexError: string index out of range crash in if highlighted[-1] == "\n" and source[-1] != "\n".
This bug was introduced in pytest 8.0.0rc1.
#9765, #11816: Fixed a frustrating bug that afflicted some users with the only error being assert mod not in mods. The issue was caused by the fact that str(Path(mod)) and mod.__file__ don't necessarily produce the same string, and was being erroneously used interchangably in some places in the code.
This fix also broke the internal API of PytestPluginManager.consider_conftest by introducing a new parameter -- we mention this in case it is being used by external code, even if marked as private.
#7363: PytestRemovedIn8Warning deprecation warnings are now errors by default.
Following our plan to remove deprecated features with as little disruption as possible, all warnings of type PytestRemovedIn8Warning now generate errors instead of warning messages by default.
The affected features will be effectively removed in pytest 8.1, so please consult the deprecations{.interpreted-text role="ref"} section in the docs for directions on how to update existing code.
In the pytest 8.0.X series, it is possible to change the errors back into warnings as a stopgap measure by adding this to your pytest.ini file:
Private methods can now be included in the documentation by adding @public to the docstring.
This complements the existing @private annotation.
(#655, @tmeyier)
pdoc now correctly detects the source file for wrapped functions.
(#657, @tmeyier)
Fixed a bug where memory addresses were not removed from output.
(#663, @mhils)
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 ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the development-dependencies group with 5 updates:
7.4.4
8.0.0
3.6.0
3.6.1
0.1.13
0.2.1
2.10
2.11
14.3.0
14.4.0
Updates
pytest
from 7.4.4 to 8.0.0Release notes
Sourced from pytest's releases.
... (truncated)
Commits
478f823
Prepare release version 8.0.06085900
[8.0.x] fix: avoid rounding microsecond to1_000_000
(#11863)3b41c65
[8.0.x] Escape skip reason in junitxml (#11845)747072a
[8.0.x] Update docstring of scripts/generate-gh-release-notes.py (#11768)011a475
Properly attach packages to the GH release notes (#11839) (#11840)97960bd
Merge pull request #11835 from pytest-dev/release-8.0.0rc26be0a3c
Prepare release version 8.0.0rc244ffe07
Merge pull request #11837 from pytest-dev/backport-11836-to-8.0.x14ecb04
[8.0.x] testing: temporarily disable test due to hypothesis issue41c8dab
Merge pull request #11831 from bluetech/backport-11825-to-8.0.xUpdates
pre-commit
from 3.6.0 to 3.6.1Release notes
Sourced from pre-commit's releases.
Changelog
Sourced from pre-commit's changelog.
Commits
15bd0c7
v3.6.192678c3
Merge pull request #3126 from pre-commit/crlf-only-diff032d8e2
staged_files_only can handle a crlf-only diff7384838
Merge pull request #3110 from untitaker/pythonexecutable96e0712
[pre-commit.ci] auto fixes from pre-commit.com hooks3388e2d
Pop PYTHONEXECUTABLE10f8853
Merge pull request #3107 from pre-commit/pre-commit-ci-update-config9682f93
[pre-commit.ci] pre-commit autoupdate5f8ebae
Merge pull request #3102 from pre-commit/pre-commit-ci-update-config9cce283
[pre-commit.ci] pre-commit autoupdateUpdates
ruff
from 0.1.13 to 0.2.1Release notes
Sourced from ruff's releases.
... (truncated)
Changelog
Sourced from ruff's changelog.
... (truncated)
Commits
0ccca40
Bump version to v0.2.1 (#9843)041ce1e
Respect genericProtocol
in ellipsis removal (#9841)36b7528
ImplementAnyNode
/AnyNodeRef
forFStringFormatSpec
(#9836)b3dc565
Add--range
option toruff format
(#9733)e708c08
Fix default formax-positional-args
(#9838)7390232
Revert "Use publicly available Apple Silicon runners (#9726)" (#9834)9781563
Add fast-path for comment detection (#9808)84aea7f
Drop__get__
and__set__
fromunnecessary-dunder-call
(#9791)b47f85e
Preview Style: Format module level docstring (#9725)80fc02e
Don't trim last empty line in docstrings (#9813)Updates
vulture
from 2.10 to 2.11Release notes
Sourced from vulture's releases.
Changelog
Sourced from vulture's changelog.
Commits
35d2263
Update version number to 2.11 for release.a0f536c
Update changelog.e20349b
Revert "Read exclude patterns from .gitignore in absence of user-provided pat...458be54
Bugfix: Handle when .gitignore is not present. (#346)aa6fcd2
Read exclude patterns from .gitignore in absence of user-provided patterns (#...3d0ad1a
Provide whitelist parity forMagicMock
andMock
(#342)f13cc87
Bump flake8, flake8-comprehensions and flake8-bugbear. (#341)072c3bb
Swap in tomllib/tomli for toml. (#340)b6fae71
Clarify that --ignore-decorators only ignores method names.Updates
pdoc
from 14.3.0 to 14.4.0Changelog
Sourced from pdoc's changelog.
Commits
8916055
bump to 14.4.03b30281
introduce@public
marker to explicitly mark members as public (#655)8750631
get source_file of wrapped functions (#657)8c15000
fix regex to remove memory addresses, fix #662 (#663)26d4082
Bump jinja2 from 3.1.2 to 3.1.3 (#661)895dae1
Bump the dependencies group with 6 updates (#658)deae4c6
Bump the dependencies group with 3 updates (#659)3fbf291
fixget_source
docstringDependabot 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