Skip to content
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

Fix ClientResponse.close releasing the connection instead of closing #7869

Merged
merged 8 commits into from
Nov 22, 2023

Conversation

bdraco
Copy link
Member

@bdraco bdraco commented Nov 22, 2023

What do these changes do?

Fix ClientResponse.close releasing the connection instead of closing

Are there changes in behavior for the user?

Related issue number

fixes #7864

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes
  • If you provide code modification, please add yourself to CONTRIBUTORS.txt
    • The format is <Name> <Surname>.
    • Please keep alphabetical order, the file is sorted by names.
  • Add a new news fragment into the CHANGES folder
    • name it <issue_id>.<type> for example (588.bugfix)
    • if you don't have an issue_id change it to the pr id after creating the pr
    • ensure type is one of the following:
      • .feature: Signifying a new feature.
      • .bugfix: Signifying a bug fix.
      • .doc: Signifying a documentation improvement.
      • .removal: Signifying a deprecation or removal of public API.
      • .misc: A ticket has been closed, but it is not of interest to users.
    • Make sure to use full sentences with correct case and punctuation, for example: "Fix issue with non-ascii contents in doctest text files."

Copy link

codecov bot commented Nov 22, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (3a21134) 97.40% compared to head (595c750) 97.40%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #7869   +/-   ##
=======================================
  Coverage   97.40%   97.40%           
=======================================
  Files         107      107           
  Lines       32190    32213   +23     
  Branches     3740     3744    +4     
=======================================
+ Hits        31354    31377   +23     
  Misses        632      632           
  Partials      204      204           
Flag Coverage Δ
CI-GHA 97.32% <100.00%> (+<0.01%) ⬆️
OS-Linux 96.99% <100.00%> (+<0.01%) ⬆️
OS-Windows 95.48% <100.00%> (+<0.01%) ⬆️
OS-macOS 96.66% <100.00%> (+<0.01%) ⬆️
Py-3.10.11 95.40% <100.00%> (+<0.01%) ⬆️
Py-3.10.13 96.84% <100.00%> (+<0.01%) ⬆️
Py-3.11.6 96.50% <100.00%> (+<0.01%) ⬆️
Py-3.12.0 96.57% <100.00%> (+<0.01%) ⬆️
Py-3.8.10 95.37% <100.00%> (+<0.01%) ⬆️
Py-3.8.18 96.77% <100.00%> (+<0.01%) ⬆️
Py-3.9.13 95.37% <100.00%> (+<0.01%) ⬆️
Py-3.9.18 96.80% <100.00%> (-0.01%) ⬇️
Py-pypy7.3.13 96.27% <100.00%> (+<0.01%) ⬆️
VM-macos 96.66% <100.00%> (+<0.01%) ⬆️
VM-ubuntu 96.99% <100.00%> (+<0.01%) ⬆️
VM-windows 95.48% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@Dreamsorcerer Dreamsorcerer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we can get a test that somehow reproduces the reported issue by triggering an exception and then doing another request or something, that'd be great.

@bdraco
Copy link
Member Author

bdraco commented Nov 22, 2023

I don't really like having to check _conns but I don't see a better way to know if the connection is really closed

@psf-chronographer psf-chronographer bot added the bot:chronographer:provided There is a change note present in this PR label Nov 22, 2023
@bdraco
Copy link
Member Author

bdraco commented Nov 22, 2023

test is good now, its fails on master and passes in this pr

@bdraco
Copy link
Member Author

bdraco commented Nov 22, 2023

Seems to work fine on production. But considering I didn't catch the original problem, I'm not sure how good of a test that is.

@bdraco bdraco marked this pull request as ready for review November 22, 2023 18:49
@bdraco bdraco requested a review from asvetlov as a code owner November 22, 2023 18:49
@bdraco
Copy link
Member Author

bdraco commented Nov 22, 2023

I think that hopefully wraps up both the blocking issue. I'm still in flight back from europe for another 5 hours but I'm available on discord as bdraco or via email [email protected] if something else comes up as github notifications don't work very well with airplane wifi

@Dreamsorcerer Dreamsorcerer merged commit 25ef450 into aio-libs:master Nov 22, 2023
30 of 34 checks passed
Copy link
Contributor

patchback bot commented Nov 22, 2023

Backport to 3.9: 💔 cherry-picking failed — conflicts found

❌ Failed to cleanly apply 25ef450 on top of patchback/backports/3.9/25ef450238864d06ba8a44227080e4a7b354ba76/pr-7869

Backporting merged PR #7869 into master

  1. Ensure you have a local repo clone of your fork. Unless you cloned it
    from the upstream, this would be your origin remote.
  2. Make sure you have an upstream repo added as a remote too. In these
    instructions you'll refer to it by the name upstream. If you don't
    have it, here's how you can add it:
    $ git remote add upstream https://github.com/aio-libs/aiohttp.git
  3. Ensure you have the latest copy of upstream and prepare a branch
    that will hold the backported code:
    $ git fetch upstream
    $ git checkout -b patchback/backports/3.9/25ef450238864d06ba8a44227080e4a7b354ba76/pr-7869 upstream/3.9
  4. Now, cherry-pick PR Fix ClientResponse.close releasing the connection instead of closing #7869 contents into that branch:
    $ git cherry-pick -x 25ef450238864d06ba8a44227080e4a7b354ba76
    If it'll yell at you with something like fatal: Commit 25ef450238864d06ba8a44227080e4a7b354ba76 is a merge but no -m option was given., add -m 1 as follows instead:
    $ git cherry-pick -m1 -x 25ef450238864d06ba8a44227080e4a7b354ba76
  5. At this point, you'll probably encounter some merge conflicts. You must
    resolve them in to preserve the patch from PR Fix ClientResponse.close releasing the connection instead of closing #7869 as close to the
    original as possible.
  6. Push this branch to your fork on GitHub:
    $ git push origin patchback/backports/3.9/25ef450238864d06ba8a44227080e4a7b354ba76/pr-7869
  7. Create a PR, ensure that the CI is green. If it's not — update it so that
    the tests and any other checks pass. This is it!
    Now relax and wait for the maintainers to process your pull request
    when they have some cycles to do reviews. Don't worry — they'll tell you if
    any improvements are necessary when the time comes!

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

Copy link
Contributor

patchback bot commented Nov 22, 2023

Backport to 3.10: 💔 cherry-picking failed — conflicts found

❌ Failed to cleanly apply 25ef450 on top of patchback/backports/3.10/25ef450238864d06ba8a44227080e4a7b354ba76/pr-7869

Backporting merged PR #7869 into master

  1. Ensure you have a local repo clone of your fork. Unless you cloned it
    from the upstream, this would be your origin remote.
  2. Make sure you have an upstream repo added as a remote too. In these
    instructions you'll refer to it by the name upstream. If you don't
    have it, here's how you can add it:
    $ git remote add upstream https://github.com/aio-libs/aiohttp.git
  3. Ensure you have the latest copy of upstream and prepare a branch
    that will hold the backported code:
    $ git fetch upstream
    $ git checkout -b patchback/backports/3.10/25ef450238864d06ba8a44227080e4a7b354ba76/pr-7869 upstream/3.10
  4. Now, cherry-pick PR Fix ClientResponse.close releasing the connection instead of closing #7869 contents into that branch:
    $ git cherry-pick -x 25ef450238864d06ba8a44227080e4a7b354ba76
    If it'll yell at you with something like fatal: Commit 25ef450238864d06ba8a44227080e4a7b354ba76 is a merge but no -m option was given., add -m 1 as follows instead:
    $ git cherry-pick -m1 -x 25ef450238864d06ba8a44227080e4a7b354ba76
  5. At this point, you'll probably encounter some merge conflicts. You must
    resolve them in to preserve the patch from PR Fix ClientResponse.close releasing the connection instead of closing #7869 as close to the
    original as possible.
  6. Push this branch to your fork on GitHub:
    $ git push origin patchback/backports/3.10/25ef450238864d06ba8a44227080e4a7b354ba76/pr-7869
  7. Create a PR, ensure that the CI is green. If it's not — update it so that
    the tests and any other checks pass. This is it!
    Now relax and wait for the maintainers to process your pull request
    when they have some cycles to do reviews. Don't worry — they'll tell you if
    any improvements are necessary when the time comes!

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

@sylvainmouquet
Copy link

when the patch will be available in a release ?

bdraco added a commit to bdraco/aiohttp that referenced this pull request Nov 22, 2023
bdraco added a commit to bdraco/aiohttp that referenced this pull request Nov 22, 2023
@bdraco
Copy link
Member Author

bdraco commented Nov 22, 2023 via email

Dreamsorcerer pushed a commit that referenced this pull request Nov 23, 2023
Dreamsorcerer pushed a commit that referenced this pull request Nov 23, 2023
@bdraco bdraco deleted the close_closes branch November 27, 2023 04:41
Diapolo10 added a commit to Diapolo10/clan-quest-osrs-discord-bot that referenced this pull request Nov 27, 2023
Bumps [aiohttp](https://github.com/aio-libs/aiohttp) from 3.9.0 to
3.9.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/aio-libs/aiohttp/releases">aiohttp's
releases</a>.</em></p>
<blockquote>
<h2>3.9.1</h2>
<h2>Bugfixes</h2>
<ul>
<li>
<p>Fixed importing aiohttp under PyPy on Windows.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7848">#7848</a>)</p>
</li>
<li>
<p>Fixed async concurrency safety in websocket compressor.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7865">#7865</a>)</p>
</li>
<li>
<p>Fixed <code>ClientResponse.close()</code> releasing the connection
instead of closing.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7869">#7869</a>)</p>
</li>
<li>
<p>Fixed a regression where connection may get closed during upgrade. --
by :user:<code>Dreamsorcerer</code></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7879">#7879</a>)</p>
</li>
<li>
<p>Fixed messages being reported as upgraded without an Upgrade header
in Python parser. -- by :user:<code>Dreamsorcerer</code></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7895">#7895</a>)</p>
</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst">aiohttp's
changelog</a>.</em></p>
<blockquote>
<h1>3.9.1 (2023-11-26)</h1>
<h2>Bugfixes</h2>
<ul>
<li>
<p>Fixed importing aiohttp under PyPy on Windows.</p>
<p><code>[#7848](aio-libs/aiohttp#7848)
&lt;https://github.com/aio-libs/aiohttp/issues/7848&gt;</code>_</p>
</li>
<li>
<p>Fixed async concurrency safety in websocket compressor.</p>
<p><code>[#7865](aio-libs/aiohttp#7865)
&lt;https://github.com/aio-libs/aiohttp/issues/7865&gt;</code>_</p>
</li>
<li>
<p>Fixed <code>ClientResponse.close()</code> releasing the connection
instead of closing.</p>
<p><code>[#7869](aio-libs/aiohttp#7869)
&lt;https://github.com/aio-libs/aiohttp/issues/7869&gt;</code>_</p>
</li>
<li>
<p>Fixed a regression where connection may get closed during upgrade. --
by :user:<code>Dreamsorcerer</code></p>
<p><code>[#7879](aio-libs/aiohttp#7879)
&lt;https://github.com/aio-libs/aiohttp/issues/7879&gt;</code>_</p>
</li>
<li>
<p>Fixed messages being reported as upgraded without an Upgrade header
in Python parser. -- by :user:<code>Dreamsorcerer</code></p>
<p><code>[#7895](aio-libs/aiohttp#7895)
&lt;https://github.com/aio-libs/aiohttp/issues/7895&gt;</code>_</p>
</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/6333c026422c6b0fe57ff63cde4104e2d00f47f4"><code>6333c02</code></a>
Release v3.9.1 (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7911">#7911</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/9dbd273093d6af6f5e1481816b05a7192860b440"><code>9dbd273</code></a>
[PR <a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7673">#7673</a>/aa7d1a8f
backport][3.9] Document release process (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7909">#7909</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/dd175b6b89564dc74fba0692a8a5f9a9b38e528a"><code>dd175b6</code></a>
Fix regression with connection upgrade (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7879">#7879</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7908">#7908</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/946523d6380bd79e13146557432f46f6f9bbd53f"><code>946523d</code></a>
Fix flaky websocket test (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7902">#7902</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7904">#7904</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/ddc2a26c9e0c43fd1229e4424f2a30d1b10ced13"><code>ddc2a26</code></a>
[PR <a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7896">#7896</a>/9a7cfe77
backport][3.9] Fix some flaky tests (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7900">#7900</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/2ae4d6ffdd015f622bfb75dee98ad629240cccc4"><code>2ae4d6f</code></a>
Message is not upgraded if Upgrade header is missing (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7895">#7895</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7898">#7898</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/bb111012706d3ef9edc525be3d8d4df410ad847f"><code>bb11101</code></a>
Restore async concurrency safety to websocket compressor (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7865">#7865</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7889">#7889</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/6dd0122417f00ed4b2b353226a1b164b6463a245"><code>6dd0122</code></a>
Update dependabot.yml (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7888">#7888</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/41a9f1f5b9b2630b1f4b971811c7ef8f016262fb"><code>41a9f1f</code></a>
Bump mypy from 1.7.0 to 1.7.1 (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7882">#7882</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/a04970150c6ce9fda22c9f63d947845f79148b4c"><code>a049701</code></a>
Fix usage of proxy.py in test_proxy_functional (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7773">#7773</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7876">#7876</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/aio-libs/aiohttp/compare/v3.9.0...v3.9.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aiohttp&package-manager=pip&previous-version=3.9.0&new-version=3.9.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
Teqed added a commit to Teqed/FediFetcher that referenced this pull request Dec 8, 2023
Bumps [aiohttp](https://github.com/aio-libs/aiohttp) from 3.9.0 to
3.9.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/aio-libs/aiohttp/releases">aiohttp's
releases</a>.</em></p>
<blockquote>
<h2>3.9.1</h2>
<h2>Bugfixes</h2>
<ul>
<li>
<p>Fixed importing aiohttp under PyPy on Windows.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7848">#7848</a>)</p>
</li>
<li>
<p>Fixed async concurrency safety in websocket compressor.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7865">#7865</a>)</p>
</li>
<li>
<p>Fixed <code>ClientResponse.close()</code> releasing the connection
instead of closing.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7869">#7869</a>)</p>
</li>
<li>
<p>Fixed a regression where connection may get closed during upgrade. --
by :user:<code>Dreamsorcerer</code></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7879">#7879</a>)</p>
</li>
<li>
<p>Fixed messages being reported as upgraded without an Upgrade header
in Python parser. -- by :user:<code>Dreamsorcerer</code></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7895">#7895</a>)</p>
</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst">aiohttp's
changelog</a>.</em></p>
<blockquote>
<h1>3.9.1 (2023-11-26)</h1>
<h2>Bugfixes</h2>
<ul>
<li>
<p>Fixed importing aiohttp under PyPy on Windows.</p>
<p><code>[#7848](aio-libs/aiohttp#7848)
&lt;https://github.com/aio-libs/aiohttp/issues/7848&gt;</code>_</p>
</li>
<li>
<p>Fixed async concurrency safety in websocket compressor.</p>
<p><code>[#7865](aio-libs/aiohttp#7865)
&lt;https://github.com/aio-libs/aiohttp/issues/7865&gt;</code>_</p>
</li>
<li>
<p>Fixed <code>ClientResponse.close()</code> releasing the connection
instead of closing.</p>
<p><code>[#7869](aio-libs/aiohttp#7869)
&lt;https://github.com/aio-libs/aiohttp/issues/7869&gt;</code>_</p>
</li>
<li>
<p>Fixed a regression where connection may get closed during upgrade. --
by :user:<code>Dreamsorcerer</code></p>
<p><code>[#7879](aio-libs/aiohttp#7879)
&lt;https://github.com/aio-libs/aiohttp/issues/7879&gt;</code>_</p>
</li>
<li>
<p>Fixed messages being reported as upgraded without an Upgrade header
in Python parser. -- by :user:<code>Dreamsorcerer</code></p>
<p><code>[#7895](aio-libs/aiohttp#7895)
&lt;https://github.com/aio-libs/aiohttp/issues/7895&gt;</code>_</p>
</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/6333c026422c6b0fe57ff63cde4104e2d00f47f4"><code>6333c02</code></a>
Release v3.9.1 (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7911">#7911</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/9dbd273093d6af6f5e1481816b05a7192860b440"><code>9dbd273</code></a>
[PR <a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7673">#7673</a>/aa7d1a8f
backport][3.9] Document release process (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7909">#7909</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/dd175b6b89564dc74fba0692a8a5f9a9b38e528a"><code>dd175b6</code></a>
Fix regression with connection upgrade (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7879">#7879</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7908">#7908</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/946523d6380bd79e13146557432f46f6f9bbd53f"><code>946523d</code></a>
Fix flaky websocket test (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7902">#7902</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7904">#7904</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/ddc2a26c9e0c43fd1229e4424f2a30d1b10ced13"><code>ddc2a26</code></a>
[PR <a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7896">#7896</a>/9a7cfe77
backport][3.9] Fix some flaky tests (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7900">#7900</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/2ae4d6ffdd015f622bfb75dee98ad629240cccc4"><code>2ae4d6f</code></a>
Message is not upgraded if Upgrade header is missing (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7895">#7895</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7898">#7898</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/bb111012706d3ef9edc525be3d8d4df410ad847f"><code>bb11101</code></a>
Restore async concurrency safety to websocket compressor (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7865">#7865</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7889">#7889</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/6dd0122417f00ed4b2b353226a1b164b6463a245"><code>6dd0122</code></a>
Update dependabot.yml (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7888">#7888</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/41a9f1f5b9b2630b1f4b971811c7ef8f016262fb"><code>41a9f1f</code></a>
Bump mypy from 1.7.0 to 1.7.1 (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7882">#7882</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/a04970150c6ce9fda22c9f63d947845f79148b4c"><code>a049701</code></a>
Fix usage of proxy.py in test_proxy_functional (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7773">#7773</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7876">#7876</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/aio-libs/aiohttp/compare/v3.9.0...v3.9.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aiohttp&package-manager=pip&previous-version=3.9.0&new-version=3.9.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
RJ1002 added a commit to RJ1002/pollmaster that referenced this pull request Dec 21, 2023
Bumps [aiohttp](https://github.com/aio-libs/aiohttp) from 3.8.6 to
3.9.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/aio-libs/aiohttp/releases">aiohttp's
releases</a>.</em></p>
<blockquote>
<h2>3.9.1</h2>
<h2>Bugfixes</h2>
<ul>
<li>
<p>Fixed importing aiohttp under PyPy on Windows.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7848">#7848</a>)</p>
</li>
<li>
<p>Fixed async concurrency safety in websocket compressor.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7865">#7865</a>)</p>
</li>
<li>
<p>Fixed <code>ClientResponse.close()</code> releasing the connection
instead of closing.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7869">#7869</a>)</p>
</li>
<li>
<p>Fixed a regression where connection may get closed during upgrade. --
by :user:<code>Dreamsorcerer</code></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7879">#7879</a>)</p>
</li>
<li>
<p>Fixed messages being reported as upgraded without an Upgrade header
in Python parser. -- by :user:<code>Dreamsorcerer</code></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7895">#7895</a>)</p>
</li>
</ul>
<hr />
<h2>3.9.0</h2>
<h2>Features</h2>
<ul>
<li>
<p>Introduced <code>AppKey</code> for static typing support of
<code>Application</code> storage.
See <a
href="https://docs.aiohttp.org/en/stable/web_advanced.html#application-s-config">https://docs.aiohttp.org/en/stable/web_advanced.html#application-s-config</a></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/5864">#5864</a>)</p>
</li>
<li>
<p>Added a graceful shutdown period which allows pending tasks to
complete before the application's cleanup is called.
The period can be adjusted with the <code>shutdown_timeout</code>
parameter. -- by :user:<code>Dreamsorcerer</code>.
See <a
href="https://docs.aiohttp.org/en/latest/web_advanced.html#graceful-shutdown">https://docs.aiohttp.org/en/latest/web_advanced.html#graceful-shutdown</a></p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7188">#7188</a>)</p>
</li>
<li>
<p>Added <code>handler_cancellation
&lt;https://docs.aiohttp.org/en/stable/web_advanced.html#web-handler-cancellation&gt;</code>_
parameter to cancel web handler on client disconnection. -- by
:user:<code>mosquito</code>
This (optionally) reintroduces a feature removed in a previous release.
Recommended for those looking for an extra level of protection against
denial-of-service attacks.</p>
<p>(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7056">#7056</a>)</p>
</li>
<li>
<p>Added support for setting response header parameters
<code>max_line_size</code> and <code>max_field_size</code>.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst">aiohttp's
changelog</a>.</em></p>
<blockquote>
<h1>3.9.1 (2023-11-26)</h1>
<h2>Bugfixes</h2>
<ul>
<li>
<p>Fixed importing aiohttp under PyPy on Windows.</p>
<p><code>[#7848](aio-libs/aiohttp#7848)
&lt;https://github.com/aio-libs/aiohttp/issues/7848&gt;</code>_</p>
</li>
<li>
<p>Fixed async concurrency safety in websocket compressor.</p>
<p><code>[#7865](aio-libs/aiohttp#7865)
&lt;https://github.com/aio-libs/aiohttp/issues/7865&gt;</code>_</p>
</li>
<li>
<p>Fixed <code>ClientResponse.close()</code> releasing the connection
instead of closing.</p>
<p><code>[#7869](aio-libs/aiohttp#7869)
&lt;https://github.com/aio-libs/aiohttp/issues/7869&gt;</code>_</p>
</li>
<li>
<p>Fixed a regression where connection may get closed during upgrade. --
by :user:<code>Dreamsorcerer</code></p>
<p><code>[#7879](aio-libs/aiohttp#7879)
&lt;https://github.com/aio-libs/aiohttp/issues/7879&gt;</code>_</p>
</li>
<li>
<p>Fixed messages being reported as upgraded without an Upgrade header
in Python parser. -- by :user:<code>Dreamsorcerer</code></p>
<p><code>[#7895](aio-libs/aiohttp#7895)
&lt;https://github.com/aio-libs/aiohttp/issues/7895&gt;</code>_</p>
</li>
</ul>
<hr />
<h1>3.9.0 (2023-11-18)</h1>
<h2>Features</h2>
<ul>
<li>
<p>Introduced <code>AppKey</code> for static typing support of
<code>Application</code> storage.
See <a
href="https://docs.aiohttp.org/en/stable/web_advanced.html#application-s-config">https://docs.aiohttp.org/en/stable/web_advanced.html#application-s-config</a></p>
<p><code>[#5864](aio-libs/aiohttp#5864)
&lt;https://github.com/aio-libs/aiohttp/issues/5864&gt;</code>_</p>
</li>
<li>
<p>Added a graceful shutdown period which allows pending tasks to
complete before the application's cleanup is called.
The period can be adjusted with the <code>shutdown_timeout</code>
parameter. -- by :user:<code>Dreamsorcerer</code>.
See <a
href="https://docs.aiohttp.org/en/latest/web_advanced.html#graceful-shutdown">https://docs.aiohttp.org/en/latest/web_advanced.html#graceful-shutdown</a></p>
<p><code>[#7188](aio-libs/aiohttp#7188)
&lt;https://github.com/aio-libs/aiohttp/issues/7188&gt;</code>_</p>
</li>
<li>
<p>Added <code>handler_cancellation
&lt;https://docs.aiohttp.org/en/stable/web_advanced.html#web-handler-cancellation&gt;</code>_
parameter to cancel web handler on client disconnection. -- by
:user:<code>mosquito</code>
This (optionally) reintroduces a feature removed in a previous
release.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/6333c026422c6b0fe57ff63cde4104e2d00f47f4"><code>6333c02</code></a>
Release v3.9.1 (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7911">#7911</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/9dbd273093d6af6f5e1481816b05a7192860b440"><code>9dbd273</code></a>
[PR <a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7673">#7673</a>/aa7d1a8f
backport][3.9] Document release process (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7909">#7909</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/dd175b6b89564dc74fba0692a8a5f9a9b38e528a"><code>dd175b6</code></a>
Fix regression with connection upgrade (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7879">#7879</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7908">#7908</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/946523d6380bd79e13146557432f46f6f9bbd53f"><code>946523d</code></a>
Fix flaky websocket test (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7902">#7902</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7904">#7904</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/ddc2a26c9e0c43fd1229e4424f2a30d1b10ced13"><code>ddc2a26</code></a>
[PR <a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7896">#7896</a>/9a7cfe77
backport][3.9] Fix some flaky tests (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7900">#7900</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/2ae4d6ffdd015f622bfb75dee98ad629240cccc4"><code>2ae4d6f</code></a>
Message is not upgraded if Upgrade header is missing (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7895">#7895</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7898">#7898</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/bb111012706d3ef9edc525be3d8d4df410ad847f"><code>bb11101</code></a>
Restore async concurrency safety to websocket compressor (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7865">#7865</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7889">#7889</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/6dd0122417f00ed4b2b353226a1b164b6463a245"><code>6dd0122</code></a>
Update dependabot.yml (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7888">#7888</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/41a9f1f5b9b2630b1f4b971811c7ef8f016262fb"><code>41a9f1f</code></a>
Bump mypy from 1.7.0 to 1.7.1 (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7882">#7882</a>)</li>
<li><a
href="https://github.com/aio-libs/aiohttp/commit/a04970150c6ce9fda22c9f63d947845f79148b4c"><code>a049701</code></a>
Fix usage of proxy.py in test_proxy_functional (<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7773">#7773</a>)
(<a
href="https://redirect.github.com/aio-libs/aiohttp/issues/7876">#7876</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/aio-libs/aiohttp/compare/v3.8.6...v3.9.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=aiohttp&package-manager=pip&previous-version=3.8.6&new-version=3.9.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bot:chronographer:provided There is a change note present in this PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Request is not cancelled on timeout, its response is returned for the next request
3 participants