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

airbyte_protocol_models_dataclasses-0.14.1.tar.gz (6.3 kB view details)

Uploaded Source

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.1.tar.gz.

File metadata

File hashes

Hashes for airbyte_protocol_models_dataclasses-0.14.1.tar.gz
Algorithm Hash digest
SHA256 f62a46556b82ea0d55de144983141639e8049d836dd4e0a9d7234c5b2e103c08
MD5 4cc18d97a1b362b67bc8ed524afd2f72
BLAKE2b-256 ec9f334d2143a7a21de389ce5ddd3763ac1264ee37ad8011c0315b4ee57758be

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for airbyte_protocol_models_dataclasses-0.14.1-py3-none-any.whl
Algorithm Hash digest
SHA256 dfe10b32ee09e6ba9b4f17bd309e841b61cbd61ec8f80b1937ff104efd6209a9
MD5 6abc0e7369d9754231b0369637251c7f
BLAKE2b-256 01607f655f2c2eb83051f3442c69abcc04da99daac34ac65229f82701b655898

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