airbyte-cdk 6.56.4.post1.dev15881172473__py3-none-any.whl → 6.56.5__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 CHANGED
@@ -263,8 +263,6 @@ class AirbyteEntrypoint(object):
263
263
  self.set_up_secret_filter(config, source_spec.connectionSpecification)
264
264
  if self.source.check_config_against_spec:
265
265
  self.validate_connection(source_spec, config)
266
- if hasattr(self.source, "config") and self.source.config is not None:
267
- config = self.source.config
268
266
  catalog = self.source.discover(self.logger, config)
269
267
 
270
268
  yield from self._emit_queued_messages(self.source)
@@ -4204,7 +4204,13 @@ definitions:
4204
4204
  items:
4205
4205
  type: object
4206
4206
  examples:
4207
- - [{"name": "test stream", "$parameters": {"entity": "test entity"}, "primary_key": "test key"}]
4207
+ - [
4208
+ {
4209
+ "name": "test stream",
4210
+ "$parameters": { "entity": "test entity" },
4211
+ "primary_key": "test key",
4212
+ },
4213
+ ]
4208
4214
  ParametrizedComponentsResolver:
4209
4215
  type: object
4210
4216
  title: Parametrized Components Resolver
@@ -4355,6 +4361,7 @@ definitions:
4355
4361
  description: The condition that the specified config value will be evaluated against
4356
4362
  anyOf:
4357
4363
  - "$ref": "#/definitions/ValidateAdheresToSchema"
4364
+ - "$ref": "#/definitions/CustomValidationStrategy"
4358
4365
  PredicateValidator:
4359
4366
  title: Predicate Validator
4360
4367
  description: Validator that applies a validation strategy to a specified value.
@@ -4389,6 +4396,7 @@ definitions:
4389
4396
  description: The validation strategy to apply to the value.
4390
4397
  anyOf:
4391
4398
  - "$ref": "#/definitions/ValidateAdheresToSchema"
4399
+ - "$ref": "#/definitions/CustomValidationStrategy"
4392
4400
  ValidateAdheresToSchema:
4393
4401
  title: Validate Adheres To Schema
4394
4402
  description: Validates that a user-provided schema adheres to a specified JSON schema.
@@ -4442,6 +4450,25 @@ definitions:
4442
4450
  required:
4443
4451
  - name
4444
4452
  - age
4453
+ CustomValidationStrategy:
4454
+ title: Custom Validation Strategy
4455
+ description: Custom validation strategy that allows for custom validation logic.
4456
+ type: object
4457
+ additionalProperties: true
4458
+ required:
4459
+ - type
4460
+ - class_name
4461
+ properties:
4462
+ type:
4463
+ type: string
4464
+ enum: [CustomValidationStrategy]
4465
+ class_name:
4466
+ title: Class Name
4467
+ description: Fully-qualified name of the class that will be implementing the custom validation strategy. Has to be a sub class of ValidationStrategy. The format is `source_<name>.<package>.<class_name>`.
4468
+ type: string
4469
+ additionalProperties: true
4470
+ examples:
4471
+ - "source_declarative_manifest.components.MyCustomValidationStrategy"
4445
4472
  ConfigRemapField:
4446
4473
  title: Remap Field
4447
4474
  description: Transformation that remaps a field's value to another value based on a static map.
@@ -24,7 +24,6 @@ from airbyte_cdk.manifest_migrations.migration_handler import (
24
24
  ManifestMigrationHandler,
25
25
  )
26
26
  from airbyte_cdk.models import (
27
- AirbyteCatalog,
28
27
  AirbyteConnectionStatus,
29
28
  AirbyteMessage,
30
29
  AirbyteStateMessage,
@@ -153,7 +152,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
153
152
  self._spec_component: Optional[Spec] = (
154
153
  self._constructor.create_component(SpecModel, spec, dict()) if spec else None
155
154
  )
156
- self.config = self._migrate_and_transform_config(config_path, config) or {}
155
+ self._config = self._migrate_and_transform_config(config_path, config) or {}
157
156
 
158
157
  @property
159
158
  def resolved_manifest(self) -> Mapping[str, Any]:
@@ -239,6 +238,10 @@ class ManifestDeclarativeSource(DeclarativeSource):
239
238
  self._spec_component.transform_config(mutable_config)
240
239
  return mutable_config
241
240
 
241
+ def configure(self, config: Mapping[str, Any], temp_dir: str) -> Mapping[str, Any]:
242
+ config = self._config or config
243
+ return super().configure(config, temp_dir)
244
+
242
245
  def _migrate_manifest(self) -> None:
243
246
  """
244
247
  This method is used to migrate the manifest. It should be called after the manifest has been validated.
@@ -269,7 +272,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
269
272
  def dynamic_streams(self) -> List[Dict[str, Any]]:
270
273
  return self._dynamic_stream_configs(
271
274
  manifest=self._source_config,
272
- config=self.config,
275
+ config=self._config,
273
276
  with_dynamic_stream_name=True,
274
277
  )
275
278
 
@@ -402,11 +405,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
402
405
 
403
406
  def check(self, logger: logging.Logger, config: Mapping[str, Any]) -> AirbyteConnectionStatus:
404
407
  self._configure_logger_level(logger)
405
- return super().check(logger, self.config)
406
-
407
- def discover(self, logger: logging.Logger, config: Mapping[str, Any]) -> AirbyteCatalog:
408
- self._configure_logger_level(logger)
409
- return super().discover(logger, self.config)
408
+ return super().check(logger, config)
410
409
 
411
410
  def read(
412
411
  self,
@@ -416,7 +415,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
416
415
  state: Optional[List[AirbyteStateMessage]] = None,
417
416
  ) -> Iterator[AirbyteMessage]:
418
417
  self._configure_logger_level(logger)
419
- yield from super().read(logger, self.config, catalog, state)
418
+ yield from super().read(logger, config, catalog, state)
420
419
 
421
420
  def _configure_logger_level(self, logger: logging.Logger) -> None:
422
421
  """
@@ -1,5 +1,3 @@
1
- # Copyright (c) 2025 Airbyte, Inc., all rights reserved.
2
-
3
1
  # generated by datamodel-codegen:
4
2
  # filename: declarative_component_schema.yaml
5
3
 
@@ -1586,6 +1584,19 @@ class ValidateAdheresToSchema(BaseModel):
1586
1584
  )
1587
1585
 
1588
1586
 
1587
+ class CustomValidationStrategy(BaseModel):
1588
+ class Config:
1589
+ extra = Extra.allow
1590
+
1591
+ type: Literal["CustomValidationStrategy"]
1592
+ class_name: str = Field(
1593
+ ...,
1594
+ description="Fully-qualified name of the class that will be implementing the custom validation strategy. Has to be a sub class of ValidationStrategy. The format is `source_<name>.<package>.<class_name>`.",
1595
+ examples=["source_declarative_manifest.components.MyCustomValidationStrategy"],
1596
+ title="Class Name",
1597
+ )
1598
+
1599
+
1589
1600
  class ConfigRemapField(BaseModel):
1590
1601
  type: Literal["ConfigRemapField"]
1591
1602
  map: Union[Dict[str, Any], str] = Field(
@@ -1767,30 +1778,23 @@ class DatetimeBasedCursor(BaseModel):
1767
1778
  examples=["created_at", "{{ config['record_cursor'] }}"],
1768
1779
  title="Cursor Field",
1769
1780
  )
1770
- datetime_format: str = Field(
1771
- ...,
1772
- description="The datetime format used to format the datetime values that are sent in outgoing requests to the API. Use placeholders starting with \"%\" to describe the format the API is using. The following placeholders are available:\n * **%s**: Epoch unix timestamp - `1686218963`\n * **%s_as_float**: Epoch unix timestamp in seconds as float with microsecond precision - `1686218963.123456`\n * **%ms**: Epoch unix timestamp (milliseconds) - `1686218963123`\n * **%a**: Weekday (abbreviated) - `Sun`\n * **%A**: Weekday (full) - `Sunday`\n * **%w**: Weekday (decimal) - `0` (Sunday), `6` (Saturday)\n * **%d**: Day of the month (zero-padded) - `01`, `02`, ..., `31`\n * **%b**: Month (abbreviated) - `Jan`\n * **%B**: Month (full) - `January`\n * **%m**: Month (zero-padded) - `01`, `02`, ..., `12`\n * **%y**: Year (without century, zero-padded) - `00`, `01`, ..., `99`\n * **%Y**: Year (with century) - `0001`, `0002`, ..., `9999`\n * **%H**: Hour (24-hour, zero-padded) - `00`, `01`, ..., `23`\n * **%I**: Hour (12-hour, zero-padded) - `01`, `02`, ..., `12`\n * **%p**: AM/PM indicator\n * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`\n * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`\n * **%f**: Microsecond (zero-padded to 6 digits) - `000000`\n * **%_ms**: Millisecond (zero-padded to 3 digits) - `000`\n * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`\n * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`\n * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`\n * **%U**: Week number of the year (starting Sunday) - `00`, ..., `53`\n * **%W**: Week number of the year (starting Monday) - `00`, ..., `53`\n * **%c**: Date and time - `Tue Aug 16 21:30:00 1988`\n * **%x**: Date standard format - `08/16/1988`\n * **%X**: Time standard format - `21:30:00`\n * **%%**: Literal '%' character\n\n Some placeholders depend on the locale of the underlying system - in most cases this locale is configured as en/US. For more information see the [Python documentation](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes).\n",
1773
- examples=["%Y-%m-%dT%H:%M:%S.%f%z", "%Y-%m-%d", "%s", "%ms", "%s_as_float"],
1774
- title="Outgoing Datetime Format",
1781
+ cursor_datetime_formats: Optional[List[str]] = Field(
1782
+ None,
1783
+ description="The possible formats for the cursor field, in order of preference. The first format that matches the cursor field value will be used to parse it. If not provided, the `datetime_format` will be used.",
1784
+ title="Cursor Datetime Formats",
1775
1785
  )
1776
- start_datetime: Union[str, MinMaxDatetime] = Field(
1786
+ start_datetime: Union[MinMaxDatetime, str] = Field(
1777
1787
  ...,
1778
1788
  description="The datetime that determines the earliest record that should be synced.",
1779
1789
  examples=["2020-01-1T00:00:00Z", "{{ config['start_time'] }}"],
1780
1790
  title="Start Datetime",
1781
1791
  )
1782
- cursor_datetime_formats: Optional[List[str]] = Field(
1783
- None,
1784
- description="The possible formats for the cursor field, in order of preference. The first format that matches the cursor field value will be used to parse it. If not provided, the `datetime_format` will be used.",
1785
- title="Cursor Datetime Formats",
1786
- )
1787
- cursor_granularity: Optional[str] = Field(
1792
+ start_time_option: Optional[RequestOption] = Field(
1788
1793
  None,
1789
- description="Smallest increment the datetime_format has (ISO 8601 duration) that is used to ensure the start of a slice does not overlap with the end of the previous one, e.g. for %Y-%m-%d the granularity should be P1D, for %Y-%m-%dT%H:%M:%SZ the granularity should be PT1S. Given this field is provided, `step` needs to be provided as well.",
1790
- examples=["PT1S"],
1791
- title="Cursor Granularity",
1794
+ description="Optionally configures how the start datetime will be sent in requests to the source API.",
1795
+ title="Inject Start Time Into Outgoing HTTP Request",
1792
1796
  )
1793
- end_datetime: Optional[Union[str, MinMaxDatetime]] = Field(
1797
+ end_datetime: Optional[Union[MinMaxDatetime, str]] = Field(
1794
1798
  None,
1795
1799
  description="The datetime that determines the last record that should be synced. If not provided, `{{ now_utc() }}` will be used.",
1796
1800
  examples=["2021-01-1T00:00:00Z", "{{ now_utc() }}", "{{ day_delta(-1) }}"],
@@ -1801,6 +1805,18 @@ class DatetimeBasedCursor(BaseModel):
1801
1805
  description="Optionally configures how the end datetime will be sent in requests to the source API.",
1802
1806
  title="Inject End Time Into Outgoing HTTP Request",
1803
1807
  )
1808
+ datetime_format: str = Field(
1809
+ ...,
1810
+ description="The datetime format used to format the datetime values that are sent in outgoing requests to the API. Use placeholders starting with \"%\" to describe the format the API is using. The following placeholders are available:\n * **%s**: Epoch unix timestamp - `1686218963`\n * **%s_as_float**: Epoch unix timestamp in seconds as float with microsecond precision - `1686218963.123456`\n * **%ms**: Epoch unix timestamp (milliseconds) - `1686218963123`\n * **%a**: Weekday (abbreviated) - `Sun`\n * **%A**: Weekday (full) - `Sunday`\n * **%w**: Weekday (decimal) - `0` (Sunday), `6` (Saturday)\n * **%d**: Day of the month (zero-padded) - `01`, `02`, ..., `31`\n * **%b**: Month (abbreviated) - `Jan`\n * **%B**: Month (full) - `January`\n * **%m**: Month (zero-padded) - `01`, `02`, ..., `12`\n * **%y**: Year (without century, zero-padded) - `00`, `01`, ..., `99`\n * **%Y**: Year (with century) - `0001`, `0002`, ..., `9999`\n * **%H**: Hour (24-hour, zero-padded) - `00`, `01`, ..., `23`\n * **%I**: Hour (12-hour, zero-padded) - `01`, `02`, ..., `12`\n * **%p**: AM/PM indicator\n * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`\n * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`\n * **%f**: Microsecond (zero-padded to 6 digits) - `000000`\n * **%_ms**: Millisecond (zero-padded to 3 digits) - `000`\n * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`\n * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`\n * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`\n * **%U**: Week number of the year (starting Sunday) - `00`, ..., `53`\n * **%W**: Week number of the year (starting Monday) - `00`, ..., `53`\n * **%c**: Date and time - `Tue Aug 16 21:30:00 1988`\n * **%x**: Date standard format - `08/16/1988`\n * **%X**: Time standard format - `21:30:00`\n * **%%**: Literal '%' character\n\n Some placeholders depend on the locale of the underlying system - in most cases this locale is configured as en/US. For more information see the [Python documentation](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes).\n",
1811
+ examples=["%Y-%m-%dT%H:%M:%S.%f%z", "%Y-%m-%d", "%s", "%ms", "%s_as_float"],
1812
+ title="Outgoing Datetime Format",
1813
+ )
1814
+ cursor_granularity: Optional[str] = Field(
1815
+ None,
1816
+ description="Smallest increment the datetime_format has (ISO 8601 duration) that is used to ensure the start of a slice does not overlap with the end of the previous one, e.g. for %Y-%m-%d the granularity should be P1D, for %Y-%m-%dT%H:%M:%SZ the granularity should be PT1S. Given this field is provided, `step` needs to be provided as well.",
1817
+ examples=["PT1S"],
1818
+ title="Cursor Granularity",
1819
+ )
1804
1820
  is_data_feed: Optional[bool] = Field(
1805
1821
  None,
1806
1822
  description="A data feed API is an API that does not allow filtering and paginates the content from the most recent to the least recent. Given this, the CDK needs to know when to stop paginating and this field will generate a stop condition for pagination.",
@@ -1839,11 +1855,6 @@ class DatetimeBasedCursor(BaseModel):
1839
1855
  examples=["starting_time"],
1840
1856
  title="Partition Field Start",
1841
1857
  )
1842
- start_time_option: Optional[RequestOption] = Field(
1843
- None,
1844
- description="Optionally configures how the start datetime will be sent in requests to the source API.",
1845
- title="Inject Start Time Into Outgoing HTTP Request",
1846
- )
1847
1858
  step: Optional[str] = Field(
1848
1859
  None,
1849
1860
  description="The size of the time window (ISO8601 duration). Given this field is provided, `cursor_granularity` needs to be provided as well.",
@@ -1908,10 +1919,10 @@ class DefaultErrorHandler(BaseModel):
1908
1919
  List[
1909
1920
  Union[
1910
1921
  ConstantBackoffStrategy,
1911
- CustomBackoffStrategy,
1912
1922
  ExponentialBackoffStrategy,
1913
1923
  WaitTimeFromHeader,
1914
1924
  WaitUntilTimeFromHeader,
1925
+ CustomBackoffStrategy,
1915
1926
  ]
1916
1927
  ]
1917
1928
  ] = Field(
@@ -2030,7 +2041,7 @@ class DpathValidator(BaseModel):
2030
2041
  ],
2031
2042
  title="Field Path",
2032
2043
  )
2033
- validation_strategy: ValidateAdheresToSchema = Field(
2044
+ validation_strategy: Union[ValidateAdheresToSchema, CustomValidationStrategy] = Field(
2034
2045
  ...,
2035
2046
  description="The condition that the specified config value will be evaluated against",
2036
2047
  title="Validation Strategy",
@@ -2050,7 +2061,7 @@ class PredicateValidator(BaseModel):
2050
2061
  ],
2051
2062
  title="Value",
2052
2063
  )
2053
- validation_strategy: ValidateAdheresToSchema = Field(
2064
+ validation_strategy: Union[ValidateAdheresToSchema, CustomValidationStrategy] = Field(
2054
2065
  ...,
2055
2066
  description="The validation strategy to apply to the value.",
2056
2067
  title="Validation Strategy",
@@ -2285,12 +2296,12 @@ class SelectiveAuthenticator(BaseModel):
2285
2296
  ApiKeyAuthenticator,
2286
2297
  BasicHttpAuthenticator,
2287
2298
  BearerAuthenticator,
2288
- CustomAuthenticator,
2289
2299
  OAuthAuthenticator,
2290
2300
  JwtAuthenticator,
2291
2301
  SessionTokenAuthenticator,
2292
- NoAuth,
2293
2302
  LegacySessionTokenAuthenticator,
2303
+ CustomAuthenticator,
2304
+ NoAuth,
2294
2305
  ],
2295
2306
  ] = Field(
2296
2307
  ...,
@@ -2374,7 +2385,6 @@ class DeclarativeStream(BaseModel):
2374
2385
  InlineSchemaLoader,
2375
2386
  DynamicSchemaLoader,
2376
2387
  JsonFileSchemaLoader,
2377
- CustomSchemaLoader,
2378
2388
  List[
2379
2389
  Union[
2380
2390
  InlineSchemaLoader,
@@ -2383,6 +2393,7 @@ class DeclarativeStream(BaseModel):
2383
2393
  CustomSchemaLoader,
2384
2394
  ]
2385
2395
  ],
2396
+ CustomSchemaLoader,
2386
2397
  ]
2387
2398
  ] = Field(
2388
2399
  None,
@@ -2393,13 +2404,13 @@ class DeclarativeStream(BaseModel):
2393
2404
  List[
2394
2405
  Union[
2395
2406
  AddFields,
2396
- CustomTransformation,
2397
2407
  RemoveFields,
2398
2408
  KeysToLower,
2399
2409
  KeysToSnakeCase,
2400
2410
  FlattenFields,
2401
2411
  DpathFlattenFields,
2402
2412
  KeysReplace,
2413
+ CustomTransformation,
2403
2414
  ]
2404
2415
  ]
2405
2416
  ] = Field(
@@ -2631,7 +2642,7 @@ class HttpRequester(BaseModelWithDeprecations):
2631
2642
 
2632
2643
  class DynamicSchemaLoader(BaseModel):
2633
2644
  type: Literal["DynamicSchemaLoader"]
2634
- retriever: Union[AsyncRetriever, CustomRetriever, SimpleRetriever] = Field(
2645
+ retriever: Union[SimpleRetriever, AsyncRetriever, CustomRetriever] = Field(
2635
2646
  ...,
2636
2647
  description="Component used to coordinate how records are extracted across stream slices and request pages.",
2637
2648
  title="Retriever",
@@ -2645,13 +2656,13 @@ class DynamicSchemaLoader(BaseModel):
2645
2656
  List[
2646
2657
  Union[
2647
2658
  AddFields,
2648
- CustomTransformation,
2649
2659
  RemoveFields,
2650
2660
  KeysToLower,
2651
2661
  KeysToSnakeCase,
2652
2662
  FlattenFields,
2653
2663
  DpathFlattenFields,
2654
2664
  KeysReplace,
2665
+ CustomTransformation,
2655
2666
  ]
2656
2667
  ]
2657
2668
  ] = Field(
@@ -2895,7 +2906,7 @@ class AsyncRetriever(BaseModel):
2895
2906
  ] = Field(
2896
2907
  None,
2897
2908
  description="Component decoding the response so records can be extracted.",
2898
- title="Decoder",
2909
+ title="HTTP Response Format",
2899
2910
  )
2900
2911
  download_decoder: Optional[
2901
2912
  Union[
@@ -2911,7 +2922,7 @@ class AsyncRetriever(BaseModel):
2911
2922
  ] = Field(
2912
2923
  None,
2913
2924
  description="Component decoding the download response so records can be extracted.",
2914
- title="Download Decoder",
2925
+ title="Download HTTP Response Format",
2915
2926
  )
2916
2927
  parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
2917
2928
 
@@ -2935,7 +2946,7 @@ class GroupingPartitionRouter(BaseModel):
2935
2946
  title="Group Size",
2936
2947
  )
2937
2948
  underlying_partition_router: Union[
2938
- CustomPartitionRouter, ListPartitionRouter, SubstreamPartitionRouter
2949
+ ListPartitionRouter, SubstreamPartitionRouter, CustomPartitionRouter
2939
2950
  ] = Field(
2940
2951
  ...,
2941
2952
  description="The partition router whose output will be grouped. This can be any valid partition router component.",
@@ -2951,7 +2962,7 @@ class GroupingPartitionRouter(BaseModel):
2951
2962
 
2952
2963
  class HttpComponentsResolver(BaseModel):
2953
2964
  type: Literal["HttpComponentsResolver"]
2954
- retriever: Union[AsyncRetriever, CustomRetriever, SimpleRetriever] = Field(
2965
+ retriever: Union[SimpleRetriever, AsyncRetriever, CustomRetriever] = Field(
2955
2966
  ...,
2956
2967
  description="Component used to coordinate how records are extracted across stream slices and request pages.",
2957
2968
  title="Retriever",
@@ -222,6 +222,9 @@ from airbyte_cdk.sources.declarative.models.declarative_component_schema import
222
222
  from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
223
223
  CustomTransformation as CustomTransformationModel,
224
224
  )
225
+ from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
226
+ CustomValidationStrategy as CustomValidationStrategyModel,
227
+ )
225
228
  from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
226
229
  DatetimeBasedCursor as DatetimeBasedCursorModel,
227
230
  )
@@ -683,6 +686,7 @@ class ModelToComponentFactory:
683
686
  CustomPaginationStrategyModel: self.create_custom_component,
684
687
  CustomPartitionRouterModel: self.create_custom_component,
685
688
  CustomTransformationModel: self.create_custom_component,
689
+ CustomValidationStrategyModel: self.create_custom_component,
686
690
  DatetimeBasedCursorModel: self.create_datetime_based_cursor,
687
691
  DeclarativeStreamModel: self.create_declarative_stream,
688
692
  DefaultErrorHandlerModel: self.create_default_error_handler,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: airbyte-cdk
3
- Version: 6.56.4.post1.dev15881172473
3
+ Version: 6.56.5
4
4
  Summary: A framework for writing Airbyte Connectors.
5
5
  Home-page: https://airbyte.com
6
6
  License: MIT
@@ -33,7 +33,7 @@ airbyte_cdk/destinations/vector_db_based/indexer.py,sha256=beiSi2Uu67EoTr7yQSaCJ
33
33
  airbyte_cdk/destinations/vector_db_based/test_utils.py,sha256=MkqLiOJ5QyKbV4rNiJhe-BHM7FD-ADHQ4bQGf4c5lRY,1932
34
34
  airbyte_cdk/destinations/vector_db_based/utils.py,sha256=FOyEo8Lc-fY8UyhpCivhZtIqBRyxf3cUt6anmK03fUY,1127
35
35
  airbyte_cdk/destinations/vector_db_based/writer.py,sha256=nZ00xPiohElJmYktEZZIhr0m5EDETCHGhg0Lb2S7A20,5095
36
- airbyte_cdk/entrypoint.py,sha256=Yv8YDqNB1MgHhz0jPIMdIfSJIT6GqsvJU_8_E_BmSxU,19892
36
+ airbyte_cdk/entrypoint.py,sha256=R2kAsAnCAI7eZCctQpMCImLhFFwo7PniJVA0e7RhJVI,19774
37
37
  airbyte_cdk/exception_handler.py,sha256=D_doVl3Dt60ASXlJsfviOCswxGyKF2q0RL6rif3fNks,2013
38
38
  airbyte_cdk/logger.py,sha256=1cURbvawbunCAV178q-XhTHcbAQZTSf07WhU7U9AXWU,3744
39
39
  airbyte_cdk/manifest_migrations/README.md,sha256=4v7BSW3Lkx7HdsKPP3IevfvdFbDCn5fekl-GxOGrWK0,3020
@@ -89,7 +89,7 @@ airbyte_cdk/sources/declarative/concurrent_declarative_source.py,sha256=rQz9gXp3
89
89
  airbyte_cdk/sources/declarative/datetime/__init__.py,sha256=4Hw-PX1-VgESLF16cDdvuYCzGJtHntThLF4qIiULWeo,61
90
90
  airbyte_cdk/sources/declarative/datetime/datetime_parser.py,sha256=_zGNGq31RNy_0QBLt_EcTvgPyhj7urPdx6oA3M5-r3o,3150
91
91
  airbyte_cdk/sources/declarative/datetime/min_max_datetime.py,sha256=0BHBtDNQZfvwM45-tY5pNlTcKAFSGGNxemoi0Jic-0E,5785
92
- airbyte_cdk/sources/declarative/declarative_component_schema.yaml,sha256=JwWxM_QAIC7jAOYQMpo9fWa1aULtGhMn9Tg0bntoM58,180321
92
+ airbyte_cdk/sources/declarative/declarative_component_schema.yaml,sha256=J7y_7HJdJMBhngGH3eprGQTlHv_eYGBpD8xe2su5KAs,181284
93
93
  airbyte_cdk/sources/declarative/declarative_source.py,sha256=qmyMnnet92eGc3C22yBtpvD5UZjqdhsAafP_zxI5wp8,1814
94
94
  airbyte_cdk/sources/declarative/declarative_stream.py,sha256=dCRlddBUSaJmBNBz1pSO1r2rTw8AP5d2_vlmIeGs2gg,10767
95
95
  airbyte_cdk/sources/declarative/decoders/__init__.py,sha256=JHb_0d3SE6kNY10mxA5YBEKPeSbsWYjByq1gUQxepoE,953
@@ -127,20 +127,20 @@ airbyte_cdk/sources/declarative/interpolation/interpolated_string.py,sha256=CQkH
127
127
  airbyte_cdk/sources/declarative/interpolation/interpolation.py,sha256=9IoeuWam3L6GyN10L6U8xNWXmkt9cnahSDNkez1OmFY,982
128
128
  airbyte_cdk/sources/declarative/interpolation/jinja.py,sha256=oFGKs3oX0xO6DOL4E9x8rhxwbEoRcgx4HJVIL1RQ9c4,7269
129
129
  airbyte_cdk/sources/declarative/interpolation/macros.py,sha256=xRcmjape4_WGmKMJpmBsKY0k4OHJDM46Hv3V-dlSz3w,5640
130
- airbyte_cdk/sources/declarative/manifest_declarative_source.py,sha256=eoZEbsbNOFqa0y60ntpv8eJrtqsf-pbgfEEL2Ua2RV4,25783
130
+ airbyte_cdk/sources/declarative/manifest_declarative_source.py,sha256=RDzxRKc3JDJHaSM0I_Ezuo94LDNwnNLVpqt0tp3CHp0,25743
131
131
  airbyte_cdk/sources/declarative/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
132
132
  airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py,sha256=V2lpYE9LJKvz6BUViHk4vaRGndxNABmPbDCtyYdkqaE,4013
133
133
  airbyte_cdk/sources/declarative/migrations/state_migration.py,sha256=KWPjealMLKSMtajXgkdGgKg7EmTLR-CqqD7UIh0-eDU,794
134
134
  airbyte_cdk/sources/declarative/models/__init__.py,sha256=nUFxNCiKeYRVXuZEKA7GD-lTHxsiKcQ8FitZjKhPIvE,100
135
135
  airbyte_cdk/sources/declarative/models/base_model_with_deprecations.py,sha256=Imnj3yef0aqRdLfaUxkIYISUb8YkiPrRH_wBd-x8HjM,5999
136
- airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=jipvV9xV_BB4-IGjdUolbY3IoaB0VPubWoCtnr1Ick0,127459
136
+ airbyte_cdk/sources/declarative/models/declarative_component_schema.py,sha256=_vSttuYgevivyK3SJZjMvs7p4NP7pqS9F1c1ei3DJ7M,128009
137
137
  airbyte_cdk/sources/declarative/parsers/__init__.py,sha256=ZnqYNxHsKCgO38IwB34RQyRMXTs4GTvlRi3ImKnIioo,61
138
138
  airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py,sha256=nlVvHC511NUyDEEIRBkoeDTAvLqKNp-hRy8D19z8tdk,5941
139
139
  airbyte_cdk/sources/declarative/parsers/custom_exceptions.py,sha256=wnRUP0Xeru9Rbu5OexXSDN9QWDo8YU4tT9M2LDVOgGA,802
140
140
  airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py,sha256=2UdpCz3yi7ISZTyqkQXSSy3dMxeyOWqV7OlAS5b9GVg,11568
141
141
  airbyte_cdk/sources/declarative/parsers/manifest_normalizer.py,sha256=laBy7ebjA-PiNwc-50U4FHvMqS_mmHvnabxgFs4CjGw,17069
142
142
  airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py,sha256=pJmg78vqE5VfUrF_KJnWjucQ4k9IWFULeAxHCowrHXE,6806
143
- airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py,sha256=Sr8LrlLl61eQTsJ5b8eWt3ESCPDEpJRd6DXS4P53hVE,176635
143
+ airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py,sha256=d1GXdgEwolqQSfkMvREvIesUhMgMOMlxoXj4ctPCBwI,176855
144
144
  airbyte_cdk/sources/declarative/partition_routers/__init__.py,sha256=TBC9AkGaUqHm2IKHMPN6punBIcY5tWGULowcLoAVkfw,1109
145
145
  airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py,sha256=VelO7zKqKtzMJ35jyFeg0ypJLQC0plqqIBNXoBW1G2E,3001
146
146
  airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py,sha256=c5cuVFM6NFkuQqG8Z5IwkBuwDrvXZN1CunUOM_L0ezg,6892
@@ -423,9 +423,9 @@ airbyte_cdk/utils/slice_hasher.py,sha256=EDxgROHDbfG-QKQb59m7h_7crN1tRiawdf5uU7G
423
423
  airbyte_cdk/utils/spec_schema_transformations.py,sha256=-5HTuNsnDBAhj-oLeQXwpTGA0HdcjFOf2zTEMUTTg_Y,816
424
424
  airbyte_cdk/utils/stream_status_utils.py,sha256=ZmBoiy5HVbUEHAMrUONxZvxnvfV9CesmQJLDTAIWnWw,1171
425
425
  airbyte_cdk/utils/traced_exception.py,sha256=C8uIBuCL_E4WnBAOPSxBicD06JAldoN9fGsQDp463OY,6292
426
- airbyte_cdk-6.56.4.post1.dev15881172473.dist-info/LICENSE.txt,sha256=Wfe61S4BaGPj404v8lrAbvhjYR68SHlkzeYrg3_bbuM,1051
427
- airbyte_cdk-6.56.4.post1.dev15881172473.dist-info/LICENSE_SHORT,sha256=aqF6D1NcESmpn-cqsxBtszTEnHKnlsp8L4x9wAh3Nxg,55
428
- airbyte_cdk-6.56.4.post1.dev15881172473.dist-info/METADATA,sha256=CzG67gfYu56gfU1VD9lCU4g65NEnv0iZKpQZ5fJvjAA,6413
429
- airbyte_cdk-6.56.4.post1.dev15881172473.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
430
- airbyte_cdk-6.56.4.post1.dev15881172473.dist-info/entry_points.txt,sha256=AKWbEkHfpzzk9nF9tqBUaw1MbvTM4mGtEzmZQm0ZWvM,139
431
- airbyte_cdk-6.56.4.post1.dev15881172473.dist-info/RECORD,,
426
+ airbyte_cdk-6.56.5.dist-info/LICENSE.txt,sha256=Wfe61S4BaGPj404v8lrAbvhjYR68SHlkzeYrg3_bbuM,1051
427
+ airbyte_cdk-6.56.5.dist-info/LICENSE_SHORT,sha256=aqF6D1NcESmpn-cqsxBtszTEnHKnlsp8L4x9wAh3Nxg,55
428
+ airbyte_cdk-6.56.5.dist-info/METADATA,sha256=LbMMulk7MDxPbSu6UXyINri1w5-WedNr-zrQvLZt3tU,6392
429
+ airbyte_cdk-6.56.5.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
430
+ airbyte_cdk-6.56.5.dist-info/entry_points.txt,sha256=AKWbEkHfpzzk9nF9tqBUaw1MbvTM4mGtEzmZQm0ZWvM,139
431
+ airbyte_cdk-6.56.5.dist-info/RECORD,,