airbyte-cdk 6.36.3.dev0__tar.gz → 6.36.5.dev0__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 (367) hide show
  1. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/PKG-INFO +1 -1
  2. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/datetime/datetime_parser.py +7 -1
  3. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/declarative_component_schema.yaml +23 -3
  4. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py +2 -5
  5. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/models/declarative_component_schema.py +2 -2
  6. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +20 -8
  7. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/README.md +5 -5
  8. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/http_job_repository.py +18 -13
  9. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/http_requester.py +7 -1
  10. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/yaml_declarative_source.py +11 -6
  11. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/pyproject.toml +1 -1
  12. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/LICENSE.txt +0 -0
  13. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/LICENSE_SHORT +0 -0
  14. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/README.md +0 -0
  15. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/__init__.py +0 -0
  16. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/cli/__init__.py +0 -0
  17. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/cli/source_declarative_manifest/__init__.py +0 -0
  18. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/cli/source_declarative_manifest/_run.py +0 -0
  19. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/cli/source_declarative_manifest/spec.json +0 -0
  20. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/config_observation.py +0 -0
  21. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector.py +0 -0
  22. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/README.md +0 -0
  23. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/__init__.py +0 -0
  24. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/connector_builder_handler.py +0 -0
  25. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/main.py +0 -0
  26. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/models.py +0 -0
  27. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/test_reader/__init__.py +0 -0
  28. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/test_reader/helpers.py +0 -0
  29. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/test_reader/message_grouper.py +0 -0
  30. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/test_reader/reader.py +0 -0
  31. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/connector_builder/test_reader/types.py +0 -0
  32. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/__init__.py +0 -0
  33. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/destination.py +0 -0
  34. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/README.md +0 -0
  35. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/__init__.py +0 -0
  36. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/config.py +0 -0
  37. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/document_processor.py +0 -0
  38. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/embedder.py +0 -0
  39. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/indexer.py +0 -0
  40. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/test_utils.py +0 -0
  41. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/utils.py +0 -0
  42. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/destinations/vector_db_based/writer.py +0 -0
  43. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/entrypoint.py +0 -0
  44. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/exception_handler.py +0 -0
  45. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/logger.py +0 -0
  46. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/models/__init__.py +0 -0
  47. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/models/airbyte_protocol.py +0 -0
  48. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/models/airbyte_protocol_serializers.py +0 -0
  49. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/models/file_transfer_record_message.py +0 -0
  50. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/models/well_known_types.py +0 -0
  51. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/py.typed +0 -0
  52. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/__init__.py +0 -0
  53. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/abstract_source.py +0 -0
  54. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/__init__.py +0 -0
  55. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/concurrent_read_processor.py +0 -0
  56. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/concurrent_source.py +0 -0
  57. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/concurrent_source_adapter.py +0 -0
  58. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/partition_generation_completed_sentinel.py +0 -0
  59. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/stream_thread_exception.py +0 -0
  60. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/concurrent_source/thread_pool_manager.py +0 -0
  61. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/config.py +0 -0
  62. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/connector_state_manager.py +0 -0
  63. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/__init__.py +0 -0
  64. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/__init__.py +0 -0
  65. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/job.py +0 -0
  66. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/job_orchestrator.py +0 -0
  67. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/job_tracker.py +0 -0
  68. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/repository.py +0 -0
  69. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/status.py +0 -0
  70. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/async_job/timer.py +0 -0
  71. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/__init__.py +0 -0
  72. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/declarative_authenticator.py +0 -0
  73. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/jwt.py +0 -0
  74. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/oauth.py +0 -0
  75. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/selective_authenticator.py +0 -0
  76. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/token.py +0 -0
  77. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/auth/token_provider.py +0 -0
  78. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/checks/__init__.py +0 -0
  79. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/checks/check_dynamic_stream.py +0 -0
  80. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/checks/check_stream.py +0 -0
  81. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/checks/connection_checker.py +0 -0
  82. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/concurrency_level/__init__.py +0 -0
  83. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/concurrency_level/concurrency_level.py +0 -0
  84. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/concurrent_declarative_source.py +0 -0
  85. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/datetime/__init__.py +0 -0
  86. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/datetime/min_max_datetime.py +0 -0
  87. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/declarative_source.py +0 -0
  88. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/declarative_stream.py +0 -0
  89. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/__init__.py +0 -0
  90. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/decoder.py +0 -0
  91. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/json_decoder.py +0 -0
  92. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/noop_decoder.py +0 -0
  93. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/pagination_decoder_decorator.py +0 -0
  94. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/xml_decoder.py +0 -0
  95. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/decoders/zipfile_decoder.py +0 -0
  96. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/exceptions.py +0 -0
  97. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/__init__.py +0 -0
  98. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/dpath_extractor.py +0 -0
  99. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/http_selector.py +0 -0
  100. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/record_extractor.py +0 -0
  101. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/record_filter.py +0 -0
  102. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/record_selector.py +0 -0
  103. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py +0 -0
  104. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/extractors/type_transformer.py +0 -0
  105. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/__init__.py +0 -0
  106. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/concurrent_partition_cursor.py +0 -0
  107. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/datetime_based_cursor.py +0 -0
  108. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/declarative_cursor.py +0 -0
  109. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/global_substream_cursor.py +0 -0
  110. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/per_partition_cursor.py +0 -0
  111. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/per_partition_with_global.py +0 -0
  112. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/incremental/resumable_full_refresh_cursor.py +0 -0
  113. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/__init__.py +0 -0
  114. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/filters.py +0 -0
  115. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/interpolated_boolean.py +0 -0
  116. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/interpolated_mapping.py +0 -0
  117. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py +0 -0
  118. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/interpolated_string.py +0 -0
  119. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/interpolation.py +0 -0
  120. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/jinja.py +0 -0
  121. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/interpolation/macros.py +0 -0
  122. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/manifest_declarative_source.py +0 -0
  123. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/migrations/__init__.py +0 -0
  124. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py +0 -0
  125. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/migrations/state_migration.py +0 -0
  126. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/models/__init__.py +0 -0
  127. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/parsers/__init__.py +0 -0
  128. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py +0 -0
  129. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/parsers/custom_exceptions.py +0 -0
  130. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py +0 -0
  131. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py +0 -0
  132. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/__init__.py +0 -0
  133. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py +0 -0
  134. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py +0 -0
  135. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/list_partition_router.py +0 -0
  136. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/partition_router.py +0 -0
  137. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/single_partition_router.py +0 -0
  138. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py +0 -0
  139. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/__init__.py +0 -0
  140. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/__init__.py +0 -0
  141. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/__init__.py +0 -0
  142. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/constant_backoff_strategy.py +0 -0
  143. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/exponential_backoff_strategy.py +0 -0
  144. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/header_helper.py +0 -0
  145. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_time_from_header_backoff_strategy.py +0 -0
  146. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_until_time_from_header_backoff_strategy.py +0 -0
  147. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategy.py +0 -0
  148. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/composite_error_handler.py +0 -0
  149. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_error_handler.py +0 -0
  150. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_http_response_filter.py +0 -0
  151. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/error_handler.py +0 -0
  152. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/error_handlers/http_response_filter.py +0 -0
  153. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/__init__.py +0 -0
  154. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py +0 -0
  155. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py +0 -0
  156. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/paginator.py +0 -0
  157. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py +0 -0
  158. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py +0 -0
  159. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py +0 -0
  160. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/page_increment.py +0 -0
  161. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/pagination_strategy.py +0 -0
  162. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/stop_condition.py +0 -0
  163. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_option.py +0 -0
  164. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/__init__.py +0 -0
  165. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/datetime_based_request_options_provider.py +0 -0
  166. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/default_request_options_provider.py +0 -0
  167. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_nested_request_input_provider.py +0 -0
  168. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_input_provider.py +0 -0
  169. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py +0 -0
  170. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_options/request_options_provider.py +0 -0
  171. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/request_path.py +0 -0
  172. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/requesters/requester.py +0 -0
  173. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/resolvers/__init__.py +0 -0
  174. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/resolvers/components_resolver.py +0 -0
  175. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py +0 -0
  176. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py +0 -0
  177. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/retrievers/__init__.py +0 -0
  178. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/retrievers/async_retriever.py +0 -0
  179. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/retrievers/retriever.py +0 -0
  180. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +0 -0
  181. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/schema/__init__.py +0 -0
  182. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/schema/default_schema_loader.py +0 -0
  183. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py +0 -0
  184. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/schema/inline_schema_loader.py +0 -0
  185. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/schema/json_file_schema_loader.py +0 -0
  186. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/schema/schema_loader.py +0 -0
  187. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/spec/__init__.py +0 -0
  188. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/spec/spec.py +0 -0
  189. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/stream_slicers/__init__.py +0 -0
  190. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/stream_slicers/declarative_partition_generator.py +0 -0
  191. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/stream_slicers/stream_slicer.py +0 -0
  192. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/__init__.py +0 -0
  193. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/add_fields.py +0 -0
  194. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py +0 -0
  195. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/flatten_fields.py +0 -0
  196. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/keys_replace_transformation.py +0 -0
  197. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/keys_to_lower_transformation.py +0 -0
  198. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/keys_to_snake_transformation.py +0 -0
  199. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/remove_fields.py +0 -0
  200. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/transformations/transformation.py +0 -0
  201. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/declarative/types.py +0 -0
  202. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/embedded/__init__.py +0 -0
  203. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/embedded/base_integration.py +0 -0
  204. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/embedded/catalog.py +0 -0
  205. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/embedded/runner.py +0 -0
  206. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/embedded/tools.py +0 -0
  207. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/README.md +0 -0
  208. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/__init__.py +0 -0
  209. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/availability_strategy/__init__.py +0 -0
  210. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/availability_strategy/abstract_file_based_availability_strategy.py +0 -0
  211. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py +0 -0
  212. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/__init__.py +0 -0
  213. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/abstract_file_based_spec.py +0 -0
  214. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/avro_format.py +0 -0
  215. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/csv_format.py +0 -0
  216. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/excel_format.py +0 -0
  217. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/file_based_stream_config.py +0 -0
  218. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/jsonl_format.py +0 -0
  219. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/parquet_format.py +0 -0
  220. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/unstructured_format.py +0 -0
  221. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/config/validate_config_transfer_modes.py +0 -0
  222. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/discovery_policy/__init__.py +0 -0
  223. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/discovery_policy/abstract_discovery_policy.py +0 -0
  224. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/discovery_policy/default_discovery_policy.py +0 -0
  225. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/exceptions.py +0 -0
  226. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_based_source.py +0 -0
  227. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_based_stream_reader.py +0 -0
  228. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/__init__.py +0 -0
  229. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/avro_parser.py +0 -0
  230. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/csv_parser.py +0 -0
  231. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/excel_parser.py +0 -0
  232. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/file_transfer.py +0 -0
  233. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/file_type_parser.py +0 -0
  234. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/jsonl_parser.py +0 -0
  235. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/parquet_parser.py +0 -0
  236. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/file_types/unstructured_parser.py +0 -0
  237. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/remote_file.py +0 -0
  238. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/schema_helpers.py +0 -0
  239. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/schema_validation_policies/__init__.py +0 -0
  240. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/schema_validation_policies/abstract_schema_validation_policy.py +0 -0
  241. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/schema_validation_policies/default_schema_validation_policies.py +0 -0
  242. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/__init__.py +0 -0
  243. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py +0 -0
  244. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/concurrent/__init__.py +0 -0
  245. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/concurrent/adapters.py +0 -0
  246. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/__init__.py +0 -0
  247. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/abstract_concurrent_file_based_cursor.py +0 -0
  248. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_concurrent_cursor.py +0 -0
  249. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_final_state_cursor.py +0 -0
  250. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/cursor/__init__.py +0 -0
  251. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/cursor/abstract_file_based_cursor.py +0 -0
  252. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/cursor/default_file_based_cursor.py +0 -0
  253. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py +0 -0
  254. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/identities_stream.py +0 -0
  255. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/stream/permissions_file_based_stream.py +0 -0
  256. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/file_based/types.py +0 -0
  257. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/http_config.py +0 -0
  258. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/http_logger.py +0 -0
  259. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/message/__init__.py +0 -0
  260. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/message/repository.py +0 -0
  261. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/source.py +0 -0
  262. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/specs/transfer_modes.py +0 -0
  263. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/__init__.py +0 -0
  264. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/availability_strategy.py +0 -0
  265. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/call_rate.py +0 -0
  266. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/checkpoint/__init__.py +0 -0
  267. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/checkpoint/checkpoint_reader.py +0 -0
  268. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/checkpoint/cursor.py +0 -0
  269. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/checkpoint/per_partition_key_serializer.py +0 -0
  270. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/checkpoint/resumable_full_refresh_cursor.py +0 -0
  271. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/checkpoint/substream_resumable_full_refresh_cursor.py +0 -0
  272. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/README.md +0 -0
  273. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/__init__.py +0 -0
  274. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/abstract_stream.py +0 -0
  275. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/abstract_stream_facade.py +0 -0
  276. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/adapters.py +0 -0
  277. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/availability_strategy.py +0 -0
  278. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/clamping.py +0 -0
  279. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/cursor.py +0 -0
  280. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/cursor_types.py +0 -0
  281. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/default_stream.py +0 -0
  282. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/exceptions.py +0 -0
  283. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/helpers.py +0 -0
  284. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partition_enqueuer.py +0 -0
  285. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partition_reader.py +0 -0
  286. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partitions/__init__.py +0 -0
  287. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partitions/partition.py +0 -0
  288. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partitions/partition_generator.py +0 -0
  289. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partitions/stream_slicer.py +0 -0
  290. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/partitions/types.py +0 -0
  291. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/state_converters/__init__.py +0 -0
  292. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/state_converters/abstract_stream_state_converter.py +0 -0
  293. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/concurrent/state_converters/datetime_stream_state_converter.py +0 -0
  294. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/core.py +0 -0
  295. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/__init__.py +0 -0
  296. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/availability_strategy.py +0 -0
  297. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/__init__.py +0 -0
  298. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/backoff_strategy.py +0 -0
  299. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/default_backoff_strategy.py +0 -0
  300. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py +0 -0
  301. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/error_handler.py +0 -0
  302. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/error_message_parser.py +0 -0
  303. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/http_status_error_handler.py +0 -0
  304. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/json_error_message_parser.py +0 -0
  305. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/error_handlers/response_models.py +0 -0
  306. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/exceptions.py +0 -0
  307. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/http.py +0 -0
  308. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/http_client.py +0 -0
  309. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/rate_limiting.py +0 -0
  310. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/requests_native_auth/__init__.py +0 -0
  311. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_oauth.py +0 -0
  312. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_token.py +0 -0
  313. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/requests_native_auth/oauth.py +0 -0
  314. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/http/requests_native_auth/token.py +0 -0
  315. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/permissions/identities_stream.py +0 -0
  316. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/streams/utils/__init__.py +0 -0
  317. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/types.py +0 -0
  318. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/__init__.py +0 -0
  319. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/casing.py +0 -0
  320. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/record_helper.py +0 -0
  321. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/schema_helpers.py +0 -0
  322. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/slice_logger.py +0 -0
  323. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/transform.py +0 -0
  324. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sources/utils/types.py +0 -0
  325. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/__init__.py +0 -0
  326. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/_util/__init__.py +0 -0
  327. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/_util/hashing.py +0 -0
  328. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/_util/name_normalizers.py +0 -0
  329. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/constants.py +0 -0
  330. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/exceptions.py +0 -0
  331. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/secrets.py +0 -0
  332. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/shared/__init__.py +0 -0
  333. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/shared/catalog_providers.py +0 -0
  334. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/shared/sql_processor.py +0 -0
  335. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/sql/types.py +0 -0
  336. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/__init__.py +0 -0
  337. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/catalog_builder.py +0 -0
  338. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/entrypoint_wrapper.py +0 -0
  339. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/mock_http/__init__.py +0 -0
  340. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/mock_http/matcher.py +0 -0
  341. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/mock_http/mocker.py +0 -0
  342. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/mock_http/request.py +0 -0
  343. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/mock_http/response.py +0 -0
  344. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/mock_http/response_builder.py +0 -0
  345. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/state_builder.py +0 -0
  346. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/utils/__init__.py +0 -0
  347. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/utils/data.py +0 -0
  348. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/utils/http_mocking.py +0 -0
  349. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/utils/manifest_only_fixtures.py +0 -0
  350. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/test/utils/reading.py +0 -0
  351. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/__init__.py +0 -0
  352. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/airbyte_secrets_utils.py +0 -0
  353. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/analytics_message.py +0 -0
  354. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/constants.py +0 -0
  355. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/datetime_format_inferrer.py +0 -0
  356. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/datetime_helpers.py +0 -0
  357. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/event_timing.py +0 -0
  358. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/is_cloud_environment.py +0 -0
  359. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/mapping_helpers.py +0 -0
  360. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/message_utils.py +0 -0
  361. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/oneof_option_config.py +0 -0
  362. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/print_buffer.py +0 -0
  363. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/schema_inferrer.py +0 -0
  364. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/slice_hasher.py +0 -0
  365. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/spec_schema_transformations.py +0 -0
  366. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/stream_status_utils.py +0 -0
  367. {airbyte_cdk-6.36.3.dev0 → airbyte_cdk-6.36.5.dev0}/airbyte_cdk/utils/traced_exception.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: airbyte-cdk
3
- Version: 6.36.3.dev0
3
+ Version: 6.36.5.dev0
4
4
  Summary: A framework for writing Airbyte Connectors.
5
5
  Home-page: https://airbyte.com
6
6
  License: MIT
@@ -31,7 +31,8 @@ class DatetimeParser:
31
31
  return datetime.datetime.fromtimestamp(float(date), tz=datetime.timezone.utc)
32
32
  elif format == "%ms":
33
33
  return self._UNIX_EPOCH + datetime.timedelta(milliseconds=int(date))
34
-
34
+ elif "%_ms" in format:
35
+ format = format.replace("%_ms", "%f")
35
36
  parsed_datetime = datetime.datetime.strptime(str(date), format)
36
37
  if self._is_naive(parsed_datetime):
37
38
  return parsed_datetime.replace(tzinfo=datetime.timezone.utc)
@@ -48,6 +49,11 @@ class DatetimeParser:
48
49
  if format == "%ms":
49
50
  # timstamp() returns a float representing the number of seconds since the unix epoch
50
51
  return str(int(dt.timestamp() * 1000))
52
+ if "%_ms" in format:
53
+ _format = format.replace("%_ms", "%f")
54
+ milliseconds = int(dt.microsecond / 1000)
55
+ formatted_dt = dt.strftime(_format).replace(dt.strftime("%f"), "%03d" % milliseconds)
56
+ return formatted_dt
51
57
  else:
52
58
  return dt.strftime(format)
53
59
 
@@ -844,6 +844,7 @@ definitions:
844
844
  * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`
845
845
  * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`
846
846
  * **%f**: Microsecond (zero-padded to 6 digits) - `000000`
847
+ * **%_ms**: Millisecond (zero-padded to 3 digits) - `000`
847
848
  * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`
848
849
  * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`
849
850
  * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`
@@ -1779,6 +1780,9 @@ definitions:
1779
1780
  - stream_interval
1780
1781
  - stream_partition
1781
1782
  - stream_slice
1783
+ - creation_response
1784
+ - polling_response
1785
+ - download_target
1782
1786
  examples:
1783
1787
  - "/products"
1784
1788
  - "/quotes/{{ stream_partition['id'] }}/quote_line_groups"
@@ -2398,6 +2402,7 @@ definitions:
2398
2402
  * **%M**: Minute (zero-padded) - `00`, `01`, ..., `59`
2399
2403
  * **%S**: Second (zero-padded) - `00`, `01`, ..., `59`
2400
2404
  * **%f**: Microsecond (zero-padded to 6 digits) - `000000`, `000001`, ..., `999999`
2405
+ * **%_ms**: Millisecond (zero-padded to 3 digits) - `000`, `001`, ..., `999`
2401
2406
  * **%z**: UTC offset - `(empty)`, `+0000`, `-04:00`
2402
2407
  * **%Z**: Time zone name - `(empty)`, `UTC`, `GMT`
2403
2408
  * **%j**: Day of the year (zero-padded) - `001`, `002`, ..., `366`
@@ -3223,7 +3228,7 @@ definitions:
3223
3228
  - polling_requester
3224
3229
  - download_requester
3225
3230
  - status_extractor
3226
- - urls_extractor
3231
+ - download_target_extractor
3227
3232
  properties:
3228
3233
  type:
3229
3234
  type: string
@@ -3240,7 +3245,7 @@ definitions:
3240
3245
  anyOf:
3241
3246
  - "$ref": "#/definitions/CustomRecordExtractor"
3242
3247
  - "$ref": "#/definitions/DpathExtractor"
3243
- urls_extractor:
3248
+ download_target_extractor:
3244
3249
  description: Responsible for fetching the final result `urls` provided by the completed / finished / ready async job.
3245
3250
  anyOf:
3246
3251
  - "$ref": "#/definitions/CustomRecordExtractor"
@@ -3261,7 +3266,7 @@ definitions:
3261
3266
  anyOf:
3262
3267
  - "$ref": "#/definitions/CustomRequester"
3263
3268
  - "$ref": "#/definitions/HttpRequester"
3264
- url_requester:
3269
+ download_target_requester:
3265
3270
  description: Requester component that describes how to prepare HTTP requests to send to the source API to extract the url from polling response by the completed async job.
3266
3271
  anyOf:
3267
3272
  - "$ref": "#/definitions/CustomRequester"
@@ -3667,6 +3672,21 @@ interpolation:
3667
3672
  self: https://api.sendgrid.com/v3/marketing/lists?page_size=1&page_token=
3668
3673
  next: https://api.sendgrid.com/v3/marketing/lists?page_size=1&page_token=0236d6d2
3669
3674
  count: 82
3675
+ - title: creation_response
3676
+ description: The response received from the creation_requester in the AsyncRetriever component.
3677
+ type: object
3678
+ examples:
3679
+ - id: "1234"
3680
+ - title: polling_response
3681
+ description: The response received from the polling_requester in the AsyncRetriever component.
3682
+ type: object
3683
+ examples:
3684
+ - id: "1234"
3685
+ - title: download_target
3686
+ description: The `URL` received from the polling_requester in the AsyncRetriever with jobStatus as `COMPLETED`.
3687
+ type: string
3688
+ examples:
3689
+ - "https://api.sendgrid.com/v3/marketing/lists?page_size=1&page_token=0236d6d2&filename=xxx_yyy_zzz.csv"
3670
3690
  - title: stream_interval
3671
3691
  description: The current stream interval being processed. The keys are defined by the incremental sync component. Default keys are `start_time` and `end_time`.
3672
3692
  type: object
@@ -5,7 +5,7 @@ import json
5
5
  import logging
6
6
  from abc import ABC, abstractmethod
7
7
  from dataclasses import dataclass
8
- from io import BufferedIOBase, BytesIO, TextIOWrapper
8
+ from io import BufferedIOBase, TextIOWrapper
9
9
  from typing import Any, Generator, MutableMapping, Optional
10
10
 
11
11
  import orjson
@@ -124,8 +124,7 @@ class CsvParser(Parser):
124
124
  """
125
125
  Parse CSV data from decompressed bytes.
126
126
  """
127
- bytes_data = BytesIO(data.read())
128
- text_data = TextIOWrapper(bytes_data, encoding=self.encoding) # type: ignore
127
+ text_data = TextIOWrapper(data, encoding=self.encoding) # type: ignore
129
128
  reader = csv.DictReader(text_data, delimiter=self._get_delimiter() or ",")
130
129
  for row in reader:
131
130
  yield row
@@ -152,8 +151,6 @@ class CompositeRawDecoder(Decoder):
152
151
  self, response: requests.Response
153
152
  ) -> Generator[MutableMapping[str, Any], None, None]:
154
153
  if self.is_stream_response():
155
- response.raw.auto_close = False
156
154
  yield from self.parser.parse(data=response.raw) # type: ignore[arg-type]
157
- response.raw.close()
158
155
  else:
159
156
  yield from self.parser.parse(data=io.BytesIO(response.content))
@@ -2263,7 +2263,7 @@ class AsyncRetriever(BaseModel):
2263
2263
  status_extractor: Union[CustomRecordExtractor, DpathExtractor] = Field(
2264
2264
  ..., description="Responsible for fetching the actual status of the async job."
2265
2265
  )
2266
- urls_extractor: Union[CustomRecordExtractor, DpathExtractor] = Field(
2266
+ download_target_extractor: Union[CustomRecordExtractor, DpathExtractor] = Field(
2267
2267
  ...,
2268
2268
  description="Responsible for fetching the final result `urls` provided by the completed / finished / ready async job.",
2269
2269
  )
@@ -2278,7 +2278,7 @@ class AsyncRetriever(BaseModel):
2278
2278
  ...,
2279
2279
  description="Requester component that describes how to prepare HTTP requests to send to the source API to fetch the status of the running async job.",
2280
2280
  )
2281
- url_requester: Optional[Union[CustomRequester, HttpRequester]] = Field(
2281
+ download_target_requester: Optional[Union[CustomRequester, HttpRequester]] = Field(
2282
2282
  None,
2283
2283
  description="Requester component that describes how to prepare HTTP requests to send to the source API to extract the url from polling response by the completed async job.",
2284
2284
  )
@@ -1405,7 +1405,19 @@ class ModelToComponentFactory:
1405
1405
  try:
1406
1406
  module_ref = importlib.import_module(module_name_full)
1407
1407
  except ModuleNotFoundError as e:
1408
- raise ValueError(f"Could not load module `{module_name_full}`.") from e
1408
+ if split[0] == "source_declarative_manifest":
1409
+ # During testing, the modules containing the custom components are not moved to source_declarative_manifest. In order to run the test, add the source folder to your PYTHONPATH or add it runtime using sys.path.append
1410
+ try:
1411
+ import os
1412
+
1413
+ module_name_with_source_declarative_manifest = ".".join(split[1:-1])
1414
+ module_ref = importlib.import_module(
1415
+ module_name_with_source_declarative_manifest
1416
+ )
1417
+ except ModuleNotFoundError:
1418
+ raise ValueError(f"Could not load module `{module_name_full}`.") from e
1419
+ else:
1420
+ raise ValueError(f"Could not load module `{module_name_full}`.") from e
1409
1421
 
1410
1422
  try:
1411
1423
  return getattr(module_ref, class_name)
@@ -2744,32 +2756,32 @@ class ModelToComponentFactory:
2744
2756
  if model.delete_requester
2745
2757
  else None
2746
2758
  )
2747
- url_requester = (
2759
+ download_target_requester = (
2748
2760
  self._create_component_from_model(
2749
- model=model.url_requester,
2761
+ model=model.download_target_requester,
2750
2762
  decoder=decoder,
2751
2763
  config=config,
2752
2764
  name=f"job extract_url - {name}",
2753
2765
  )
2754
- if model.url_requester
2766
+ if model.download_target_requester
2755
2767
  else None
2756
2768
  )
2757
2769
  status_extractor = self._create_component_from_model(
2758
2770
  model=model.status_extractor, decoder=decoder, config=config, name=name
2759
2771
  )
2760
- urls_extractor = self._create_component_from_model(
2761
- model=model.urls_extractor, decoder=decoder, config=config, name=name
2772
+ download_target_extractor = self._create_component_from_model(
2773
+ model=model.download_target_extractor, decoder=decoder, config=config, name=name
2762
2774
  )
2763
2775
  job_repository: AsyncJobRepository = AsyncHttpJobRepository(
2764
2776
  creation_requester=creation_requester,
2765
2777
  polling_requester=polling_requester,
2766
2778
  download_retriever=download_retriever,
2767
- url_requester=url_requester,
2779
+ download_target_requester=download_target_requester,
2768
2780
  abort_requester=abort_requester,
2769
2781
  delete_requester=delete_requester,
2770
2782
  status_extractor=status_extractor,
2771
2783
  status_mapping=self._create_async_job_status_mapping(model.status_mapping, config),
2772
- urls_extractor=urls_extractor,
2784
+ download_target_extractor=download_target_extractor,
2773
2785
  )
2774
2786
 
2775
2787
  async_job_partition_router = AsyncJobPartitionRouter(
@@ -1,8 +1,8 @@
1
1
  # AsyncHttpJobRepository sequence diagram
2
2
 
3
3
  - Components marked as optional are not required and can be ignored.
4
- - if `url_requester` is not provided, `urls_extractor` will get urls from the `polling_job_response`
5
- - interpolation_context, e.g. `create_job_response` or `polling_job_response` can be obtained from stream_slice
4
+ - if `download_target_requester` is not provided, `download_target_extractor` will get urls from the `polling_response`
5
+ - interpolation_context, e.g. `creation_response` or `polling_response` can be obtained from stream_slice
6
6
 
7
7
  ```mermaid
8
8
  ---
@@ -12,7 +12,7 @@ sequenceDiagram
12
12
  participant AsyncHttpJobRepository as AsyncOrchestrator
13
13
  participant CreationRequester as creation_requester
14
14
  participant PollingRequester as polling_requester
15
- participant UrlRequester as url_requester (Optional)
15
+ participant UrlRequester as download_target_requester (Optional)
16
16
  participant DownloadRetriever as download_retriever
17
17
  participant AbortRequester as abort_requester (Optional)
18
18
  participant DeleteRequester as delete_requester (Optional)
@@ -25,14 +25,14 @@ sequenceDiagram
25
25
 
26
26
  loop Poll for job status
27
27
  AsyncHttpJobRepository ->> PollingRequester: Check job status
28
- PollingRequester ->> Reporting Server: Status request (interpolation_context: `create_job_response`)
28
+ PollingRequester ->> Reporting Server: Status request (interpolation_context: `creation_response`)
29
29
  Reporting Server -->> PollingRequester: Status response
30
30
  PollingRequester -->> AsyncHttpJobRepository: Job status
31
31
  end
32
32
 
33
33
  alt Status: Ready
34
34
  AsyncHttpJobRepository ->> UrlRequester: Request download URLs (if applicable)
35
- UrlRequester ->> Reporting Server: URL request (interpolation_context: `polling_job_response`)
35
+ UrlRequester ->> Reporting Server: URL request (interpolation_context: `polling_response`)
36
36
  Reporting Server -->> UrlRequester: Download URLs
37
37
  UrlRequester -->> AsyncHttpJobRepository: Download URLs
38
38
 
@@ -43,13 +43,13 @@ class AsyncHttpJobRepository(AsyncJobRepository):
43
43
  delete_requester: Optional[Requester]
44
44
  status_extractor: DpathExtractor
45
45
  status_mapping: Mapping[str, AsyncJobStatus]
46
- urls_extractor: DpathExtractor
46
+ download_target_extractor: DpathExtractor
47
47
 
48
48
  job_timeout: Optional[timedelta] = None
49
49
  record_extractor: RecordExtractor = field(
50
50
  init=False, repr=False, default_factory=lambda: ResponseToFileExtractor({})
51
51
  )
52
- url_requester: Optional[Requester] = (
52
+ download_target_requester: Optional[Requester] = (
53
53
  None # use it in case polling_requester provides some <id> and extra request is needed to obtain list of urls to download from
54
54
  )
55
55
 
@@ -211,12 +211,15 @@ class AsyncHttpJobRepository(AsyncJobRepository):
211
211
 
212
212
  """
213
213
 
214
- for url in self._get_download_url(job):
214
+ for target_url in self._get_download_targets(job):
215
215
  job_slice = job.job_parameters()
216
216
  stream_slice = StreamSlice(
217
217
  partition=job_slice.partition,
218
218
  cursor_slice=job_slice.cursor_slice,
219
- extra_fields={**job_slice.extra_fields, "url": url},
219
+ extra_fields={
220
+ **job_slice.extra_fields,
221
+ "download_target": target_url,
222
+ },
220
223
  )
221
224
  for message in self.download_retriever.read_records({}, stream_slice):
222
225
  if isinstance(message, Record):
@@ -269,27 +272,29 @@ class AsyncHttpJobRepository(AsyncJobRepository):
269
272
  del self._polling_job_response_by_id[job_id]
270
273
 
271
274
  def _get_create_job_stream_slice(self, job: AsyncJob) -> StreamSlice:
275
+ creation_response = self._create_job_response_by_id[job.api_job_id()].json()
272
276
  stream_slice = StreamSlice(
273
- partition={"create_job_response": self._create_job_response_by_id[job.api_job_id()]},
277
+ partition={},
274
278
  cursor_slice={},
279
+ extra_fields={"creation_response": creation_response},
275
280
  )
276
281
  return stream_slice
277
282
 
278
- def _get_download_url(self, job: AsyncJob) -> Iterable[str]:
279
- if not self.url_requester:
283
+ def _get_download_targets(self, job: AsyncJob) -> Iterable[str]:
284
+ if not self.download_target_requester:
280
285
  url_response = self._polling_job_response_by_id[job.api_job_id()]
281
286
  else:
287
+ polling_response = self._polling_job_response_by_id[job.api_job_id()].json()
282
288
  stream_slice: StreamSlice = StreamSlice(
283
- partition={
284
- "polling_job_response": self._polling_job_response_by_id[job.api_job_id()]
285
- },
289
+ partition={},
286
290
  cursor_slice={},
291
+ extra_fields={"polling_response": polling_response},
287
292
  )
288
- url_response = self.url_requester.send_request(stream_slice=stream_slice) # type: ignore # we expect url_requester to always be presented, otherwise raise an exception as we cannot proceed with the report
293
+ url_response = self.download_target_requester.send_request(stream_slice=stream_slice) # type: ignore # we expect download_target_requester to always be presented, otherwise raise an exception as we cannot proceed with the report
289
294
  if not url_response:
290
295
  raise AirbyteTracedException(
291
- internal_message="Always expect a response or an exception from url_requester",
296
+ internal_message="Always expect a response or an exception from download_target_requester",
292
297
  failure_type=FailureType.system_error,
293
298
  )
294
299
 
295
- yield from self.urls_extractor.extract_records(url_response) # type: ignore # we expect urls_extractor to always return list of strings
300
+ yield from self.download_target_extractor.extract_records(url_response) # type: ignore # we expect download_target_extractor to always return list of strings
@@ -85,7 +85,7 @@ class HttpRequester(Requester):
85
85
  self._parameters = parameters
86
86
 
87
87
  if self.error_handler is not None and hasattr(self.error_handler, "backoff_strategies"):
88
- backoff_strategies = self.error_handler.backoff_strategies
88
+ backoff_strategies = self.error_handler.backoff_strategies # type: ignore
89
89
  else:
90
90
  backoff_strategies = None
91
91
 
@@ -125,6 +125,12 @@ class HttpRequester(Requester):
125
125
  kwargs = {
126
126
  "stream_slice": stream_slice,
127
127
  "next_page_token": next_page_token,
128
+ # update the interpolation context with extra fields, if passed.
129
+ **(
130
+ stream_slice.extra_fields
131
+ if stream_slice is not None and hasattr(stream_slice, "extra_fields")
132
+ else {}
133
+ ),
128
134
  }
129
135
  path = str(self._path.eval(self.config, **kwargs))
130
136
  return path.lstrip("/")
@@ -39,13 +39,18 @@ class YamlDeclarativeSource(ConcurrentDeclarativeSource[List[AirbyteStateMessage
39
39
  )
40
40
 
41
41
  def _read_and_parse_yaml_file(self, path_to_yaml_file: str) -> ConnectionDefinition:
42
- package = self.__class__.__module__.split(".")[0]
42
+ try:
43
+ # For testing purposes, we want to allow to just pass a file. However, this
44
+ with open(path_to_yaml_file, "r") as f:
45
+ return yaml.safe_load(f) # type: ignore # we assume the yaml represents a ConnectionDefinition
46
+ except FileNotFoundError:
47
+ # Running inside the container, the working directory during an operation is not structured the same as the static files
48
+ package = self.__class__.__module__.split(".")[0]
43
49
 
44
- yaml_config = pkgutil.get_data(package, path_to_yaml_file)
45
- if yaml_config:
46
- decoded_yaml = yaml_config.decode()
47
- return self._parse(decoded_yaml)
48
- else:
50
+ yaml_config = pkgutil.get_data(package, path_to_yaml_file)
51
+ if yaml_config:
52
+ decoded_yaml = yaml_config.decode()
53
+ return self._parse(decoded_yaml)
49
54
  return {}
50
55
 
51
56
  def _emit_manifest_debug_message(self, extra_args: dict[str, Any]) -> None:
@@ -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.36.3dev0" # Version will be calculated dynamically.
26
+ version = "6.36.5dev" # Version will be calculated dynamically.
27
27
 
28
28
  [tool.poetry-dynamic-versioning]
29
29
  enable = false