AirbyteLib
Project description
airbyte-lib
airbyte-lib is a library that allows to run Airbyte syncs embedded into any Python application, without the need to run Airbyte server.
Development
- Make sure Poetry is installed.
- Run
poetry install
- For examples, check out the
examples
folder. They can be run viapoetry run python examples/<example file>
- Unit tests and type checks can be run via
poetry run pytest
Release
- In your PR:
- Bump the version in
pyproject.toml
- Add a changelog entry to the table below
- Bump the version in
- Once the PR is merged, go to Github and trigger the
Publish AirbyteLib Manually
workflow. This will publish the new version to PyPI.
Versioning
Versioning follows Semantic Versioning. For new features, bump the minor version. For bug fixes, bump the patch version. For pre-releases, append dev.N
to the version. For example, 0.1.0dev.1
is the first pre-release of the 0.1.0
version.
Documentation
Regular documentation lives in the /docs
folder. Based on the doc strings of public methods, we generate API documentation using pdoc. To generate the documentation, run poetry run generate-docs
. The documentation will be generated in the docs/generate
folder. This needs to be done manually when changing the public interface of the library.
A unit test validates the documentation is up to date.
Validating source connectors
To validate a source connector for compliance, the airbyte-lib-validate-source
script can be used. It can be used like this:
airbyte-lib-validate-source —connector-dir . -—sample-config secrets/config.json
The script will install the python package in the provided directory, and run the connector against the provided config. The config should be a valid JSON file, with the same structure as the one that would be provided to the connector in Airbyte. The script will exit with a non-zero exit code if the connector fails to run.
For a more lightweight check, the --validate-install-only
flag can be used. This will only check that the connector can be installed and returns a spec, no sample config required.
Changelog
Version | PR | Description |
---|---|---|
0.1.0dev.2 | #34111 | Initial publish - add publish workflow |
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file airbyte_lib-0.1.0.dev1.tar.gz
.
File metadata
- Download URL: airbyte_lib-0.1.0.dev1.tar.gz
- Upload date:
- Size: 32.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.10.13 Linux/6.4.16-linuxkit
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5916f6f47d08c8532d575d3d38c03977a67633bab3e38e0e3afb77ab7b1d745 |
|
MD5 | 787bfea3b76fb73047eb27f46145bdef |
|
BLAKE2b-256 | 985ecff593e1c1f92f16eb6e906b723370727eb8da0f3452a83c6d3b23c39be8 |
File details
Details for the file airbyte_lib-0.1.0.dev1-py3-none-any.whl
.
File metadata
- Download URL: airbyte_lib-0.1.0.dev1-py3-none-any.whl
- Upload date:
- Size: 43.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.10.13 Linux/6.4.16-linuxkit
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6db9dbdae90e54b2f5c369a22539f057f1de5c202317db9dfd6ca3ff2dbcc991 |
|
MD5 | 35e08c1ef952ecd49043b7b20cbdbbf2 |
|
BLAKE2b-256 | d69504a245c3ca2b2ceb2307754636d6e4a70f694e2adeb59674dc39fa053bf8 |