Uh oh!
There was an error while loading. Please reload this page.
Cleaner client constructors - #92
Conversation
codecov-commenter
commented
Oct 25, 2023
Codecov ReportAttention:
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@## main #92 +/- ##
==========================================
- Coverage 77.08% 76.83% -0.25%
==========================================
Files 27 27 Lines 1933 1943 +10 ==========================================
+ Hits 1490 1493 +3 - Misses 443 450 +7
☔ View full report in Codecov by Sentry. |
volodymyrZotov
commented
Jan 4, 2024
@melwil Agree on the changes you've introduced, that will make it work well for type checkers. However, it will be a breaching change, as in case somebody's already used the client with Could you resolve the conflict, please? |
volodymyrZotov
commented
Sep 9, 2025
Merged in #118 |
This PR aims to improve the constructor for new clients.
I've removed all code related to AsyncClient from client.py, and allowed you to directly make AsyncClient. This does mean it's a breaking change, but one that is easily caught by tests or type checkers.
There are a couple of reasons for this:
new_client()making both types means that a typed project doesn't know if it has a Client or AsyncClient, and it has to be validated before use.Finally, I will concede that it's not the greatest idea to repeat the code for getting the env vars and validating them in both constructors, it could be moved to some sort of utility function. I can do that if desireable, but in this case it's not a great chance for reusability.