airbyte-cdk 6.49.1__tar.gz → 6.51.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.49.1 → airbyte_cdk-6.51.0}/PKG-INFO +1 -1
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/source_declarative_manifest/_run.py +9 -1
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/concurrent_declarative_source.py +2 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/declarative_component_schema.yaml +6 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/manifest_declarative_source.py +45 -12
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/models/declarative_component_schema.py +5 -2
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +9 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py +19 -4
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/spec/spec.py +5 -32
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/yaml_declarative_source.py +2 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/pyproject.toml +2 -2
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/LICENSE.txt +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/LICENSE_SHORT +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/_connector.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/_image.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/_manifest.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/_secrets.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/_version.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/airbyte_cdk/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/source_declarative_manifest/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/source_declarative_manifest/spec.json +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/config_observation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/connector_builder_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/main.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/models.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/helpers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/message_grouper.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/reader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/destination.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/config.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/document_processor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/embedder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/indexer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/test_utils.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/utils.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/writer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/entrypoint.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/exception_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/logger.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/manifest_migration.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migration_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/http_requester_path_to_url.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/http_requester_request_body_json_data_to_request_body.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/http_requester_url_base_to_url.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/registry.yaml +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations_registry.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/models/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/models/airbyte_protocol.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/models/airbyte_protocol_serializers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/models/connector_metadata.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/models/well_known_types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/py.typed +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/abstract_source.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/concurrent_read_processor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/concurrent_source.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/concurrent_source_adapter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/partition_generation_completed_sentinel.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/stream_thread_exception.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/thread_pool_manager.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/config.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/connector_state_manager.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/job.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/job_orchestrator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/job_tracker.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/repository.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/status.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/timer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/declarative_authenticator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/jwt.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/oauth.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/selective_authenticator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/token.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/auth/token_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/checks/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/checks/check_dynamic_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/checks/check_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/checks/connection_checker.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/concurrency_level/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/concurrency_level/concurrency_level.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/datetime/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/datetime/datetime_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/datetime/min_max_datetime.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/declarative_source.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/declarative_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/decoder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/decoder_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/json_decoder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/noop_decoder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/pagination_decoder_decorator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/xml_decoder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/decoders/zipfile_decoder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/dpath_extractor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/http_selector.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/record_extractor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/record_filter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/record_selector.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/extractors/type_transformer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/concurrent_partition_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/datetime_based_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/declarative_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/global_substream_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/per_partition_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/per_partition_with_global.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/incremental/resumable_full_refresh_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/filters.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_boolean.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_mapping.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/interpolated_string.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/interpolation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/jinja.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/interpolation/macros.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/migrations/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/migrations/state_migration.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/models/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/models/base_model_with_deprecations.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/custom_exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/manifest_normalizer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/grouping_partition_router.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/list_partition_router.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/partition_router.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/single_partition_router.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/constant_backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/exponential_backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/header_helper.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_time_from_header_backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_until_time_from_header_backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/composite_error_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_error_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_http_response_filter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/error_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/error_handlers/http_response_filter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/http_job_repository.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/http_requester.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/paginator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/page_increment.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/pagination_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/stop_condition.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/properties_from_endpoint.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/property_chunking.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/query_properties.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/strategies/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/strategies/group_by_key.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/query_properties/strategies/merge_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_option.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/datetime_based_request_options_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/default_request_options_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_nested_request_input_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_input_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_options/request_options_provider.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/request_path.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/requesters/requester.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/resolvers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/resolvers/components_resolver.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/async_retriever.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/connector_builder_file_uploader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/default_file_uploader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/file_uploader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/file_writer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/local_file_system_file_writer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/file_uploader/noop_file_writer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/retriever.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/composite_schema_loader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/default_schema_loader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/inline_schema_loader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/json_file_schema_loader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/schema/schema_loader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/spec/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/stream_slicers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/stream_slicers/declarative_partition_generator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/stream_slicers/stream_slicer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/add_fields.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/config_transformations/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/config_transformations/add_fields.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/config_transformations/config_transformation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/config_transformations/remap_field.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/config_transformations/remove_fields.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/flatten_fields.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/keys_replace_transformation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/keys_to_lower_transformation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/keys_to_snake_transformation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/remove_fields.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/transformations/transformation.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/validators/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/validators/dpath_validator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/validators/predicate_validator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/validators/validate_adheres_to_schema.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/validators/validation_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/validators/validator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/availability_strategy/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/availability_strategy/abstract_file_based_availability_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/abstract_file_based_spec.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/avro_format.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/csv_format.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/excel_format.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/file_based_stream_config.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/jsonl_format.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/parquet_format.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/unstructured_format.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/config/validate_config_transfer_modes.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/discovery_policy/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/discovery_policy/abstract_discovery_policy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/discovery_policy/default_discovery_policy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_based_source.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_based_stream_permissions_reader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_based_stream_reader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_record_data.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/avro_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/csv_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/excel_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/file_transfer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/file_type_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/jsonl_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/parquet_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/file_types/unstructured_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/remote_file.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/schema_helpers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/schema_validation_policies/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/schema_validation_policies/abstract_schema_validation_policy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/schema_validation_policies/default_schema_validation_policies.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/concurrent/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/concurrent/adapters.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/abstract_concurrent_file_based_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_concurrent_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_final_state_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/cursor/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/cursor/abstract_file_based_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/cursor/default_file_based_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/identities_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/stream/permissions_file_based_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/file_based/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/http_config.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/http_logger.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/message/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/message/repository.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/source.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/specs/transfer_modes.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/availability_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/call_rate.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/checkpoint/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/checkpoint/checkpoint_reader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/checkpoint/cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/checkpoint/per_partition_key_serializer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/checkpoint/resumable_full_refresh_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/checkpoint/substream_resumable_full_refresh_cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/README.md +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/abstract_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/abstract_stream_facade.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/adapters.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/availability_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/clamping.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/cursor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/cursor_types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/default_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/helpers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partition_enqueuer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partition_reader.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partitions/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partitions/partition.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partitions/partition_generator.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partitions/stream_slicer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/partitions/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/state_converters/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/state_converters/abstract_stream_state_converter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/state_converters/datetime_stream_state_converter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/concurrent/state_converters/incrementing_count_stream_state_converter.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/core.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/availability_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/default_backoff_strategy.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/error_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/error_message_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/http_status_error_handler.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/json_error_message_parser.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/error_handlers/response_models.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/http.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/http_client.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/rate_limiting.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/requests_native_auth/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_oauth.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_token.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/requests_native_auth/oauth.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/http/requests_native_auth/token.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/permissions/identities_stream.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/streams/utils/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/casing.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/files_directory.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/record_helper.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/schema_helpers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/slice_logger.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/transform.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/utils/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/_util/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/_util/hashing.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/_util/name_normalizers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/constants.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/exceptions.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/secrets.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/shared/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/shared/catalog_providers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/shared/sql_processor.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sql/types.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/catalog_builder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/entrypoint_wrapper.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/mock_http/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/mock_http/matcher.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/mock_http/mocker.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/mock_http/request.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/mock_http/response.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/mock_http/response_builder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/_job_runner.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/connector_base.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/declarative_sources.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/destination_base.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/models/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/models/scenario.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/pytest_hooks.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/source_base.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/standard_tests/util.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/state_builder.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/utils/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/utils/data.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/utils/http_mocking.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/utils/manifest_only_fixtures.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/test/utils/reading.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/__init__.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/airbyte_secrets_utils.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/analytics_message.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/connector_paths.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/constants.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/datetime_format_inferrer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/datetime_helpers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/docker.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/event_timing.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/is_cloud_environment.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/mapping_helpers.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/message_utils.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/oneof_option_config.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/print_buffer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/schema_inferrer.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/slice_hasher.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/spec_schema_transformations.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/stream_status_utils.py +0 -0
- {airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/utils/traced_exception.py +0 -0
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/source_declarative_manifest/_run.py
RENAMED
@@ -58,6 +58,7 @@ class SourceLocalYaml(YamlDeclarativeSource):
|
|
58
58
|
catalog: ConfiguredAirbyteCatalog | None,
|
59
59
|
config: MutableMapping[str, Any] | None,
|
60
60
|
state: TState,
|
61
|
+
config_path: str | None = None,
|
61
62
|
**kwargs: Any,
|
62
63
|
) -> None:
|
63
64
|
"""
|
@@ -76,6 +77,7 @@ class SourceLocalYaml(YamlDeclarativeSource):
|
|
76
77
|
config=config,
|
77
78
|
state=state, # type: ignore [arg-type]
|
78
79
|
path_to_yaml="manifest.yaml",
|
80
|
+
config_path=config_path,
|
79
81
|
)
|
80
82
|
|
81
83
|
|
@@ -95,7 +97,12 @@ def _get_local_yaml_source(args: list[str]) -> SourceLocalYaml:
|
|
95
97
|
try:
|
96
98
|
parsed_args = AirbyteEntrypoint.parse_args(args)
|
97
99
|
config, catalog, state = _parse_inputs_into_config_catalog_state(parsed_args)
|
98
|
-
return SourceLocalYaml(
|
100
|
+
return SourceLocalYaml(
|
101
|
+
config=config,
|
102
|
+
catalog=catalog,
|
103
|
+
state=state,
|
104
|
+
config_path=parsed_args.config if hasattr(parsed_args, "config") else None,
|
105
|
+
)
|
99
106
|
except Exception as error:
|
100
107
|
print(
|
101
108
|
orjson.dumps(
|
@@ -204,6 +211,7 @@ def create_declarative_source(
|
|
204
211
|
catalog=catalog,
|
205
212
|
state=state,
|
206
213
|
source_config=cast(dict[str, Any], config["__injected_declarative_manifest"]),
|
214
|
+
config_path=parsed_args.config if hasattr(parsed_args, "config") else None,
|
207
215
|
)
|
208
216
|
except Exception as error:
|
209
217
|
print(
|
@@ -74,6 +74,7 @@ class ConcurrentDeclarativeSource(ManifestDeclarativeSource, Generic[TState]):
|
|
74
74
|
debug: bool = False,
|
75
75
|
emit_connector_builder_messages: bool = False,
|
76
76
|
component_factory: Optional[ModelToComponentFactory] = None,
|
77
|
+
config_path: Optional[str] = None,
|
77
78
|
**kwargs: Any,
|
78
79
|
) -> None:
|
79
80
|
# todo: We could remove state from initialization. Now that streams are grouped during the read(), a source
|
@@ -96,6 +97,7 @@ class ConcurrentDeclarativeSource(ManifestDeclarativeSource, Generic[TState]):
|
|
96
97
|
debug=debug,
|
97
98
|
emit_connector_builder_messages=emit_connector_builder_messages,
|
98
99
|
component_factory=component_factory,
|
100
|
+
config_path=config_path,
|
99
101
|
)
|
100
102
|
|
101
103
|
concurrency_level_from_manifest = self._source_config.get("concurrency_level")
|
@@ -2318,6 +2318,12 @@ definitions:
|
|
2318
2318
|
- "$ref": "#/definitions/AsyncRetriever"
|
2319
2319
|
- "$ref": "#/definitions/CustomRetriever"
|
2320
2320
|
- "$ref": "#/definitions/SimpleRetriever"
|
2321
|
+
schema_filter:
|
2322
|
+
title: Schema Filter
|
2323
|
+
description: Responsible for filtering fields to be added to json schema.
|
2324
|
+
anyOf:
|
2325
|
+
- "$ref": "#/definitions/RecordFilter"
|
2326
|
+
- "$ref": "#/definitions/CustomRecordFilter"
|
2321
2327
|
schema_transformations:
|
2322
2328
|
title: Schema Transformations
|
2323
2329
|
description: A list of transformations to be applied to the schema.
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c)
|
2
|
+
# Copyright (c) 2025 Airbyte, Inc., all rights reserved.
|
3
3
|
#
|
4
4
|
|
5
5
|
import json
|
@@ -8,13 +8,15 @@ import pkgutil
|
|
8
8
|
from copy import deepcopy
|
9
9
|
from importlib import metadata
|
10
10
|
from types import ModuleType
|
11
|
-
from typing import Any, Dict, Iterator, List, Mapping, Optional, Set
|
11
|
+
from typing import Any, Dict, Iterator, List, Mapping, MutableMapping, Optional, Set
|
12
12
|
|
13
|
+
import orjson
|
13
14
|
import yaml
|
14
15
|
from jsonschema.exceptions import ValidationError
|
15
16
|
from jsonschema.validators import validate
|
16
17
|
from packaging.version import InvalidVersion, Version
|
17
18
|
|
19
|
+
from airbyte_cdk.config_observation import create_connector_config_control_message
|
18
20
|
from airbyte_cdk.connector_builder.models import (
|
19
21
|
LogMessage as ConnectorBuilderLogMessage,
|
20
22
|
)
|
@@ -29,6 +31,7 @@ from airbyte_cdk.models import (
|
|
29
31
|
ConnectorSpecification,
|
30
32
|
FailureType,
|
31
33
|
)
|
34
|
+
from airbyte_cdk.models.airbyte_protocol_serializers import AirbyteMessageSerializer
|
32
35
|
from airbyte_cdk.sources.declarative.checks import COMPONENTS_CHECKER_TYPE_MAPPING
|
33
36
|
from airbyte_cdk.sources.declarative.checks.connection_checker import ConnectionChecker
|
34
37
|
from airbyte_cdk.sources.declarative.declarative_source import DeclarativeSource
|
@@ -57,9 +60,10 @@ from airbyte_cdk.sources.declarative.parsers.model_to_component_factory import (
|
|
57
60
|
ModelToComponentFactory,
|
58
61
|
)
|
59
62
|
from airbyte_cdk.sources.declarative.resolvers import COMPONENTS_RESOLVER_TYPE_MAPPING
|
63
|
+
from airbyte_cdk.sources.declarative.spec.spec import Spec
|
60
64
|
from airbyte_cdk.sources.message import MessageRepository
|
61
65
|
from airbyte_cdk.sources.streams.core import Stream
|
62
|
-
from airbyte_cdk.sources.types import ConnectionDefinition
|
66
|
+
from airbyte_cdk.sources.types import Config, ConnectionDefinition
|
63
67
|
from airbyte_cdk.sources.utils.slice_logger import (
|
64
68
|
AlwaysLogSliceLogger,
|
65
69
|
DebugSliceLogger,
|
@@ -99,6 +103,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
99
103
|
component_factory: Optional[ModelToComponentFactory] = None,
|
100
104
|
migrate_manifest: Optional[bool] = False,
|
101
105
|
normalize_manifest: Optional[bool] = False,
|
106
|
+
config_path: Optional[str] = None,
|
102
107
|
) -> None:
|
103
108
|
"""
|
104
109
|
Args:
|
@@ -108,6 +113,7 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
108
113
|
emit_connector_builder_messages: True if messages should be emitted to the connector builder.
|
109
114
|
component_factory: optional factory if ModelToComponentFactory's default behavior needs to be tweaked.
|
110
115
|
normalize_manifest: Optional flag to indicate if the manifest should be normalized.
|
116
|
+
config_path: Optional path to the config file.
|
111
117
|
"""
|
112
118
|
self.logger = logging.getLogger(f"airbyte.{self.name}")
|
113
119
|
self._should_normalize = normalize_manifest
|
@@ -130,7 +136,6 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
130
136
|
self._slice_logger: SliceLogger = (
|
131
137
|
AlwaysLogSliceLogger() if emit_connector_builder_messages else DebugSliceLogger()
|
132
138
|
)
|
133
|
-
self._config = config or {}
|
134
139
|
|
135
140
|
# resolve all components in the manifest
|
136
141
|
self._source_config = self._pre_process_manifest(dict(source_config))
|
@@ -139,6 +144,12 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
139
144
|
# apply additional post-processing to the manifest
|
140
145
|
self._post_process_manifest()
|
141
146
|
|
147
|
+
spec: Optional[Mapping[str, Any]] = self._source_config.get("spec")
|
148
|
+
self._spec_component: Optional[Spec] = (
|
149
|
+
self._constructor.create_component(SpecModel, spec, dict()) if spec else None
|
150
|
+
)
|
151
|
+
self._config = self._migrate_and_transform_config(config_path, config) or {}
|
152
|
+
|
142
153
|
@property
|
143
154
|
def resolved_manifest(self) -> Mapping[str, Any]:
|
144
155
|
"""
|
@@ -199,6 +210,30 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
199
210
|
normalizer = ManifestNormalizer(self._source_config, self._declarative_component_schema)
|
200
211
|
self._source_config = normalizer.normalize()
|
201
212
|
|
213
|
+
def _migrate_and_transform_config(
|
214
|
+
self,
|
215
|
+
config_path: Optional[str],
|
216
|
+
config: Optional[Config],
|
217
|
+
) -> Optional[Config]:
|
218
|
+
if not config:
|
219
|
+
return None
|
220
|
+
if not self._spec_component:
|
221
|
+
return config
|
222
|
+
mutable_config = dict(config)
|
223
|
+
self._spec_component.migrate_config(mutable_config)
|
224
|
+
if mutable_config != config:
|
225
|
+
if config_path:
|
226
|
+
with open(config_path, "w") as f:
|
227
|
+
json.dump(mutable_config, f)
|
228
|
+
self.message_repository.emit_message(
|
229
|
+
create_connector_config_control_message(mutable_config)
|
230
|
+
)
|
231
|
+
# We have no mechanism for consuming the queue, so we print the messages to stdout
|
232
|
+
for message in self.message_repository.consume_queue():
|
233
|
+
print(orjson.dumps(AirbyteMessageSerializer.dump(message)).decode())
|
234
|
+
self._spec_component.transform_config(mutable_config)
|
235
|
+
return mutable_config
|
236
|
+
|
202
237
|
def _migrate_manifest(self) -> None:
|
203
238
|
"""
|
204
239
|
This method is used to migrate the manifest. It should be called after the manifest has been validated.
|
@@ -255,6 +290,9 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
255
290
|
)
|
256
291
|
|
257
292
|
def streams(self, config: Mapping[str, Any]) -> List[Stream]:
|
293
|
+
if self._spec_component:
|
294
|
+
self._spec_component.validate_config(config)
|
295
|
+
|
258
296
|
self._emit_manifest_debug_message(
|
259
297
|
extra_args={
|
260
298
|
"source_name": self.name,
|
@@ -355,14 +393,9 @@ class ManifestDeclarativeSource(DeclarativeSource):
|
|
355
393
|
}
|
356
394
|
)
|
357
395
|
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
spec["type"] = "Spec"
|
362
|
-
spec_component = self._constructor.create_component(SpecModel, spec, dict())
|
363
|
-
return spec_component.generate_spec()
|
364
|
-
else:
|
365
|
-
return super().spec(logger)
|
396
|
+
return (
|
397
|
+
self._spec_component.generate_spec() if self._spec_component else super().spec(logger)
|
398
|
+
)
|
366
399
|
|
367
400
|
def check(self, logger: logging.Logger, config: Mapping[str, Any]) -> AirbyteConnectionStatus:
|
368
401
|
self._configure_logger_level(logger)
|
@@ -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
|
|
@@ -2582,6 +2580,11 @@ class DynamicSchemaLoader(BaseModel):
|
|
2582
2580
|
description="Component used to coordinate how records are extracted across stream slices and request pages.",
|
2583
2581
|
title="Retriever",
|
2584
2582
|
)
|
2583
|
+
schema_filter: Optional[Union[RecordFilter, CustomRecordFilter]] = Field(
|
2584
|
+
None,
|
2585
|
+
description="Responsible for filtering fields to be added to json schema.",
|
2586
|
+
title="Schema Filter",
|
2587
|
+
)
|
2585
2588
|
schema_transformations: Optional[
|
2586
2589
|
List[
|
2587
2590
|
Union[
|
@@ -2544,10 +2544,19 @@ class ModelToComponentFactory:
|
|
2544
2544
|
schema_type_identifier = self._create_component_from_model(
|
2545
2545
|
model.schema_type_identifier, config=config, parameters=model.parameters or {}
|
2546
2546
|
)
|
2547
|
+
schema_filter = (
|
2548
|
+
self._create_component_from_model(
|
2549
|
+
model.schema_filter, config=config, parameters=model.parameters or {}
|
2550
|
+
)
|
2551
|
+
if model.schema_filter is not None
|
2552
|
+
else None
|
2553
|
+
)
|
2554
|
+
|
2547
2555
|
return DynamicSchemaLoader(
|
2548
2556
|
retriever=retriever,
|
2549
2557
|
config=config,
|
2550
2558
|
schema_transformations=schema_transformations,
|
2559
|
+
schema_filter=schema_filter,
|
2551
2560
|
schema_type_identifier=schema_type_identifier,
|
2552
2561
|
parameters=model.parameters or {},
|
2553
2562
|
)
|
@@ -10,6 +10,7 @@ from typing import Any, List, Mapping, MutableMapping, Optional, Union
|
|
10
10
|
import dpath
|
11
11
|
from typing_extensions import deprecated
|
12
12
|
|
13
|
+
from airbyte_cdk.sources.declarative.extractors.record_filter import RecordFilter
|
13
14
|
from airbyte_cdk.sources.declarative.interpolation.interpolated_boolean import InterpolatedBoolean
|
14
15
|
from airbyte_cdk.sources.declarative.interpolation.interpolated_string import InterpolatedString
|
15
16
|
from airbyte_cdk.sources.declarative.retrievers.retriever import Retriever
|
@@ -126,6 +127,7 @@ class DynamicSchemaLoader(SchemaLoader):
|
|
126
127
|
parameters: InitVar[Mapping[str, Any]]
|
127
128
|
schema_type_identifier: SchemaTypeIdentifier
|
128
129
|
schema_transformations: List[RecordTransformation] = field(default_factory=lambda: [])
|
130
|
+
schema_filter: Optional[RecordFilter] = None
|
129
131
|
|
130
132
|
def get_json_schema(self) -> Mapping[str, Any]:
|
131
133
|
"""
|
@@ -151,20 +153,18 @@ class DynamicSchemaLoader(SchemaLoader):
|
|
151
153
|
)
|
152
154
|
properties[key] = value
|
153
155
|
|
154
|
-
|
156
|
+
filtered_transformed_properties = self._transform(self._filter(properties))
|
155
157
|
|
156
158
|
return {
|
157
159
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
158
160
|
"type": "object",
|
159
161
|
"additionalProperties": True,
|
160
|
-
"properties":
|
162
|
+
"properties": filtered_transformed_properties,
|
161
163
|
}
|
162
164
|
|
163
165
|
def _transform(
|
164
166
|
self,
|
165
167
|
properties: Mapping[str, Any],
|
166
|
-
stream_state: StreamState,
|
167
|
-
stream_slice: Optional[StreamSlice] = None,
|
168
168
|
) -> Mapping[str, Any]:
|
169
169
|
for transformation in self.schema_transformations:
|
170
170
|
transformation.transform(
|
@@ -173,6 +173,21 @@ class DynamicSchemaLoader(SchemaLoader):
|
|
173
173
|
)
|
174
174
|
return properties
|
175
175
|
|
176
|
+
def _filter(
|
177
|
+
self,
|
178
|
+
properties: Mapping[str, Any],
|
179
|
+
) -> Mapping[str, Any]:
|
180
|
+
if not self.schema_filter:
|
181
|
+
return properties
|
182
|
+
|
183
|
+
filtered_properties: MutableMapping[str, Any] = {}
|
184
|
+
for item in self.schema_filter.filter_records(
|
185
|
+
({k: v} for k, v in properties.items()),
|
186
|
+
{},
|
187
|
+
):
|
188
|
+
filtered_properties.update(item)
|
189
|
+
return filtered_properties
|
190
|
+
|
176
191
|
def _get_key(
|
177
192
|
self,
|
178
193
|
raw_schema: MutableMapping[str, Any],
|
@@ -1,28 +1,21 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c)
|
2
|
+
# Copyright (c) 2025 Airbyte, Inc., all rights reserved.
|
3
3
|
#
|
4
4
|
|
5
|
-
import json
|
6
5
|
from dataclasses import InitVar, dataclass, field
|
7
6
|
from typing import Any, List, Mapping, MutableMapping, Optional
|
8
7
|
|
9
|
-
import orjson
|
10
|
-
|
11
|
-
from airbyte_cdk.config_observation import create_connector_config_control_message
|
12
|
-
from airbyte_cdk.entrypoint import AirbyteEntrypoint
|
13
8
|
from airbyte_cdk.models import (
|
14
9
|
AdvancedAuth,
|
15
10
|
ConnectorSpecification,
|
16
11
|
ConnectorSpecificationSerializer,
|
17
12
|
)
|
18
|
-
from airbyte_cdk.models.airbyte_protocol_serializers import AirbyteMessageSerializer
|
19
13
|
from airbyte_cdk.sources.declarative.models.declarative_component_schema import AuthFlow
|
20
14
|
from airbyte_cdk.sources.declarative.transformations.config_transformations.config_transformation import (
|
21
15
|
ConfigTransformation,
|
22
16
|
)
|
23
17
|
from airbyte_cdk.sources.declarative.validators.validator import Validator
|
24
18
|
from airbyte_cdk.sources.message.repository import InMemoryMessageRepository, MessageRepository
|
25
|
-
from airbyte_cdk.sources.source import Source
|
26
19
|
|
27
20
|
|
28
21
|
@dataclass
|
@@ -48,7 +41,6 @@ class Spec:
|
|
48
41
|
config_migrations: List[ConfigMigration] = field(default_factory=list)
|
49
42
|
config_transformations: List[ConfigTransformation] = field(default_factory=list)
|
50
43
|
config_validations: List[Validator] = field(default_factory=list)
|
51
|
-
message_repository: MessageRepository = InMemoryMessageRepository()
|
52
44
|
|
53
45
|
def generate_spec(self) -> ConnectorSpecification:
|
54
46
|
"""
|
@@ -69,34 +61,15 @@ class Spec:
|
|
69
61
|
# We remap these keys to camel case because that's the existing format expected by the rest of the platform
|
70
62
|
return ConnectorSpecificationSerializer.load(obj)
|
71
63
|
|
72
|
-
def migrate_config(
|
73
|
-
self, args: List[str], source: Source, config: MutableMapping[str, Any]
|
74
|
-
) -> None:
|
64
|
+
def migrate_config(self, config: MutableMapping[str, Any]) -> None:
|
75
65
|
"""
|
76
|
-
Apply all specified config transformations to the provided config and
|
66
|
+
Apply all specified config transformations to the provided config and emit a control message.
|
77
67
|
|
78
|
-
:param args: Command line arguments
|
79
|
-
:param source: Source instance
|
80
68
|
:param config: The user-provided config to migrate
|
81
69
|
"""
|
82
|
-
config_path = AirbyteEntrypoint(source).extract_config(args)
|
83
|
-
|
84
|
-
if not config_path:
|
85
|
-
return
|
86
|
-
|
87
|
-
mutable_config = dict(config)
|
88
70
|
for migration in self.config_migrations:
|
89
71
|
for transformation in migration.transformations:
|
90
|
-
transformation.transform(
|
91
|
-
|
92
|
-
if mutable_config != config:
|
93
|
-
with open(config_path, "w") as f:
|
94
|
-
json.dump(mutable_config, f)
|
95
|
-
self.message_repository.emit_message(
|
96
|
-
create_connector_config_control_message(mutable_config)
|
97
|
-
)
|
98
|
-
for message in self.message_repository.consume_queue():
|
99
|
-
print(orjson.dumps(AirbyteMessageSerializer.dump(message)).decode())
|
72
|
+
transformation.transform(config)
|
100
73
|
|
101
74
|
def transform_config(self, config: MutableMapping[str, Any]) -> None:
|
102
75
|
"""
|
@@ -107,7 +80,7 @@ class Spec:
|
|
107
80
|
for transformation in self.config_transformations:
|
108
81
|
transformation.transform(config)
|
109
82
|
|
110
|
-
def validate_config(self, config:
|
83
|
+
def validate_config(self, config: Mapping[str, Any]) -> None:
|
111
84
|
"""
|
112
85
|
Apply all config validations to the provided config.
|
113
86
|
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/yaml_declarative_source.py
RENAMED
@@ -24,6 +24,7 @@ class YamlDeclarativeSource(ConcurrentDeclarativeSource[List[AirbyteStateMessage
|
|
24
24
|
catalog: Optional[ConfiguredAirbyteCatalog] = None,
|
25
25
|
config: Optional[Mapping[str, Any]] = None,
|
26
26
|
state: Optional[List[AirbyteStateMessage]] = None,
|
27
|
+
config_path: Optional[str] = None,
|
27
28
|
) -> None:
|
28
29
|
"""
|
29
30
|
:param path_to_yaml: Path to the yaml file describing the source
|
@@ -36,6 +37,7 @@ class YamlDeclarativeSource(ConcurrentDeclarativeSource[List[AirbyteStateMessage
|
|
36
37
|
config=config or {},
|
37
38
|
state=state or [],
|
38
39
|
source_config=source_config,
|
40
|
+
config_path=config_path,
|
39
41
|
)
|
40
42
|
|
41
43
|
def _read_and_parse_yaml_file(self, path_to_yaml_file: str) -> ConnectionDefinition:
|
@@ -23,7 +23,7 @@ classifiers = [
|
|
23
23
|
keywords = ["airbyte", "connector-development-kit", "cdk"]
|
24
24
|
|
25
25
|
# Python CDK uses dynamic versioning: https://github.com/mtkennerly/poetry-dynamic-versioning
|
26
|
-
version = "6.
|
26
|
+
version = "6.51.0" # Version will be calculated dynamically.
|
27
27
|
|
28
28
|
[tool.poetry-dynamic-versioning]
|
29
29
|
enable = false
|
@@ -170,7 +170,7 @@ fix-and-check = {sequence = ["fix-all", "check-all"], help = "Lint-fix and forma
|
|
170
170
|
|
171
171
|
# PyTest tasks
|
172
172
|
pytest = {cmd = "poetry run coverage run -m pytest --durations=10", help = "Run all pytest tests."}
|
173
|
-
pytest-fast = {cmd = "poetry run coverage run -m pytest
|
173
|
+
pytest-fast = {cmd = "poetry run coverage run -m pytest unit_tests --durations=5 --exitfirst -m 'not flaky and not slow and not requires_creds'", help = "Run pytest tests, failing fast and excluding slow tests."}
|
174
174
|
unit-test-with-cov = {cmd = "poetry run pytest -s unit_tests --cov=airbyte_cdk --cov-report=term --cov-config ./pyproject.toml", help = "Run unit tests and create a coverage report."}
|
175
175
|
|
176
176
|
# Combined check tasks (other)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/source_declarative_manifest/__init__.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/cli/source_declarative_manifest/spec.json
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/connector_builder_handler.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/__init__.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/helpers.py
RENAMED
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/reader.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/connector_builder/test_reader/types.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/README.md
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/__init__.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/config.py
RENAMED
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/embedder.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/indexer.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/test_utils.py
RENAMED
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/destinations/vector_db_based/writer.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/manifest_migration.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migration_handler.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations/registry.yaml
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/manifest_migrations/migrations_registry.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/models/airbyte_protocol_serializers.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/concurrent_source/concurrent_source.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/job_tracker.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/repository.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/status.py
RENAMED
File without changes
|
{airbyte_cdk-6.49.1 → airbyte_cdk-6.51.0}/airbyte_cdk/sources/declarative/async_job/timer.py
RENAMED
File without changes
|
File without changes
|
File without changes
|