airbyte-cdk 6.13.0__tar.gz → 6.13.1.dev4100__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.
Files changed (346) hide show
  1. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/PKG-INFO +1 -1
  2. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py +1 -3
  3. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/stop_condition.py +1 -4
  4. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/abstract_file_based_spec.py +18 -0
  5. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/exceptions.py +26 -0
  6. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_based_source.py +19 -5
  7. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_based_stream_reader.py +18 -4
  8. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py +40 -2
  9. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/pyproject.toml +1 -1
  10. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/LICENSE.txt +0 -0
  11. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/README.md +0 -0
  12. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/__init__.py +0 -0
  13. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/cli/__init__.py +0 -0
  14. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/cli/source_declarative_manifest/__init__.py +0 -0
  15. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/cli/source_declarative_manifest/_run.py +0 -0
  16. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/cli/source_declarative_manifest/spec.json +0 -0
  17. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/config_observation.py +0 -0
  18. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector.py +0 -0
  19. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector_builder/README.md +0 -0
  20. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector_builder/__init__.py +0 -0
  21. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector_builder/connector_builder_handler.py +0 -0
  22. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector_builder/main.py +0 -0
  23. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector_builder/message_grouper.py +0 -0
  24. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/connector_builder/models.py +0 -0
  25. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/__init__.py +0 -0
  26. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/destination.py +0 -0
  27. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/README.md +0 -0
  28. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/__init__.py +0 -0
  29. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/config.py +0 -0
  30. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/document_processor.py +0 -0
  31. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/embedder.py +0 -0
  32. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/indexer.py +0 -0
  33. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/test_utils.py +0 -0
  34. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/utils.py +0 -0
  35. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/destinations/vector_db_based/writer.py +0 -0
  36. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/entrypoint.py +0 -0
  37. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/exception_handler.py +0 -0
  38. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/logger.py +0 -0
  39. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/models/__init__.py +0 -0
  40. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/models/airbyte_protocol.py +0 -0
  41. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/models/airbyte_protocol_serializers.py +0 -0
  42. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/models/file_transfer_record_message.py +0 -0
  43. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/models/well_known_types.py +0 -0
  44. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/py.typed +0 -0
  45. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/__init__.py +0 -0
  46. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/abstract_source.py +0 -0
  47. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/__init__.py +0 -0
  48. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/concurrent_read_processor.py +0 -0
  49. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/concurrent_source.py +0 -0
  50. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/concurrent_source_adapter.py +0 -0
  51. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/partition_generation_completed_sentinel.py +0 -0
  52. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/stream_thread_exception.py +0 -0
  53. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/concurrent_source/thread_pool_manager.py +0 -0
  54. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/config.py +0 -0
  55. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/connector_state_manager.py +0 -0
  56. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/__init__.py +0 -0
  57. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/__init__.py +0 -0
  58. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/job.py +0 -0
  59. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/job_orchestrator.py +0 -0
  60. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/job_tracker.py +0 -0
  61. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/repository.py +0 -0
  62. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/status.py +0 -0
  63. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/async_job/timer.py +0 -0
  64. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/__init__.py +0 -0
  65. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/declarative_authenticator.py +0 -0
  66. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/jwt.py +0 -0
  67. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/oauth.py +0 -0
  68. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/selective_authenticator.py +0 -0
  69. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/token.py +0 -0
  70. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/auth/token_provider.py +0 -0
  71. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/checks/__init__.py +0 -0
  72. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/checks/check_stream.py +0 -0
  73. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/checks/connection_checker.py +0 -0
  74. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/concurrency_level/__init__.py +0 -0
  75. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/concurrency_level/concurrency_level.py +0 -0
  76. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/concurrent_declarative_source.py +0 -0
  77. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/datetime/__init__.py +0 -0
  78. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/datetime/datetime_parser.py +0 -0
  79. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/datetime/min_max_datetime.py +0 -0
  80. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/declarative_component_schema.yaml +0 -0
  81. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/declarative_source.py +0 -0
  82. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/declarative_stream.py +0 -0
  83. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/__init__.py +0 -0
  84. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py +0 -0
  85. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/decoder.py +0 -0
  86. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/json_decoder.py +0 -0
  87. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/noop_decoder.py +0 -0
  88. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/pagination_decoder_decorator.py +0 -0
  89. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/decoders/xml_decoder.py +0 -0
  90. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/exceptions.py +0 -0
  91. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/__init__.py +0 -0
  92. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/dpath_extractor.py +0 -0
  93. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/http_selector.py +0 -0
  94. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/record_extractor.py +0 -0
  95. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/record_filter.py +0 -0
  96. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/record_selector.py +0 -0
  97. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py +0 -0
  98. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/__init__.py +0 -0
  99. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/datetime_based_cursor.py +0 -0
  100. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/declarative_cursor.py +0 -0
  101. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/global_substream_cursor.py +0 -0
  102. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/per_partition_cursor.py +0 -0
  103. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/per_partition_with_global.py +0 -0
  104. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/incremental/resumable_full_refresh_cursor.py +0 -0
  105. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/__init__.py +0 -0
  106. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/filters.py +0 -0
  107. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/interpolated_boolean.py +0 -0
  108. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/interpolated_mapping.py +0 -0
  109. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py +0 -0
  110. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/interpolated_string.py +0 -0
  111. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/interpolation.py +0 -0
  112. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/jinja.py +0 -0
  113. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/interpolation/macros.py +0 -0
  114. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/manifest_declarative_source.py +0 -0
  115. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/migrations/__init__.py +0 -0
  116. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py +0 -0
  117. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/migrations/state_migration.py +0 -0
  118. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/models/__init__.py +0 -0
  119. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/models/declarative_component_schema.py +0 -0
  120. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/parsers/__init__.py +0 -0
  121. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/parsers/custom_exceptions.py +0 -0
  122. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py +0 -0
  123. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py +0 -0
  124. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +0 -0
  125. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/__init__.py +0 -0
  126. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py +0 -0
  127. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py +0 -0
  128. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/list_partition_router.py +0 -0
  129. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/partition_router.py +0 -0
  130. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/single_partition_router.py +0 -0
  131. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py +0 -0
  132. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/__init__.py +0 -0
  133. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/__init__.py +0 -0
  134. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/__init__.py +0 -0
  135. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/constant_backoff_strategy.py +0 -0
  136. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/exponential_backoff_strategy.py +0 -0
  137. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/header_helper.py +0 -0
  138. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_time_from_header_backoff_strategy.py +0 -0
  139. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_until_time_from_header_backoff_strategy.py +0 -0
  140. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategy.py +0 -0
  141. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/composite_error_handler.py +0 -0
  142. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_error_handler.py +0 -0
  143. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_http_response_filter.py +0 -0
  144. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/error_handler.py +0 -0
  145. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/error_handlers/http_response_filter.py +0 -0
  146. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/http_job_repository.py +0 -0
  147. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/http_requester.py +0 -0
  148. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/__init__.py +0 -0
  149. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py +0 -0
  150. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py +0 -0
  151. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/paginator.py +0 -0
  152. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py +0 -0
  153. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py +0 -0
  154. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/page_increment.py +0 -0
  155. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/pagination_strategy.py +0 -0
  156. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_option.py +0 -0
  157. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/__init__.py +0 -0
  158. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/datetime_based_request_options_provider.py +0 -0
  159. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/default_request_options_provider.py +0 -0
  160. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_nested_request_input_provider.py +0 -0
  161. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_input_provider.py +0 -0
  162. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py +0 -0
  163. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_options/request_options_provider.py +0 -0
  164. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/request_path.py +0 -0
  165. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/requesters/requester.py +0 -0
  166. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/resolvers/__init__.py +0 -0
  167. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/resolvers/components_resolver.py +0 -0
  168. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py +0 -0
  169. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py +0 -0
  170. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/retrievers/__init__.py +0 -0
  171. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/retrievers/async_retriever.py +0 -0
  172. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/retrievers/retriever.py +0 -0
  173. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +0 -0
  174. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/schema/__init__.py +0 -0
  175. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/schema/default_schema_loader.py +0 -0
  176. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py +0 -0
  177. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/schema/inline_schema_loader.py +0 -0
  178. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/schema/json_file_schema_loader.py +0 -0
  179. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/schema/schema_loader.py +0 -0
  180. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/spec/__init__.py +0 -0
  181. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/spec/spec.py +0 -0
  182. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/stream_slicers/__init__.py +0 -0
  183. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/stream_slicers/declarative_partition_generator.py +0 -0
  184. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/stream_slicers/stream_slicer.py +0 -0
  185. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/__init__.py +0 -0
  186. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/add_fields.py +0 -0
  187. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/flatten_fields.py +0 -0
  188. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/keys_to_lower_transformation.py +0 -0
  189. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/keys_to_snake_transformation.py +0 -0
  190. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/remove_fields.py +0 -0
  191. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/transformations/transformation.py +0 -0
  192. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/types.py +0 -0
  193. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/declarative/yaml_declarative_source.py +0 -0
  194. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/embedded/__init__.py +0 -0
  195. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/embedded/base_integration.py +0 -0
  196. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/embedded/catalog.py +0 -0
  197. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/embedded/runner.py +0 -0
  198. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/embedded/tools.py +0 -0
  199. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/README.md +0 -0
  200. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/__init__.py +0 -0
  201. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/availability_strategy/__init__.py +0 -0
  202. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/availability_strategy/abstract_file_based_availability_strategy.py +0 -0
  203. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py +0 -0
  204. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/__init__.py +0 -0
  205. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/avro_format.py +0 -0
  206. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/csv_format.py +0 -0
  207. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/excel_format.py +0 -0
  208. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/file_based_stream_config.py +0 -0
  209. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/jsonl_format.py +0 -0
  210. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/parquet_format.py +0 -0
  211. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/config/unstructured_format.py +0 -0
  212. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/discovery_policy/__init__.py +0 -0
  213. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/discovery_policy/abstract_discovery_policy.py +0 -0
  214. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/discovery_policy/default_discovery_policy.py +0 -0
  215. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/__init__.py +0 -0
  216. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/avro_parser.py +0 -0
  217. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/csv_parser.py +0 -0
  218. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/excel_parser.py +0 -0
  219. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/file_transfer.py +0 -0
  220. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/file_type_parser.py +0 -0
  221. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/jsonl_parser.py +0 -0
  222. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/parquet_parser.py +0 -0
  223. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/file_types/unstructured_parser.py +0 -0
  224. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/remote_file.py +0 -0
  225. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/schema_helpers.py +0 -0
  226. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/schema_validation_policies/__init__.py +0 -0
  227. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/schema_validation_policies/abstract_schema_validation_policy.py +0 -0
  228. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/schema_validation_policies/default_schema_validation_policies.py +0 -0
  229. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/__init__.py +0 -0
  230. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py +0 -0
  231. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/concurrent/__init__.py +0 -0
  232. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/concurrent/adapters.py +0 -0
  233. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/__init__.py +0 -0
  234. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/abstract_concurrent_file_based_cursor.py +0 -0
  235. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_concurrent_cursor.py +0 -0
  236. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_final_state_cursor.py +0 -0
  237. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/cursor/__init__.py +0 -0
  238. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/cursor/abstract_file_based_cursor.py +0 -0
  239. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/stream/cursor/default_file_based_cursor.py +0 -0
  240. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/file_based/types.py +0 -0
  241. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/http_config.py +0 -0
  242. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/http_logger.py +0 -0
  243. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/message/__init__.py +0 -0
  244. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/message/repository.py +0 -0
  245. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/source.py +0 -0
  246. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/__init__.py +0 -0
  247. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/availability_strategy.py +0 -0
  248. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/call_rate.py +0 -0
  249. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/checkpoint/__init__.py +0 -0
  250. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/checkpoint/checkpoint_reader.py +0 -0
  251. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/checkpoint/cursor.py +0 -0
  252. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/checkpoint/per_partition_key_serializer.py +0 -0
  253. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/checkpoint/resumable_full_refresh_cursor.py +0 -0
  254. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/checkpoint/substream_resumable_full_refresh_cursor.py +0 -0
  255. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/README.md +0 -0
  256. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/__init__.py +0 -0
  257. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/abstract_stream.py +0 -0
  258. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/abstract_stream_facade.py +0 -0
  259. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/adapters.py +0 -0
  260. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/availability_strategy.py +0 -0
  261. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/cursor.py +0 -0
  262. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/default_stream.py +0 -0
  263. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/exceptions.py +0 -0
  264. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/helpers.py +0 -0
  265. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partition_enqueuer.py +0 -0
  266. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partition_reader.py +0 -0
  267. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partitions/__init__.py +0 -0
  268. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partitions/partition.py +0 -0
  269. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partitions/partition_generator.py +0 -0
  270. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partitions/stream_slicer.py +0 -0
  271. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/partitions/types.py +0 -0
  272. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/state_converters/__init__.py +0 -0
  273. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/state_converters/abstract_stream_state_converter.py +0 -0
  274. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/concurrent/state_converters/datetime_stream_state_converter.py +0 -0
  275. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/core.py +0 -0
  276. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/__init__.py +0 -0
  277. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/availability_strategy.py +0 -0
  278. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/__init__.py +0 -0
  279. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/backoff_strategy.py +0 -0
  280. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/default_backoff_strategy.py +0 -0
  281. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py +0 -0
  282. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/error_handler.py +0 -0
  283. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/error_message_parser.py +0 -0
  284. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/http_status_error_handler.py +0 -0
  285. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/json_error_message_parser.py +0 -0
  286. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/error_handlers/response_models.py +0 -0
  287. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/exceptions.py +0 -0
  288. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/http.py +0 -0
  289. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/http_client.py +0 -0
  290. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/rate_limiting.py +0 -0
  291. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/requests_native_auth/__init__.py +0 -0
  292. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_oauth.py +0 -0
  293. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_token.py +0 -0
  294. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/requests_native_auth/oauth.py +0 -0
  295. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/http/requests_native_auth/token.py +0 -0
  296. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/streams/utils/__init__.py +0 -0
  297. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/types.py +0 -0
  298. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/__init__.py +0 -0
  299. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/casing.py +0 -0
  300. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/record_helper.py +0 -0
  301. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/schema_helpers.py +0 -0
  302. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/slice_logger.py +0 -0
  303. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/transform.py +0 -0
  304. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sources/utils/types.py +0 -0
  305. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/__init__.py +0 -0
  306. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/_util/__init__.py +0 -0
  307. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/_util/hashing.py +0 -0
  308. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/_util/name_normalizers.py +0 -0
  309. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/constants.py +0 -0
  310. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/exceptions.py +0 -0
  311. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/secrets.py +0 -0
  312. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/shared/__init__.py +0 -0
  313. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/shared/catalog_providers.py +0 -0
  314. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/shared/sql_processor.py +0 -0
  315. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/sql/types.py +0 -0
  316. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/__init__.py +0 -0
  317. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/catalog_builder.py +0 -0
  318. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/entrypoint_wrapper.py +0 -0
  319. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/mock_http/__init__.py +0 -0
  320. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/mock_http/matcher.py +0 -0
  321. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/mock_http/mocker.py +0 -0
  322. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/mock_http/request.py +0 -0
  323. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/mock_http/response.py +0 -0
  324. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/mock_http/response_builder.py +0 -0
  325. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/state_builder.py +0 -0
  326. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/utils/__init__.py +0 -0
  327. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/utils/data.py +0 -0
  328. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/utils/http_mocking.py +0 -0
  329. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/utils/manifest_only_fixtures.py +0 -0
  330. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/test/utils/reading.py +0 -0
  331. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/__init__.py +0 -0
  332. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/airbyte_secrets_utils.py +0 -0
  333. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/analytics_message.py +0 -0
  334. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/constants.py +0 -0
  335. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/datetime_format_inferrer.py +0 -0
  336. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/event_timing.py +0 -0
  337. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/is_cloud_environment.py +0 -0
  338. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/mapping_helpers.py +0 -0
  339. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/message_utils.py +0 -0
  340. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/oneof_option_config.py +0 -0
  341. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/print_buffer.py +0 -0
  342. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/schema_inferrer.py +0 -0
  343. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/slice_hasher.py +0 -0
  344. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/spec_schema_transformations.py +0 -0
  345. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/stream_status_utils.py +0 -0
  346. {airbyte_cdk-6.13.0 → airbyte_cdk-6.13.1.dev4100}/airbyte_cdk/utils/traced_exception.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: airbyte-cdk
3
- Version: 6.13.0
3
+ Version: 6.13.1.dev4100
4
4
  Summary: A framework for writing Airbyte Connectors.
5
5
  Home-page: https://airbyte.com
6
6
  License: MIT
@@ -83,9 +83,7 @@ class OffsetIncrement(PaginationStrategy):
83
83
  return self._offset
84
84
 
85
85
  def reset(self, reset_value: Optional[Any] = 0) -> None:
86
- if reset_value is None:
87
- self._offset = 0
88
- elif not isinstance(reset_value, int):
86
+ if not isinstance(reset_value, int):
89
87
  raise ValueError(
90
88
  f"Reset value {reset_value} for OffsetIncrement pagination strategy was not an integer"
91
89
  )
@@ -53,10 +53,7 @@ class StopConditionPaginationStrategyDecorator(PaginationStrategy):
53
53
  return self._delegate.next_page_token(response, last_page_size, last_record)
54
54
 
55
55
  def reset(self, reset_value: Optional[Any] = None) -> None:
56
- if reset_value:
57
- self._delegate.reset(reset_value)
58
- else:
59
- self._delegate.reset()
56
+ self._delegate.reset(reset_value)
60
57
 
61
58
  def get_page_size(self) -> Optional[int]:
62
59
  return self._delegate.get_page_size()
@@ -14,6 +14,13 @@ from airbyte_cdk.sources.file_based.config.file_based_stream_config import FileB
14
14
  from airbyte_cdk.sources.utils import schema_helpers
15
15
 
16
16
 
17
+ class DeliveryOptions(BaseModel):
18
+ preserve_subdirectories_directories: bool = Field(
19
+ True,
20
+ description="Flag indicating we should preserve subdirectories directories",
21
+ )
22
+
23
+
17
24
  class DeliverRecords(BaseModel):
18
25
  class Config(OneOfOptionConfig):
19
26
  title = "Replicate Records"
@@ -30,6 +37,11 @@ class DeliverRawFiles(BaseModel):
30
37
  discriminator = "delivery_type"
31
38
 
32
39
  delivery_type: Literal["use_file_transfer"] = Field("use_file_transfer", const=True)
40
+ delivery_options: Optional[DeliveryOptions] = Field(
41
+ title="Delivery Options",
42
+ type="object",
43
+ order=2,
44
+ )
33
45
 
34
46
 
35
47
  class AbstractFileBasedSpec(BaseModel):
@@ -65,6 +77,12 @@ class AbstractFileBasedSpec(BaseModel):
65
77
  airbyte_hidden=True,
66
78
  )
67
79
 
80
+ delivery_options: Optional[DeliveryOptions] = Field(
81
+ title="Delivery Options",
82
+ type="object",
83
+ order=8,
84
+ )
85
+
68
86
  @classmethod
69
87
  @abstractmethod
70
88
  def documentation_url(cls) -> AnyUrl:
@@ -111,6 +111,10 @@ class ErrorListingFiles(BaseFileBasedSourceError):
111
111
  pass
112
112
 
113
113
 
114
+ class DuplicatedFilesError(BaseFileBasedSourceError):
115
+ pass
116
+
117
+
114
118
  class CustomFileBasedException(AirbyteTracedException):
115
119
  """
116
120
  A specialized exception for file-based connectors.
@@ -123,3 +127,25 @@ class CustomFileBasedException(AirbyteTracedException):
123
127
 
124
128
  class FileSizeLimitError(CustomFileBasedException):
125
129
  pass
130
+
131
+
132
+ def format_duplicate_files_error_message(
133
+ stream_name: str, duplicated_files_names: List[dict[str, List[str]]]
134
+ ) -> str:
135
+ duplicated_files_messages = []
136
+ for duplicated_file in duplicated_files_names:
137
+ for duplicated_file_name, file_paths in duplicated_file.items():
138
+ file_duplicated_message = (
139
+ f"{len(file_paths)} duplicates found for file name {duplicated_file_name}:\n\n"
140
+ + "".join(f"\n - {file_paths}")
141
+ )
142
+ duplicated_files_messages.append(file_duplicated_message)
143
+
144
+ error_message = (
145
+ f"ERROR: Duplicate filenames found for stream {stream_name}. "
146
+ "Duplicate file names are not allowed if the Preserve Subdirectories in File Paths option is disabled. "
147
+ "Please remove or rename the duplicate files before attempting to re-run the sync.\n\n"
148
+ + "\n".join(duplicated_files_messages)
149
+ )
150
+
151
+ return error_message
@@ -242,7 +242,7 @@ class FileBasedSource(ConcurrentSourceAdapter, ABC):
242
242
  stream=self._make_default_stream(
243
243
  stream_config=stream_config,
244
244
  cursor=cursor,
245
- use_file_transfer=self._use_file_transfer(parsed_config),
245
+ parsed_config=parsed_config,
246
246
  ),
247
247
  source=self,
248
248
  logger=self.logger,
@@ -273,7 +273,7 @@ class FileBasedSource(ConcurrentSourceAdapter, ABC):
273
273
  stream=self._make_default_stream(
274
274
  stream_config=stream_config,
275
275
  cursor=cursor,
276
- use_file_transfer=self._use_file_transfer(parsed_config),
276
+ parsed_config=parsed_config,
277
277
  ),
278
278
  source=self,
279
279
  logger=self.logger,
@@ -285,7 +285,7 @@ class FileBasedSource(ConcurrentSourceAdapter, ABC):
285
285
  stream = self._make_default_stream(
286
286
  stream_config=stream_config,
287
287
  cursor=cursor,
288
- use_file_transfer=self._use_file_transfer(parsed_config),
288
+ parsed_config=parsed_config,
289
289
  )
290
290
 
291
291
  streams.append(stream)
@@ -298,7 +298,7 @@ class FileBasedSource(ConcurrentSourceAdapter, ABC):
298
298
  self,
299
299
  stream_config: FileBasedStreamConfig,
300
300
  cursor: Optional[AbstractFileBasedCursor],
301
- use_file_transfer: bool = False,
301
+ parsed_config: AbstractFileBasedSpec,
302
302
  ) -> AbstractFileBasedStream:
303
303
  return DefaultFileBasedStream(
304
304
  config=stream_config,
@@ -310,7 +310,10 @@ class FileBasedSource(ConcurrentSourceAdapter, ABC):
310
310
  validation_policy=self._validate_and_get_validation_policy(stream_config),
311
311
  errors_collector=self.errors_collector,
312
312
  cursor=cursor,
313
- use_file_transfer=use_file_transfer,
313
+ use_file_transfer=self._use_file_transfer(parsed_config),
314
+ preserve_subdirectories_directories=self._preserve_subdirectories_directories(
315
+ parsed_config
316
+ ),
314
317
  )
315
318
 
316
319
  def _get_stream_from_catalog(
@@ -385,3 +388,14 @@ class FileBasedSource(ConcurrentSourceAdapter, ABC):
385
388
  and parsed_config.delivery_method.delivery_type == "use_file_transfer"
386
389
  )
387
390
  return use_file_transfer
391
+
392
+ @staticmethod
393
+ def _preserve_subdirectories_directories(parsed_config: AbstractFileBasedSpec) -> bool:
394
+ # fall back to preserve subdirectories if config is not present or incomplete
395
+ if (
396
+ hasattr(parsed_config, "delivery_options")
397
+ and parsed_config.delivery_options is not None
398
+ and hasattr(parsed_config.delivery_options, "preserve_subdirectories_directories")
399
+ ):
400
+ return parsed_config.delivery_options.preserve_subdirectories_directories
401
+ return True
@@ -135,6 +135,17 @@ class AbstractFileBasedStreamReader(ABC):
135
135
  return use_file_transfer
136
136
  return False
137
137
 
138
+ def preserve_subdirectories_directories(self) -> bool:
139
+ # fall back to preserve subdirectories if config is not present or incomplete
140
+ if (
141
+ self.config
142
+ and hasattr(self.config, "delivery_options")
143
+ and self.config.delivery_options is not None
144
+ and hasattr(self.config.delivery_options, "preserve_subdirectories_directories")
145
+ ):
146
+ return self.config.delivery_options.preserve_subdirectories_directories
147
+ return True
148
+
138
149
  @abstractmethod
139
150
  def get_file(
140
151
  self, file: RemoteFile, local_directory: str, logger: logging.Logger
@@ -159,10 +170,13 @@ class AbstractFileBasedStreamReader(ABC):
159
170
  """
160
171
  ...
161
172
 
162
- @staticmethod
163
- def _get_file_transfer_paths(file: RemoteFile, local_directory: str) -> List[str]:
164
- # Remove left slashes from source path format to make relative path for writing locally
165
- file_relative_path = file.uri.lstrip("/")
173
+ def _get_file_transfer_paths(self, file: RemoteFile, local_directory: str) -> List[str]:
174
+ preserve_subdirectories_directories = self.preserve_subdirectories_directories()
175
+ if preserve_subdirectories_directories:
176
+ # Remove left slashes from source path format to make relative path for writing locally
177
+ file_relative_path = file.uri.lstrip("/")
178
+ else:
179
+ file_relative_path = path.basename(file.uri)
166
180
  local_file_path = path.join(local_directory, file_relative_path)
167
181
 
168
182
  # Ensure the local directory exists
@@ -5,20 +5,24 @@
5
5
  import asyncio
6
6
  import itertools
7
7
  import traceback
8
+ from collections import defaultdict
8
9
  from copy import deepcopy
9
10
  from functools import cache
10
- from typing import Any, Dict, Iterable, List, Mapping, MutableMapping, Optional, Set, Union
11
+ from os import path
12
+ from typing import Any, Dict, Iterable, List, Mapping, MutableMapping, Optional, Set, Tuple, Union
11
13
 
12
14
  from airbyte_cdk.models import AirbyteLogMessage, AirbyteMessage, FailureType, Level
13
15
  from airbyte_cdk.models import Type as MessageType
14
16
  from airbyte_cdk.sources.file_based.config.file_based_stream_config import PrimaryKeyType
15
17
  from airbyte_cdk.sources.file_based.exceptions import (
18
+ DuplicatedFilesError,
16
19
  FileBasedSourceError,
17
20
  InvalidSchemaError,
18
21
  MissingSchemaError,
19
22
  RecordParseError,
20
23
  SchemaInferenceError,
21
24
  StopSyncPerValidationPolicy,
25
+ format_duplicate_files_error_message,
22
26
  )
23
27
  from airbyte_cdk.sources.file_based.file_types import FileTransfer
24
28
  from airbyte_cdk.sources.file_based.remote_file import RemoteFile
@@ -43,6 +47,8 @@ class DefaultFileBasedStream(AbstractFileBasedStream, IncrementalMixin):
43
47
  """
44
48
 
45
49
  FILE_TRANSFER_KW = "use_file_transfer"
50
+ PRESERVE_SUBDIRECTORIES_KW = "preserve_subdirectories_directories"
51
+ FILES_KEY = "files"
46
52
  DATE_TIME_FORMAT = "%Y-%m-%dT%H:%M:%S.%fZ"
47
53
  ab_last_mod_col = "_ab_source_file_last_modified"
48
54
  ab_file_name_col = "_ab_source_file_url"
@@ -50,10 +56,14 @@ class DefaultFileBasedStream(AbstractFileBasedStream, IncrementalMixin):
50
56
  source_file_url = "source_file_url"
51
57
  airbyte_columns = [ab_last_mod_col, ab_file_name_col]
52
58
  use_file_transfer = False
59
+ preserve_subdirectories_directories = True
53
60
 
54
61
  def __init__(self, **kwargs: Any):
55
62
  if self.FILE_TRANSFER_KW in kwargs:
56
63
  self.use_file_transfer = kwargs.pop(self.FILE_TRANSFER_KW, False)
64
+ self.preserve_subdirectories_directories = kwargs.pop(
65
+ self.PRESERVE_SUBDIRECTORIES_KW, True
66
+ )
57
67
  super().__init__(**kwargs)
58
68
 
59
69
  @property
@@ -98,15 +108,43 @@ class DefaultFileBasedStream(AbstractFileBasedStream, IncrementalMixin):
98
108
  else:
99
109
  return super()._filter_schema_invalid_properties(configured_catalog_json_schema)
100
110
 
111
+ def _duplicated_files_names(
112
+ self, slices: List[dict[str, List[RemoteFile]]]
113
+ ) -> List[dict[str, List[str]]]:
114
+ seen_file_names = set()
115
+ duplicates_file_names = set()
116
+ file_paths = defaultdict(list)
117
+ for file_slice in slices:
118
+ for file_found in file_slice[self.FILES_KEY]:
119
+ file_name = path.basename(file_found.uri)
120
+ if file_name not in seen_file_names:
121
+ seen_file_names.add(file_name)
122
+ else:
123
+ duplicates_file_names.add(file_name)
124
+ file_paths[file_name].append(file_found.uri)
125
+ return [
126
+ {duplicated_file: file_paths[duplicated_file]}
127
+ for duplicated_file in duplicates_file_names
128
+ ]
129
+
101
130
  def compute_slices(self) -> Iterable[Optional[Mapping[str, Any]]]:
102
131
  # Sort files by last_modified, uri and return them grouped by last_modified
103
132
  all_files = self.list_files()
104
133
  files_to_read = self._cursor.get_files_to_sync(all_files, self.logger)
105
134
  sorted_files_to_read = sorted(files_to_read, key=lambda f: (f.last_modified, f.uri))
106
135
  slices = [
107
- {"files": list(group[1])}
136
+ {self.FILES_KEY: list(group[1])}
108
137
  for group in itertools.groupby(sorted_files_to_read, lambda f: f.last_modified)
109
138
  ]
139
+ if slices and not self.preserve_subdirectories_directories:
140
+ duplicated_files_names = self._duplicated_files_names(slices)
141
+ if duplicated_files_names:
142
+ raise DuplicatedFilesError(
143
+ format_duplicate_files_error_message(
144
+ stream_name=self.name, duplicated_files_names=duplicated_files_names
145
+ ),
146
+ stream=self.name,
147
+ )
110
148
  return slices
111
149
 
112
150
  def transform_record(
@@ -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.13.0" # Version will be calculated dynamically.
26
+ version = "6.13.1.dev04100" # Version will be calculated dynamically.
27
27
 
28
28
  [tool.poetry-dynamic-versioning]
29
29
  enable = false