Skip to main content

Declares the Airbyte Protocol using Python Dataclasses. Dataclasses in Python have less performance overhead compared to Pydantic models, making them a more efficient choice for scenarios where speed and memory usage are critical

Project description

airbyte-protocol

Declares the Airbyte Protocol.

Key Files

  • airbyte_protocol.yaml - declares the Airbyte Protocol (in JSONSchema)
  • io.airbyte.protocol.models - this package contains various java helpers for working with the protocol.

Pull Requests Titles Must Conform to Conventional Commits Convention

We are leveraging the Release Please Action to manage our version bumping and releasing. This action relies on the use of the conventional commits convention to determine whether to bump major, minor, or patch versions. Since we use squash merging, the only commits we see in our history are the titles of our pull requests. This is why we are following conventional commits for our pull request titling. Your actual commits do not need to follow this convention because they never show up in the git history.

Here is a summary of what Release Please looks for in your pull request title.

The most important prefixes you should have in mind are:

  • fix: which represents bug fixes, and correlates to a SemVer patch.
  • feat: which represents a new feature, and correlates to a SemVer minor.
  • feat!:, or fix!:, refactor!:, etc., which represent a breaking change (indicated by the !) and will result in a SemVer major.

Release Please will create a pull request when it believes there is a potential new version to be released. It compiles a change log based on the commit history sinced last release. It updates this PR appropriately everytime a PR is merged. If you desire to release a new version, you would approve and merge this PR.

The PR looks something like this. example-release-please-pr

Releasing A Protocol Version

To release:

  • Create a PR following the conventions stated in the above section.
  • Merge this PR in.
  • If the conventional commit convention is followed, CI will create a bump version PR with release notes and the new version. The new version follows conventional commit semantics.
  • Double check the new version by looking at the .env file.
  • Merge the bump version PR in.
  • On merge to master, CI will detect the version change and publish a Java JAR, a PyPi package and an NPM package. A Github release is also created.

Release Errors

If there is a publishing error on merge to master, the manual publishing workflow is an escape hatch for manually republishing artifacts for a specific version.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file airbyte_protocol_models_dataclasses-0.14.4.tar.gz.

File metadata

File hashes

Hashes for airbyte_protocol_models_dataclasses-0.14.4.tar.gz
Algorithm Hash digest
SHA256 dbc00ceeb84a777d09b1f1ee97345b65b50a465a7008d8721127a12b4815ff57
MD5 6e7cd541b477ff838f5903f571882144
BLAKE2b-256 1db090e902b73f70566c893a6338e7816266d2b9e3a76963af57f2e4127af41c

See more details on using hashes here.

File details

Details for the file airbyte_protocol_models_dataclasses-0.14.4-py3-none-any.whl.

File metadata

File hashes

Hashes for airbyte_protocol_models_dataclasses-0.14.4-py3-none-any.whl
Algorithm Hash digest
SHA256 831d61ac9527e9671bb8b78ef76902aa34b85bc4ce5cad502223842553d732b2
MD5 b50384051078216d1a2b6bcf50c004f5
BLAKE2b-256 bc34f5711665211dda6bbf6436a85b0448e192b89bb349e8e96f6f18e25e957a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page