airbyte-cdk 6.9.3rc1__tar.gz → 6.11.0__tar.gz
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-6.9.3rc1 → airbyte_cdk-6.11.0}/PKG-INFO +1 -1
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/selective_authenticator.py +1 -1
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/declarative_component_schema.yaml +139 -2
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/manifest_declarative_source.py +22 -1
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/models/declarative_component_schema.py +75 -12
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py +8 -1
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +121 -1
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/resolvers/__init__.py +8 -3
- airbyte_cdk-6.11.0/airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py +136 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/schema/__init__.py +2 -1
- airbyte_cdk-6.11.0/airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py +219 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/pyproject.toml +1 -1
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/LICENSE.txt +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/README.md +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/cli/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/cli/source_declarative_manifest/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/cli/source_declarative_manifest/_run.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/cli/source_declarative_manifest/spec.json +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/config_observation.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector_builder/README.md +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector_builder/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector_builder/connector_builder_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector_builder/main.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector_builder/message_grouper.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/connector_builder/models.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/destination.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/README.md +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/config.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/document_processor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/embedder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/indexer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/test_utils.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/utils.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/destinations/vector_db_based/writer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/entrypoint.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/exception_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/logger.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/models/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/models/airbyte_protocol.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/models/airbyte_protocol_serializers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/models/file_transfer_record_message.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/models/well_known_types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/py.typed +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/abstract_source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/concurrent_read_processor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/concurrent_source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/concurrent_source_adapter.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/partition_generation_completed_sentinel.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/stream_thread_exception.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/concurrent_source/thread_pool_manager.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/config.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/connector_state_manager.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/job.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/job_orchestrator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/job_tracker.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/repository.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/status.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/async_job/timer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/declarative_authenticator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/jwt.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/oauth.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/token.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/auth/token_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/checks/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/checks/check_stream.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/checks/connection_checker.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/concurrency_level/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/concurrency_level/concurrency_level.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/concurrent_declarative_source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/datetime/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/datetime/datetime_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/datetime/min_max_datetime.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/declarative_source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/declarative_stream.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/decoders/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/decoders/decoder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/decoders/json_decoder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/decoders/noop_decoder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/decoders/pagination_decoder_decorator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/decoders/xml_decoder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/exceptions.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/dpath_extractor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/http_selector.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/record_extractor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/record_filter.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/record_selector.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/datetime_based_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/declarative_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/global_substream_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/per_partition_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/per_partition_with_global.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/incremental/resumable_full_refresh_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/filters.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_boolean.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_mapping.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_string.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/interpolation.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/jinja.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/interpolation/macros.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/migrations/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/migrations/state_migration.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/models/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/parsers/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/parsers/custom_exceptions.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/partition_routers/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/partition_routers/list_partition_router.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/partition_routers/partition_router.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/partition_routers/single_partition_router.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/constant_backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/exponential_backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/header_helper.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_time_from_header_backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_until_time_from_header_backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/composite_error_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_error_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_http_response_filter.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/error_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/http_response_filter.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/http_job_repository.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/http_requester.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/paginator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/page_increment.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/pagination_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/stop_condition.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_option.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/datetime_based_request_options_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/default_request_options_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_nested_request_input_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_input_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_options/request_options_provider.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/request_path.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/requesters/requester.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/resolvers/components_resolver.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/retrievers/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/retrievers/async_retriever.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/retrievers/retriever.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/schema/default_schema_loader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/schema/inline_schema_loader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/schema/json_file_schema_loader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/schema/schema_loader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/spec/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/spec/spec.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/stream_slicers/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/stream_slicers/declarative_partition_generator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/stream_slicers/stream_slicer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/transformations/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/transformations/add_fields.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/transformations/keys_to_lower_transformation.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/transformations/remove_fields.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/transformations/transformation.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/yaml_declarative_source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/embedded/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/embedded/base_integration.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/embedded/catalog.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/embedded/runner.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/embedded/tools.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/README.md +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/availability_strategy/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/availability_strategy/abstract_file_based_availability_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/abstract_file_based_spec.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/avro_format.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/csv_format.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/excel_format.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/file_based_stream_config.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/jsonl_format.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/parquet_format.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/config/unstructured_format.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/discovery_policy/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/discovery_policy/abstract_discovery_policy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/discovery_policy/default_discovery_policy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/exceptions.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_based_source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_based_stream_reader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/avro_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/csv_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/excel_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/file_transfer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/file_type_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/jsonl_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/parquet_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/file_types/unstructured_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/remote_file.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/schema_helpers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/schema_validation_policies/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/schema_validation_policies/abstract_schema_validation_policy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/schema_validation_policies/default_schema_validation_policies.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/concurrent/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/concurrent/adapters.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/abstract_concurrent_file_based_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_concurrent_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_final_state_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/cursor/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/cursor/abstract_file_based_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/cursor/default_file_based_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/file_based/types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/http_config.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/http_logger.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/message/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/message/repository.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/source.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/availability_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/call_rate.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/checkpoint/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/checkpoint/checkpoint_reader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/checkpoint/cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/checkpoint/per_partition_key_serializer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/checkpoint/resumable_full_refresh_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/checkpoint/substream_resumable_full_refresh_cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/README.md +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/abstract_stream.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/abstract_stream_facade.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/adapters.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/availability_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/cursor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/default_stream.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/exceptions.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/helpers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partition_enqueuer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partition_reader.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partitions/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partitions/partition.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partitions/partition_generator.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partitions/stream_slicer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/partitions/types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/state_converters/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/state_converters/abstract_stream_state_converter.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/concurrent/state_converters/datetime_stream_state_converter.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/core.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/availability_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/default_backoff_strategy.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/error_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/error_message_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/http_status_error_handler.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/json_error_message_parser.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/error_handlers/response_models.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/exceptions.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/http.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/http_client.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/rate_limiting.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/requests_native_auth/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_oauth.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_token.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/requests_native_auth/oauth.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/http/requests_native_auth/token.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/streams/utils/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/casing.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/record_helper.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/schema_helpers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/slice_logger.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/transform.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/utils/types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/_util/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/_util/hashing.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/_util/name_normalizers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/constants.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/exceptions.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/secrets.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/shared/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/shared/catalog_providers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/shared/sql_processor.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sql/types.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/catalog_builder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/entrypoint_wrapper.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/mock_http/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/mock_http/matcher.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/mock_http/mocker.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/mock_http/request.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/mock_http/response.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/mock_http/response_builder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/state_builder.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/utils/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/utils/data.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/utils/http_mocking.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/utils/manifest_only_fixtures.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/test/utils/reading.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/__init__.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/airbyte_secrets_utils.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/analytics_message.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/constants.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/datetime_format_inferrer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/event_timing.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/is_cloud_environment.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/mapping_helpers.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/message_utils.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/oneof_option_config.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/print_buffer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/schema_inferrer.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/slice_hasher.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/spec_schema_transformations.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/stream_status_utils.py +0 -0
- {airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/utils/traced_exception.py +0 -0
@@ -30,7 +30,7 @@ class SelectiveAuthenticator(DeclarativeAuthenticator):
|
|
30
30
|
try:
|
31
31
|
selected_key = str(
|
32
32
|
dpath.get(
|
33
|
-
config, # type: ignore
|
33
|
+
config, # type: ignore[arg-type] # Dpath wants mutable mapping but doesn't need it.
|
34
34
|
authenticator_selection_path,
|
35
35
|
)
|
36
36
|
)
|
@@ -1218,6 +1218,7 @@ definitions:
|
|
1218
1218
|
title: Schema Loader
|
1219
1219
|
description: Component used to retrieve the schema for the current stream.
|
1220
1220
|
anyOf:
|
1221
|
+
- "$ref": "#/definitions/DynamicSchemaLoader"
|
1221
1222
|
- "$ref": "#/definitions/InlineSchemaLoader"
|
1222
1223
|
- "$ref": "#/definitions/JsonFileSchemaLoader"
|
1223
1224
|
- "$ref": "#/definitions/CustomSchemaLoader"
|
@@ -1684,6 +1685,92 @@ definitions:
|
|
1684
1685
|
$parameters:
|
1685
1686
|
type: object
|
1686
1687
|
additionalProperties: true
|
1688
|
+
TypesMap:
|
1689
|
+
title: Types Map
|
1690
|
+
description: (This component is experimental. Use at your own risk.) Represents a mapping between a current type and its corresponding target type.
|
1691
|
+
type: object
|
1692
|
+
required:
|
1693
|
+
- target_type
|
1694
|
+
- current_type
|
1695
|
+
properties:
|
1696
|
+
target_type:
|
1697
|
+
anyOf:
|
1698
|
+
- type: string
|
1699
|
+
- type: array
|
1700
|
+
items:
|
1701
|
+
type: string
|
1702
|
+
current_type:
|
1703
|
+
anyOf:
|
1704
|
+
- type: string
|
1705
|
+
- type: array
|
1706
|
+
items:
|
1707
|
+
type: string
|
1708
|
+
SchemaTypeIdentifier:
|
1709
|
+
title: Schema Type Identifier
|
1710
|
+
description: (This component is experimental. Use at your own risk.) Identifies schema details for dynamic schema extraction and processing.
|
1711
|
+
type: object
|
1712
|
+
required:
|
1713
|
+
- key_pointer
|
1714
|
+
properties:
|
1715
|
+
type:
|
1716
|
+
type: string
|
1717
|
+
enum: [SchemaTypeIdentifier]
|
1718
|
+
schema_pointer:
|
1719
|
+
title: Schema Path
|
1720
|
+
description: List of nested fields defining the schema field path to extract. Defaults to [].
|
1721
|
+
type: array
|
1722
|
+
default: []
|
1723
|
+
items:
|
1724
|
+
- type: string
|
1725
|
+
interpolation_context:
|
1726
|
+
- config
|
1727
|
+
key_pointer:
|
1728
|
+
title: Key Path
|
1729
|
+
description: List of potentially nested fields describing the full path of the field key to extract.
|
1730
|
+
type: array
|
1731
|
+
items:
|
1732
|
+
- type: string
|
1733
|
+
interpolation_context:
|
1734
|
+
- config
|
1735
|
+
type_pointer:
|
1736
|
+
title: Type Path
|
1737
|
+
description: List of potentially nested fields describing the full path of the field type to extract.
|
1738
|
+
type: array
|
1739
|
+
items:
|
1740
|
+
- type: string
|
1741
|
+
interpolation_context:
|
1742
|
+
- config
|
1743
|
+
types_mapping:
|
1744
|
+
type: array
|
1745
|
+
items:
|
1746
|
+
- "$ref": "#/definitions/TypesMap"
|
1747
|
+
$parameters:
|
1748
|
+
type: object
|
1749
|
+
additionalProperties: true
|
1750
|
+
DynamicSchemaLoader:
|
1751
|
+
title: Dynamic Schema Loader
|
1752
|
+
description: (This component is experimental. Use at your own risk.) Loads a schema by extracting data from retrieved records.
|
1753
|
+
type: object
|
1754
|
+
required:
|
1755
|
+
- type
|
1756
|
+
- retriever
|
1757
|
+
- schema_type_identifier
|
1758
|
+
properties:
|
1759
|
+
type:
|
1760
|
+
type: string
|
1761
|
+
enum: [DynamicSchemaLoader]
|
1762
|
+
retriever:
|
1763
|
+
title: Retriever
|
1764
|
+
description: Component used to coordinate how records are extracted across stream slices and request pages.
|
1765
|
+
anyOf:
|
1766
|
+
- "$ref": "#/definitions/AsyncRetriever"
|
1767
|
+
- "$ref": "#/definitions/CustomRetriever"
|
1768
|
+
- "$ref": "#/definitions/SimpleRetriever"
|
1769
|
+
schema_type_identifier:
|
1770
|
+
"$ref": "#/definitions/SchemaTypeIdentifier"
|
1771
|
+
$parameters:
|
1772
|
+
type: object
|
1773
|
+
additionalProperties: true
|
1687
1774
|
InlineSchemaLoader:
|
1688
1775
|
title: Inline Schema Loader
|
1689
1776
|
description: Loads a schema that is defined directly in the manifest file.
|
@@ -2928,8 +3015,10 @@ definitions:
|
|
2928
3015
|
examples:
|
2929
3016
|
- ["data"]
|
2930
3017
|
- ["data", "records"]
|
2931
|
-
- ["data", "
|
3018
|
+
- ["data", 1, "name"]
|
3019
|
+
- ["data", "{{ components_values.name }}"]
|
2932
3020
|
- ["data", "*", "record"]
|
3021
|
+
- ["*", "**", "name"]
|
2933
3022
|
value:
|
2934
3023
|
title: Value
|
2935
3024
|
description: The dynamic or static value to assign to the key. Interpolated values can be used to dynamically determine the value during runtime.
|
@@ -2974,6 +3063,52 @@ definitions:
|
|
2974
3063
|
- type
|
2975
3064
|
- retriever
|
2976
3065
|
- components_mapping
|
3066
|
+
StreamConfig:
|
3067
|
+
title: Stream Config
|
3068
|
+
description: (This component is experimental. Use at your own risk.) Describes how to get streams config from the source config.
|
3069
|
+
type: object
|
3070
|
+
required:
|
3071
|
+
- type
|
3072
|
+
- configs_pointer
|
3073
|
+
properties:
|
3074
|
+
type:
|
3075
|
+
type: string
|
3076
|
+
enum: [StreamConfig]
|
3077
|
+
configs_pointer:
|
3078
|
+
title: Configs Pointer
|
3079
|
+
description: A list of potentially nested fields indicating the full path in source config file where streams configs located.
|
3080
|
+
type: array
|
3081
|
+
items:
|
3082
|
+
- type: string
|
3083
|
+
interpolation_context:
|
3084
|
+
- parameters
|
3085
|
+
examples:
|
3086
|
+
- ["data"]
|
3087
|
+
- ["data", "streams"]
|
3088
|
+
- ["data", "{{ parameters.name }}"]
|
3089
|
+
$parameters:
|
3090
|
+
type: object
|
3091
|
+
additionalProperties: true
|
3092
|
+
ConfigComponentsResolver:
|
3093
|
+
type: object
|
3094
|
+
description: (This component is experimental. Use at your own risk.) Resolves and populates stream templates with components fetched from the source config.
|
3095
|
+
properties:
|
3096
|
+
type:
|
3097
|
+
type: string
|
3098
|
+
enum: [ConfigComponentsResolver]
|
3099
|
+
stream_config:
|
3100
|
+
"$ref": "#/definitions/StreamConfig"
|
3101
|
+
components_mapping:
|
3102
|
+
type: array
|
3103
|
+
items:
|
3104
|
+
"$ref": "#/definitions/ComponentMappingDefinition"
|
3105
|
+
$parameters:
|
3106
|
+
type: object
|
3107
|
+
additionalProperties: true
|
3108
|
+
required:
|
3109
|
+
- type
|
3110
|
+
- stream_config
|
3111
|
+
- components_mapping
|
2977
3112
|
DynamicDeclarativeStream:
|
2978
3113
|
type: object
|
2979
3114
|
description: (This component is experimental. Use at your own risk.) A component that described how will be created declarative streams based on stream template.
|
@@ -2988,7 +3123,9 @@ definitions:
|
|
2988
3123
|
components_resolver:
|
2989
3124
|
title: Components Resolver
|
2990
3125
|
description: Component resolve and populates stream templates with components values.
|
2991
|
-
|
3126
|
+
anyOf:
|
3127
|
+
- "$ref": "#/definitions/HttpComponentsResolver"
|
3128
|
+
- "$ref": "#/definitions/ConfigComponentsResolver"
|
2992
3129
|
required:
|
2993
3130
|
- type
|
2994
3131
|
- stream_template
|
@@ -7,7 +7,7 @@ import logging
|
|
7
7
|
import pkgutil
|
8
8
|
from copy import deepcopy
|
9
9
|
from importlib import metadata
|
10
|
-
from typing import Any, Dict, Iterator, List, Mapping, Optional
|
10
|
+
from typing import Any, Dict, Iterator, List, Mapping, Optional, Set
|
11
11
|
|
12
12
|
import yaml
|
13
13
|
from jsonschema.exceptions import ValidationError
|
@@ -20,6 +20,7 @@ from airbyte_cdk.models import (
|
|
20
20
|
AirbyteStateMessage,
|
21
21
|
ConfiguredAirbyteCatalog,
|
22
22
|
ConnectorSpecification,
|
23
|
+
FailureType,
|
23
24
|
)
|
24
25
|
from airbyte_cdk.sources.declarative.checks.connection_checker import ConnectionChecker
|
25
26
|
from airbyte_cdk.sources.declarative.declarative_source import DeclarativeSource
|
@@ -48,6 +49,7 @@ from airbyte_cdk.sources.utils.slice_logger import (
|
|
48
49
|
DebugSliceLogger,
|
49
50
|
SliceLogger,
|
50
51
|
)
|
52
|
+
from airbyte_cdk.utils.traced_exception import AirbyteTracedException
|
51
53
|
|
52
54
|
|
53
55
|
class ManifestDeclarativeSource(DeclarativeSource):
|
@@ -313,6 +315,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
313
315
|
) -> List[Dict[str, Any]]:
|
314
316
|
dynamic_stream_definitions: List[Dict[str, Any]] = manifest.get("dynamic_streams", [])
|
315
317
|
dynamic_stream_configs: List[Dict[str, Any]] = []
|
318
|
+
seen_dynamic_streams: Set[str] = set()
|
316
319
|
|
317
320
|
for dynamic_definition in dynamic_stream_definitions:
|
318
321
|
components_resolver_config = dynamic_definition["components_resolver"]
|
@@ -350,6 +353,24 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
350
353
|
if "type" not in dynamic_stream:
|
351
354
|
dynamic_stream["type"] = "DeclarativeStream"
|
352
355
|
|
356
|
+
# Ensure that each stream is created with a unique name
|
357
|
+
name = dynamic_stream.get("name")
|
358
|
+
|
359
|
+
if name in seen_dynamic_streams:
|
360
|
+
error_message = f"Dynamic streams list contains a duplicate name: {name}. Please contact Airbyte Support."
|
361
|
+
failure_type = FailureType.system_error
|
362
|
+
|
363
|
+
if resolver_type == "ConfigComponentsResolver":
|
364
|
+
error_message = f"Dynamic streams list contains a duplicate name: {name}. Please check your configuration."
|
365
|
+
failure_type = FailureType.config_error
|
366
|
+
|
367
|
+
raise AirbyteTracedException(
|
368
|
+
message=error_message,
|
369
|
+
internal_message=error_message,
|
370
|
+
failure_type=failure_type,
|
371
|
+
)
|
372
|
+
|
373
|
+
seen_dynamic_streams.add(name)
|
353
374
|
dynamic_stream_configs.append(dynamic_stream)
|
354
375
|
|
355
376
|
return dynamic_stream_configs
|
@@ -650,6 +650,32 @@ class HttpResponseFilter(BaseModel):
|
|
650
650
|
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
651
651
|
|
652
652
|
|
653
|
+
class TypesMap(BaseModel):
|
654
|
+
target_type: Union[str, List[str]]
|
655
|
+
current_type: Union[str, List[str]]
|
656
|
+
|
657
|
+
|
658
|
+
class SchemaTypeIdentifier(BaseModel):
|
659
|
+
type: Optional[Literal["SchemaTypeIdentifier"]] = None
|
660
|
+
schema_pointer: Optional[List[str]] = Field(
|
661
|
+
[],
|
662
|
+
description="List of nested fields defining the schema field path to extract. Defaults to [].",
|
663
|
+
title="Schema Path",
|
664
|
+
)
|
665
|
+
key_pointer: List[str] = Field(
|
666
|
+
...,
|
667
|
+
description="List of potentially nested fields describing the full path of the field key to extract.",
|
668
|
+
title="Key Path",
|
669
|
+
)
|
670
|
+
type_pointer: Optional[List[str]] = Field(
|
671
|
+
None,
|
672
|
+
description="List of potentially nested fields describing the full path of the field type to extract.",
|
673
|
+
title="Type Path",
|
674
|
+
)
|
675
|
+
types_mapping: Optional[List[TypesMap]] = None
|
676
|
+
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
677
|
+
|
678
|
+
|
653
679
|
class InlineSchemaLoader(BaseModel):
|
654
680
|
type: Literal["InlineSchemaLoader"]
|
655
681
|
schema_: Optional[Dict[str, Any]] = Field(
|
@@ -822,13 +848,13 @@ class OauthConnectorInputSpecification(BaseModel):
|
|
822
848
|
)
|
823
849
|
extract_output: List[str] = Field(
|
824
850
|
...,
|
825
|
-
description="The DeclarativeOAuth Specific list of strings to indicate which keys should be extracted and returned back to the input config.
|
851
|
+
description="The DeclarativeOAuth Specific list of strings to indicate which keys should be extracted and returned back to the input config.",
|
826
852
|
examples=[{"extract_output": ["access_token", "refresh_token", "other_field"]}],
|
827
853
|
title="DeclarativeOAuth Extract Output",
|
828
854
|
)
|
829
855
|
state: Optional[State] = Field(
|
830
856
|
None,
|
831
|
-
description="The DeclarativeOAuth Specific object to provide the criteria of how the `state` query param should be constructed,\nincluding length and complexity.
|
857
|
+
description="The DeclarativeOAuth Specific object to provide the criteria of how the `state` query param should be constructed,\nincluding length and complexity.",
|
832
858
|
examples=[{"state": {"min": 7, "max": 128}}],
|
833
859
|
title="(Optional) DeclarativeOAuth Configurable State Query Param",
|
834
860
|
)
|
@@ -852,13 +878,13 @@ class OauthConnectorInputSpecification(BaseModel):
|
|
852
878
|
)
|
853
879
|
state_key: Optional[str] = Field(
|
854
880
|
None,
|
855
|
-
description="The DeclarativeOAuth Specific optional override to provide the custom `state` key name, if required by data-provider.
|
881
|
+
description="The DeclarativeOAuth Specific optional override to provide the custom `state` key name, if required by data-provider.",
|
856
882
|
examples=[{"state_key": "my_custom_state_key_key_name"}],
|
857
883
|
title="(Optional) DeclarativeOAuth State Key Override",
|
858
884
|
)
|
859
885
|
auth_code_key: Optional[str] = Field(
|
860
886
|
None,
|
861
|
-
description="The DeclarativeOAuth Specific optional override to provide the custom `code` key name to something like `auth_code` or `custom_auth_code`, if required by data-provider.
|
887
|
+
description="The DeclarativeOAuth Specific optional override to provide the custom `code` key name to something like `auth_code` or `custom_auth_code`, if required by data-provider.",
|
862
888
|
examples=[{"auth_code_key": "my_custom_auth_code_key_name"}],
|
863
889
|
title="(Optional) DeclarativeOAuth Auth Code Key Override",
|
864
890
|
)
|
@@ -1166,8 +1192,10 @@ class ComponentMappingDefinition(BaseModel):
|
|
1166
1192
|
examples=[
|
1167
1193
|
["data"],
|
1168
1194
|
["data", "records"],
|
1169
|
-
["data", "
|
1195
|
+
["data", 1, "name"],
|
1196
|
+
["data", "{{ components_values.name }}"],
|
1170
1197
|
["data", "*", "record"],
|
1198
|
+
["*", "**", "name"],
|
1171
1199
|
],
|
1172
1200
|
title="Field Path",
|
1173
1201
|
)
|
@@ -1189,6 +1217,24 @@ class ComponentMappingDefinition(BaseModel):
|
|
1189
1217
|
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
1190
1218
|
|
1191
1219
|
|
1220
|
+
class StreamConfig(BaseModel):
|
1221
|
+
type: Literal["StreamConfig"]
|
1222
|
+
configs_pointer: List[str] = Field(
|
1223
|
+
...,
|
1224
|
+
description="A list of potentially nested fields indicating the full path in source config file where streams configs located.",
|
1225
|
+
examples=[["data"], ["data", "streams"], ["data", "{{ parameters.name }}"]],
|
1226
|
+
title="Configs Pointer",
|
1227
|
+
)
|
1228
|
+
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
1229
|
+
|
1230
|
+
|
1231
|
+
class ConfigComponentsResolver(BaseModel):
|
1232
|
+
type: Literal["ConfigComponentsResolver"]
|
1233
|
+
stream_config: StreamConfig
|
1234
|
+
components_mapping: List[ComponentMappingDefinition]
|
1235
|
+
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
1236
|
+
|
1237
|
+
|
1192
1238
|
class AddedFieldDefinition(BaseModel):
|
1193
1239
|
type: Literal["AddedFieldDefinition"]
|
1194
1240
|
path: List[str] = Field(
|
@@ -1609,12 +1655,17 @@ class DeclarativeStream(BaseModel):
|
|
1609
1655
|
primary_key: Optional[PrimaryKey] = Field(
|
1610
1656
|
"", description="The primary key of the stream.", title="Primary Key"
|
1611
1657
|
)
|
1612
|
-
schema_loader: Optional[
|
1613
|
-
|
1614
|
-
|
1615
|
-
|
1616
|
-
|
1617
|
-
|
1658
|
+
schema_loader: Optional[
|
1659
|
+
Union[
|
1660
|
+
DynamicSchemaLoader,
|
1661
|
+
InlineSchemaLoader,
|
1662
|
+
JsonFileSchemaLoader,
|
1663
|
+
CustomSchemaLoader,
|
1664
|
+
]
|
1665
|
+
] = Field(
|
1666
|
+
None,
|
1667
|
+
description="Component used to retrieve the schema for the current stream.",
|
1668
|
+
title="Schema Loader",
|
1618
1669
|
)
|
1619
1670
|
transformations: Optional[
|
1620
1671
|
List[Union[AddFields, CustomTransformation, RemoveFields, KeysToLower]]
|
@@ -1774,6 +1825,17 @@ class HttpRequester(BaseModel):
|
|
1774
1825
|
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
1775
1826
|
|
1776
1827
|
|
1828
|
+
class DynamicSchemaLoader(BaseModel):
|
1829
|
+
type: Literal["DynamicSchemaLoader"]
|
1830
|
+
retriever: Union[AsyncRetriever, CustomRetriever, SimpleRetriever] = Field(
|
1831
|
+
...,
|
1832
|
+
description="Component used to coordinate how records are extracted across stream slices and request pages.",
|
1833
|
+
title="Retriever",
|
1834
|
+
)
|
1835
|
+
schema_type_identifier: SchemaTypeIdentifier
|
1836
|
+
parameters: Optional[Dict[str, Any]] = Field(None, alias="$parameters")
|
1837
|
+
|
1838
|
+
|
1777
1839
|
class ParentStreamConfig(BaseModel):
|
1778
1840
|
type: Literal["ParentStreamConfig"]
|
1779
1841
|
parent_key: str = Field(
|
@@ -1968,7 +2030,7 @@ class DynamicDeclarativeStream(BaseModel):
|
|
1968
2030
|
stream_template: DeclarativeStream = Field(
|
1969
2031
|
..., description="Reference to the stream template.", title="Stream Template"
|
1970
2032
|
)
|
1971
|
-
components_resolver: HttpComponentsResolver = Field(
|
2033
|
+
components_resolver: Union[HttpComponentsResolver, ConfigComponentsResolver] = Field(
|
1972
2034
|
...,
|
1973
2035
|
description="Component resolve and populates stream templates with components values.",
|
1974
2036
|
title="Components Resolver",
|
@@ -1981,5 +2043,6 @@ DeclarativeSource2.update_forward_refs()
|
|
1981
2043
|
SelectiveAuthenticator.update_forward_refs()
|
1982
2044
|
DeclarativeStream.update_forward_refs()
|
1983
2045
|
SessionTokenAuthenticator.update_forward_refs()
|
2046
|
+
DynamicSchemaLoader.update_forward_refs()
|
1984
2047
|
SimpleRetriever.update_forward_refs()
|
1985
2048
|
AsyncRetriever.update_forward_refs()
|
@@ -33,10 +33,13 @@ DEFAULT_MODEL_TYPES: Mapping[str, str] = {
|
|
33
33
|
"DeclarativeStream.schema_loader": "JsonFileSchemaLoader",
|
34
34
|
# DynamicDeclarativeStream
|
35
35
|
"DynamicDeclarativeStream.stream_template": "DeclarativeStream",
|
36
|
-
"DynamicDeclarativeStream.components_resolver": "
|
36
|
+
"DynamicDeclarativeStream.components_resolver": "ConfigComponentResolver",
|
37
37
|
# HttpComponentsResolver
|
38
38
|
"HttpComponentsResolver.retriever": "SimpleRetriever",
|
39
39
|
"HttpComponentsResolver.components_mapping": "ComponentMappingDefinition",
|
40
|
+
# ConfigComponentResolver
|
41
|
+
"ConfigComponentsResolver.stream_config": "StreamConfig",
|
42
|
+
"ConfigComponentsResolver.components_mapping": "ComponentMappingDefinition",
|
40
43
|
# DefaultErrorHandler
|
41
44
|
"DefaultErrorHandler.response_filters": "HttpResponseFilter",
|
42
45
|
# DefaultPaginator
|
@@ -64,6 +67,10 @@ DEFAULT_MODEL_TYPES: Mapping[str, str] = {
|
|
64
67
|
"AddFields.fields": "AddedFieldDefinition",
|
65
68
|
# CustomPartitionRouter
|
66
69
|
"CustomPartitionRouter.parent_stream_configs": "ParentStreamConfig",
|
70
|
+
# DynamicSchemaLoader
|
71
|
+
"DynamicSchemaLoader.retriever": "SimpleRetriever",
|
72
|
+
# SchemaTypeIdentifier
|
73
|
+
"SchemaTypeIdentifier.types_map": "TypesMap",
|
67
74
|
}
|
68
75
|
|
69
76
|
# We retain a separate registry for custom components to automatically insert the type if it is missing. This is intended to
|
@@ -128,6 +128,9 @@ from airbyte_cdk.sources.declarative.models.declarative_component_schema import
|
|
128
128
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
129
129
|
ConcurrencyLevel as ConcurrencyLevelModel,
|
130
130
|
)
|
131
|
+
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
132
|
+
ConfigComponentsResolver as ConfigComponentsResolverModel,
|
133
|
+
)
|
131
134
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
132
135
|
ConstantBackoffStrategy as ConstantBackoffStrategyModel,
|
133
136
|
)
|
@@ -188,6 +191,9 @@ from airbyte_cdk.sources.declarative.models.declarative_component_schema import
|
|
188
191
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
189
192
|
DpathExtractor as DpathExtractorModel,
|
190
193
|
)
|
194
|
+
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
195
|
+
DynamicSchemaLoader as DynamicSchemaLoaderModel,
|
196
|
+
)
|
191
197
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
192
198
|
ExponentialBackoffStrategy as ExponentialBackoffStrategyModel,
|
193
199
|
)
|
@@ -278,6 +284,9 @@ from airbyte_cdk.sources.declarative.models.declarative_component_schema import
|
|
278
284
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
279
285
|
ResponseToFileExtractor as ResponseToFileExtractorModel,
|
280
286
|
)
|
287
|
+
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
288
|
+
SchemaTypeIdentifier as SchemaTypeIdentifierModel,
|
289
|
+
)
|
281
290
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
282
291
|
SelectiveAuthenticator as SelectiveAuthenticatorModel,
|
283
292
|
)
|
@@ -288,9 +297,15 @@ from airbyte_cdk.sources.declarative.models.declarative_component_schema import
|
|
288
297
|
SimpleRetriever as SimpleRetrieverModel,
|
289
298
|
)
|
290
299
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import Spec as SpecModel
|
300
|
+
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
301
|
+
StreamConfig as StreamConfigModel,
|
302
|
+
)
|
291
303
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
292
304
|
SubstreamPartitionRouter as SubstreamPartitionRouterModel,
|
293
305
|
)
|
306
|
+
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
307
|
+
TypesMap as TypesMapModel,
|
308
|
+
)
|
294
309
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import ValueType
|
295
310
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import (
|
296
311
|
WaitTimeFromHeader as WaitTimeFromHeaderModel,
|
@@ -347,7 +362,9 @@ from airbyte_cdk.sources.declarative.requesters.request_path import RequestPath
|
|
347
362
|
from airbyte_cdk.sources.declarative.requesters.requester import HttpMethod
|
348
363
|
from airbyte_cdk.sources.declarative.resolvers import (
|
349
364
|
ComponentMappingDefinition,
|
365
|
+
ConfigComponentsResolver,
|
350
366
|
HttpComponentsResolver,
|
367
|
+
StreamConfig,
|
351
368
|
)
|
352
369
|
from airbyte_cdk.sources.declarative.retrievers import (
|
353
370
|
AsyncRetriever,
|
@@ -356,8 +373,11 @@ from airbyte_cdk.sources.declarative.retrievers import (
|
|
356
373
|
)
|
357
374
|
from airbyte_cdk.sources.declarative.schema import (
|
358
375
|
DefaultSchemaLoader,
|
376
|
+
DynamicSchemaLoader,
|
359
377
|
InlineSchemaLoader,
|
360
378
|
JsonFileSchemaLoader,
|
379
|
+
SchemaTypeIdentifier,
|
380
|
+
TypesMap,
|
361
381
|
)
|
362
382
|
from airbyte_cdk.sources.declarative.spec import Spec
|
363
383
|
from airbyte_cdk.sources.declarative.stream_slicers import StreamSlicer
|
@@ -455,6 +475,9 @@ class ModelToComponentFactory:
|
|
455
475
|
IterableDecoderModel: self.create_iterable_decoder,
|
456
476
|
XmlDecoderModel: self.create_xml_decoder,
|
457
477
|
JsonFileSchemaLoaderModel: self.create_json_file_schema_loader,
|
478
|
+
DynamicSchemaLoaderModel: self.create_dynamic_schema_loader,
|
479
|
+
SchemaTypeIdentifierModel: self.create_schema_type_identifier,
|
480
|
+
TypesMapModel: self.create_types_map,
|
458
481
|
JwtAuthenticatorModel: self.create_jwt_authenticator,
|
459
482
|
LegacyToPerPartitionStateMigrationModel: self.create_legacy_to_per_partition_state_migration,
|
460
483
|
ListPartitionRouterModel: self.create_list_partition_router,
|
@@ -479,6 +502,8 @@ class ModelToComponentFactory:
|
|
479
502
|
WaitUntilTimeFromHeaderModel: self.create_wait_until_time_from_header,
|
480
503
|
AsyncRetrieverModel: self.create_async_retriever,
|
481
504
|
HttpComponentsResolverModel: self.create_http_components_resolver,
|
505
|
+
ConfigComponentsResolverModel: self.create_config_components_resolver,
|
506
|
+
StreamConfigModel: self.create_stream_config,
|
482
507
|
ComponentMappingDefinitionModel: self.create_components_mapping_definition,
|
483
508
|
}
|
484
509
|
|
@@ -1574,6 +1599,63 @@ class ModelToComponentFactory:
|
|
1574
1599
|
) -> InlineSchemaLoader:
|
1575
1600
|
return InlineSchemaLoader(schema=model.schema_ or {}, parameters={})
|
1576
1601
|
|
1602
|
+
@staticmethod
|
1603
|
+
def create_types_map(model: TypesMapModel, **kwargs: Any) -> TypesMap:
|
1604
|
+
return TypesMap(target_type=model.target_type, current_type=model.current_type)
|
1605
|
+
|
1606
|
+
def create_schema_type_identifier(
|
1607
|
+
self, model: SchemaTypeIdentifierModel, config: Config, **kwargs: Any
|
1608
|
+
) -> SchemaTypeIdentifier:
|
1609
|
+
types_mapping = []
|
1610
|
+
if model.types_mapping:
|
1611
|
+
types_mapping.extend(
|
1612
|
+
[
|
1613
|
+
self._create_component_from_model(types_map, config=config)
|
1614
|
+
for types_map in model.types_mapping
|
1615
|
+
]
|
1616
|
+
)
|
1617
|
+
model_schema_pointer: List[Union[InterpolatedString, str]] = (
|
1618
|
+
[x for x in model.schema_pointer] if model.schema_pointer else []
|
1619
|
+
)
|
1620
|
+
model_key_pointer: List[Union[InterpolatedString, str]] = [x for x in model.key_pointer]
|
1621
|
+
model_type_pointer: Optional[List[Union[InterpolatedString, str]]] = (
|
1622
|
+
[x for x in model.type_pointer] if model.type_pointer else None
|
1623
|
+
)
|
1624
|
+
|
1625
|
+
return SchemaTypeIdentifier(
|
1626
|
+
schema_pointer=model_schema_pointer,
|
1627
|
+
key_pointer=model_key_pointer,
|
1628
|
+
type_pointer=model_type_pointer,
|
1629
|
+
types_mapping=types_mapping,
|
1630
|
+
parameters=model.parameters or {},
|
1631
|
+
)
|
1632
|
+
|
1633
|
+
def create_dynamic_schema_loader(
|
1634
|
+
self, model: DynamicSchemaLoaderModel, config: Config, **kwargs: Any
|
1635
|
+
) -> DynamicSchemaLoader:
|
1636
|
+
stream_slicer = self._build_stream_slicer_from_partition_router(model.retriever, config)
|
1637
|
+
combined_slicers = self._build_resumable_cursor_from_paginator(
|
1638
|
+
model.retriever, stream_slicer
|
1639
|
+
)
|
1640
|
+
|
1641
|
+
retriever = self._create_component_from_model(
|
1642
|
+
model=model.retriever,
|
1643
|
+
config=config,
|
1644
|
+
name="",
|
1645
|
+
primary_key=None,
|
1646
|
+
stream_slicer=combined_slicers,
|
1647
|
+
transformations=[],
|
1648
|
+
)
|
1649
|
+
schema_type_identifier = self._create_component_from_model(
|
1650
|
+
model.schema_type_identifier, config=config, parameters=model.parameters or {}
|
1651
|
+
)
|
1652
|
+
return DynamicSchemaLoader(
|
1653
|
+
retriever=retriever,
|
1654
|
+
config=config,
|
1655
|
+
schema_type_identifier=schema_type_identifier,
|
1656
|
+
parameters=model.parameters or {},
|
1657
|
+
)
|
1658
|
+
|
1577
1659
|
@staticmethod
|
1578
1660
|
def create_json_decoder(model: JsonDecoderModel, config: Config, **kwargs: Any) -> JsonDecoder:
|
1579
1661
|
return JsonDecoder(parameters={})
|
@@ -1812,8 +1894,8 @@ class ModelToComponentFactory:
|
|
1812
1894
|
self,
|
1813
1895
|
model: RecordSelectorModel,
|
1814
1896
|
config: Config,
|
1815
|
-
name: str,
|
1816
1897
|
*,
|
1898
|
+
name: str,
|
1817
1899
|
transformations: List[RecordTransformation],
|
1818
1900
|
decoder: Optional[Decoder] = None,
|
1819
1901
|
client_side_incremental_sync: Optional[Dict[str, Any]] = None,
|
@@ -2292,3 +2374,41 @@ class ModelToComponentFactory:
|
|
2292
2374
|
components_mapping=components_mapping,
|
2293
2375
|
parameters=model.parameters or {},
|
2294
2376
|
)
|
2377
|
+
|
2378
|
+
@staticmethod
|
2379
|
+
def create_stream_config(
|
2380
|
+
model: StreamConfigModel, config: Config, **kwargs: Any
|
2381
|
+
) -> StreamConfig:
|
2382
|
+
model_configs_pointer: List[Union[InterpolatedString, str]] = (
|
2383
|
+
[x for x in model.configs_pointer] if model.configs_pointer else []
|
2384
|
+
)
|
2385
|
+
|
2386
|
+
return StreamConfig(
|
2387
|
+
configs_pointer=model_configs_pointer,
|
2388
|
+
parameters=model.parameters or {},
|
2389
|
+
)
|
2390
|
+
|
2391
|
+
def create_config_components_resolver(
|
2392
|
+
self, model: ConfigComponentsResolverModel, config: Config
|
2393
|
+
) -> Any:
|
2394
|
+
stream_config = self._create_component_from_model(
|
2395
|
+
model.stream_config, config=config, parameters=model.parameters or {}
|
2396
|
+
)
|
2397
|
+
|
2398
|
+
components_mapping = [
|
2399
|
+
self._create_component_from_model(
|
2400
|
+
model=components_mapping_definition_model,
|
2401
|
+
value_type=ModelToComponentFactory._json_schema_type_name_to_type(
|
2402
|
+
components_mapping_definition_model.value_type
|
2403
|
+
),
|
2404
|
+
config=config,
|
2405
|
+
)
|
2406
|
+
for components_mapping_definition_model in model.components_mapping
|
2407
|
+
]
|
2408
|
+
|
2409
|
+
return ConfigComponentsResolver(
|
2410
|
+
stream_config=stream_config,
|
2411
|
+
config=config,
|
2412
|
+
components_mapping=components_mapping,
|
2413
|
+
parameters=model.parameters or {},
|
2414
|
+
)
|
{airbyte_cdk-6.9.3rc1 → airbyte_cdk-6.11.0}/airbyte_cdk/sources/declarative/resolvers/__init__.py
RENAMED
@@ -4,10 +4,15 @@
|
|
4
4
|
|
5
5
|
from airbyte_cdk.sources.declarative.resolvers.components_resolver import ComponentsResolver, ComponentMappingDefinition, ResolvedComponentMappingDefinition
|
6
6
|
from airbyte_cdk.sources.declarative.resolvers.http_components_resolver import HttpComponentsResolver
|
7
|
+
from airbyte_cdk.sources.declarative.resolvers.config_components_resolver import ConfigComponentsResolver, StreamConfig
|
7
8
|
from airbyte_cdk.sources.declarative.models import HttpComponentsResolver as HttpComponentsResolverModel
|
9
|
+
from airbyte_cdk.sources.declarative.models import ConfigComponentsResolver as ConfigComponentsResolverModel
|
10
|
+
from pydantic.v1 import BaseModel
|
11
|
+
from typing import Mapping
|
8
12
|
|
9
|
-
COMPONENTS_RESOLVER_TYPE_MAPPING = {
|
10
|
-
"HttpComponentsResolver": HttpComponentsResolverModel
|
13
|
+
COMPONENTS_RESOLVER_TYPE_MAPPING: Mapping[str, type[BaseModel]] = {
|
14
|
+
"HttpComponentsResolver": HttpComponentsResolverModel,
|
15
|
+
"ConfigComponentsResolver": ConfigComponentsResolverModel
|
11
16
|
}
|
12
17
|
|
13
|
-
__all__ = ["ComponentsResolver", "HttpComponentsResolver", "ComponentMappingDefinition", "ResolvedComponentMappingDefinition", "COMPONENTS_RESOLVER_TYPE_MAPPING"]
|
18
|
+
__all__ = ["ComponentsResolver", "HttpComponentsResolver", "ComponentMappingDefinition", "ResolvedComponentMappingDefinition", "StreamConfig", "ConfigComponentsResolver", "COMPONENTS_RESOLVER_TYPE_MAPPING"]
|