airbytehq / airbytehq/PyAirbyte

feat: Add STATE message handling for incremental sync support in universal source

Ouverte
#987 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
344
Forks
77
Merge moyen
1 j 11 h
PR mergées (30 j)
35

Description

## Summary

The universal source connector (`SourcePyAirbyteUniversal`) currently only forwards RECORD messages from the underlying PyAirbyte source. STATE messages are dropped, which means only full-refresh syncs are supported.

## Context

In `airbyte/cli/universal_connector/source.py`, the `read()` method filters messages to only yield RECORD types. STATE messages require per-stream format conversion between `airbyte_protocol.models` and `airbyte_cdk.models`, which adds complexity.

## Desired Behavior

- Forward STATE messages from the underlying source through the universal source connector
- Handle per-stream state format conversion between PyAirbyte's protocol models and the CDK models
- Enable incremental sync support for connectors wrapped by the universal source

## References

- Related PR: https://github.com/airbytehq/PyAirbyte/pull/982
- File: `airbyte/cli/universal_connector/source.py` (line 195)

---
[Devin session](https://app.devin.ai/sessions/02ea317be9054bcba5e48a6ed1622620)

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.