airbyte-cdk 6.39.2__py3-none-any.whl → 6.40.0.dev0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- airbyte_cdk/sources/declarative/concurrent_declarative_source.py +16 -0
- airbyte_cdk/sources/declarative/declarative_component_schema.yaml +66 -2
- airbyte_cdk/sources/declarative/declarative_stream.py +8 -1
- airbyte_cdk/sources/declarative/manifest_declarative_source.py +24 -3
- airbyte_cdk/sources/declarative/models/declarative_component_schema.py +44 -3
- airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +205 -80
- airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py +66 -12
- airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py +0 -1
- airbyte_cdk/sources/declarative/retrievers/__init__.py +8 -1
- airbyte_cdk/sources/declarative/retrievers/async_retriever.py +30 -0
- airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +84 -2
- airbyte_cdk/sources/declarative/transformations/add_fields.py +10 -2
- airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py +10 -4
- {airbyte_cdk-6.39.2.dist-info → airbyte_cdk-6.40.0.dev0.dist-info}/METADATA +1 -1
- {airbyte_cdk-6.39.2.dist-info → airbyte_cdk-6.40.0.dev0.dist-info}/RECORD +19 -19
- {airbyte_cdk-6.39.2.dist-info → airbyte_cdk-6.40.0.dev0.dist-info}/LICENSE.txt +0 -0
- {airbyte_cdk-6.39.2.dist-info → airbyte_cdk-6.40.0.dev0.dist-info}/LICENSE_SHORT +0 -0
- {airbyte_cdk-6.39.2.dist-info → airbyte_cdk-6.40.0.dev0.dist-info}/WHEEL +0 -0
- {airbyte_cdk-6.39.2.dist-info → airbyte_cdk-6.40.0.dev0.dist-info}/entry_points.txt +0 -0
@@ -6,9 +6,20 @@ import json
|
|
6
6
|
from dataclasses import InitVar, dataclass, field
|
7
7
|
from functools import partial
|
8
8
|
from itertools import islice
|
9
|
-
from typing import
|
9
|
+
from typing import (
|
10
|
+
Any,
|
11
|
+
Callable,
|
12
|
+
Iterable,
|
13
|
+
List,
|
14
|
+
Mapping,
|
15
|
+
Optional,
|
16
|
+
Set,
|
17
|
+
Tuple,
|
18
|
+
Union,
|
19
|
+
)
|
10
20
|
|
11
21
|
import requests
|
22
|
+
from typing_extensions import deprecated
|
12
23
|
|
13
24
|
from airbyte_cdk.models import AirbyteMessage
|
14
25
|
from airbyte_cdk.sources.declarative.extractors.http_selector import HttpSelector
|
@@ -28,6 +39,7 @@ from airbyte_cdk.sources.declarative.requesters.requester import Requester
|
|
28
39
|
from airbyte_cdk.sources.declarative.retrievers.retriever import Retriever
|
29
40
|
from airbyte_cdk.sources.declarative.stream_slicers.stream_slicer import StreamSlicer
|
30
41
|
from airbyte_cdk.sources.http_logger import format_http_message
|
42
|
+
from airbyte_cdk.sources.source import ExperimentalClassWarning
|
31
43
|
from airbyte_cdk.sources.streams.core import StreamData
|
32
44
|
from airbyte_cdk.sources.types import Config, Record, StreamSlice, StreamState
|
33
45
|
from airbyte_cdk.utils.mapping_helpers import combine_mappings
|
@@ -438,8 +450,8 @@ class SimpleRetriever(Retriever):
|
|
438
450
|
most_recent_record_from_slice = None
|
439
451
|
record_generator = partial(
|
440
452
|
self._parse_records,
|
453
|
+
stream_slice=stream_slice,
|
441
454
|
stream_state=self.state or {},
|
442
|
-
stream_slice=_slice,
|
443
455
|
records_schema=records_schema,
|
444
456
|
)
|
445
457
|
|
@@ -618,3 +630,73 @@ class SimpleRetrieverTestReadDecorator(SimpleRetriever):
|
|
618
630
|
self.name,
|
619
631
|
),
|
620
632
|
)
|
633
|
+
|
634
|
+
|
635
|
+
@deprecated(
|
636
|
+
"This class is experimental. Use at your own risk.",
|
637
|
+
category=ExperimentalClassWarning,
|
638
|
+
)
|
639
|
+
@dataclass
|
640
|
+
class LazySimpleRetriever(SimpleRetriever):
|
641
|
+
"""
|
642
|
+
A retriever that supports lazy loading from parent streams.
|
643
|
+
"""
|
644
|
+
|
645
|
+
def _read_pages(
|
646
|
+
self,
|
647
|
+
records_generator_fn: Callable[[Optional[requests.Response]], Iterable[Record]],
|
648
|
+
stream_state: Mapping[str, Any],
|
649
|
+
stream_slice: StreamSlice,
|
650
|
+
) -> Iterable[Record]:
|
651
|
+
response = stream_slice.extra_fields["child_response"]
|
652
|
+
if response:
|
653
|
+
last_page_size, last_record = 0, None
|
654
|
+
for record in records_generator_fn(response): # type: ignore[call-arg] # only _parse_records expected as a func
|
655
|
+
last_page_size += 1
|
656
|
+
last_record = record
|
657
|
+
yield record
|
658
|
+
|
659
|
+
next_page_token = self._next_page_token(response, last_page_size, last_record, None)
|
660
|
+
if next_page_token:
|
661
|
+
yield from self._paginate(
|
662
|
+
next_page_token,
|
663
|
+
records_generator_fn,
|
664
|
+
stream_state,
|
665
|
+
stream_slice,
|
666
|
+
)
|
667
|
+
|
668
|
+
yield from []
|
669
|
+
else:
|
670
|
+
yield from self._read_pages(records_generator_fn, stream_state, stream_slice)
|
671
|
+
|
672
|
+
def _paginate(
|
673
|
+
self,
|
674
|
+
next_page_token: Any,
|
675
|
+
records_generator_fn: Callable[[Optional[requests.Response]], Iterable[Record]],
|
676
|
+
stream_state: Mapping[str, Any],
|
677
|
+
stream_slice: StreamSlice,
|
678
|
+
) -> Iterable[Record]:
|
679
|
+
"""Handle pagination by fetching subsequent pages."""
|
680
|
+
pagination_complete = False
|
681
|
+
|
682
|
+
while not pagination_complete:
|
683
|
+
response = self._fetch_next_page(stream_state, stream_slice, next_page_token)
|
684
|
+
last_page_size, last_record = 0, None
|
685
|
+
|
686
|
+
for record in records_generator_fn(response): # type: ignore[call-arg] # only _parse_records expected as a func
|
687
|
+
last_page_size += 1
|
688
|
+
last_record = record
|
689
|
+
yield record
|
690
|
+
|
691
|
+
if not response:
|
692
|
+
pagination_complete = True
|
693
|
+
else:
|
694
|
+
last_page_token_value = (
|
695
|
+
next_page_token.get("next_page_token") if next_page_token else None
|
696
|
+
)
|
697
|
+
next_page_token = self._next_page_token(
|
698
|
+
response, last_page_size, last_record, last_page_token_value
|
699
|
+
)
|
700
|
+
|
701
|
+
if not next_page_token:
|
702
|
+
pagination_complete = True
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c)
|
2
|
+
# Copyright (c) 2025 Airbyte, Inc., all rights reserved.
|
3
3
|
#
|
4
4
|
|
5
5
|
from dataclasses import InitVar, dataclass, field
|
@@ -7,6 +7,7 @@ from typing import Any, Dict, List, Mapping, Optional, Type, Union
|
|
7
7
|
|
8
8
|
import dpath
|
9
9
|
|
10
|
+
from airbyte_cdk.sources.declarative.interpolation.interpolated_boolean import InterpolatedBoolean
|
10
11
|
from airbyte_cdk.sources.declarative.interpolation.interpolated_string import InterpolatedString
|
11
12
|
from airbyte_cdk.sources.declarative.transformations import RecordTransformation
|
12
13
|
from airbyte_cdk.sources.types import Config, FieldPointer, StreamSlice, StreamState
|
@@ -86,11 +87,16 @@ class AddFields(RecordTransformation):
|
|
86
87
|
|
87
88
|
fields: List[AddedFieldDefinition]
|
88
89
|
parameters: InitVar[Mapping[str, Any]]
|
90
|
+
condition: str = ""
|
89
91
|
_parsed_fields: List[ParsedAddFieldDefinition] = field(
|
90
92
|
init=False, repr=False, default_factory=list
|
91
93
|
)
|
92
94
|
|
93
95
|
def __post_init__(self, parameters: Mapping[str, Any]) -> None:
|
96
|
+
self._filter_interpolator = InterpolatedBoolean(
|
97
|
+
condition=self.condition, parameters=parameters
|
98
|
+
)
|
99
|
+
|
94
100
|
for add_field in self.fields:
|
95
101
|
if len(add_field.path) < 1:
|
96
102
|
raise ValueError(
|
@@ -132,7 +138,9 @@ class AddFields(RecordTransformation):
|
|
132
138
|
for parsed_field in self._parsed_fields:
|
133
139
|
valid_types = (parsed_field.value_type,) if parsed_field.value_type else None
|
134
140
|
value = parsed_field.value.eval(config, valid_types=valid_types, **kwargs)
|
135
|
-
|
141
|
+
is_empty_condition = not self.condition
|
142
|
+
if is_empty_condition or self._filter_interpolator.eval(config, value=value, **kwargs):
|
143
|
+
dpath.new(record, parsed_field.path, value)
|
136
144
|
|
137
145
|
def __eq__(self, other: Any) -> bool:
|
138
146
|
return bool(self.__dict__ == other.__dict__)
|
@@ -15,6 +15,7 @@ class DpathFlattenFields(RecordTransformation):
|
|
15
15
|
|
16
16
|
field_path: List[Union[InterpolatedString, str]] path to the field to flatten.
|
17
17
|
delete_origin_value: bool = False whether to delete origin field or keep it. Default is False.
|
18
|
+
replace_record: bool = False whether to replace origin record or not. Default is False.
|
18
19
|
|
19
20
|
"""
|
20
21
|
|
@@ -22,6 +23,7 @@ class DpathFlattenFields(RecordTransformation):
|
|
22
23
|
field_path: List[Union[InterpolatedString, str]]
|
23
24
|
parameters: InitVar[Mapping[str, Any]]
|
24
25
|
delete_origin_value: bool = False
|
26
|
+
replace_record: bool = False
|
25
27
|
|
26
28
|
def __post_init__(self, parameters: Mapping[str, Any]) -> None:
|
27
29
|
self._field_path = [
|
@@ -48,8 +50,12 @@ class DpathFlattenFields(RecordTransformation):
|
|
48
50
|
extracted = dpath.get(record, path, default=[])
|
49
51
|
|
50
52
|
if isinstance(extracted, dict):
|
51
|
-
|
52
|
-
|
53
|
-
if self.delete_origin_value:
|
54
|
-
dpath.delete(record, path)
|
53
|
+
if self.replace_record and extracted:
|
54
|
+
dpath.delete(record, "**")
|
55
55
|
record.update(extracted)
|
56
|
+
else:
|
57
|
+
conflicts = set(extracted.keys()) & set(record.keys())
|
58
|
+
if not conflicts:
|
59
|
+
if self.delete_origin_value:
|
60
|
+
dpath.delete(record, path)
|
61
|
+
record.update(extracted)
|
@@ -67,13 +67,13 @@ airbyte_cdk/sources/declarative/checks/check_stream.py,sha256=dAA-UhmMj0WLXCkRQr
|
|
67
67
|
airbyte_cdk/sources/declarative/checks/connection_checker.py,sha256=MBRJo6WJlZQHpIfOGaNOkkHUmgUl_4wDM6VPo41z5Ss,1383
|
68
68
|
airbyte_cdk/sources/declarative/concurrency_level/__init__.py,sha256=5XUqrmlstYlMM0j6crktlKQwALek0uiz2D3WdM46MyA,191
|
69
69
|
airbyte_cdk/sources/declarative/concurrency_level/concurrency_level.py,sha256=YIwCTCpOr_QSNW4ltQK0yUGWInI8PKNY216HOOegYLk,2101
|
70
|
-
airbyte_cdk/sources/declarative/concurrent_declarative_source.py,sha256=
|
70
|
+
airbyte_cdk/sources/declarative/concurrent_declarative_source.py,sha256=0I1lOxV7oQEsUxyg7q9EgcW2zvhai4_7-IIDF79WiOU,27569
|
71
71
|
airbyte_cdk/sources/declarative/datetime/__init__.py,sha256=4Hw-PX1-VgESLF16cDdvuYCzGJtHntThLF4qIiULWeo,61
|
72
72
|
airbyte_cdk/sources/declarative/datetime/datetime_parser.py,sha256=_zGNGq31RNy_0QBLt_EcTvgPyhj7urPdx6oA3M5-r3o,3150
|
73
73
|
airbyte_cdk/sources/declarative/datetime/min_max_datetime.py,sha256=0BHBtDNQZfvwM45-tY5pNlTcKAFSGGNxemoi0Jic-0E,5785
|
74
|
-
airbyte_cdk/sources/declarative/declarative_component_schema.yaml,sha256=
|
74
|
+
airbyte_cdk/sources/declarative/declarative_component_schema.yaml,sha256=5lAt9rGpiUElT16jybLALS3DMkyLrz7JNUeyv2nv5c0,150310
|
75
75
|
airbyte_cdk/sources/declarative/declarative_source.py,sha256=nF7wBqFd3AQmEKAm4CnIo29CJoQL562cJGSCeL8U8bA,1531
|
76
|
-
airbyte_cdk/sources/declarative/declarative_stream.py,sha256=
|
76
|
+
airbyte_cdk/sources/declarative/declarative_stream.py,sha256=dCRlddBUSaJmBNBz1pSO1r2rTw8AP5d2_vlmIeGs2gg,10767
|
77
77
|
airbyte_cdk/sources/declarative/decoders/__init__.py,sha256=JHb_0d3SE6kNY10mxA5YBEKPeSbsWYjByq1gUQxepoE,953
|
78
78
|
airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py,sha256=Jd7URkDQBoHSDQHQuYUqzeex1HYfLRtGcY_-dVW33pA,7884
|
79
79
|
airbyte_cdk/sources/declarative/decoders/decoder.py,sha256=1PeKwuMK8x9dsA2zqUjSVinEWVSEgYcUS6npiW3aC2c,855
|
@@ -109,25 +109,25 @@ airbyte_cdk/sources/declarative/interpolation/interpolated_string.py,sha256=CQkH
|
|
109
109
|
airbyte_cdk/sources/declarative/interpolation/interpolation.py,sha256=9IoeuWam3L6GyN10L6U8xNWXmkt9cnahSDNkez1OmFY,982
|
110
110
|
airbyte_cdk/sources/declarative/interpolation/jinja.py,sha256=UQeuS4Vpyp4hlOn-R3tRyeBX0e9IoV6jQ6gH-Jz8lY0,7182
|
111
111
|
airbyte_cdk/sources/declarative/interpolation/macros.py,sha256=HQKHKnjE17zKoPn27ZpTpugRZZQSaof4GVzUUZaV2eE,5081
|
112
|
-
airbyte_cdk/sources/declarative/manifest_declarative_source.py,sha256=
|
112
|
+
airbyte_cdk/sources/declarative/manifest_declarative_source.py,sha256=bgrVP227hsiPJO6QeZy0v1kmdjrjQM63dlDTaI0pAC8,18300
|
113
113
|
airbyte_cdk/sources/declarative/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
114
114
|
airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py,sha256=iemy3fKLczcU0-Aor7tx5jcT6DRedKMqyK7kCOp01hg,3924
|
115
115
|
airbyte_cdk/sources/declarative/migrations/state_migration.py,sha256=KWPjealMLKSMtajXgkdGgKg7EmTLR-CqqD7UIh0-eDU,794
|
116
116
|
airbyte_cdk/sources/declarative/models/__init__.py,sha256=nUFxNCiKeYRVXuZEKA7GD-lTHxsiKcQ8FitZjKhPIvE,100
|
117
|
-
airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=
|
117
|
+
airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=uO-NMBY90yb8Kg_SdGTsXgerUKAKBM6rsWovXbvPclI,106527
|
118
118
|
airbyte_cdk/sources/declarative/parsers/__init__.py,sha256=ZnqYNxHsKCgO38IwB34RQyRMXTs4GTvlRi3ImKnIioo,61
|
119
119
|
airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py,sha256=jDw_TttD3_hpfevXOH-0Ws0eRuqt6wvED0BqosGPRjI,5938
|
120
120
|
airbyte_cdk/sources/declarative/parsers/custom_exceptions.py,sha256=Rir9_z3Kcd5Es0-LChrzk-0qubAsiK_RSEnLmK2OXm8,553
|
121
121
|
airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py,sha256=CXwTfD3wSQq3okcqwigpprbHhSURUokh4GK2OmOyKC8,9132
|
122
122
|
airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py,sha256=IWUOdF03o-aQn0Occo1BJCxU0Pz-QILk5L67nzw2thw,6803
|
123
|
-
airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py,sha256=
|
123
|
+
airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py,sha256=bKo2WsTSNAQkTtcjVSXniwjgLNYaD3Lx_9vM02rakYU,146478
|
124
124
|
airbyte_cdk/sources/declarative/partition_routers/__init__.py,sha256=HJ-Syp3p7RpyR_OK0X_a2kSyISfu3W-PKrRI16iY0a8,957
|
125
125
|
airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py,sha256=VelO7zKqKtzMJ35jyFeg0ypJLQC0plqqIBNXoBW1G2E,3001
|
126
126
|
airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py,sha256=c5cuVFM6NFkuQqG8Z5IwkBuwDrvXZN1CunUOM_L0ezg,6892
|
127
127
|
airbyte_cdk/sources/declarative/partition_routers/list_partition_router.py,sha256=tmGGpMoOBmaMfhVZq53AEWxoHm2lmNVi6hA2_IVEnAA,4882
|
128
128
|
airbyte_cdk/sources/declarative/partition_routers/partition_router.py,sha256=YyEIzdmLd1FjbVP3QbQ2VFCLW_P-OGbVh6VpZShp54k,2218
|
129
129
|
airbyte_cdk/sources/declarative/partition_routers/single_partition_router.py,sha256=SKzKjSyfccq4dxGIh-J6ejrgkCHzaiTIazmbmeQiRD4,1942
|
130
|
-
airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py,sha256=
|
130
|
+
airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py,sha256=C15zFH0r4uHZ7otsrm46lHy93uT0vJn1VGs7maFHOHA,19800
|
131
131
|
airbyte_cdk/sources/declarative/requesters/README.md,sha256=DQll2qsIzzTiiP35kJp16ONpr7cFeUQNgPfhl5krB24,2675
|
132
132
|
airbyte_cdk/sources/declarative/requesters/__init__.py,sha256=d7a3OoHbqaJDyyPli3nqqJ2yAW_SLX6XDaBAKOwvpxw,364
|
133
133
|
airbyte_cdk/sources/declarative/requesters/error_handlers/__init__.py,sha256=SkEDcJxlT1683rNx93K9whoS0OyUukkuOfToGtgpF58,776
|
@@ -150,7 +150,7 @@ airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py,sha25
|
|
150
150
|
airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py,sha256=b1-zKxYOUMHn7ahdWpzKEzfG4A7s_WQWy-vzRqZWzME,2152
|
151
151
|
airbyte_cdk/sources/declarative/requesters/paginators/paginator.py,sha256=TzJF1Q-CFlsHF9lMSfmnGCxRYm9_UQCmBcHYQpc7F30,2376
|
152
152
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py,sha256=2gly8fuZpDNwtu1Qg6oE2jBLGqQRdzSLJdnpk_iDV6I,767
|
153
|
-
airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py,sha256=
|
153
|
+
airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py,sha256=cOURIXaJLCGQfrDP9A7mtSKIb9rVx7WU1V4dvcEc6sw,3897
|
154
154
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py,sha256=WvGt_DTFcAgTR-NHrlrR7B71yG-L6jmfW-Gwm9iYzjY,3624
|
155
155
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/page_increment.py,sha256=Z2i6a-oKMmOTxHxsTVSnyaShkJ3u8xZw1xIJdx2yxss,2731
|
156
156
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/pagination_strategy.py,sha256=ZBshGQNr5Bb_V8dqnWRISqdXFcjm1CKIXnlfbRhNl8g,1308
|
@@ -169,10 +169,10 @@ airbyte_cdk/sources/declarative/resolvers/__init__.py,sha256=NiDcz5qi8HPsfX94MUm
|
|
169
169
|
airbyte_cdk/sources/declarative/resolvers/components_resolver.py,sha256=KPjKc0yb9artL4ZkeqN8RmEykHH6FJgqXD7fCEnh1X0,1936
|
170
170
|
airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py,sha256=dz4iJV9liD_LzY_Mn4XmAStoUll60R3MIGWV4aN3pgg,5223
|
171
171
|
airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py,sha256=AiojNs8wItJFrENZBFUaDvau3sgwudO6Wkra36upSPo,4639
|
172
|
-
airbyte_cdk/sources/declarative/retrievers/__init__.py,sha256=
|
173
|
-
airbyte_cdk/sources/declarative/retrievers/async_retriever.py,sha256=
|
172
|
+
airbyte_cdk/sources/declarative/retrievers/__init__.py,sha256=nQepwG_RfW53sgwvK5dLPqfCx0VjsQ83nYoPjBMAaLM,527
|
173
|
+
airbyte_cdk/sources/declarative/retrievers/async_retriever.py,sha256=Fxwg53i_9R3kMNFtD3gEwZbdW8xlcXYXA5evEhrKunM,5072
|
174
174
|
airbyte_cdk/sources/declarative/retrievers/retriever.py,sha256=XPLs593Xv8c5cKMc37XzUAYmzlXd1a7eSsspM-CMuWA,1696
|
175
|
-
airbyte_cdk/sources/declarative/retrievers/simple_retriever.py,sha256=
|
175
|
+
airbyte_cdk/sources/declarative/retrievers/simple_retriever.py,sha256=p6O4FYS7zzPq6uQT2NVnughUjI66tePaXVlyhCAyyv0,27746
|
176
176
|
airbyte_cdk/sources/declarative/schema/__init__.py,sha256=xU45UvM5O4c1PSM13UHpCdh5hpW3HXy9vRRGEiAC1rg,795
|
177
177
|
airbyte_cdk/sources/declarative/schema/default_schema_loader.py,sha256=KTACrIE23a83wsm3Rd9Eb4K6-20lrGqYxTHNp9yxsso,1820
|
178
178
|
airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py,sha256=J8Q_iJYhcSQLWyt0bTZCbDAGpxt9G8FCc6Q9jtGsNzw,10703
|
@@ -185,8 +185,8 @@ airbyte_cdk/sources/declarative/stream_slicers/__init__.py,sha256=sI9vhc95RwJYOn
|
|
185
185
|
airbyte_cdk/sources/declarative/stream_slicers/declarative_partition_generator.py,sha256=RW1Q44ml-VWeMl4lNcV6EfyzrzCZkjj-hd0Omx_n_n4,3405
|
186
186
|
airbyte_cdk/sources/declarative/stream_slicers/stream_slicer.py,sha256=SOkIPBi2Wu7yxIvA15yFzUAB95a3IzA8LPq5DEqHQQc,725
|
187
187
|
airbyte_cdk/sources/declarative/transformations/__init__.py,sha256=CPJ8TlMpiUmvG3624VYu_NfTzxwKcfBjM2Q2wJ7fkSA,919
|
188
|
-
airbyte_cdk/sources/declarative/transformations/add_fields.py,sha256=
|
189
|
-
airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py,sha256=
|
188
|
+
airbyte_cdk/sources/declarative/transformations/add_fields.py,sha256=vxLh0ekB0i_m8GYFpSad9T4S7eRxxtqZaigHLGVoltA,5366
|
189
|
+
airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py,sha256=I8oXPAOFhBV1mW_ufMn8Ii7oMbtect0sfLcpBNrKzzw,2374
|
190
190
|
airbyte_cdk/sources/declarative/transformations/flatten_fields.py,sha256=yT3owG6rMKaRX-LJ_T-jSTnh1B5NoAHyH4YZN9yOvE8,1758
|
191
191
|
airbyte_cdk/sources/declarative/transformations/keys_replace_transformation.py,sha256=vbIn6ump-Ut6g20yMub7PFoPBhOKVtrHSAUdcOUdLfw,1999
|
192
192
|
airbyte_cdk/sources/declarative/transformations/keys_to_lower_transformation.py,sha256=RTs5KX4V3hM7A6QN1WlGF21YccTIyNH6qQI9IMb__hw,670
|
@@ -358,9 +358,9 @@ airbyte_cdk/utils/slice_hasher.py,sha256=EDxgROHDbfG-QKQb59m7h_7crN1tRiawdf5uU7G
|
|
358
358
|
airbyte_cdk/utils/spec_schema_transformations.py,sha256=-5HTuNsnDBAhj-oLeQXwpTGA0HdcjFOf2zTEMUTTg_Y,816
|
359
359
|
airbyte_cdk/utils/stream_status_utils.py,sha256=ZmBoiy5HVbUEHAMrUONxZvxnvfV9CesmQJLDTAIWnWw,1171
|
360
360
|
airbyte_cdk/utils/traced_exception.py,sha256=C8uIBuCL_E4WnBAOPSxBicD06JAldoN9fGsQDp463OY,6292
|
361
|
-
airbyte_cdk-6.
|
362
|
-
airbyte_cdk-6.
|
363
|
-
airbyte_cdk-6.
|
364
|
-
airbyte_cdk-6.
|
365
|
-
airbyte_cdk-6.
|
366
|
-
airbyte_cdk-6.
|
361
|
+
airbyte_cdk-6.40.0.dev0.dist-info/LICENSE.txt,sha256=Wfe61S4BaGPj404v8lrAbvhjYR68SHlkzeYrg3_bbuM,1051
|
362
|
+
airbyte_cdk-6.40.0.dev0.dist-info/LICENSE_SHORT,sha256=aqF6D1NcESmpn-cqsxBtszTEnHKnlsp8L4x9wAh3Nxg,55
|
363
|
+
airbyte_cdk-6.40.0.dev0.dist-info/METADATA,sha256=PMlEex6EGwLa65EN3m6YFZAVlVotLkdW0vau9MjC8fY,6076
|
364
|
+
airbyte_cdk-6.40.0.dev0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
365
|
+
airbyte_cdk-6.40.0.dev0.dist-info/entry_points.txt,sha256=fj-e3PAQvsxsQzyyq8UkG1k8spunWnD4BAH2AwlR6NM,95
|
366
|
+
airbyte_cdk-6.40.0.dev0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|