airbyte-cdk 6.38.0.dev0__py3-none-any.whl → 6.38.2__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/entrypoint.py +6 -6
- airbyte_cdk/logger.py +1 -4
- airbyte_cdk/sources/declarative/datetime/__init__.py +0 -4
- airbyte_cdk/sources/declarative/datetime/datetime_parser.py +4 -0
- airbyte_cdk/sources/declarative/declarative_component_schema.yaml +10 -2
- airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py +104 -42
- airbyte_cdk/sources/declarative/decoders/decoder.py +3 -3
- airbyte_cdk/sources/declarative/decoders/decoder_parser.py +30 -0
- airbyte_cdk/sources/declarative/decoders/zipfile_decoder.py +6 -9
- airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py +0 -2
- airbyte_cdk/sources/declarative/interpolation/macros.py +3 -5
- airbyte_cdk/sources/declarative/models/declarative_component_schema.py +7 -5
- airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +37 -9
- airbyte_cdk/sources/declarative/requesters/http_requester.py +77 -25
- airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py +25 -4
- airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py +6 -1
- airbyte_cdk/sources/declarative/requesters/paginators/paginator.py +7 -2
- airbyte_cdk/sources/declarative/requesters/requester.py +7 -1
- airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +21 -4
- airbyte_cdk/sources/declarative/yaml_declarative_source.py +0 -1
- airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py +3 -3
- airbyte_cdk/sources/types.py +1 -0
- airbyte_cdk/utils/mapping_helpers.py +18 -1
- {airbyte_cdk-6.38.0.dev0.dist-info → airbyte_cdk-6.38.2.dist-info}/METADATA +3 -3
- {airbyte_cdk-6.38.0.dev0.dist-info → airbyte_cdk-6.38.2.dist-info}/RECORD +29 -33
- airbyte_cdk/sources/embedded/__init__.py +0 -3
- airbyte_cdk/sources/embedded/base_integration.py +0 -61
- airbyte_cdk/sources/embedded/catalog.py +0 -57
- airbyte_cdk/sources/embedded/runner.py +0 -57
- airbyte_cdk/sources/embedded/tools.py +0 -27
- {airbyte_cdk-6.38.0.dev0.dist-info → airbyte_cdk-6.38.2.dist-info}/LICENSE.txt +0 -0
- {airbyte_cdk-6.38.0.dev0.dist-info → airbyte_cdk-6.38.2.dist-info}/LICENSE_SHORT +0 -0
- {airbyte_cdk-6.38.0.dev0.dist-info → airbyte_cdk-6.38.2.dist-info}/WHEEL +0 -0
- {airbyte_cdk-6.38.0.dev0.dist-info → airbyte_cdk-6.38.2.dist-info}/entry_points.txt +0 -0
@@ -16,7 +16,9 @@ from airbyte_cdk.sources.declarative.auth.declarative_authenticator import (
|
|
16
16
|
)
|
17
17
|
from airbyte_cdk.sources.declarative.decoders import Decoder
|
18
18
|
from airbyte_cdk.sources.declarative.decoders.json_decoder import JsonDecoder
|
19
|
-
from airbyte_cdk.sources.declarative.interpolation.interpolated_string import
|
19
|
+
from airbyte_cdk.sources.declarative.interpolation.interpolated_string import (
|
20
|
+
InterpolatedString,
|
21
|
+
)
|
20
22
|
from airbyte_cdk.sources.declarative.requesters.request_options.interpolated_request_options_provider import (
|
21
23
|
InterpolatedRequestOptionsProvider,
|
22
24
|
)
|
@@ -25,8 +27,11 @@ from airbyte_cdk.sources.message import MessageRepository, NoopMessageRepository
|
|
25
27
|
from airbyte_cdk.sources.streams.call_rate import APIBudget
|
26
28
|
from airbyte_cdk.sources.streams.http import HttpClient
|
27
29
|
from airbyte_cdk.sources.streams.http.error_handlers import ErrorHandler
|
28
|
-
from airbyte_cdk.sources.types import Config, StreamSlice, StreamState
|
29
|
-
from airbyte_cdk.utils.mapping_helpers import
|
30
|
+
from airbyte_cdk.sources.types import Config, EmptyString, StreamSlice, StreamState
|
31
|
+
from airbyte_cdk.utils.mapping_helpers import (
|
32
|
+
combine_mappings,
|
33
|
+
get_interpolation_context,
|
34
|
+
)
|
30
35
|
|
31
36
|
|
32
37
|
@dataclass
|
@@ -49,9 +54,10 @@ class HttpRequester(Requester):
|
|
49
54
|
|
50
55
|
name: str
|
51
56
|
url_base: Union[InterpolatedString, str]
|
52
|
-
path: Union[InterpolatedString, str]
|
53
57
|
config: Config
|
54
58
|
parameters: InitVar[Mapping[str, Any]]
|
59
|
+
|
60
|
+
path: Optional[Union[InterpolatedString, str]] = None
|
55
61
|
authenticator: Optional[DeclarativeAuthenticator] = None
|
56
62
|
http_method: Union[str, HttpMethod] = HttpMethod.GET
|
57
63
|
request_options_provider: Optional[InterpolatedRequestOptionsProvider] = None
|
@@ -66,7 +72,9 @@ class HttpRequester(Requester):
|
|
66
72
|
|
67
73
|
def __post_init__(self, parameters: Mapping[str, Any]) -> None:
|
68
74
|
self._url_base = InterpolatedString.create(self.url_base, parameters=parameters)
|
69
|
-
self._path = InterpolatedString.create(
|
75
|
+
self._path = InterpolatedString.create(
|
76
|
+
self.path if self.path else EmptyString, parameters=parameters
|
77
|
+
)
|
70
78
|
if self.request_options_provider is None:
|
71
79
|
self._request_options_provider = InterpolatedRequestOptionsProvider(
|
72
80
|
config=self.config, parameters=parameters
|
@@ -112,27 +120,33 @@ class HttpRequester(Requester):
|
|
112
120
|
def get_authenticator(self) -> DeclarativeAuthenticator:
|
113
121
|
return self._authenticator
|
114
122
|
|
115
|
-
def get_url_base(
|
116
|
-
|
123
|
+
def get_url_base(
|
124
|
+
self,
|
125
|
+
*,
|
126
|
+
stream_state: Optional[StreamState] = None,
|
127
|
+
stream_slice: Optional[StreamSlice] = None,
|
128
|
+
next_page_token: Optional[Mapping[str, Any]] = None,
|
129
|
+
) -> str:
|
130
|
+
interpolation_context = get_interpolation_context(
|
131
|
+
stream_state=stream_state,
|
132
|
+
stream_slice=stream_slice,
|
133
|
+
next_page_token=next_page_token,
|
134
|
+
)
|
135
|
+
return os.path.join(self._url_base.eval(self.config, **interpolation_context), EmptyString)
|
117
136
|
|
118
137
|
def get_path(
|
119
138
|
self,
|
120
139
|
*,
|
121
|
-
stream_state: Optional[StreamState],
|
122
|
-
stream_slice: Optional[StreamSlice],
|
123
|
-
next_page_token: Optional[Mapping[str, Any]],
|
140
|
+
stream_state: Optional[StreamState] = None,
|
141
|
+
stream_slice: Optional[StreamSlice] = None,
|
142
|
+
next_page_token: Optional[Mapping[str, Any]] = None,
|
124
143
|
) -> str:
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
if stream_slice is not None and hasattr(stream_slice, "extra_fields")
|
132
|
-
else {}
|
133
|
-
),
|
134
|
-
}
|
135
|
-
path = str(self._path.eval(self.config, **kwargs))
|
144
|
+
interpolation_context = get_interpolation_context(
|
145
|
+
stream_state=stream_state,
|
146
|
+
stream_slice=stream_slice,
|
147
|
+
next_page_token=next_page_token,
|
148
|
+
)
|
149
|
+
path = str(self._path.eval(self.config, **interpolation_context))
|
136
150
|
return path.lstrip("/")
|
137
151
|
|
138
152
|
def get_method(self) -> HttpMethod:
|
@@ -146,7 +160,9 @@ class HttpRequester(Requester):
|
|
146
160
|
next_page_token: Optional[Mapping[str, Any]] = None,
|
147
161
|
) -> MutableMapping[str, Any]:
|
148
162
|
return self._request_options_provider.get_request_params(
|
149
|
-
stream_state=stream_state,
|
163
|
+
stream_state=stream_state,
|
164
|
+
stream_slice=stream_slice,
|
165
|
+
next_page_token=next_page_token,
|
150
166
|
)
|
151
167
|
|
152
168
|
def get_request_headers(
|
@@ -157,7 +173,9 @@ class HttpRequester(Requester):
|
|
157
173
|
next_page_token: Optional[Mapping[str, Any]] = None,
|
158
174
|
) -> Mapping[str, Any]:
|
159
175
|
return self._request_options_provider.get_request_headers(
|
160
|
-
stream_state=stream_state,
|
176
|
+
stream_state=stream_state,
|
177
|
+
stream_slice=stream_slice,
|
178
|
+
next_page_token=next_page_token,
|
161
179
|
)
|
162
180
|
|
163
181
|
# fixing request options provider types has a lot of dependencies
|
@@ -186,7 +204,9 @@ class HttpRequester(Requester):
|
|
186
204
|
next_page_token: Optional[Mapping[str, Any]] = None,
|
187
205
|
) -> Optional[Mapping[str, Any]]:
|
188
206
|
return self._request_options_provider.get_request_body_json(
|
189
|
-
stream_state=stream_state,
|
207
|
+
stream_state=stream_state,
|
208
|
+
stream_slice=stream_slice,
|
209
|
+
next_page_token=next_page_token,
|
190
210
|
)
|
191
211
|
|
192
212
|
@property
|
@@ -330,6 +350,34 @@ class HttpRequester(Requester):
|
|
330
350
|
|
331
351
|
@classmethod
|
332
352
|
def _join_url(cls, url_base: str, path: str) -> str:
|
353
|
+
"""
|
354
|
+
Joins a base URL with a given path and returns the resulting URL with any trailing slash removed.
|
355
|
+
|
356
|
+
This method ensures that there are no duplicate slashes when concatenating the base URL and the path,
|
357
|
+
which is useful when the full URL is provided from an interpolation context.
|
358
|
+
|
359
|
+
Args:
|
360
|
+
url_base (str): The base URL to which the path will be appended.
|
361
|
+
path (str): The path to join with the base URL.
|
362
|
+
|
363
|
+
Returns:
|
364
|
+
str: The resulting joined URL.
|
365
|
+
|
366
|
+
Note:
|
367
|
+
Related issue: https://github.com/airbytehq/airbyte-internal-issues/issues/11869
|
368
|
+
- If the path is an empty string or None, the method returns the base URL with any trailing slash removed.
|
369
|
+
|
370
|
+
Example:
|
371
|
+
1) _join_url("https://example.com/api/", "endpoint") >> 'https://example.com/api/endpoint'
|
372
|
+
2) _join_url("https://example.com/api", "/endpoint") >> 'https://example.com/api/endpoint'
|
373
|
+
3) _join_url("https://example.com/api/", "") >> 'https://example.com/api'
|
374
|
+
4) _join_url("https://example.com/api", None) >> 'https://example.com/api'
|
375
|
+
"""
|
376
|
+
|
377
|
+
# return a full-url if provided directly from interpolation context
|
378
|
+
if path == EmptyString or path is None:
|
379
|
+
return url_base.rstrip("/")
|
380
|
+
|
333
381
|
return urljoin(url_base, path)
|
334
382
|
|
335
383
|
def send_request(
|
@@ -347,7 +395,11 @@ class HttpRequester(Requester):
|
|
347
395
|
request, response = self._http_client.send_request(
|
348
396
|
http_method=self.get_method().value,
|
349
397
|
url=self._join_url(
|
350
|
-
self.get_url_base(
|
398
|
+
self.get_url_base(
|
399
|
+
stream_state=stream_state,
|
400
|
+
stream_slice=stream_slice,
|
401
|
+
next_page_token=next_page_token,
|
402
|
+
),
|
351
403
|
path
|
352
404
|
or self.get_path(
|
353
405
|
stream_state=stream_state,
|
@@ -25,6 +25,7 @@ from airbyte_cdk.sources.declarative.requesters.request_path import RequestPath
|
|
25
25
|
from airbyte_cdk.sources.types import Config, Record, StreamSlice, StreamState
|
26
26
|
from airbyte_cdk.utils.mapping_helpers import (
|
27
27
|
_validate_component_request_option_paths,
|
28
|
+
get_interpolation_context,
|
28
29
|
)
|
29
30
|
|
30
31
|
|
@@ -150,11 +151,22 @@ class DefaultPaginator(Paginator):
|
|
150
151
|
else:
|
151
152
|
return None
|
152
153
|
|
153
|
-
def path(
|
154
|
+
def path(
|
155
|
+
self,
|
156
|
+
next_page_token: Optional[Mapping[str, Any]],
|
157
|
+
stream_state: Optional[Mapping[str, Any]] = None,
|
158
|
+
stream_slice: Optional[StreamSlice] = None,
|
159
|
+
) -> Optional[str]:
|
154
160
|
token = next_page_token.get("next_page_token") if next_page_token else None
|
155
161
|
if token and self.page_token_option and isinstance(self.page_token_option, RequestPath):
|
162
|
+
# make additional interpolation context
|
163
|
+
interpolation_context = get_interpolation_context(
|
164
|
+
stream_state=stream_state,
|
165
|
+
stream_slice=stream_slice,
|
166
|
+
next_page_token=next_page_token,
|
167
|
+
)
|
156
168
|
# Replace url base to only return the path
|
157
|
-
return str(token).replace(self.url_base.eval(self.config), "") # type: ignore # url_base is casted to a InterpolatedString in __post_init__
|
169
|
+
return str(token).replace(self.url_base.eval(self.config, **interpolation_context), "") # type: ignore # url_base is casted to a InterpolatedString in __post_init__
|
158
170
|
else:
|
159
171
|
return None
|
160
172
|
|
@@ -258,8 +270,17 @@ class PaginatorTestReadDecorator(Paginator):
|
|
258
270
|
response, last_page_size, last_record, last_page_token_value
|
259
271
|
)
|
260
272
|
|
261
|
-
def path(
|
262
|
-
|
273
|
+
def path(
|
274
|
+
self,
|
275
|
+
next_page_token: Optional[Mapping[str, Any]],
|
276
|
+
stream_state: Optional[Mapping[str, Any]] = None,
|
277
|
+
stream_slice: Optional[StreamSlice] = None,
|
278
|
+
) -> Optional[str]:
|
279
|
+
return self._decorated.path(
|
280
|
+
next_page_token=next_page_token,
|
281
|
+
stream_state=stream_state,
|
282
|
+
stream_slice=stream_slice,
|
283
|
+
)
|
263
284
|
|
264
285
|
def get_request_params(
|
265
286
|
self,
|
@@ -19,7 +19,12 @@ class NoPagination(Paginator):
|
|
19
19
|
|
20
20
|
parameters: InitVar[Mapping[str, Any]]
|
21
21
|
|
22
|
-
def path(
|
22
|
+
def path(
|
23
|
+
self,
|
24
|
+
next_page_token: Optional[Mapping[str, Any]],
|
25
|
+
stream_state: Optional[Mapping[str, Any]] = None,
|
26
|
+
stream_slice: Optional[StreamSlice] = None,
|
27
|
+
) -> Optional[str]:
|
23
28
|
return None
|
24
29
|
|
25
30
|
def get_request_params(
|
@@ -11,7 +11,7 @@ import requests
|
|
11
11
|
from airbyte_cdk.sources.declarative.requesters.request_options.request_options_provider import (
|
12
12
|
RequestOptionsProvider,
|
13
13
|
)
|
14
|
-
from airbyte_cdk.sources.types import Record
|
14
|
+
from airbyte_cdk.sources.types import Record, StreamSlice
|
15
15
|
|
16
16
|
|
17
17
|
@dataclass
|
@@ -49,7 +49,12 @@ class Paginator(ABC, RequestOptionsProvider):
|
|
49
49
|
pass
|
50
50
|
|
51
51
|
@abstractmethod
|
52
|
-
def path(
|
52
|
+
def path(
|
53
|
+
self,
|
54
|
+
next_page_token: Optional[Mapping[str, Any]],
|
55
|
+
stream_state: Optional[Mapping[str, Any]] = None,
|
56
|
+
stream_slice: Optional[StreamSlice] = None,
|
57
|
+
) -> Optional[str]:
|
53
58
|
"""
|
54
59
|
Returns the URL path to hit to fetch the next page of records
|
55
60
|
|
@@ -35,7 +35,13 @@ class Requester(RequestOptionsProvider):
|
|
35
35
|
pass
|
36
36
|
|
37
37
|
@abstractmethod
|
38
|
-
def get_url_base(
|
38
|
+
def get_url_base(
|
39
|
+
self,
|
40
|
+
*,
|
41
|
+
stream_state: Optional[StreamState],
|
42
|
+
stream_slice: Optional[StreamSlice],
|
43
|
+
next_page_token: Optional[Mapping[str, Any]],
|
44
|
+
) -> str:
|
39
45
|
"""
|
40
46
|
:return: URL base for the API endpoint e.g: if you wanted to hit https://myapi.com/v1/some_entity then this should return "https://myapi.com/v1/"
|
41
47
|
"""
|
@@ -234,13 +234,22 @@ class SimpleRetriever(Retriever):
|
|
234
234
|
raise ValueError("Request body json cannot be a string")
|
235
235
|
return body_json
|
236
236
|
|
237
|
-
def _paginator_path(
|
237
|
+
def _paginator_path(
|
238
|
+
self,
|
239
|
+
next_page_token: Optional[Mapping[str, Any]] = None,
|
240
|
+
stream_state: Optional[Mapping[str, Any]] = None,
|
241
|
+
stream_slice: Optional[StreamSlice] = None,
|
242
|
+
) -> Optional[str]:
|
238
243
|
"""
|
239
244
|
If the paginator points to a path, follow it, else return nothing so the requester is used.
|
240
245
|
:param next_page_token:
|
241
246
|
:return:
|
242
247
|
"""
|
243
|
-
return self._paginator.path(
|
248
|
+
return self._paginator.path(
|
249
|
+
next_page_token=next_page_token,
|
250
|
+
stream_state=stream_state,
|
251
|
+
stream_slice=stream_slice,
|
252
|
+
)
|
244
253
|
|
245
254
|
def _parse_response(
|
246
255
|
self,
|
@@ -299,7 +308,11 @@ class SimpleRetriever(Retriever):
|
|
299
308
|
next_page_token: Optional[Mapping[str, Any]] = None,
|
300
309
|
) -> Optional[requests.Response]:
|
301
310
|
return self.requester.send_request(
|
302
|
-
path=self._paginator_path(
|
311
|
+
path=self._paginator_path(
|
312
|
+
next_page_token=next_page_token,
|
313
|
+
stream_state=stream_state,
|
314
|
+
stream_slice=stream_slice,
|
315
|
+
),
|
303
316
|
stream_state=stream_state,
|
304
317
|
stream_slice=stream_slice,
|
305
318
|
next_page_token=next_page_token,
|
@@ -570,7 +583,11 @@ class SimpleRetrieverTestReadDecorator(SimpleRetriever):
|
|
570
583
|
next_page_token: Optional[Mapping[str, Any]] = None,
|
571
584
|
) -> Optional[requests.Response]:
|
572
585
|
return self.requester.send_request(
|
573
|
-
path=self._paginator_path(
|
586
|
+
path=self._paginator_path(
|
587
|
+
next_page_token=next_page_token,
|
588
|
+
stream_state=stream_state,
|
589
|
+
stream_slice=stream_slice,
|
590
|
+
),
|
574
591
|
stream_state=stream_state,
|
575
592
|
stream_slice=stream_slice,
|
576
593
|
next_page_token=next_page_token,
|
@@ -50,7 +50,6 @@ class YamlDeclarativeSource(ConcurrentDeclarativeSource[List[AirbyteStateMessage
|
|
50
50
|
|
51
51
|
def _emit_manifest_debug_message(self, extra_args: dict[str, Any]) -> None:
|
52
52
|
extra_args["path_to_yaml"] = self._path_to_yaml
|
53
|
-
self.logger.debug("declarative source created from parsed YAML manifest", extra=extra_args)
|
54
53
|
|
55
54
|
@staticmethod
|
56
55
|
def _parse(connection_definition_str: str) -> ConnectionDefinition:
|
@@ -19,9 +19,9 @@ DEFAULT_ERROR_MAPPING: Mapping[Union[int, str, Type[Exception]], ErrorResolution
|
|
19
19
|
error_message="Invalid Protocol Schema: The endpoint that data is being requested from is using an invalid or insecure. Exception: requests.exceptions.InvalidSchema",
|
20
20
|
),
|
21
21
|
InvalidURL: ErrorResolution(
|
22
|
-
response_action=ResponseAction.
|
23
|
-
failure_type=FailureType.
|
24
|
-
error_message="Invalid URL specified: The endpoint that data is being requested from is not a valid URL. Exception: requests.exceptions.InvalidURL",
|
22
|
+
response_action=ResponseAction.RETRY,
|
23
|
+
failure_type=FailureType.transient_error,
|
24
|
+
error_message="Invalid URL specified or DNS error occurred: The endpoint that data is being requested from is not a valid URL. Exception: requests.exceptions.InvalidURL",
|
25
25
|
),
|
26
26
|
RequestException: ErrorResolution(
|
27
27
|
response_action=ResponseAction.RETRY,
|
airbyte_cdk/sources/types.py
CHANGED
@@ -10,7 +10,7 @@ from airbyte_cdk.sources.declarative.requesters.request_option import (
|
|
10
10
|
RequestOption,
|
11
11
|
RequestOptionType,
|
12
12
|
)
|
13
|
-
from airbyte_cdk.sources.types import Config
|
13
|
+
from airbyte_cdk.sources.types import Config, StreamSlice, StreamState
|
14
14
|
|
15
15
|
|
16
16
|
def _merge_mappings(
|
@@ -143,3 +143,20 @@ def _validate_component_request_option_paths(
|
|
143
143
|
)
|
144
144
|
except ValueError as error:
|
145
145
|
raise ValueError(error)
|
146
|
+
|
147
|
+
|
148
|
+
def get_interpolation_context(
|
149
|
+
stream_state: Optional[StreamState] = None,
|
150
|
+
stream_slice: Optional[StreamSlice] = None,
|
151
|
+
next_page_token: Optional[Mapping[str, Any]] = None,
|
152
|
+
) -> Mapping[str, Any]:
|
153
|
+
return {
|
154
|
+
"stream_slice": stream_slice,
|
155
|
+
"next_page_token": next_page_token,
|
156
|
+
# update the context with extra fields, if passed.
|
157
|
+
**(
|
158
|
+
stream_slice.extra_fields
|
159
|
+
if stream_slice is not None and hasattr(stream_slice, "extra_fields")
|
160
|
+
else {}
|
161
|
+
),
|
162
|
+
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: airbyte-cdk
|
3
|
-
Version: 6.38.
|
3
|
+
Version: 6.38.2
|
4
4
|
Summary: A framework for writing Airbyte Connectors.
|
5
5
|
Home-page: https://airbyte.com
|
6
6
|
License: MIT
|
@@ -28,7 +28,7 @@ Requires-Dist: avro (>=1.11.2,<1.13.0) ; extra == "file-based"
|
|
28
28
|
Requires-Dist: backoff
|
29
29
|
Requires-Dist: cachetools
|
30
30
|
Requires-Dist: cohere (==4.21) ; extra == "vector-db-based"
|
31
|
-
Requires-Dist: cryptography (>=
|
31
|
+
Requires-Dist: cryptography (>=44.0.0,<45.0.0)
|
32
32
|
Requires-Dist: dpath (>=2.1.6,<3.0.0)
|
33
33
|
Requires-Dist: dunamai (>=1.22.0,<2.0.0)
|
34
34
|
Requires-Dist: fastavro (>=1.8.0,<1.9.0) ; extra == "file-based"
|
@@ -47,7 +47,7 @@ Requires-Dist: pandas (==2.2.2)
|
|
47
47
|
Requires-Dist: pdf2image (==1.16.3) ; extra == "file-based"
|
48
48
|
Requires-Dist: pdfminer.six (==20221105) ; extra == "file-based"
|
49
49
|
Requires-Dist: psutil (==6.1.0)
|
50
|
-
Requires-Dist: pyarrow (>=
|
50
|
+
Requires-Dist: pyarrow (>=19.0.0,<20.0.0) ; extra == "file-based"
|
51
51
|
Requires-Dist: pydantic (>=2.7,<3.0)
|
52
52
|
Requires-Dist: pyjwt (>=2.8.0,<3.0.0)
|
53
53
|
Requires-Dist: pyrate-limiter (>=3.1.0,<3.2.0)
|
@@ -26,9 +26,9 @@ airbyte_cdk/destinations/vector_db_based/indexer.py,sha256=beiSi2Uu67EoTr7yQSaCJ
|
|
26
26
|
airbyte_cdk/destinations/vector_db_based/test_utils.py,sha256=MkqLiOJ5QyKbV4rNiJhe-BHM7FD-ADHQ4bQGf4c5lRY,1932
|
27
27
|
airbyte_cdk/destinations/vector_db_based/utils.py,sha256=FOyEo8Lc-fY8UyhpCivhZtIqBRyxf3cUt6anmK03fUY,1127
|
28
28
|
airbyte_cdk/destinations/vector_db_based/writer.py,sha256=nZ00xPiohElJmYktEZZIhr0m5EDETCHGhg0Lb2S7A20,5095
|
29
|
-
airbyte_cdk/entrypoint.py,sha256=
|
29
|
+
airbyte_cdk/entrypoint.py,sha256=xFLY2PV8mKXUaeBAknczbK6plrs4_B1WdWA6K3iaRJI,18555
|
30
30
|
airbyte_cdk/exception_handler.py,sha256=D_doVl3Dt60ASXlJsfviOCswxGyKF2q0RL6rif3fNks,2013
|
31
|
-
airbyte_cdk/logger.py,sha256=
|
31
|
+
airbyte_cdk/logger.py,sha256=qi4UGuSYQQGaFaTVJlMD9lLppwqLXt1XBhwSXo-Q5IA,3660
|
32
32
|
airbyte_cdk/models/__init__.py,sha256=MOTiuML2wShBaMSIwikdjyye2uUWBjo4J1QFSbnoiM4,2075
|
33
33
|
airbyte_cdk/models/airbyte_protocol.py,sha256=MCmLir67-hF12YM5OKzeGbWrlxr7ChG_OQSE1xG8EIU,3748
|
34
34
|
airbyte_cdk/models/airbyte_protocol_serializers.py,sha256=s6SaFB2CMrG_7jTQGn_fhFbQ1FUxhCxf5kq2RWGHMVI,1749
|
@@ -68,20 +68,21 @@ airbyte_cdk/sources/declarative/checks/connection_checker.py,sha256=MBRJo6WJlZQH
|
|
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
70
|
airbyte_cdk/sources/declarative/concurrent_declarative_source.py,sha256=rAp-sgld4n8Tmybz-51m7VcYXqKwzKDpCJVr1elmkRc,26824
|
71
|
-
airbyte_cdk/sources/declarative/datetime/__init__.py,sha256=
|
72
|
-
airbyte_cdk/sources/declarative/datetime/datetime_parser.py,sha256=
|
71
|
+
airbyte_cdk/sources/declarative/datetime/__init__.py,sha256=4Hw-PX1-VgESLF16cDdvuYCzGJtHntThLF4qIiULWeo,61
|
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=n8hJVquDj00_VS_I0B2QgwYNcNcfsVZdkajAKArcOHU,147487
|
75
75
|
airbyte_cdk/sources/declarative/declarative_source.py,sha256=nF7wBqFd3AQmEKAm4CnIo29CJoQL562cJGSCeL8U8bA,1531
|
76
76
|
airbyte_cdk/sources/declarative/declarative_stream.py,sha256=venZjfpvtqr3oFSuvMBWtn4h9ayLhD4L65ACuXCDZ64,10445
|
77
77
|
airbyte_cdk/sources/declarative/decoders/__init__.py,sha256=JHb_0d3SE6kNY10mxA5YBEKPeSbsWYjByq1gUQxepoE,953
|
78
|
-
airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py,sha256=
|
79
|
-
airbyte_cdk/sources/declarative/decoders/decoder.py,sha256=
|
78
|
+
airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py,sha256=Jd7URkDQBoHSDQHQuYUqzeex1HYfLRtGcY_-dVW33pA,7884
|
79
|
+
airbyte_cdk/sources/declarative/decoders/decoder.py,sha256=1PeKwuMK8x9dsA2zqUjSVinEWVSEgYcUS6npiW3aC2c,855
|
80
|
+
airbyte_cdk/sources/declarative/decoders/decoder_parser.py,sha256=e0be6kfzvbnhmcou-AuloFTSoLxiV9sG9YaglWo5mto,714
|
80
81
|
airbyte_cdk/sources/declarative/decoders/json_decoder.py,sha256=BdWpXXPhEGf_zknggJmhojLosmxuw51RBVTS0jvdCPc,2080
|
81
82
|
airbyte_cdk/sources/declarative/decoders/noop_decoder.py,sha256=iZh0yKY_JzgBnJWiubEusf5c0o6Khd-8EWFWT-8EgFo,542
|
82
83
|
airbyte_cdk/sources/declarative/decoders/pagination_decoder_decorator.py,sha256=ZVBZhAOl0I0MymXN5CKTC-kIXG4GuUQAEyn0XpUDuSE,1081
|
83
84
|
airbyte_cdk/sources/declarative/decoders/xml_decoder.py,sha256=EU-7t-5vIGRHZ14h-f0GUE4V5-eTM9Flux-A8xgI1Rc,3117
|
84
|
-
airbyte_cdk/sources/declarative/decoders/zipfile_decoder.py,sha256=
|
85
|
+
airbyte_cdk/sources/declarative/decoders/zipfile_decoder.py,sha256=Din18m61aly2oG6TaXGpLcbfUHVOzjGzuMYkyxfHXT4,2290
|
85
86
|
airbyte_cdk/sources/declarative/exceptions.py,sha256=kTPUA4I2NV4J6HDz-mKPGMrfuc592akJnOyYx38l_QM,176
|
86
87
|
airbyte_cdk/sources/declarative/extractors/__init__.py,sha256=RmV-IkO1YLj0PSOrrqC9AV1gO8-90t8UTDVfJGshN9E,754
|
87
88
|
airbyte_cdk/sources/declarative/extractors/dpath_extractor.py,sha256=wR4Ol4MG2lt5UlqXF5EU_k7qa5cN4_-luu3PJ1PlO3A,3131
|
@@ -89,7 +90,7 @@ airbyte_cdk/sources/declarative/extractors/http_selector.py,sha256=2zWZ4ewTqQC8V
|
|
89
90
|
airbyte_cdk/sources/declarative/extractors/record_extractor.py,sha256=XJELMjahAsaomlvQgN2zrNO0DJX0G0fr9r682gUz7Pg,691
|
90
91
|
airbyte_cdk/sources/declarative/extractors/record_filter.py,sha256=yTdEkyDUSW2KbFkEwJJMlS963C955LgCCOVfTmmScpQ,3367
|
91
92
|
airbyte_cdk/sources/declarative/extractors/record_selector.py,sha256=HCqx7IyENM_aRF4it2zJN26_vDu6WeP8XgCxQWHUvcY,6934
|
92
|
-
airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py,sha256=
|
93
|
+
airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py,sha256=WJyA2OYIEgFpVP5Y3o0tIj69AV6IKkn9B16MeXaEItI,6513
|
93
94
|
airbyte_cdk/sources/declarative/extractors/type_transformer.py,sha256=d6Y2Rfg8pMVEEnHllfVksWZdNVOU55yk34O03dP9muY,1626
|
94
95
|
airbyte_cdk/sources/declarative/incremental/__init__.py,sha256=U1oZKtBaEC6IACmvziY9Wzg7Z8EgF4ZuR7NwvjlB_Sk,1255
|
95
96
|
airbyte_cdk/sources/declarative/incremental/concurrent_partition_cursor.py,sha256=MT5JbdEbnPzk3VWZGGvThe4opoX5dHhSXFrnTRYC6dg,22210
|
@@ -107,19 +108,19 @@ airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py,sha
|
|
107
108
|
airbyte_cdk/sources/declarative/interpolation/interpolated_string.py,sha256=CQkHqGlfa87G6VYMtBAQWin7ECKpfMdrDcg0JO5_rhc,3212
|
108
109
|
airbyte_cdk/sources/declarative/interpolation/interpolation.py,sha256=9IoeuWam3L6GyN10L6U8xNWXmkt9cnahSDNkez1OmFY,982
|
109
110
|
airbyte_cdk/sources/declarative/interpolation/jinja.py,sha256=UQeuS4Vpyp4hlOn-R3tRyeBX0e9IoV6jQ6gH-Jz8lY0,7182
|
110
|
-
airbyte_cdk/sources/declarative/interpolation/macros.py,sha256=
|
111
|
+
airbyte_cdk/sources/declarative/interpolation/macros.py,sha256=HQKHKnjE17zKoPn27ZpTpugRZZQSaof4GVzUUZaV2eE,5081
|
111
112
|
airbyte_cdk/sources/declarative/manifest_declarative_source.py,sha256=TN6GCgLXaWDONTaJwQ3A5ELqC-sxwKz-UYSraJYB-dI,17078
|
112
113
|
airbyte_cdk/sources/declarative/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
113
114
|
airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py,sha256=iemy3fKLczcU0-Aor7tx5jcT6DRedKMqyK7kCOp01hg,3924
|
114
115
|
airbyte_cdk/sources/declarative/migrations/state_migration.py,sha256=KWPjealMLKSMtajXgkdGgKg7EmTLR-CqqD7UIh0-eDU,794
|
115
116
|
airbyte_cdk/sources/declarative/models/__init__.py,sha256=nUFxNCiKeYRVXuZEKA7GD-lTHxsiKcQ8FitZjKhPIvE,100
|
116
|
-
airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=
|
117
|
+
airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=DfbPi512ovaBSWDICJfjIkC3pXDn2aNr1BP-eiLOLyA,103556
|
117
118
|
airbyte_cdk/sources/declarative/parsers/__init__.py,sha256=ZnqYNxHsKCgO38IwB34RQyRMXTs4GTvlRi3ImKnIioo,61
|
118
119
|
airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py,sha256=jDw_TttD3_hpfevXOH-0Ws0eRuqt6wvED0BqosGPRjI,5938
|
119
120
|
airbyte_cdk/sources/declarative/parsers/custom_exceptions.py,sha256=Rir9_z3Kcd5Es0-LChrzk-0qubAsiK_RSEnLmK2OXm8,553
|
120
121
|
airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py,sha256=CXwTfD3wSQq3okcqwigpprbHhSURUokh4GK2OmOyKC8,9132
|
121
122
|
airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py,sha256=IWUOdF03o-aQn0Occo1BJCxU0Pz-QILk5L67nzw2thw,6803
|
122
|
-
airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py,sha256=
|
123
|
+
airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py,sha256=XR8audWus2hSSsNPDGJBR4thAwU4vS7r2S7d1gyonL4,141703
|
123
124
|
airbyte_cdk/sources/declarative/partition_routers/__init__.py,sha256=HJ-Syp3p7RpyR_OK0X_a2kSyISfu3W-PKrRI16iY0a8,957
|
124
125
|
airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py,sha256=VelO7zKqKtzMJ35jyFeg0ypJLQC0plqqIBNXoBW1G2E,3001
|
125
126
|
airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py,sha256=c5cuVFM6NFkuQqG8Z5IwkBuwDrvXZN1CunUOM_L0ezg,6892
|
@@ -143,11 +144,11 @@ airbyte_cdk/sources/declarative/requesters/error_handlers/default_http_response_
|
|
143
144
|
airbyte_cdk/sources/declarative/requesters/error_handlers/error_handler.py,sha256=Tan66odx8VHzfdyyXMQkXz2pJYksllGqvxmpoajgcK4,669
|
144
145
|
airbyte_cdk/sources/declarative/requesters/error_handlers/http_response_filter.py,sha256=E-fQbt4ShfxZVoqfnmOx69C6FUPWZz8BIqI3DN9Kcjs,7935
|
145
146
|
airbyte_cdk/sources/declarative/requesters/http_job_repository.py,sha256=4wpP0ZNTMLugi-Rc1OFdFaxWfRZSl45nzhHqMFCE8SQ,11924
|
146
|
-
airbyte_cdk/sources/declarative/requesters/http_requester.py,sha256=
|
147
|
+
airbyte_cdk/sources/declarative/requesters/http_requester.py,sha256=5i16IqHp4gARSI619babc60_uWUSebNSbkqdci5itSs,17194
|
147
148
|
airbyte_cdk/sources/declarative/requesters/paginators/__init__.py,sha256=uArbKs9JKNCt7t9tZoeWwjDpyI1HoPp29FNW0JzvaEM,644
|
148
|
-
airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py,sha256=
|
149
|
-
airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py,sha256=
|
150
|
-
airbyte_cdk/sources/declarative/requesters/paginators/paginator.py,sha256=
|
149
|
+
airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py,sha256=SB-Af3CRb4mJwhm4EKNxzl_PK2w5QS4tqrSNNMO2IV4,12760
|
150
|
+
airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py,sha256=b1-zKxYOUMHn7ahdWpzKEzfG4A7s_WQWy-vzRqZWzME,2152
|
151
|
+
airbyte_cdk/sources/declarative/requesters/paginators/paginator.py,sha256=TzJF1Q-CFlsHF9lMSfmnGCxRYm9_UQCmBcHYQpc7F30,2376
|
151
152
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py,sha256=2gly8fuZpDNwtu1Qg6oE2jBLGqQRdzSLJdnpk_iDV6I,767
|
152
153
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py,sha256=yLzzK5YIRTkXd2Z-BS__AZXuTd6HXjJIxq05K-lQoxI,3898
|
153
154
|
airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py,sha256=WvGt_DTFcAgTR-NHrlrR7B71yG-L6jmfW-Gwm9iYzjY,3624
|
@@ -163,7 +164,7 @@ airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_
|
|
163
164
|
airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py,sha256=vOsdHfWHiTFc89WENHPv1hcxLgdzycMXVT_IEtLuhfs,5012
|
164
165
|
airbyte_cdk/sources/declarative/requesters/request_options/request_options_provider.py,sha256=8YRiDzjYvqJ-aMmKFcjqzv_-e8OZ5QG_TbpZ-nuCu6s,2590
|
165
166
|
airbyte_cdk/sources/declarative/requesters/request_path.py,sha256=S3MeFvcaQrMbOkSY2W2VbXLNomqt_3eXqVd9ZhgNwUs,299
|
166
|
-
airbyte_cdk/sources/declarative/requesters/requester.py,sha256=
|
167
|
+
airbyte_cdk/sources/declarative/requesters/requester.py,sha256=OcDzuCBgD1owK_lBPG0KbRRHRn9kzbuRveU4HejDiv4,5116
|
167
168
|
airbyte_cdk/sources/declarative/resolvers/__init__.py,sha256=NiDcz5qi8HPsfX94MUmnX0Rgs_kQXGvucOmJjNWlxKQ,1207
|
168
169
|
airbyte_cdk/sources/declarative/resolvers/components_resolver.py,sha256=KPjKc0yb9artL4ZkeqN8RmEykHH6FJgqXD7fCEnh1X0,1936
|
169
170
|
airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py,sha256=dz4iJV9liD_LzY_Mn4XmAStoUll60R3MIGWV4aN3pgg,5223
|
@@ -171,7 +172,7 @@ airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py,sha256=Aio
|
|
171
172
|
airbyte_cdk/sources/declarative/retrievers/__init__.py,sha256=ix9m1dkR69DcXCXUKC5RK_ZZM7ojTLBQ4IkWQTfmfCk,456
|
172
173
|
airbyte_cdk/sources/declarative/retrievers/async_retriever.py,sha256=dwYZ70eg9DKHEqZydHhMFPkEILbNcXu7E-djOCikNgI,3530
|
173
174
|
airbyte_cdk/sources/declarative/retrievers/retriever.py,sha256=XPLs593Xv8c5cKMc37XzUAYmzlXd1a7eSsspM-CMuWA,1696
|
174
|
-
airbyte_cdk/sources/declarative/retrievers/simple_retriever.py,sha256=
|
175
|
+
airbyte_cdk/sources/declarative/retrievers/simple_retriever.py,sha256=fDhc6dMx75UImh1_TfLm4Le59tsHpqIUZnau7uIJyYw,25043
|
175
176
|
airbyte_cdk/sources/declarative/schema/__init__.py,sha256=xU45UvM5O4c1PSM13UHpCdh5hpW3HXy9vRRGEiAC1rg,795
|
176
177
|
airbyte_cdk/sources/declarative/schema/default_schema_loader.py,sha256=KTACrIE23a83wsm3Rd9Eb4K6-20lrGqYxTHNp9yxsso,1820
|
177
178
|
airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py,sha256=J8Q_iJYhcSQLWyt0bTZCbDAGpxt9G8FCc6Q9jtGsNzw,10703
|
@@ -193,12 +194,7 @@ airbyte_cdk/sources/declarative/transformations/keys_to_snake_transformation.py,
|
|
193
194
|
airbyte_cdk/sources/declarative/transformations/remove_fields.py,sha256=EwUP0SZ2p4GRJ6Q8CUzlz9dcUeEidEFDlI2IBye2tlc,2745
|
194
195
|
airbyte_cdk/sources/declarative/transformations/transformation.py,sha256=4sXtx9cNY2EHUPq-xHvDs8GQEBUy3Eo6TkRLKHPXx68,1161
|
195
196
|
airbyte_cdk/sources/declarative/types.py,sha256=yqx0xlZv_76tkC7fqJKefmvl4GJJ8mXbeddwVV8XRJU,778
|
196
|
-
airbyte_cdk/sources/declarative/yaml_declarative_source.py,sha256=
|
197
|
-
airbyte_cdk/sources/embedded/__init__.py,sha256=ZnqYNxHsKCgO38IwB34RQyRMXTs4GTvlRi3ImKnIioo,61
|
198
|
-
airbyte_cdk/sources/embedded/base_integration.py,sha256=0LbtEtWlnVdkYlweA5OJU4BIoyS6d4le5w9FsLn25Zc,2417
|
199
|
-
airbyte_cdk/sources/embedded/catalog.py,sha256=EAnLw9u5fXLNBLfWr_I0itA7OEHMWdqEaM_rWc_tCpI,1653
|
200
|
-
airbyte_cdk/sources/embedded/runner.py,sha256=S6cz7SWRTFfT_ZhP-zZYdiT9XRijulV_bMABal2h0OI,1493
|
201
|
-
airbyte_cdk/sources/embedded/tools.py,sha256=kp26Au9xH4hxsnDQoavxE_a418ZrRUAMBr2MeOU52VI,746
|
197
|
+
airbyte_cdk/sources/declarative/yaml_declarative_source.py,sha256=swZUN7g_AuLeE7n1yp_cquK7DBB082lZUSMIBNEHxgs,2290
|
202
198
|
airbyte_cdk/sources/file_based/README.md,sha256=iMqww4VZ882jfNQIdljjDgqreKs-mkdtSrRKA94iX6A,11085
|
203
199
|
airbyte_cdk/sources/file_based/__init__.py,sha256=EaxHv_9ot-eRlUCR47ZMZ0IOtB-n0HH24om7Bfn-uuQ,868
|
204
200
|
airbyte_cdk/sources/file_based/availability_strategy/__init__.py,sha256=ddKQfUmk-Ls7LJaG8gtrqDybG3d8S7KXOAEjLeYLrTg,399
|
@@ -293,7 +289,7 @@ airbyte_cdk/sources/streams/http/availability_strategy.py,sha256=sovoGFThZr-doMN
|
|
293
289
|
airbyte_cdk/sources/streams/http/error_handlers/__init__.py,sha256=nNO0bnD0ogDlR4AQrI-YmpcM911vWe83b7RJYgvjSYs,666
|
294
290
|
airbyte_cdk/sources/streams/http/error_handlers/backoff_strategy.py,sha256=7fIkF00wD6bqIXtiG2QAgbje_xiQ5JTs99ibwR8LLXY,1030
|
295
291
|
airbyte_cdk/sources/streams/http/error_handlers/default_backoff_strategy.py,sha256=1_1Gi2ImwTbh4SgIKCRh2P4kPaVeAeHc1ib6IrBfqKA,411
|
296
|
-
airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py,sha256=
|
292
|
+
airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py,sha256=drMniPygapMfOigh_ShJQvX6oqJaN4UA3cbRMkOgZJ4,3402
|
297
293
|
airbyte_cdk/sources/streams/http/error_handlers/error_handler.py,sha256=GuqP7U1eC9RPaiD4y4Mkf17vKcOXo2ENnMB-CUBLsbo,1164
|
298
294
|
airbyte_cdk/sources/streams/http/error_handlers/error_message_parser.py,sha256=xC93uB5BJd3iOnAXCrYLJTitWeGZlqzwe55VtsZqNnE,456
|
299
295
|
airbyte_cdk/sources/streams/http/error_handlers/http_status_error_handler.py,sha256=2gqececTxxUqO6aIkVNNXADg48Px5EHUwnXHL9KiPT8,4188
|
@@ -310,7 +306,7 @@ airbyte_cdk/sources/streams/http/requests_native_auth/oauth.py,sha256=C2j2uVfi9d
|
|
310
306
|
airbyte_cdk/sources/streams/http/requests_native_auth/token.py,sha256=h5PTzcdH-RQLeCg7xZ45w_484OPUDSwNWl_iMJQmZoI,2526
|
311
307
|
airbyte_cdk/sources/streams/permissions/identities_stream.py,sha256=9O9k6k18Xm3Zsiw_vnI_jsHXfMCQiek6V-jMkJJLxn8,2621
|
312
308
|
airbyte_cdk/sources/streams/utils/__init__.py,sha256=4Hw-PX1-VgESLF16cDdvuYCzGJtHntThLF4qIiULWeo,61
|
313
|
-
airbyte_cdk/sources/types.py,sha256=
|
309
|
+
airbyte_cdk/sources/types.py,sha256=x5Rkfpottg46qgr1-g_O4kN6v0Fd0sWHttdYsftyo7w,5148
|
314
310
|
airbyte_cdk/sources/utils/__init__.py,sha256=TTN6VUxVy6Is8BhYQZR5pxJGQh8yH4duXh4O1TiMiEY,118
|
315
311
|
airbyte_cdk/sources/utils/casing.py,sha256=QC-gV1O4e8DR4-bhdXieUPKm_JamzslVyfABLYYRSXA,256
|
316
312
|
airbyte_cdk/sources/utils/record_helper.py,sha256=jeB0mucudzna7Zvj-pCBbwFrbLJ36SlAWZTh5O4Fb9Y,2168
|
@@ -352,7 +348,7 @@ airbyte_cdk/utils/datetime_format_inferrer.py,sha256=Ne2cpk7Tx3eZDEW2Q3O7jnNOY9g
|
|
352
348
|
airbyte_cdk/utils/datetime_helpers.py,sha256=8mqzZ67Or2PBp7tLtrhh6XFv4wFzYsjCL_DOQJRaftI,17751
|
353
349
|
airbyte_cdk/utils/event_timing.py,sha256=aiuFmPU80buLlNdKq4fDTEqqhEIelHPF6AalFGwY8as,2557
|
354
350
|
airbyte_cdk/utils/is_cloud_environment.py,sha256=DayV32Irh-SdnJ0MnjvstwCJ66_l5oEsd8l85rZtHoc,574
|
355
|
-
airbyte_cdk/utils/mapping_helpers.py,sha256=
|
351
|
+
airbyte_cdk/utils/mapping_helpers.py,sha256=nWjOpnz_5QE9tY9-GtSWMPvYQL95kDD6k8KwwjUmrh0,6526
|
356
352
|
airbyte_cdk/utils/message_utils.py,sha256=OTzbkwN7AdMDA3iKYq1LKwfPFxpyEDfdgEF9BED3dkU,1366
|
357
353
|
airbyte_cdk/utils/oneof_option_config.py,sha256=N8EmWdYdwt0FM7fuShh6H8nj_r4KEL9tb2DJJtwsPow,1180
|
358
354
|
airbyte_cdk/utils/print_buffer.py,sha256=PhMOi0C4Z91kWKrSvCQXcp8qRh1uCimpIdvrg6voZIA,2810
|
@@ -361,9 +357,9 @@ airbyte_cdk/utils/slice_hasher.py,sha256=EDxgROHDbfG-QKQb59m7h_7crN1tRiawdf5uU7G
|
|
361
357
|
airbyte_cdk/utils/spec_schema_transformations.py,sha256=-5HTuNsnDBAhj-oLeQXwpTGA0HdcjFOf2zTEMUTTg_Y,816
|
362
358
|
airbyte_cdk/utils/stream_status_utils.py,sha256=ZmBoiy5HVbUEHAMrUONxZvxnvfV9CesmQJLDTAIWnWw,1171
|
363
359
|
airbyte_cdk/utils/traced_exception.py,sha256=C8uIBuCL_E4WnBAOPSxBicD06JAldoN9fGsQDp463OY,6292
|
364
|
-
airbyte_cdk-6.38.
|
365
|
-
airbyte_cdk-6.38.
|
366
|
-
airbyte_cdk-6.38.
|
367
|
-
airbyte_cdk-6.38.
|
368
|
-
airbyte_cdk-6.38.
|
369
|
-
airbyte_cdk-6.38.
|
360
|
+
airbyte_cdk-6.38.2.dist-info/LICENSE.txt,sha256=Wfe61S4BaGPj404v8lrAbvhjYR68SHlkzeYrg3_bbuM,1051
|
361
|
+
airbyte_cdk-6.38.2.dist-info/LICENSE_SHORT,sha256=aqF6D1NcESmpn-cqsxBtszTEnHKnlsp8L4x9wAh3Nxg,55
|
362
|
+
airbyte_cdk-6.38.2.dist-info/METADATA,sha256=V0WnXychDR87z8Q_ihtNonBPf4AKCU7frOMzY57zbSw,6013
|
363
|
+
airbyte_cdk-6.38.2.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
364
|
+
airbyte_cdk-6.38.2.dist-info/entry_points.txt,sha256=fj-e3PAQvsxsQzyyq8UkG1k8spunWnD4BAH2AwlR6NM,95
|
365
|
+
airbyte_cdk-6.38.2.dist-info/RECORD,,
|