Skip to content

chore(deps): Bump aiohttp from 3.14.0 to 3.14.4 - #237

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/pip/aiohttp-3.14.4
Closed

dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/pip/aiohttp-3.14.4

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 20, 2026 •

Copy link
Copy Markdown

Bumps aiohttp from 3.14.0 to 3.14.4.

Dependabot compatibility score

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 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)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Summary by cubic

Updates aiohttp from 3.14.0 to 3.14.4 in poetry.lock. This patch release includes upstream bug and security fixes; no code changes are required.

Written for commit 3742377. Summary will update on new commits.

View guided diff Turn on auto-fix

---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.14.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Oct 20, 2026
@fossabot

fossabot Bot commented Oct 20, 2026

Copy link
Copy Markdown

⏳ Analysis Queued

Your fossabot analysis was queued at 2026-10-20 04:53:41 UTC. We'll start as soon as a worker picks it up.


fossabot will update this comment as the analysis progresses.

@fossabot

fossabot Bot commented Oct 20, 2026

Copy link
Copy Markdown

fossabot Analysis Paused

App impact analysis skipped — out of credits

Breaking change detection completed but more credits are needed to enable usage detection, impact analysis, fix suggestions, and get your final upgrade determination.

aiohttp 3.14.0 → 3.14.4

We found 5 breaking changes and 2 deprecations.

  • Removed METH_HEAD_ALL and METH_CONNECT_ALL constants from hdrs module. These frozensets of case-permutations are no longer available. Use direct comparison with hdrs.METH_HEAD or hdrs.METH_CONNECT instead (methods are now normalized to uppercase). (v3.14.2, package source)
  • WebSocketReader compress and decode_text parameters no longer have default values - they must now be explicitly provided when instantiating the reader. (v3.14.2, package source)
  • WebSocket receive queue now only holds weak reference to WebSocketReader while parsing is stalled; code constructing a reader directly and passing it to set_parser() must keep its own strong reference to avoid frames being lost (v3.14.4, package source)
View more changes for aiohttp
  • Fixed the client dropping only the first Authorization, Cookie and Proxy-Authorization header when a redirect crossed an origin -- by :user:arshsmith1. (v3.14.2-3.14.3, release notes)
  • Fixed error message construction in the C HTTP parser -- by :user:bdraco. (v3.14.2-3.14.3, release notes)
  • Numeric IPv4 resolver bypass (v3.14.0-3.14.1, commit)
  • Fix pipelined request after websocket response (v3.14.0-3.14.1, commit)
  • Fix race condition in connector (v3.14.0-3.14.1, commit)
  • Fix flaky test_handler_returns_not_response (v3.14.0-3.14.1, commit)
  • Fix flaky test_tcp_connector_fingerprint (v3.14.0-3.14.1, commit)
  • Shrink slow client and URL dispatcher benchmarks (v3.14.0-3.14.1, commit)
  • Fix flaky middleware recursion tests (v3.14.0-3.14.1, commit)
  • Fix octal tests (v3.14.0-3.14.1, commit)

...and 247 more in the full analysis


Full analysis skipped — out of credits. Re-run with @fossabot analyze when you have more credits.

@coderabbitai

coderabbitai Bot commented Oct 20, 2026

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 6640fae0-b2ff-49c2-84ec-08befcc9e7c8

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@fossabot

fossabot Bot commented Oct 20, 2026

Copy link
Copy Markdown

fossabot Analysis Paused

App impact analysis skipped — out of credits

Breaking change detection completed but more credits are needed to enable usage detection, impact analysis, fix suggestions, and get your final upgrade determination.

aiohttp 3.14.0 → 3.14.4

We found 5 breaking changes and 2 deprecations.

  • Removed METH_HEAD_ALL and METH_CONNECT_ALL constants from hdrs module. These frozensets of case-permutations are no longer available. Use direct comparison with hdrs.METH_HEAD or hdrs.METH_CONNECT instead (methods are now normalized to uppercase). (v3.14.2, package source)
  • WebSocketReader compress and decode_text parameters no longer have default values - they must now be explicitly provided when instantiating the reader. (v3.14.2, package source)
  • WebSocket receive queue now only holds weak reference to WebSocketReader while parsing is stalled; code constructing a reader directly and passing it to set_parser() must keep its own strong reference to avoid frames being lost (v3.14.4, package source)
View more changes for aiohttp
  • Fixed the client dropping only the first Authorization, Cookie and Proxy-Authorization header when a redirect crossed an origin -- by :user:arshsmith1. (v3.14.2-3.14.3, release notes)
  • Fixed error message construction in the C HTTP parser -- by :user:bdraco. (v3.14.2-3.14.3, release notes)
  • Numeric IPv4 resolver bypass (v3.14.0-3.14.1, commit)
  • Fix pipelined request after websocket response (v3.14.0-3.14.1, commit)
  • Fix race condition in connector (v3.14.0-3.14.1, commit)
  • Fix flaky test_handler_returns_not_response (v3.14.0-3.14.1, commit)
  • Fix flaky test_tcp_connector_fingerprint (v3.14.0-3.14.1, commit)
  • Shrink slow client and URL dispatcher benchmarks (v3.14.0-3.14.1, commit)
  • Fix flaky middleware recursion tests (v3.14.0-3.14.1, commit)
  • Fix octal tests (v3.14.0-3.14.1, commit)

...and 247 more in the full analysis


Full analysis skipped — out of credits. Re-run with @fossabot analyze when you have more credits.

@sonarqubecloud

Copy link
Copy Markdown

@depintel-bot

depintel-bot Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

🟠 Review before merging

3 third-party packages in this PR: 1 safe, 2 caution.

🟠🟣 Review one behavior before merging

A documented behavior change intersects with repository usage; impact depends on the inputs reaching the changed code path.

Security advisory: GHSA-2fqr-mr3j-6wp8, GHSA-2g87-pp6c-29x5, GHSA-494j-54xm-rwp3, GHSA-4fvr-rgm6-gqmc, GHSA-4m7w-qmgq-4wj5, GHSA-5wr8-gcqf-gqf3, GHSA-63hw-fmq6-xxg2, GHSA-9x8q-7h8h-wcw9, GHSA-cq5v-8q36-5273, GHSA-g3cq-j2xw-wf74, GHSA-hpj7-wq8m-9hgp, GHSA-mfx4-hv73-q22v, GHSA-mq44-7p77-q5h7, GHSA-xcgm-r5h9-7989, PYSEC-2026-2107, PYSEC-2026-2108, PYSEC-2026-2109, PYSEC-2026-2110, PYSEC-2026-2111, PYSEC-2026-2112, PYSEC-2026-2113, PYSEC-2026-237, PYSEC-2026-3545, PYSEC-2026-3546, PYSEC-2026-3547

View evidence and analysis receipt

depintel verdict: caution

Package: aiohttp 3.14.0 -> 3.14.4

review 36cb7364eec3 · engine b5b0bc86

🔒 Security fix: this bump fixes GHSA-2fqr-mr3j-6wp8, GHSA-2g87-pp6c-29x5, GHSA-494j-54xm-rwp3, GHSA-4fvr-rgm6-gqmc (+21 more) (per OSV). Merging is security-positive; this review took the full path because security fixes often carry behavioral hardening.

Impact: MODERATE — your code uses the changed symbol(s) (TCPConnector) and call-site analysis could not rule out the changed behavior (see exposure notes). Verify the flagged call sites against the findings before merging.

A documented behavior change intersects with repository usage; impact depends on the inputs reaching the changed code path.

Verifier audit: Engine priced a real TCPConnector behavior change against runtime usage with exposure overall=possible (not likely, not none). Usage scan found the symbol, lexicon has a blocking hit, and the finding is a documented reject of non-canonical IPv4 literals. Breaking is correctly withheld without 'likely' exposure; de-escalation to safe is blocked by non-zero intersection and residual constructor-URL reachability. Verdict matches the basis.

Signal Result
Version delta patch
Repo usage scanned yes (66 site(s))
Usage ∩ changed API 1
Static API findings 0
Release-note findings (LLM) 1
Changelog red-flag terms 16
Package type import library
Dependency scope runtime (pyproject [tool.poetry.dependencies])
CI on this PR failing (11/16 checks green)
Non-Python payload changed 15 file(s) under aiohttp (.hash x8, .c x3, .pxd x2, .pxi x1, .pyx x1; 368 KiB moved) — not covered by the API diff

🔴 CI is failing on this PR (5/16 checks) — newly failing with this change (green on the base commit): build (3.10, 2.3.2), build (3.11, 2.3.2), build (3.12, 2.3.2), build (3.13, 2.3.2), build (3.14, 2.3.2). Inspect the new failures before considering this update.

Basis: behavior change intersects usage; breaking requires positive exposure proof ('likely'), not intersection alone [wheel matrix: declared wheel platform coverage shrank: lost 2: android_21_arm64_v8a, android_21_x86_64] [shadow:verify-2:full=caution] [shadow:shadow-verify-nemo:full=caution]

Touched symbols:

  • TCPConnector

Call-site exposure analysis: possible — 🟡 possible — cannot be ruled out from the visible code

  • aiohttp.TCPConnector → possible [requires spec-illegal input]: judge.py:107 builds TCPConnector and then session.get(url=self.url). self.url is the Judge constructor argument (self.url=url; host=urlparse(url).netloc). Default get_judges() URLs are all DNS hostnames (httpbin.org, azenv.net, …) and cannot trigger the change. Custom judges flow Broker.init (self._judges=judges) → Checker → get_judges → Judge(j), so a caller can pass a non-canonical IPv4 URL such as http://127.1/. Before the request, check() does self._resolver.resolve(self.host) and returns on ResolveError; host_is_ip uses stdlib ipaddress, which rejects 127.1/2130706433/017700000001, so those names go to aiodns. resolve() itself was unresolvable, so a successful lookup (or getaddrinfo-style fallback) cannot be ruled out; if it succeeds, session.get(self.url) still uses the original non-canonical host and would hit InvalidUrlClientError. SMTP judges return before the connector.
  • aiohttp.TCPConnector → none: resolver.py:214 builds TCPConnector(family=family) and fetches candidates via _try_endpoint. Resolver._ip_hosts is a class-level list of exactly seven well-known hostname URLs (api64.ipify.org, wtfismyip.com, api.ipify.org, ipinfo.io, ipv4.icanhazip.com, myexternalip.com, ifconfig.io); _probe_family comments refer to “7 candidates × 5s”, matching that list. None of those hosts are numeric IPv4 in any form. No self._ip_hosts assignment exists, so the list is not rewritten in-repo. The changed rejection of non-canonical IPv4 literals cannot fire on these URLs.

Findings:

  • aiohttp.TCPConnector (behavior_change, llm, confidence 1.00)
    • TCPConnector now rejects non-canonical numeric IPv4 host forms, raising InvalidUrlClientError instead of treating them as IP literals.
    • Evidence: Changed :class:'~aiohttp.TCPConnector' to reject legacy non-canonical numeric IPv4 host forms such as ''2130706433'', ''017700000001'' and ''127.1'' with :exc:'~aiohttp.InvalidUrlClientError'; only canonical dotted-quad IPv4 literals are now treated as IP address literals, while every other host is sent through the configured resolver
    • Source: https://github.com/aio-libs/aiohttp/releases/tag/V1

Run: 20261020T045436Z-494ce958b398


Evidence is static analysis plus release evidence available to depintel at run time. This advisory verdict is not a substitute for maintainer review.

🟢 Ready to merge

Lapisa checked propcache 0.2.0 → 0.5.4 against the interfaces this repository uses; no affected usage was found.

View evidence and analysis receipt

depintel verdict: safe

Package: propcache 0.2.0 -> 0.5.4

review 5af727651f5e · engine b5b0bc86

⚠️ DEGRADED REVIEW — anomaly: changelog is 13977 chars and the semantic lane DID NOT RUN (early-exit path — by design); prose of this size was judged by the deterministic lanes alone. Treat this verdict as weaker evidence than usual; this is a property of the update itself (not an outage), so no automatic re-review is scheduled; a new push to this PR triggers a fresh review.

Impact: NONE found — OK to merge on this evidence.

No touched changed API surface and no changelog red flags were found.

Signal Result
Version delta minor
Repo usage scanned yes (0 site(s))
Usage ∩ changed API 0
Static API findings 0
Release-note findings (LLM) 0
Changelog red-flag terms 10
Package type import library
Dependency scope runtime (transitive via direct dep 'aiohttp')
CI on this PR failing (11/16 checks green)

🔴 CI is failing on this PR (5/16 checks) — newly failing with this change (green on the base commit): build (3.10, 2.3.2), build (3.11, 2.3.2), build (3.12, 2.3.2), build (3.13, 2.3.2), build (3.14, 2.3.2). Inspect the new failures before considering this update.

Basis: untouched surface, clean changelog lexicon, machine-verified evidence bar (delta-blind by law) [window history: upstream yanked 0.4.0 inside this upgrade window — breakage admitted and withdrawn upstream; target version postdates the withdrawal] [wheel matrix: declared wheel platform coverage shrank: lost 5: manylinux1_i686, manylinux2014_i686, manylinux_2_17_i686, manylinux_2_5_i686, musllinux_1_2_i686] [env-facet: REACHES declared runtime linux — lost coverage on linux/i686 (install face of THIS repo may change)] [coverage: static-analyzer blind-spot signals in target tree (c_extension x1 (propcache-0.5.4/src/propcache/_helpers_c.pyx), computed_all x1 (propcache-0.5.4/packaging/pep517_backend/_backend.py)) — the zero-intersection claim covers Python-visible surface only] [shadow:verify-2:full=safe]

Run: 20261020T045436Z-494ce958b398


Evidence is static analysis plus release evidence available to depintel at run time. This advisory verdict is not a substitute for maintainer review.

🟠 Review one behavior before merging

Decide with these point(s): 1 named removal(s) (unsafe) — none intersect scanned usage; dynamic/transitive use is the residual question. | Upstream dropped support: Python 3.9, experimental free-threaded build of Python 3.13, hypothesis — does your environment rely on any of these?

View evidence and analysis receipt

depintel verdict: caution

Package: yarl 1.18.0 -> 1.25.1

review 2ed78a581c0a · engine b5b0bc86

Impact: LOW — this repository never imports yarl directly (0 usage sites found); the 1 upstream removal(s) can only bite through transitive/build-time paths. Skim findings, then merge.

Decide with these point(s): 1 named removal(s) (unsafe) — none intersect scanned usage; dynamic/transitive use is the residual question. | Upstream dropped support: Python 3.9, experimental free-threaded build of Python 3.13, hypothesis — does your environment rely on any of these?

Verifier audit: Engine caution is consistent with its own record: usage_scan is a decisive zero and exposure was correctly skipped, but safe is blocked by a non-clean lexicon (1 blocking term after attribution), unaccounted findings the API-tree blind spot withheld from machine clearing, refused unused-dependency/kwarg certificates, and an env-facet that REACHES declared runtime linux after losing i686 wheel coverage. Runtime dep_scope so C22v2 does not apply; empty intersection plus named residual install/lexicon risk is caution, not safe/unknown/breaking.

Signal Result
Version delta minor
Repo usage scanned yes (0 site(s))
Usage ∩ changed API 0
Static API findings 1
Release-note findings (LLM) 6
Changelog red-flag terms 13
Package type import library
Dependency scope runtime (transitive via direct dep 'aiohttp')
CI on this PR failing (11/16 checks green)

🔴 CI is failing on this PR (5/16 checks) — newly failing with this change (green on the base commit): build (3.10, 2.3.2), build (3.11, 2.3.2), build (3.12, 2.3.2), build (3.13, 2.3.2), build (3.14, 2.3.2). Inspect the new failures before considering this update.

Basis: safe requires empty touched-surface intersection and clean lexicon scan — held by: changelog red-flag terms: no longer (12 other term(s) cleared by repo floor/platform/attribution); unaccounted findings: yarl._query.SimpleQuery [attribute_value_change]; Started raising a :exc:ValueError exception rais [behavior_change]; Made Cython line tracing opt-in via the ``with-cyt [behavior_change]; Dropped Python 3.9 support; Python 3.10 is the min [support_change] (+5 more); analyzability blind spot: API tree not enumerable for this layout (machine clearing of the holders above is withheld) [window history: upstream yanked 1.18.1, 1.18.2, 1.24.0, 1.24.1 inside this upgrade window — breakage admitted and withdrawn upstream; target version postdates the withdrawal] [wheel matrix: declared wheel platform coverage shrank: lost 6: manylinux1_i686, manylinux2014_i686, manylinux_2_17_i686, manylinux_2_5_i686, musllinux_1_2_i686, win32] [env-facet: REACHES declared runtime linux — lost coverage on linux/i686 (install face of THIS repo may change)] [parent-absorption: change absorbed at layer 1: no direct parent (aiohttp) references the changed surface] [shadow:verify-2:full=caution] [shadow:shadow-verify-nemo:full=caution]

Findings:

  • unsafe (api_removal, lexicon, confidence 0.90)
  • unspecified (support_change, llm, confidence 1.00)
    • Python 3.9 support was dropped, raising the minimum Python version to 3.10.
    • Evidence: Dropped Python 3.9 support; Python 3.10 is the minimal supported Python version
  • unspecified (support_change, llm, confidence 1.00)
    • Dropped support for the experimental free-threaded build of Python 3.13
  • unspecified (support_change, llm, confidence 0.30)
    • hypothesis is no longer installed in the wheel-build test environment, which may affect downstream builds that rely on it.
    • Evidence: Stopped installing ''hypothesis'' in the wheel-build test environment.
  • unspecified (behavior_change, llm, confidence 0.90)
    • Changed exception type from IndexError to ValueError for corrupted IPv6 URLs.
    • Evidence: Started raising a :exc:'ValueError' exception raised for corrupted IPv6 URL values.
  • yarl.URL.query (behavior_change, llm, confidence 0.90)
    • URL.query and related methods changed behavior to match urllib.parse.parse_qsl, fixing a regression where empty fields were returned and invalid percent-encoded UTF-8 was kept as-is, and no longer double encode those escapes.
    • Evidence: Fixed :attr:'URL.query <yarl.URL.query>' returning empty fields and keeping invalid percent-encoded UTF-8 as is, a regression in 1.19.0. It matches :func:'urllib.parse.parse_qsl' again, and so do the methods built on it, :meth:'~yarl.URL.update_query', :meth:'~yarl.URL.without_query_params' and :meth:'~yarl.URL.human_repr', which also no longer double encode those escapes
    • Source: https://github.com/aio-libs/yarl/releases/tag/V2
  • unspecified (behavior_change, llm, confidence 0.80)
    • Changed default behavior of Cython line tracing from enabled to opt-in.
    • Evidence: Made Cython line tracing opt-in via the ''with-cython-tracing'' build config setting
  • tuple.__new__ (behavior_change, lexicon, confidence 0.70)
  • yarl._query.SimpleQuery (attribute_value_change, griffe, confidence 0.95)
    • yarl/_query.py:11: SimpleQuery: Attribute value was changed: Union[str, int, float] -> Union[str, SupportsInt, float]

Run: 20261020T045436Z-494ce958b398


Evidence is static analysis plus release evidence available to depintel at run time. This advisory verdict is not a substitute for maintainer review.

@depintel-bot depintel-bot Bot added lapisa:caution One thing needs a human look lapisa:security-fix Ships a security fix and removed lapisa:security-fix Ships a security fix labels Oct 20, 2026
@dependabot @github

dependabot Bot commented on behalf of github Oct 24, 2026

Copy link
Copy Markdown
Author

Looks like aiohttp is up-to-date now, so this is no longer needed.

@dependabot dependabot Bot closed this Oct 24, 2026
@dependabot
dependabot Bot deleted the dependabot/pip/aiohttp-3.14.4 branch October 24, 2026 20:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file lapisa:caution One thing needs a human look python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants