-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace attrs with dataclasses #5284
Conversation
Codecov Report
@@ Coverage Diff @@
## master #5284 +/- ##
==========================================
- Coverage 97.52% 97.52% -0.01%
==========================================
Files 43 43
Lines 8784 8781 -3
Branches 1410 1410
==========================================
- Hits 8567 8564 -3
Misses 103 103
Partials 114 114
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
|
As far as I understand, dataclasses does not support |
|
I just don't care. |
* Replace attrs with dataclasses * Add CHANGES
* Replace attrs with dataclasses * Add CHANGES
|
@asvetlov You are free to do as you like, obviously, but dataclasses aren't better than attrs. Their functionality is a strict subset; it's mostly for use within the standard library and if you don't have access to third party packages. Everyone using aiohttp obviously has access to third party packages. |
aiohttp 4.0 supports Python 3.7+.
There is no need to use
attrsbut better to switch to the standarddataclassesmodule.attrsis great but the standard is even better.The only downside is: for
attrsyou should usedataclasses.replace(ds, name=val)instead ofattr.evolve(ds, name=val).I think it is a good compromise.