Skip to content

bug(instrumentation-botocore): CI fails with aiohttp.streams AsyncStreamReaderMixin AttributeError #4645

@MikeGoldsmith

Description

@MikeGoldsmith

Summary

instrumentation-botocore-2 and instrumentation-botocore-3 CI jobs are deterministically failing with an import error inside vcrpy's aiohttp stubs. This is not flaky — every run fails with the same error.

The failure was first observed when cross-repo CI from opentelemetry-python merge queue runs hit it on PR open-telemetry/opentelemetry-python#5214 (a docstring-only change unrelated to botocore).

Error

.tox/py310-test-instrumentation-botocore-3/lib/python3.10/site-packages/vcr/stubs/aiohttp_stubs.py:21:
  from aiohttp import ClientConnectionError, ClientResponse, CookieJar, RequestInfo, hdrs, streams
E AttributeError: module 'aiohttp.streams' has no attribute 'AsyncStreamReaderMixin'

Root cause

A newer aiohttp version removed/renamed AsyncStreamReaderMixin in aiohttp.streams. The installed vcrpy version's aiohttp stubs still reference the old symbol, so the import fails at collection time and the whole test job errors out.

Affected jobs

  • contrib / instrumentation-botocore-2
  • contrib / instrumentation-botocore-3

Reproductions (failing core merge_group runs)

Impact

Blocks the core repo merge queue when contrib cross-repo tests run, since any PR that triggers contrib CI hits the same failure regardless of what the PR actually changed.

Suggested fix

In instrumentation/opentelemetry-instrumentation-botocore/, either:

  1. Pin vcrpy to a version compatible with the current aiohttp, or
  2. Constrain aiohttp to a version still compatible with the installed vcrpy, or
  3. Bump vcrpy to a release that no longer references AsyncStreamReaderMixin.

Option 3 is preferred if available — keeps deps current.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood first issueGood for newcomers

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions