Skip to content

Releases: airbytehq/PyAirbyte

v0.29.0

05 Aug 00:07
9c3245f
Compare
Choose a tag to compare

PyAirbyte v0.29 introduces powerful new features, including MCP tools targeted to LLM use cases, the ability to "preview" data from multiple streams simultaneously, faster connector installs by leveraging the powerful uv tool, and the ability to mix-and-match connectors' Python versions within the same environment.

We're now also actively requesting feedback for the new experimental MCP features. You can share feedback in the GitHub Discussion here and in the #pyairbyte Slack channel.

✨ New Features (PyAirbyte Core)

  • feat: add stream previews for sources via Source.print_stream_previews() and Source.get_stream_previews() (#725)
  • feat: replace pip with uv for connector installations, resulting in dramatically faster connector installation (#730)
  • feat: ability to override which Python versions will be used for installing new connectors with the use_python arg for get_source() and get_destination() (#730)
  • feat: support uv-managed Python versions for installing new connectors with the use_python arg, even for Python versions not yet installed on the system (#730)
  • feat: add new Cache.run_sql_query() method to run SQL queries directly against cache objects (#734)

🤖 New Built-in PyAirbyte MCP Server (🧪 Experimental)

  • feat: add new MCP tools which allow LLMs to call PyAirbyte directly (#734, #738, #736):
    • Connector Management
      • list_connectors - List available Airbyte connectors with optional filtering by type (source/destination), install types (python, yaml, java, docker), or keywords
      • get_connector_info - Get documentation URL and information for a specific connector
      • list_connector_config_secrets - List available config secret names for a given connector
      • validate_connector_config - Validate a connector configuration
    • Source Operations
      • list_source_streams - List all streams available in a source connector
      • get_source_stream_json_schema - Get the JSON schema for a specific stream in a source connector
      • get_stream_previews - Get sample records (previews) from streams in a source connector
      • read_source_stream_records - Read records from a specific source stream
    • Cache Operations
      • describe_default_cache - Describe the currently configured default cache (typically DuckDB)
      • list_cached_streams - List all streams available in the default cache
      • sync_source_to_cache - Run a sync from a source connector to the default DuckDB cache
      • run_sql_query - Run SQL queries against the default cache

🐛 Fixes

  • fix: use stderr for log and progress prints (#720)
  • fix: fix docker refs for destinations in cli module (#735)

⚙️ Under the Hood

Show/Hide Details
  • ci: Update sources with init errors (#718) - Thanks, @yohannj!
  • ci: Remove flaky lowcode connector validation tests (#732)
  • ci: Add PR welcome message system with uvx installation examples (#721)
  • Chore(deps): Bump pyarrow from 17.0.0 to 21.0.0 (#722)
  • Chore(deps): Bump chuhlomin/render-template from 1.4 to 1.10 (#723)

v0.28.0

07 Jul 16:37
816fa44
Compare
Choose a tag to compare

❇️ New Experimental MCP Server

  • This release add a new experimental MCP server to PyAirbyte (docs here) (#696)

🔒 New Secrets Management Options

  • Adds support for secrets references (secret_reference::SECRET_NAME) and secrets hydration features (docs here) (#696)

🐛 Fixes

  • fix: "write /dev/stdout: broken pipe" error during execution (#613) - Thanks, @nicob3y!

v0.27.0

27 Jun 17:20
6794987
Compare
Choose a tag to compare

Changes

  • Feat: Add support for Snowflake key-pair authentication (#702) - Thanks, @Alioune05!

v0.26.0

26 Jun 23:19
68078b6
Compare
Choose a tag to compare

✨ New Features

  • feat: Add support for running manifest-only sources with custom components.py files (#697)

⚙️ Under the Hood

  • Chore(deps): Bump actions/github-script from 6 to 7 (#649)
  • ci: move ruff rules to dedicated config file (#693)

v0.25.2

20 Jun 20:25
345d648
Compare
Choose a tag to compare

✨ New Features

  • feat: Allow configuring dataset location in BigQueryCache (#689) - Thanks, @honzabilek4!

⚙️ CI Updates (Under the Hood)

Show/Hide
  • ci: Bump actions/create-github-app-token from 1 to 2 (#690)
  • ci: Use GitHub App token for CI workflow (#687)
  • ci: use pre-built 'get-pr' action (#686)
  • ci: update checks-action to post status to the Airbyte repository (#685)
  • ci: add check statuses to PRs from slash command execution (#683)
  • ci: Add JUnit XML output to pytest and publish test results to PRs (#677)
  • ci: add "not flaky" condition to on-demand test workflow (#678)

v0.25.1

26 May 20:25
6cb8e07
Compare
Choose a tag to compare

🐛 Fixes

  • fix: Resolve failures when a long-running session would time-out in the DB connection after more than 4+ hours (#676) - Thanks, @benjaminwilen!

🔃 Refactoring

  • refactor(internal): SQL backends now take a SQLConfig object instead of SQL Engine, allowing deferred SQL engine creation (#676) - Thanks, @benjaminwilen!

⚙️ Under the Hood

v0.25.0

16 May 19:26
1b87bda
Compare
Choose a tag to compare

✨ New Features

  • feat: add ability to override pk and cursor key values (#668)

🐛 Fixes

  • fix: give logs a second to flush when a connector crashes, improving helpfulness of log files (#660)

⚙️ Under the Hood

  • examples: update destination example script configuration to use GitHub and state cache (#659)
  • examples: update sample script to accept positional argument for connector name (#658)

v0.24.2

04 Apr 16:13
1b339b2
Compare
Choose a tag to compare

🐛 Fixes

  • fix: specifying a target version for a source does not actually install that version (#651)

v0.24.1

29 Mar 00:25
ee5cb2d
Compare
Choose a tag to compare

🐛 Fixes

  • fix: resolve issue in Cache.create_source_tables (#642)

📖 Documentation

  • fix: sources/base.py documentation to properly reflect allowed write_strategy arguments - Thanks, @dnxie12! (#581)

Under the Hood

  • ci: during semantic PR title check, block merging PR titles with "do not merge" (#636)

v0.24.0

25 Mar 22:26
6e2f946
Compare
Choose a tag to compare

✨ New Features

🐛 Fixes

  • fix: add explicit docker volume mapping (resolves permission denied errors)
  • fix: remove 'cdk:low-code' logic with false-positives for manifest-only connector detection

⚙️ Under the Hood

  • chore(deps): remove constraint on request lib (#639)
  • chore(deps-dev): Bump viztracer from 0.16.3 to 1.0.3 (#628)
  • chore: update pyproject.toml python requirement (#599)
  • chore: add auto-merge notification workflow (#604)