[PR #8211/7725f5a2 backport][3.9] Fix type annotations on MultipartWriter.append #8214
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a backport of PR #8211 as merged into master (7725f5a).
What do these changes do?
They adjust the annotations on the
MultipartWriter.append
method (and two similar methods), so that type-checkers admit plain python dictionaries for the second argument; the headers parameter.I chose to useChanged toLooseHeaders
as I knew it was already used as theheaders
parameter for theweb.Response
constructor, among others.Mapping[str, str]
, thank you DreamsorcererAre there changes in behavior for the user?
No, this doesn't change any behaviour.
Is it a substantial burden for the maintainers to support this?
Not that I can imagine.
Related issue number
Fixes #7741
Checklist
str
andistr
keyed dictionaries work withappend
aiohttp/tests/test_multipart.py
Line 1310 in d8936aa
aiohttp/tests/test_multipart.py
Line 1323 in d8936aa
but am also open to suggestions
aiohttp/docs/multipart.rst
Lines 145 to 146 in d8936aa
CONTRIBUTORS.txt
CHANGES/
foldername it
<issue_or_pr_num>.<type>.rst
(e.g.588.bugfix.rst
)if you don't have an issue number, change it to the pull request
number after creating the PR
.bugfix
: A bug fix for something the maintainers deemed animproper undesired behavior that got corrected to match
pre-agreed expectations.
.feature
: A new behavior, public APIs. That sort of stuff..deprecation
: A declaration of future API removals and breakingchanges in behavior.
.breaking
: When something public is removed in a breaking way.Could be deprecated in an earlier release.
.doc
: Notable updates to the documentation structure or buildprocess.
.packaging
: Notes for downstreams about unobvious side effectsand tooling. Changes in the test invocation considerations and
runtime assumptions.
.contrib
: Stuff that affects the contributor experience. e.g.Running tests, building the docs, setting up the development
environment.
.misc
: Changes that are hard to assign to any of the abovecategories.
Make sure to use full sentences with correct case and punctuation,
for example:
Use the past tense or the present tense a non-imperative mood,
referring to what's changed compared to the last released version
of this project.