1
0
mirror of synced 2025-12-26 14:02:10 -05:00
Commit Graph

30 Commits

Author SHA1 Message Date
Aaron ("AJ") Steers
8d6a7aa220 Python-CDK: Add CDK sql module for new MotherDuck destination (#47260)
Co-authored-by: Guen Prawiroatmodjo <guen@motherduck.com>
2024-10-22 22:09:08 -07:00
Natik Gadzhi
b9f4154d1c chore(airbyte-cdk): remove codeflash to reduce repo noise (#46727) 2024-10-11 12:20:37 -07:00
Patrick Nilan
9249347736 [airbyte-cdk] - Add XmlDecoder component to low code CDK (#46360) 2024-10-09 11:18:32 -07:00
Maxime Carbonneau-Leclerc
6af23bdcb4 fix dependencies (#46285) 2024-10-01 09:33:38 -04:00
Artem Inzhyyants
3547437c30 fix(airbyte-cdk): add snappy to file-based deps (#45864)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-09-24 10:39:01 +02:00
Maxime Carbonneau-Leclerc
e6659ad42e airbyte-cdk: poetry lock before release (#45365) 2024-09-10 14:22:17 -04:00
Maxime Carbonneau-Leclerc
6baf254b5d feat(cdk): add async job components (#45178) 2024-09-10 08:59:12 -04:00
Artem Inzhyyants
df34893b63 feat(airbyte-cdk): replace pydantic BaseModel with dataclasses + serpyco-rs in protocol (#44444)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-09-02 17:48:17 +02:00
Artem Inzhyyants
7644dcd2a3 feat(airbyte-cdk): use orjson to speed up parsing (#44829)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-08-29 21:16:23 +02:00
Alexandre Girard
f1f6376486 feat(python-cdk) Install codeflash in CDK dev (#44426)
Co-authored-by: Augustin <augustin@airbyte.io>
2024-08-22 14:53:13 -07:00
Serhii Lazebnyi
aaaf12e055 [file-based cdk] add excel file type support (#43346) 2024-08-14 15:05:15 +02:00
Artem Inzhyyants
f5bea19647 perf(airbyte-cdk): performance enhancement (#42441)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-07-29 13:52:57 +02:00
Patrick Nilan
9537394887 [airbyte-cdk] Update HttpClient to return correct error message in case of FAIL/IGNORE (#42512) 2024-07-26 12:56:26 -07:00
Artem Inzhyyants
f5e5a9768b fix(airbyte-cdk): fix OOM on predicate for streamable responses (#42448)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-07-23 21:41:03 +02:00
Ella Rohm-Ensing
fc12432305 airbyte-cdk: only update airbyte-protocol-models to pydantic v2 (#39524)
## What

Migrating Pydantic V2 for Protocol Messages to speed up emitting records. This gives us 2.5x boost over V1. 

Close https://github.com/airbytehq/airbyte-internal-issues/issues/8333

## How
- Switch to using protocol models generated for pydantic_v2, in a new (temporary) package, `airbyte-protocol-models-pdv2` .
- Update pydantic dependency of the CDK accordingly to v2.
- For minimal impact, still use the compatibility code `pydantic.v1` in all of our pydantic code from airbyte-cdk that does not interact with the protocol models.

## Review guide
1. Checkout the code and clear your CDK virtual env (either `rm -rf .venv && python -m venv .venv` or `poetry env list; poetry env remove <env>`. This is necessary to fully clean out the `airbyte_protocol` library, for some reason. Then: `poetry lock --no-update && poetry install --all-extras`. This should install the CDK with new models. 
2. Run unit tests on the CDK
3. Take your favorite connector and point it's `pyproject.toml` on local CDK (see example in `source-s3`) and try running it's tests and it's regression tests.

## User Impact

> [!warning]
> This is a major CDK change due to the pydantic dependency change - if connectors use pydantic 1.10, they will break and will need to do similar `from pydantic.v1` updates to get running again. Therefore, we should release this as a major CDK version bump.

## Can this PR be safely reverted and rolled back?
- [x] YES 💚
- [ ] NO 

Even if sources migrate to this version, state format should not change, so a revert should be possible.

## Follow up work - Ella to move into issues

<details>

### Source-s3 - turn this into an issue
- [ ] Update source s3 CDK version and any required code changes
- [ ] Fix source-s3 unit tests
- [ ] Run source-s3 regression tests
- [ ] Merge and release source-s3 by June 21st

### Docs
- [ ] Update documentation on how to build with CDK 

### CDK pieces
- [ ] Update file-based CDK format validation to use Pydantic V2
  - This is doable, and requires a breaking change to change `OneOfOptionConfig`. There are a few unhandled test cases that present issues we're unsure of how to handle so far.
- [ ] Update low-code component generators to use Pydantic V2
  - This is doable, there are a few issues around custom component generation that are unhandled.

### Further CDK performance work - create issues for these
- [ ] Research if we can replace prints with buffered output (write to byte buffer and then flush to stdout)
- [ ] Replace `json` with `orjson`
...

</details>
2024-06-21 01:53:44 +02:00
Augustin
6d42ecafb0 Augustin/protocolv2 (#39863)
## What
<!--
* Describe what the change is solving. Link all GitHub issues related to this change.
-->

Separate out the `datamodel-codegen` workflow into a dagger workflow. This enables us to, upstack, properly generate the same v1 models as previously. Unfortunately datamodel-codegen's "pydantic v1" output on its v2 versions doesn't output what one would expect - see [issue](https://github.com/koxudaxi/datamodel-code-generator/issues/1950) (thanks AJ!). 

## How
<!--
* Describe how code changes achieve the solution.
-->
* Convert the script from bash to python (in dagger) and run it via a shell script (to install dagger)

## User Impact
<!--
* What is the end result perceived by the user?
* If there are negative side effects, please list them. 
-->
None. Development experience is also the same

## Can this PR be safely reverted and rolled back?
<!--
* If unsure, leave it blank.
-->
- [x] YES 💚
- [ ] NO 
2024-06-21 01:36:43 +02:00
Catherine Noll
7742825dd8 airbyte-cdk: update poetry.lock (#38768) 2024-05-29 15:09:11 -04:00
Brian Lai
040f1415e5 [low-code CDK] Rsumable full refresh support for low-code streams (#38300) 2024-05-22 16:23:31 -04:00
Patrick Nilan
8396fd2d7f airbyte-cdk: Improve Error Handling in Legacy CDK (#37576) 2024-05-16 19:07:21 -07:00
Artem Inzhyyants
e2872523c2 fix(connector-builder): update deps (#38113)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-05-10 16:33:34 +02:00
Alexandre Girard
50f4add73c Python CDK: Pin the airbyte_protocol version (#37679) 2024-04-30 10:17:34 -07:00
Patrick Nilan
b20cd1bd1d airbyte-cdk - Adds JwtAuthenticator to low-code (#37005) 2024-04-19 09:17:54 -07:00
Bindi Pankhudi
63d4d5e3f6 Python CDK : Update LangChain version (#37327) 2024-04-15 12:43:51 -07:00
Christo Grabowski
8b8035a629 CDK: unpin airbyte-protocol-models version (#36911)
Co-authored-by: Maxime Carbonneau-Leclerc <3360483+maxi297@users.noreply.github.com>
2024-04-09 17:19:15 -04:00
Christo Grabowski
e74d936350 CDK: updated error message for missing streams (#36833) 2024-04-04 15:39:40 -04:00
Artem Inzhyyants
4431347114 Airbyte CDK: fix file-based deps (#36695)
Signed-off-by: Artem Inzhyyants <artem.inzhyyants@gmail.com>
2024-04-01 19:41:54 +02:00
dependabot[bot]
5d48bafc6b Bump black from 22.1.0 to 24.3.0 in /airbyte-cdk/python (#36568)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-27 20:17:29 -07:00
Ella Rohm-Ensing
aba305435e airbyte cdk: simplify datamodel-gen scripts (#36530) 2024-03-27 19:33:16 +00:00
Ella Rohm-Ensing
d58466c0bb CDK: fix empty extras (#36485) 2024-03-26 15:49:47 +00:00
Ella Rohm-Ensing
195408eb15 Airbyte CDK: move from gradle to poetry (#36250) 2024-03-25 18:46:57 -05:00