A lot of features and smaller bug fixes! But also with a heavy heart, we're leaving the last dataclass-less Python version (3.6) behind, but don't worry: the old versions aren't going anywhere and thanks to the magic of package metadata, pip install attrs should still work on Python 3.6 as if nothing happened.
Special Thanks
This release would not be possible without my generous sponsors! Thank you to all of you making sustainable maintenance possible! If you would like to join them, go to https://github.com/sponsors/hynek and check out the sweet perks!
Removed rsyncdir support. This makes pytest-cov compatible with xdist 3.0.
Contributed by Sorin Sbarnea in [#558](https://github.com/pytest-dev/pytest-cov/issues/558) <https://github.com/pytest-dev/pytest-cov/pull/558>_.
Optimized summary generation to not be performed if no reporting is active (for example,
when --cov-report='' is used without --cov-fail-under).
Contributed by Jonathan Stewmon in [#589](https://github.com/pytest-dev/pytest-cov/issues/589) <https://github.com/pytest-dev/pytest-cov/pull/589>_.
Added support for JSON reporting.
Contributed by Matthew Gamble in [#582](https://github.com/pytest-dev/pytest-cov/issues/582) <https://github.com/pytest-dev/pytest-cov/pull/582>_.
Refactored code to use f-strings.
Contributed by Mark Mayo in [#572](https://github.com/pytest-dev/pytest-cov/issues/572) <https://github.com/pytest-dev/pytest-cov/pull/572>_.
Fixed a skip in the test suite for some old xdist.
Contributed by a bunch of people in [#565](https://github.com/pytest-dev/pytest-cov/issues/565) <https://github.com/pytest-dev/pytest-cov/pull/565>_.
Output a proper error message when an invalid asyncio_mode is selected.
Extend warning message about unclosed event loops with additional possible cause.
#531
Previously, some tests reported "skipped" or "xfailed" as a result. Now all tests report a "success" result.
pytest-asyncio 0.21.0
0.21.0 (23-03-19)
Drop compatibility with pytest 6.1. Pytest-asyncio now depends on pytest 7.0 or newer.
pytest-asyncio cleans up any stale event loops when setting up and tearing down the
event_loop fixture. This behavior has been deprecated and pytest-asyncio emits a
DeprecationWarning when tearing down the event_loop fixture and current event loop
has not been closed.
[orm] [usecase] Implemented the _orm.Session.bulk_insert_mappings.render_nulls
parameter for new style bulk ORM inserts, allowing render_nulls=True as
an execution option. This allows for bulk ORM inserts with a mixture of
None values in the parameter dictionaries to use a single batch of rows
for a given set of dicationary keys, rather than breaking up into batches
that omit the NULL columns from each INSERT.
[orm] [bug] Fixed issue where the __allow_unmapped__ directive failed to allow for
legacy Column / deferred() mappings that nonetheless had
annotations such as Any or a specific type without Mapped[] as
their type, without errors related to locating the attribute name.
[orm] [bug] Fixed caching bug where using the _orm.with_expression() construct in
conjunction with loader options _orm.selectinload(),
_orm.lazyload() would fail to substitute bound parameter values
correctly on subsequent caching runs.
[orm] [bug] Fixed bug in ORM annotated declarative where using a ClassVar that
nonetheless referred in some way to an ORM mapped class name would fail to
be interpreted as a ClassVar that's not mapped.
[sql] [usecase] Implemented "literal value processing" for the Interval datatype
for both the PostgreSQL and Oracle dialects, allowing literal rendering of
interval values. Pull request courtesy Indivar Mishra.
[sql] [bug] Fixed issue where using the same bound parameter more than once with
literal_execute=True in some combinations with other literal rendering
parameters would cause the wrong values to render due to an iteration
issue.
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 tests group in /tests with 6 updates:
22.1.0
23.1.0
1.10.2
2.5.2
7.4.2
7.4.3
4.0.0
4.1.0
0.20.3
0.21.1
1.4.45
2.0.23
Updates
attrs
from 22.1.0 to 23.1.0Release notes
Sourced from attrs's releases.
... (truncated)
Changelog
Sourced from attrs's changelog.
... (truncated)
Commits
1e2f6f9
Prepare 23.1.03786d5a
Fix next versiona7e1a56
Fix missing backtickdadc020
Fix links broken by pyright removing their transform specbef2f52
Added example for version docstrings to PR template (#1127)c4c6fdd
Add literal string support to include and exclude filters (#1068)e4c9f27
CONTRIBUTING: Small improvements (#1123)683d056
Cull trove classifiersc8b342d
Deprecate zope-interface support (#1120)d1aaeee
Remove special-casing of pretend version for pytest (#1124)Updates
pydantic
from 1.10.2 to 2.5.2Release notes
Sourced from pydantic's releases.
... (truncated)
Changelog
Sourced from pydantic's changelog.
... (truncated)
Commits
b75cb28
updating history for patch release based on new core changes365e587
bumping core to 2.14.52033119
Fix:JsonValue
bool
serialization (#8190)34ef158
prep for 2.5.2 release (#8169)25d1197
uprev corecc168a8
AddConfigDict.ser_json_inf_nan
(#8159)01c970b
Fixmodel_validator
example usage code (#8141)4982d57
Prepare release 2.5.1 (#8132)0a13900
fix "from_json" docs5cd45f2
uprev pydantic-core to 2.14.3 (#8120)Updates
pytest
from 7.4.2 to 7.4.3Release notes
Sourced from pytest's releases.
Commits
2390610
Tweak changelog.rsta0714aa
Prepare release version 7.4.344ad1c9
[7.4.x] fix #10447 - consider marks in reverse mro order to give base classes...5dc7725
[7.4.x] Ensure logging tests always cleanup after themselves (#11541)a517827
[7.4.x] Configure ReadTheDocs to fail on warnings (#11540)21fe071
[7.4.x] fix for ValueError raised in faulthandler teardown code (#11455)f8bb857
Force terminal width when running tests (#11425) (#11432)1944dc0
[7.4.x] Fix --import-mode=importlib when root contains__init__.py
file (#1...946634c
Merge pull request #11419 from nicoddemus/backport-11414-to-7.4.xd849a3e
[7.4.x] fix: closes #11343's [attr-defined] type errors (#11421)Updates
pytest-cov
from 4.0.0 to 4.1.0Changelog
Sourced from pytest-cov's changelog.
Commits
2c9f217
Bump version: 4.0.0 → 4.1.04d245df
Update changelog and authors.7b095c8
Skip starting from xdist 3.0.2 (where boxed was removed).605d690
disabling boxed test if version xdist newer than 2.5.076fb2a6
introduced f-strings0d63ede
Update test config. Reapply some of the changes from PR567 to the right file ...f3d8d83
Add support for JSON reporterdec02ab
Update test deps.88a7d34
chore: update AUTHORS and CHANGELOG74eb4cc
perf: only call summary when the report will be usedUpdates
pytest-asyncio
from 0.20.3 to 0.21.1Release notes
Sourced from pytest-asyncio's releases.
Commits
a10cbde
[docs] Fixed typo.82b010d
[docs] Add release date of v0.21.1 to changelog.af08b1c
[test] Removed obsolete test "test_async_close_loop".79b2d1a
[test] Added a test case which verifies compatibility with pytest.skip in aut...39a9754
[test] The test that asserts compatibility with pytest.mark.skip reports succ...a26b6dd
[test] Added a test case which verifies compatibility with pytest.mark.xfail ...7fa36f2
[test] The test that asserts compatibility with pytest.mark.xfail reports suc...df88119
[docs] Improved readbility of headings on the fixtures reference in the docs.75a1a6c
[feat] Extend warning message about unclosed event loops with additional poss...1821542
[docs] Explain that scopes of event_loop fixtures should not overlap.Updates
sqlalchemy
from 1.4.45 to 2.0.23Release notes
Sourced from sqlalchemy's releases.
... (truncated)
Commits
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