main
[match case] Use match case in ``Source.__init__``
[perf] Make ``PrettyPrinter`` format lazily so output can be budget-capped (#14588)
Fix a base string usage that need to also take bytes into account
Raise UsageError from getini for invalid configuration values
Merge pull request #14807 from RonnyPfannschmidt/refactor/config-file-dispatch
[pre-commit.ci] pre-commit autoupdate
RFC: from __future__ import annotations + migrate
Merge pull request #14754, handle infinite relative tolerance for timedelta values
cacheprovider: simplify _make_cachedir cleanup with finally
Fix capteesys producing doubled output with --capture=no (#14205)
regendoc: remove CI environment variables (#13950)
Use `importlib.import_module` instead of `__import__`
Improve deprecation message for class-scoped fixtures as instance methods (#14764)
fix: unwrap fixture definitions for doctest locations
Make it possible for faulthandler to terminate the pytest process on timeout (#13679)
Upgrade doc and CI after dropping python 3.8
Accept type expressions in Parser.addini(type=...) (#14751)
fix #13564 - warn when fixtures get wrapped with a decorator (#13745)
Reject negative log_auto_indent values (#14586)
docs: add changelog fragment and architectural comment for #14635
Fix monkeypatch.setattr() teardown crash on failed setattr (#14161) (#14209)
nodes: remove deprecated `fspath` Node constructor parameter
outcomes: remove deprecated `importorskip` `ImportError` behavior
pastebin: deprecate `--pastebin`
Address remaining review feedback on rm_rf permission handling
Publish our types
fix missing type annotations on `makepyfile` and `maketxtfile` methods (#14080)
Fix: assertrepr_compare respects dict insertion order (#14050)
Merge pull request #14799 from Pierre-Sassoulas/match-case-isinstance-dispatch
[match case] Use match case in ``RaisesGroup.expected_type``
Fix pytest.warns re-emitting warnings with module="warnings" (#14747)
Make ScopeName public to enable downstream type checking (#14325)
assorted code updates and f string migrations (#12017)
Stop passing exception type to `traceback.format_exception_only`
Show cache age instead of update date
subtests: avoid double `saferepr()` (#14213)
terminalprogress: disable when TERM=dumb
Remove thread join from threadexception plugin (#13027)
[lint] PLW0108: lambda used to correctly get the mocked time via `MockTiming`
Enhancements to unraisable plugin (#12958)
Add `pytest.register_fixture`
Surface filter-promoted unraisable warnings directly (#14263) (#14499)
Remove `PytestRemovedIn9Warning` (#14299)
Apply warning filters to `pytest_configure` (#14760)