Repository navigation
Change in airbyte-cdk removes MessageRepresentationAirbyteTracedErrors, breaking multiple connectors #946
Description
Summary
A recent airbyte-cdk update introduced a breaking change that removes the MessageRepresentationAirbyteTracedErrors class from airbyte_cdk.sources.streams.http.http_client. This silently breaks a number of published connectors — including the latest released versions — and leaves Python users with no straightforward path to restore functionality, even by pinning older connector versions.
Affected Change
PR #927 in airbyte-python-cdk removes MessageRepresentationAirbyteTracedErrors, which is imported by several connectors (e.g. airbyte-source-github).
Steps to Reproduce
pip install airbyte-source-github
source-githubObserved error:
Traceback (most recent call last):
File ".../bin/source-github", line 3, in <module>
from source_github.run import run
File ".../source_github/__init__.py", line 25, in <module>
from .source import SourceGithub
File ".../source_github/source.py", line 12, in <module>
from airbyte_cdk.sources.streams.http.http_client import MessageRepresentationAirbyteTracedErrors
ImportError: cannot import name 'MessageRepresentationAirbyteTracedErrors' from 'airbyte_cdk.sources.streams.http.http_client'
This reproduces with the latest published version of airbyte-source-github, meaning there is no up-to-date release that users can upgrade to.
Why Pinning an Older Connector Version Doesn't Help
Connector packages do not pin airbyte-cdk to a specific version. As a result, installing any older connector release will still resolve the latest SDK at install time, which also lacks MessageRepresentationAirbyteTracedErrors. Users are effectively stuck with no working version available via pip.
Proposed Solutions
Short-term (immediate):
Restore MessageRepresentationAirbyteTracedErrors in airbyte_cdk.sources.streams.http.http_client, ideally with a deprecation warning pointing to the new location if it was moved rather than deleted. This unblocks all currently broken connectors without requiring connector-side changes.
Long-term (systemic fix):
Pin airbyte-cdk to a specific version range (or at minimum an upper-bound constraint) in each connector's dependencies. Currently, any breaking SDK change cascades instantly across the entire connector ecosystem, and Python users have no viable rollback option. Strict pinning would contain the blast radius of future SDK changes and give connector maintainers time to migrate in a controlled way.
Impact
- Affects all connectors that import
MessageRepresentationAirbyteTracedErrors - Latest connector releases are broken with no workaround for end users
- Breaks standard Python usage (
pip install) with no pin-based escape hatch
Thank you for your attention to this — the Airbyte connector ecosystem is widely used and even small SDK hygiene improvements here would have a meaningful positive impact for the community.
Internal Tracking: https://github.com/airbytehq/oncall/issues/11850
Activity
devin-ai-integration commentedon Apr 1, 2026
Hi Sergey Kulik (@zxqfd555), thank you for this thorough and well-documented report!
You're correct — PR #927 removed the
MessageRepresentationAirbyteTracedErrorsclass fromairbyte_cdk.sources.streams.http.http_client. The__str__behavior was promoted to the baseAirbyteTracedExceptionclass, but no backward-compatible alias or deprecation shim was added for connectors still importing the old class name.This means any connector that does:
will fail with an
ImportErrorat startup when resolved against the latest CDK.I've escalated this to the internal team for resolution: https://github.com/airbytehq/oncall/issues/11850
Workaround in the meantime: If you need an immediate fix, you can pin
airbyte-cdkto a version before the removal when installing the connector:pip install airbyte-source-github 'airbyte-cdk<7.0'(Adjust the version constraint based on when the breaking change was released — check PyPI for the exact version.)
Your point about connectors not pinning CDK version ranges is also well taken and has been noted in the escalation.
Need more help? Join Airbyte Community Slack for peer support, or if you're a Cloud customer, open a support ticket referencing this URL.
pnilan commentedon Apr 14, 2026
Hello. Thanks for raising this. I believe this should be resolved with latest version of source-github. I will close this issue. Please reach out if you still observe this issue.