airbyte-cdk 6.45.4.post72.dev14497997772__tar.gz → 6.45.6__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 (384) hide show
  1. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/PKG-INFO +1 -1
  2. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/oauth.py +2 -2
  3. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/concurrent_declarative_source.py +6 -2
  4. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/parsers/model_to_component_factory.py +3 -1
  5. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/property_chunking.py +2 -0
  6. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/retrievers/simple_retriever.py +106 -101
  7. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_oauth.py +28 -11
  8. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/requests_native_auth/oauth.py +4 -27
  9. airbyte_cdk-6.45.4.post72.dev14497997772/airbyte_cdk/test/declarative/utils/job_runner.py → airbyte_cdk-6.45.6/airbyte_cdk/test/standard_tests/_job_runner.py +1 -1
  10. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/standard_tests/connector_base.py +2 -2
  11. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/standard_tests/declarative_sources.py +2 -2
  12. {airbyte_cdk-6.45.4.post72.dev14497997772/airbyte_cdk/test/declarative → airbyte_cdk-6.45.6/airbyte_cdk/test/standard_tests}/models/__init__.py +1 -1
  13. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/standard_tests/source_base.py +4 -4
  14. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/pyproject.toml +1 -1
  15. airbyte_cdk-6.45.4.post72.dev14497997772/airbyte_cdk/test/declarative/__init__.py +0 -6
  16. airbyte_cdk-6.45.4.post72.dev14497997772/airbyte_cdk/test/declarative/utils/__init__.py +0 -0
  17. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/LICENSE.txt +0 -0
  18. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/LICENSE_SHORT +0 -0
  19. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/README.md +0 -0
  20. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/__init__.py +0 -0
  21. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/cli/__init__.py +0 -0
  22. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/cli/source_declarative_manifest/__init__.py +0 -0
  23. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/cli/source_declarative_manifest/_run.py +0 -0
  24. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/cli/source_declarative_manifest/spec.json +0 -0
  25. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/config_observation.py +0 -0
  26. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector.py +0 -0
  27. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/README.md +0 -0
  28. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/__init__.py +0 -0
  29. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/connector_builder_handler.py +0 -0
  30. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/main.py +0 -0
  31. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/models.py +0 -0
  32. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/test_reader/__init__.py +0 -0
  33. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/test_reader/helpers.py +0 -0
  34. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/test_reader/message_grouper.py +0 -0
  35. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/test_reader/reader.py +0 -0
  36. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/connector_builder/test_reader/types.py +0 -0
  37. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/__init__.py +0 -0
  38. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/destination.py +0 -0
  39. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/README.md +0 -0
  40. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/__init__.py +0 -0
  41. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/config.py +0 -0
  42. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/document_processor.py +0 -0
  43. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/embedder.py +0 -0
  44. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/indexer.py +0 -0
  45. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/test_utils.py +0 -0
  46. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/utils.py +0 -0
  47. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/destinations/vector_db_based/writer.py +0 -0
  48. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/entrypoint.py +0 -0
  49. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/exception_handler.py +0 -0
  50. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/logger.py +0 -0
  51. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/models/__init__.py +0 -0
  52. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/models/airbyte_protocol.py +0 -0
  53. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/models/airbyte_protocol_serializers.py +0 -0
  54. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/models/file_transfer_record_message.py +0 -0
  55. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/models/well_known_types.py +0 -0
  56. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/py.typed +0 -0
  57. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/__init__.py +0 -0
  58. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/abstract_source.py +0 -0
  59. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/__init__.py +0 -0
  60. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/concurrent_read_processor.py +0 -0
  61. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/concurrent_source.py +0 -0
  62. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/concurrent_source_adapter.py +0 -0
  63. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/partition_generation_completed_sentinel.py +0 -0
  64. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/stream_thread_exception.py +0 -0
  65. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/concurrent_source/thread_pool_manager.py +0 -0
  66. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/config.py +0 -0
  67. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/connector_state_manager.py +0 -0
  68. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/__init__.py +0 -0
  69. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/__init__.py +0 -0
  70. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/job.py +0 -0
  71. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/job_orchestrator.py +0 -0
  72. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/job_tracker.py +0 -0
  73. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/repository.py +0 -0
  74. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/status.py +0 -0
  75. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/async_job/timer.py +0 -0
  76. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/__init__.py +0 -0
  77. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/declarative_authenticator.py +0 -0
  78. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/jwt.py +0 -0
  79. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/selective_authenticator.py +0 -0
  80. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/token.py +0 -0
  81. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/auth/token_provider.py +0 -0
  82. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/checks/__init__.py +0 -0
  83. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/checks/check_dynamic_stream.py +0 -0
  84. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/checks/check_stream.py +0 -0
  85. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/checks/connection_checker.py +0 -0
  86. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/concurrency_level/__init__.py +0 -0
  87. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/concurrency_level/concurrency_level.py +0 -0
  88. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/datetime/__init__.py +0 -0
  89. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/datetime/datetime_parser.py +0 -0
  90. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/datetime/min_max_datetime.py +0 -0
  91. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/declarative_component_schema.yaml +0 -0
  92. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/declarative_source.py +0 -0
  93. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/declarative_stream.py +0 -0
  94. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/__init__.py +0 -0
  95. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/composite_raw_decoder.py +0 -0
  96. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/decoder.py +0 -0
  97. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/decoder_parser.py +0 -0
  98. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/json_decoder.py +0 -0
  99. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/noop_decoder.py +0 -0
  100. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/pagination_decoder_decorator.py +0 -0
  101. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/xml_decoder.py +0 -0
  102. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/decoders/zipfile_decoder.py +0 -0
  103. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/exceptions.py +0 -0
  104. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/__init__.py +0 -0
  105. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/dpath_extractor.py +0 -0
  106. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/http_selector.py +0 -0
  107. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/record_extractor.py +0 -0
  108. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/record_filter.py +0 -0
  109. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/record_selector.py +0 -0
  110. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/response_to_file_extractor.py +0 -0
  111. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/extractors/type_transformer.py +0 -0
  112. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/__init__.py +0 -0
  113. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/concurrent_partition_cursor.py +0 -0
  114. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/datetime_based_cursor.py +0 -0
  115. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/declarative_cursor.py +0 -0
  116. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/global_substream_cursor.py +0 -0
  117. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/per_partition_cursor.py +0 -0
  118. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/per_partition_with_global.py +0 -0
  119. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/incremental/resumable_full_refresh_cursor.py +0 -0
  120. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/__init__.py +0 -0
  121. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/filters.py +0 -0
  122. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/interpolated_boolean.py +0 -0
  123. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/interpolated_mapping.py +0 -0
  124. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/interpolated_nested_mapping.py +0 -0
  125. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/interpolated_string.py +0 -0
  126. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/interpolation.py +0 -0
  127. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/jinja.py +0 -0
  128. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/interpolation/macros.py +0 -0
  129. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/manifest_declarative_source.py +0 -0
  130. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/migrations/__init__.py +0 -0
  131. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/migrations/legacy_to_per_partition_state_migration.py +0 -0
  132. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/migrations/state_migration.py +0 -0
  133. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/models/__init__.py +0 -0
  134. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/models/declarative_component_schema.py +0 -0
  135. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/parsers/__init__.py +0 -0
  136. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/parsers/custom_code_compiler.py +0 -0
  137. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/parsers/custom_exceptions.py +0 -0
  138. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/parsers/manifest_component_transformer.py +0 -0
  139. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/parsers/manifest_reference_resolver.py +0 -0
  140. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/__init__.py +0 -0
  141. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/async_job_partition_router.py +0 -0
  142. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/cartesian_product_stream_slicer.py +0 -0
  143. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/grouping_partition_router.py +0 -0
  144. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/list_partition_router.py +0 -0
  145. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/partition_router.py +0 -0
  146. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/single_partition_router.py +0 -0
  147. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/partition_routers/substream_partition_router.py +0 -0
  148. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/README.md +0 -0
  149. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/__init__.py +0 -0
  150. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/__init__.py +0 -0
  151. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/__init__.py +0 -0
  152. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/constant_backoff_strategy.py +0 -0
  153. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/exponential_backoff_strategy.py +0 -0
  154. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/header_helper.py +0 -0
  155. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_time_from_header_backoff_strategy.py +0 -0
  156. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategies/wait_until_time_from_header_backoff_strategy.py +0 -0
  157. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/backoff_strategy.py +0 -0
  158. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/composite_error_handler.py +0 -0
  159. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_error_handler.py +0 -0
  160. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/default_http_response_filter.py +0 -0
  161. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/error_handler.py +0 -0
  162. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/error_handlers/http_response_filter.py +0 -0
  163. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/http_job_repository.py +0 -0
  164. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/http_requester.py +0 -0
  165. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/__init__.py +0 -0
  166. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/default_paginator.py +0 -0
  167. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/no_pagination.py +0 -0
  168. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/paginator.py +0 -0
  169. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/__init__.py +0 -0
  170. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/cursor_pagination_strategy.py +0 -0
  171. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/offset_increment.py +0 -0
  172. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/page_increment.py +0 -0
  173. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/pagination_strategy.py +0 -0
  174. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/paginators/strategies/stop_condition.py +0 -0
  175. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/__init__.py +0 -0
  176. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/properties_from_endpoint.py +0 -0
  177. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/query_properties.py +0 -0
  178. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/strategies/__init__.py +0 -0
  179. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/strategies/group_by_key.py +0 -0
  180. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/query_properties/strategies/merge_strategy.py +0 -0
  181. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_option.py +0 -0
  182. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/__init__.py +0 -0
  183. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/datetime_based_request_options_provider.py +0 -0
  184. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/default_request_options_provider.py +0 -0
  185. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_nested_request_input_provider.py +0 -0
  186. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_input_provider.py +0 -0
  187. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py +0 -0
  188. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_options/request_options_provider.py +0 -0
  189. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/request_path.py +0 -0
  190. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/requesters/requester.py +0 -0
  191. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/resolvers/__init__.py +0 -0
  192. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/resolvers/components_resolver.py +0 -0
  193. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/resolvers/config_components_resolver.py +0 -0
  194. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/resolvers/http_components_resolver.py +0 -0
  195. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/retrievers/__init__.py +0 -0
  196. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/retrievers/async_retriever.py +0 -0
  197. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/retrievers/retriever.py +0 -0
  198. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/schema/__init__.py +0 -0
  199. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/schema/default_schema_loader.py +0 -0
  200. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/schema/dynamic_schema_loader.py +0 -0
  201. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/schema/inline_schema_loader.py +0 -0
  202. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/schema/json_file_schema_loader.py +0 -0
  203. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/schema/schema_loader.py +0 -0
  204. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/spec/__init__.py +0 -0
  205. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/spec/spec.py +0 -0
  206. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/stream_slicers/__init__.py +0 -0
  207. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/stream_slicers/declarative_partition_generator.py +0 -0
  208. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/stream_slicers/stream_slicer.py +0 -0
  209. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/__init__.py +0 -0
  210. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/add_fields.py +0 -0
  211. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py +0 -0
  212. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/flatten_fields.py +0 -0
  213. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/keys_replace_transformation.py +0 -0
  214. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/keys_to_lower_transformation.py +0 -0
  215. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/keys_to_snake_transformation.py +0 -0
  216. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/remove_fields.py +0 -0
  217. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/transformations/transformation.py +0 -0
  218. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/types.py +0 -0
  219. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/declarative/yaml_declarative_source.py +0 -0
  220. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/README.md +0 -0
  221. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/__init__.py +0 -0
  222. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/availability_strategy/__init__.py +0 -0
  223. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/availability_strategy/abstract_file_based_availability_strategy.py +0 -0
  224. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/availability_strategy/default_file_based_availability_strategy.py +0 -0
  225. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/__init__.py +0 -0
  226. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/abstract_file_based_spec.py +0 -0
  227. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/avro_format.py +0 -0
  228. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/csv_format.py +0 -0
  229. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/excel_format.py +0 -0
  230. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/file_based_stream_config.py +0 -0
  231. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/jsonl_format.py +0 -0
  232. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/parquet_format.py +0 -0
  233. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/unstructured_format.py +0 -0
  234. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/config/validate_config_transfer_modes.py +0 -0
  235. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/discovery_policy/__init__.py +0 -0
  236. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/discovery_policy/abstract_discovery_policy.py +0 -0
  237. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/discovery_policy/default_discovery_policy.py +0 -0
  238. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/exceptions.py +0 -0
  239. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_based_source.py +0 -0
  240. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_based_stream_permissions_reader.py +0 -0
  241. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_based_stream_reader.py +0 -0
  242. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/__init__.py +0 -0
  243. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/avro_parser.py +0 -0
  244. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/csv_parser.py +0 -0
  245. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/excel_parser.py +0 -0
  246. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/file_transfer.py +0 -0
  247. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/file_type_parser.py +0 -0
  248. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/jsonl_parser.py +0 -0
  249. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/parquet_parser.py +0 -0
  250. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/file_types/unstructured_parser.py +0 -0
  251. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/remote_file.py +0 -0
  252. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/schema_helpers.py +0 -0
  253. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/schema_validation_policies/__init__.py +0 -0
  254. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/schema_validation_policies/abstract_schema_validation_policy.py +0 -0
  255. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/schema_validation_policies/default_schema_validation_policies.py +0 -0
  256. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/__init__.py +0 -0
  257. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/abstract_file_based_stream.py +0 -0
  258. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/concurrent/__init__.py +0 -0
  259. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/concurrent/adapters.py +0 -0
  260. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/__init__.py +0 -0
  261. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/abstract_concurrent_file_based_cursor.py +0 -0
  262. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_concurrent_cursor.py +0 -0
  263. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/concurrent/cursor/file_based_final_state_cursor.py +0 -0
  264. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/cursor/__init__.py +0 -0
  265. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/cursor/abstract_file_based_cursor.py +0 -0
  266. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/cursor/default_file_based_cursor.py +0 -0
  267. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/default_file_based_stream.py +0 -0
  268. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/identities_stream.py +0 -0
  269. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/stream/permissions_file_based_stream.py +0 -0
  270. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/file_based/types.py +0 -0
  271. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/http_config.py +0 -0
  272. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/http_logger.py +0 -0
  273. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/message/__init__.py +0 -0
  274. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/message/repository.py +0 -0
  275. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/source.py +0 -0
  276. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/specs/transfer_modes.py +0 -0
  277. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/__init__.py +0 -0
  278. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/availability_strategy.py +0 -0
  279. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/call_rate.py +0 -0
  280. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/checkpoint/__init__.py +0 -0
  281. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/checkpoint/checkpoint_reader.py +0 -0
  282. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/checkpoint/cursor.py +0 -0
  283. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/checkpoint/per_partition_key_serializer.py +0 -0
  284. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/checkpoint/resumable_full_refresh_cursor.py +0 -0
  285. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/checkpoint/substream_resumable_full_refresh_cursor.py +0 -0
  286. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/README.md +0 -0
  287. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/__init__.py +0 -0
  288. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/abstract_stream.py +0 -0
  289. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/abstract_stream_facade.py +0 -0
  290. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/adapters.py +0 -0
  291. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/availability_strategy.py +0 -0
  292. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/clamping.py +0 -0
  293. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/cursor.py +0 -0
  294. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/cursor_types.py +0 -0
  295. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/default_stream.py +0 -0
  296. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/exceptions.py +0 -0
  297. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/helpers.py +0 -0
  298. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partition_enqueuer.py +0 -0
  299. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partition_reader.py +0 -0
  300. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partitions/__init__.py +0 -0
  301. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partitions/partition.py +0 -0
  302. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partitions/partition_generator.py +0 -0
  303. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partitions/stream_slicer.py +0 -0
  304. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/partitions/types.py +0 -0
  305. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/state_converters/__init__.py +0 -0
  306. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/state_converters/abstract_stream_state_converter.py +0 -0
  307. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/state_converters/datetime_stream_state_converter.py +0 -0
  308. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/concurrent/state_converters/incrementing_count_stream_state_converter.py +0 -0
  309. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/core.py +0 -0
  310. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/__init__.py +0 -0
  311. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/availability_strategy.py +0 -0
  312. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/__init__.py +0 -0
  313. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/backoff_strategy.py +0 -0
  314. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/default_backoff_strategy.py +0 -0
  315. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/default_error_mapping.py +0 -0
  316. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/error_handler.py +0 -0
  317. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/error_message_parser.py +0 -0
  318. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/http_status_error_handler.py +0 -0
  319. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/json_error_message_parser.py +0 -0
  320. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/error_handlers/response_models.py +0 -0
  321. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/exceptions.py +0 -0
  322. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/http.py +0 -0
  323. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/http_client.py +0 -0
  324. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/rate_limiting.py +0 -0
  325. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/requests_native_auth/__init__.py +0 -0
  326. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/requests_native_auth/abstract_token.py +0 -0
  327. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/http/requests_native_auth/token.py +0 -0
  328. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/permissions/identities_stream.py +0 -0
  329. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/streams/utils/__init__.py +0 -0
  330. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/types.py +0 -0
  331. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/__init__.py +0 -0
  332. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/casing.py +0 -0
  333. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/record_helper.py +0 -0
  334. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/schema_helpers.py +0 -0
  335. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/slice_logger.py +0 -0
  336. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/transform.py +0 -0
  337. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sources/utils/types.py +0 -0
  338. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/__init__.py +0 -0
  339. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/_util/__init__.py +0 -0
  340. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/_util/hashing.py +0 -0
  341. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/_util/name_normalizers.py +0 -0
  342. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/constants.py +0 -0
  343. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/exceptions.py +0 -0
  344. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/secrets.py +0 -0
  345. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/shared/__init__.py +0 -0
  346. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/shared/catalog_providers.py +0 -0
  347. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/shared/sql_processor.py +0 -0
  348. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/sql/types.py +0 -0
  349. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/__init__.py +0 -0
  350. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/catalog_builder.py +0 -0
  351. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/entrypoint_wrapper.py +0 -0
  352. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/mock_http/__init__.py +0 -0
  353. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/mock_http/matcher.py +0 -0
  354. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/mock_http/mocker.py +0 -0
  355. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/mock_http/request.py +0 -0
  356. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/mock_http/response.py +0 -0
  357. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/mock_http/response_builder.py +0 -0
  358. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/standard_tests/__init__.py +0 -0
  359. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/standard_tests/destination_base.py +0 -0
  360. {airbyte_cdk-6.45.4.post72.dev14497997772/airbyte_cdk/test/declarative → airbyte_cdk-6.45.6/airbyte_cdk/test/standard_tests}/models/scenario.py +0 -0
  361. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/standard_tests/pytest_hooks.py +0 -0
  362. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/state_builder.py +0 -0
  363. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/utils/__init__.py +0 -0
  364. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/utils/data.py +0 -0
  365. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/utils/http_mocking.py +0 -0
  366. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/utils/manifest_only_fixtures.py +0 -0
  367. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/test/utils/reading.py +0 -0
  368. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/__init__.py +0 -0
  369. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/airbyte_secrets_utils.py +0 -0
  370. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/analytics_message.py +0 -0
  371. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/constants.py +0 -0
  372. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/datetime_format_inferrer.py +0 -0
  373. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/datetime_helpers.py +0 -0
  374. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/event_timing.py +0 -0
  375. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/is_cloud_environment.py +0 -0
  376. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/mapping_helpers.py +0 -0
  377. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/message_utils.py +0 -0
  378. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/oneof_option_config.py +0 -0
  379. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/print_buffer.py +0 -0
  380. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/schema_inferrer.py +0 -0
  381. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/slice_hasher.py +0 -0
  382. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/spec_schema_transformations.py +0 -0
  383. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/airbyte_cdk/utils/stream_status_utils.py +0 -0
  384. {airbyte_cdk-6.45.4.post72.dev14497997772 → airbyte_cdk-6.45.6}/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.45.4.post72.dev14497997772
3
+ Version: 6.45.6
4
4
  Summary: A framework for writing Airbyte Connectors.
5
5
  Home-page: https://airbyte.com
6
6
  License: MIT
@@ -239,8 +239,8 @@ class DeclarativeOauth2Authenticator(AbstractOauth2Authenticator, DeclarativeAut
239
239
  def _has_access_token_been_initialized(self) -> bool:
240
240
  return self._access_token is not None
241
241
 
242
- def set_token_expiry_date(self, value: Union[str, int]) -> None:
243
- self._token_expiry_date = self._parse_token_expiration_date(value)
242
+ def set_token_expiry_date(self, value: AirbyteDateTime) -> None:
243
+ self._token_expiry_date = value
244
244
 
245
245
  def get_assertion_name(self) -> str:
246
246
  return self.assertion_name
@@ -19,7 +19,10 @@ from airbyte_cdk.sources.declarative.extractors import RecordSelector
19
19
  from airbyte_cdk.sources.declarative.extractors.record_filter import (
20
20
  ClientSideIncrementalRecordFilterDecorator,
21
21
  )
22
- from airbyte_cdk.sources.declarative.incremental import ConcurrentPerPartitionCursor
22
+ from airbyte_cdk.sources.declarative.incremental import (
23
+ ConcurrentPerPartitionCursor,
24
+ GlobalSubstreamCursor,
25
+ )
23
26
  from airbyte_cdk.sources.declarative.incremental.datetime_based_cursor import DatetimeBasedCursor
24
27
  from airbyte_cdk.sources.declarative.incremental.per_partition_with_global import (
25
28
  PerPartitionWithGlobalCursor,
@@ -361,7 +364,8 @@ class ConcurrentDeclarativeSource(ManifestDeclarativeSource, Generic[TState]):
361
364
  == DatetimeBasedCursorModel.__name__
362
365
  and hasattr(declarative_stream.retriever, "stream_slicer")
363
366
  and isinstance(
364
- declarative_stream.retriever.stream_slicer, PerPartitionWithGlobalCursor
367
+ declarative_stream.retriever.stream_slicer,
368
+ (GlobalSubstreamCursor, PerPartitionWithGlobalCursor),
365
369
  )
366
370
  ):
367
371
  stream_state = self._connector_state_manager.get_stream_state(
@@ -1439,7 +1439,9 @@ class ModelToComponentFactory:
1439
1439
  stream_state = self.apply_stream_state_migrations(stream_state_migrations, stream_state)
1440
1440
 
1441
1441
  # Per-partition state doesn't make sense for GroupingPartitionRouter, so force the global state
1442
- use_global_cursor = isinstance(partition_router, GroupingPartitionRouter)
1442
+ use_global_cursor = isinstance(
1443
+ partition_router, GroupingPartitionRouter
1444
+ ) or component_definition.get("global_substream_cursor", False)
1443
1445
 
1444
1446
  # Return the concurrent cursor and state converter
1445
1447
  return ConcurrentPerPartitionCursor(
@@ -52,8 +52,10 @@ class PropertyChunking:
52
52
  chunk_size = 0
53
53
  for property_field in property_fields:
54
54
  # If property_limit_type is not defined, we default to property_count which is just an incrementing count
55
+ # todo: Add ability to specify parameter delimiter representation and take into account in property_field_size
55
56
  property_field_size = (
56
57
  len(property_field)
58
+ + 1 # The +1 represents the extra character for the delimiter in between properties
57
59
  if self.property_limit_type == PropertyLimitType.characters
58
60
  else 1
59
61
  )
@@ -10,6 +10,7 @@ from itertools import islice
10
10
  from typing import (
11
11
  Any,
12
12
  Callable,
13
+ Dict,
13
14
  Iterable,
14
15
  List,
15
16
  Mapping,
@@ -367,14 +368,65 @@ class SimpleRetriever(Retriever):
367
368
  {"next_page_token": initial_token} if initial_token is not None else None
368
369
  )
369
370
  while not pagination_complete:
370
- response = self._fetch_next_page(stream_state, stream_slice, next_page_token)
371
+ property_chunks: List[List[str]] = (
372
+ list(
373
+ self.additional_query_properties.get_request_property_chunks(
374
+ stream_slice=stream_slice
375
+ )
376
+ )
377
+ if self.additional_query_properties
378
+ else [
379
+ []
380
+ ] # A single empty property chunk represents the case where property chunking is not configured
381
+ )
371
382
 
383
+ merged_records: MutableMapping[str, Any] = defaultdict(dict)
372
384
  last_page_size = 0
373
385
  last_record: Optional[Record] = None
374
- for record in records_generator_fn(response):
375
- last_page_size += 1
376
- last_record = record
377
- yield record
386
+ response: Optional[requests.Response] = None
387
+ for properties in property_chunks:
388
+ if len(properties) > 0:
389
+ stream_slice = StreamSlice(
390
+ partition=stream_slice.partition or {},
391
+ cursor_slice=stream_slice.cursor_slice or {},
392
+ extra_fields={"query_properties": properties},
393
+ )
394
+
395
+ response = self._fetch_next_page(stream_state, stream_slice, next_page_token)
396
+ for current_record in records_generator_fn(response):
397
+ if (
398
+ current_record
399
+ and self.additional_query_properties
400
+ and self.additional_query_properties.property_chunking
401
+ ):
402
+ merge_key = (
403
+ self.additional_query_properties.property_chunking.get_merge_key(
404
+ current_record
405
+ )
406
+ )
407
+ if merge_key:
408
+ _deep_merge(merged_records[merge_key], current_record)
409
+ else:
410
+ # We should still emit records even if the record did not have a merge key
411
+ last_page_size += 1
412
+ last_record = current_record
413
+ yield current_record
414
+ else:
415
+ last_page_size += 1
416
+ last_record = current_record
417
+ yield current_record
418
+
419
+ if (
420
+ self.additional_query_properties
421
+ and self.additional_query_properties.property_chunking
422
+ ):
423
+ for merged_record in merged_records.values():
424
+ record = Record(
425
+ data=merged_record, stream_name=self.name, associated_slice=stream_slice
426
+ )
427
+ last_page_size += 1
428
+ last_record = record
429
+ yield record
378
430
 
379
431
  if not response:
380
432
  pagination_complete = True
@@ -449,110 +501,43 @@ class SimpleRetriever(Retriever):
449
501
  :param stream_slice: The stream slice to read data for
450
502
  :return: The records read from the API source
451
503
  """
452
-
453
- property_chunks = (
454
- list(
455
- self.additional_query_properties.get_request_property_chunks(
456
- stream_slice=stream_slice
457
- )
458
- )
459
- if self.additional_query_properties
460
- else []
461
- )
462
- records_without_merge_key = []
463
- merged_records: MutableMapping[str, Any] = defaultdict(dict)
464
-
465
504
  _slice = stream_slice or StreamSlice(partition={}, cursor_slice={}) # None-check
505
+
466
506
  most_recent_record_from_slice = None
507
+ record_generator = partial(
508
+ self._parse_records,
509
+ stream_slice=stream_slice,
510
+ stream_state=self.state or {},
511
+ records_schema=records_schema,
512
+ )
467
513
 
468
- if self.additional_query_properties:
469
- for properties in property_chunks:
470
- _slice = StreamSlice(
471
- partition=_slice.partition or {},
472
- cursor_slice=_slice.cursor_slice or {},
473
- extra_fields={"query_properties": properties},
474
- ) # None-check
475
-
476
- record_generator = partial(
477
- self._parse_records,
478
- stream_slice=_slice,
479
- stream_state=self.state or {},
480
- records_schema=records_schema,
481
- )
514
+ if self.cursor and isinstance(self.cursor, ResumableFullRefreshCursor):
515
+ stream_state = self.state
482
516
 
483
- for stream_data in self._read_pages(record_generator, self.state, _slice):
484
- current_record = self._extract_record(stream_data, _slice)
485
- if self.cursor and current_record:
486
- self.cursor.observe(_slice, current_record)
517
+ # Before syncing the RFR stream, we check if the job's prior attempt was successful and don't need to
518
+ # fetch more records. The platform deletes stream state for full refresh streams before starting a
519
+ # new job, so we don't need to worry about this value existing for the initial attempt
520
+ if stream_state.get(FULL_REFRESH_SYNC_COMPLETE_KEY):
521
+ return
487
522
 
488
- # Latest record read, not necessarily within slice boundaries.
489
- # TODO Remove once all custom components implement `observe` method.
490
- # https://github.com/airbytehq/airbyte-internal-issues/issues/6955
491
- most_recent_record_from_slice = self._get_most_recent_record(
492
- most_recent_record_from_slice, current_record, _slice
493
- )
523
+ yield from self._read_single_page(record_generator, stream_state, _slice)
524
+ else:
525
+ for stream_data in self._read_pages(record_generator, self.state, _slice):
526
+ current_record = self._extract_record(stream_data, _slice)
527
+ if self.cursor and current_record:
528
+ self.cursor.observe(_slice, current_record)
529
+
530
+ # Latest record read, not necessarily within slice boundaries.
531
+ # TODO Remove once all custom components implement `observe` method.
532
+ # https://github.com/airbytehq/airbyte-internal-issues/issues/6955
533
+ most_recent_record_from_slice = self._get_most_recent_record(
534
+ most_recent_record_from_slice, current_record, _slice
535
+ )
536
+ yield stream_data
494
537
 
495
- if current_record and self.additional_query_properties.property_chunking:
496
- merge_key = (
497
- self.additional_query_properties.property_chunking.get_merge_key(
498
- current_record
499
- )
500
- )
501
- if merge_key:
502
- merged_records[merge_key].update(current_record)
503
- else:
504
- # We should still emit records even if the record did not have a merge key
505
- records_without_merge_key.append(current_record)
506
- else:
507
- yield stream_data
508
538
  if self.cursor:
509
539
  self.cursor.close_slice(_slice, most_recent_record_from_slice)
510
-
511
- if len(merged_records) > 0:
512
- yield from [
513
- Record(data=merged_record, stream_name=self.name, associated_slice=stream_slice)
514
- for merged_record in merged_records.values()
515
- ]
516
- if len(records_without_merge_key) > 0:
517
- yield from records_without_merge_key
518
- else:
519
- _slice = stream_slice or StreamSlice(partition={}, cursor_slice={}) # None-check
520
-
521
- most_recent_record_from_slice = None
522
- record_generator = partial(
523
- self._parse_records,
524
- stream_slice=stream_slice,
525
- stream_state=self.state or {},
526
- records_schema=records_schema,
527
- )
528
-
529
- if self.cursor and isinstance(self.cursor, ResumableFullRefreshCursor):
530
- stream_state = self.state
531
-
532
- # Before syncing the RFR stream, we check if the job's prior attempt was successful and don't need to
533
- # fetch more records. The platform deletes stream state for full refresh streams before starting a
534
- # new job, so we don't need to worry about this value existing for the initial attempt
535
- if stream_state.get(FULL_REFRESH_SYNC_COMPLETE_KEY):
536
- return
537
-
538
- yield from self._read_single_page(record_generator, stream_state, _slice)
539
- else:
540
- for stream_data in self._read_pages(record_generator, self.state, _slice):
541
- current_record = self._extract_record(stream_data, _slice)
542
- if self.cursor and current_record:
543
- self.cursor.observe(_slice, current_record)
544
-
545
- # Latest record read, not necessarily within slice boundaries.
546
- # TODO Remove once all custom components implement `observe` method.
547
- # https://github.com/airbytehq/airbyte-internal-issues/issues/6955
548
- most_recent_record_from_slice = self._get_most_recent_record(
549
- most_recent_record_from_slice, current_record, _slice
550
- )
551
- yield stream_data
552
-
553
- if self.cursor:
554
- self.cursor.close_slice(_slice, most_recent_record_from_slice)
555
- return
540
+ return
556
541
 
557
542
  def _get_most_recent_record(
558
543
  self,
@@ -639,6 +624,26 @@ class SimpleRetriever(Retriever):
639
624
  return json.dumps(to_serialize, indent=None, separators=(",", ":"), sort_keys=True)
640
625
 
641
626
 
627
+ def _deep_merge(
628
+ target: MutableMapping[str, Any], source: Union[Record, MutableMapping[str, Any]]
629
+ ) -> None:
630
+ """
631
+ Recursively merge two dictionaries, combining nested dictionaries instead of overwriting them.
632
+
633
+ :param target: The dictionary to merge into (modified in place)
634
+ :param source: The dictionary to merge from
635
+ """
636
+ for key, value in source.items():
637
+ if (
638
+ key in target
639
+ and isinstance(target[key], MutableMapping)
640
+ and isinstance(value, MutableMapping)
641
+ ):
642
+ _deep_merge(target[key], value)
643
+ else:
644
+ target[key] = value
645
+
646
+
642
647
  @dataclass
643
648
  class SimpleRetrieverTestReadDecorator(SimpleRetriever):
644
649
  """
@@ -130,7 +130,7 @@ class AbstractOauth2Authenticator(AuthBase):
130
130
  headers = self.get_refresh_request_headers()
131
131
  return headers if headers else None
132
132
 
133
- def refresh_access_token(self) -> Tuple[str, Union[str, int]]:
133
+ def refresh_access_token(self) -> Tuple[str, AirbyteDateTime]:
134
134
  """
135
135
  Returns the refresh token and its expiration datetime
136
136
 
@@ -148,6 +148,14 @@ class AbstractOauth2Authenticator(AuthBase):
148
148
  # PRIVATE METHODS
149
149
  # ----------------
150
150
 
151
+ def _default_token_expiry_date(self) -> AirbyteDateTime:
152
+ """
153
+ Returns the default token expiry date
154
+ """
155
+ # 1 hour was chosen as a middle ground to avoid unnecessary frequent refreshes and token expiration
156
+ default_token_expiry_duration_hours = 1 # 1 hour
157
+ return ab_datetime_now() + timedelta(hours=default_token_expiry_duration_hours)
158
+
151
159
  def _wrap_refresh_token_exception(
152
160
  self, exception: requests.exceptions.RequestException
153
161
  ) -> bool:
@@ -257,14 +265,10 @@ class AbstractOauth2Authenticator(AuthBase):
257
265
 
258
266
  def _parse_token_expiration_date(self, value: Union[str, int]) -> AirbyteDateTime:
259
267
  """
260
- Return the expiration datetime of the refresh token
268
+ Parse a string or integer token expiration date into a datetime object
261
269
 
262
270
  :return: expiration datetime
263
271
  """
264
- if not value and not self.token_has_expired():
265
- # No expiry token was provided but the previous one is not expired so it's fine
266
- return self.get_token_expiry_date()
267
-
268
272
  if self.token_expiry_is_time_of_expiration:
269
273
  if not self.token_expiry_date_format:
270
274
  raise ValueError(
@@ -308,17 +312,30 @@ class AbstractOauth2Authenticator(AuthBase):
308
312
  """
309
313
  return self._find_and_get_value_from_response(response_data, self.get_refresh_token_name())
310
314
 
311
- def _extract_token_expiry_date(self, response_data: Mapping[str, Any]) -> Any:
315
+ def _extract_token_expiry_date(self, response_data: Mapping[str, Any]) -> AirbyteDateTime:
312
316
  """
313
317
  Extracts the token_expiry_date, like `expires_in` or `expires_at`, etc from the given response data.
314
318
 
319
+ If the token_expiry_date is not found, it will return an existing token expiry date if set, or a default token expiry date.
320
+
315
321
  Args:
316
322
  response_data (Mapping[str, Any]): The response data from which to extract the token_expiry_date.
317
323
 
318
324
  Returns:
319
- str: The extracted token_expiry_date.
325
+ The extracted token_expiry_date or None if not found.
320
326
  """
321
- return self._find_and_get_value_from_response(response_data, self.get_expires_in_name())
327
+ expires_in = self._find_and_get_value_from_response(
328
+ response_data, self.get_expires_in_name()
329
+ )
330
+ if expires_in is not None:
331
+ return self._parse_token_expiration_date(expires_in)
332
+
333
+ # expires_in is None
334
+ existing_expiry_date = self.get_token_expiry_date()
335
+ if existing_expiry_date and not self.token_has_expired():
336
+ return existing_expiry_date
337
+
338
+ return self._default_token_expiry_date()
322
339
 
323
340
  def _find_and_get_value_from_response(
324
341
  self,
@@ -344,7 +361,7 @@ class AbstractOauth2Authenticator(AuthBase):
344
361
  """
345
362
  if current_depth > max_depth:
346
363
  # this is needed to avoid an inf loop, possible with a very deep nesting observed.
347
- message = f"The maximum level of recursion is reached. Couldn't find the speficied `{key_name}` in the response."
364
+ message = f"The maximum level of recursion is reached. Couldn't find the specified `{key_name}` in the response."
348
365
  raise ResponseKeysMaxRecurtionReached(
349
366
  internal_message=message, message=message, failure_type=FailureType.config_error
350
367
  )
@@ -441,7 +458,7 @@ class AbstractOauth2Authenticator(AuthBase):
441
458
  """Expiration date of the access token"""
442
459
 
443
460
  @abstractmethod
444
- def set_token_expiry_date(self, value: Union[str, int]) -> None:
461
+ def set_token_expiry_date(self, value: AirbyteDateTime) -> None:
445
462
  """Setter for access token expiration date"""
446
463
 
447
464
  @abstractmethod
@@ -120,8 +120,8 @@ class Oauth2Authenticator(AbstractOauth2Authenticator):
120
120
  def get_token_expiry_date(self) -> AirbyteDateTime:
121
121
  return self._token_expiry_date
122
122
 
123
- def set_token_expiry_date(self, value: Union[str, int]) -> None:
124
- self._token_expiry_date = self._parse_token_expiration_date(value)
123
+ def set_token_expiry_date(self, value: AirbyteDateTime) -> None:
124
+ self._token_expiry_date = value
125
125
 
126
126
  @property
127
127
  def token_expiry_is_time_of_expiration(self) -> bool:
@@ -316,26 +316,6 @@ class SingleUseRefreshTokenOauth2Authenticator(Oauth2Authenticator):
316
316
  """Returns True if the token is expired"""
317
317
  return ab_datetime_now() > self.get_token_expiry_date()
318
318
 
319
- @staticmethod
320
- def get_new_token_expiry_date(
321
- access_token_expires_in: str,
322
- token_expiry_date_format: str | None = None,
323
- ) -> AirbyteDateTime:
324
- """
325
- Calculate the new token expiry date based on the provided expiration duration or format.
326
-
327
- Args:
328
- access_token_expires_in (str): The duration (in seconds) until the access token expires, or the expiry date in a specific format.
329
- token_expiry_date_format (str | None, optional): The format of the expiry date if provided. Defaults to None.
330
-
331
- Returns:
332
- AirbyteDateTime: The calculated expiry date of the access token.
333
- """
334
- if token_expiry_date_format:
335
- return ab_datetime_parse(access_token_expires_in)
336
- else:
337
- return ab_datetime_now() + timedelta(seconds=int(access_token_expires_in))
338
-
339
319
  def get_access_token(self) -> str:
340
320
  """Retrieve new access and refresh token if the access token has expired.
341
321
  The new refresh token is persisted with the set_refresh_token function
@@ -346,16 +326,13 @@ class SingleUseRefreshTokenOauth2Authenticator(Oauth2Authenticator):
346
326
  new_access_token, access_token_expires_in, new_refresh_token = (
347
327
  self.refresh_access_token()
348
328
  )
349
- new_token_expiry_date: AirbyteDateTime = self.get_new_token_expiry_date(
350
- access_token_expires_in, self._token_expiry_date_format
351
- )
352
329
  self.access_token = new_access_token
353
330
  self.set_refresh_token(new_refresh_token)
354
- self.set_token_expiry_date(new_token_expiry_date)
331
+ self.set_token_expiry_date(access_token_expires_in)
355
332
  self._emit_control_message()
356
333
  return self.access_token
357
334
 
358
- def refresh_access_token(self) -> Tuple[str, str, str]: # type: ignore[override]
335
+ def refresh_access_token(self) -> Tuple[str, AirbyteDateTime, str]: # type: ignore[override]
359
336
  """
360
337
  Refreshes the access token by making a handled request and extracting the necessary token information.
361
338
 
@@ -16,7 +16,7 @@ from airbyte_cdk.models import (
16
16
  Status,
17
17
  )
18
18
  from airbyte_cdk.test import entrypoint_wrapper
19
- from airbyte_cdk.test.declarative.models import (
19
+ from airbyte_cdk.test.standard_tests.models import (
20
20
  ConnectorTestScenario,
21
21
  )
22
22
 
@@ -18,10 +18,10 @@ from airbyte_cdk.models import (
18
18
  Type,
19
19
  )
20
20
  from airbyte_cdk.test import entrypoint_wrapper
21
- from airbyte_cdk.test.declarative.models import (
21
+ from airbyte_cdk.test.standard_tests._job_runner import IConnector, run_test_job
22
+ from airbyte_cdk.test.standard_tests.models import (
22
23
  ConnectorTestScenario,
23
24
  )
24
- from airbyte_cdk.test.declarative.utils.job_runner import IConnector, run_test_job
25
25
 
26
26
  ACCEPTANCE_TEST_CONFIG = "acceptance-test-config.yml"
27
27
  MANIFEST_YAML = "manifest.yaml"
@@ -9,9 +9,9 @@ from boltons.typeutils import classproperty
9
9
  from airbyte_cdk.sources.declarative.concurrent_declarative_source import (
10
10
  ConcurrentDeclarativeSource,
11
11
  )
12
- from airbyte_cdk.test.declarative.models import ConnectorTestScenario
13
- from airbyte_cdk.test.declarative.utils.job_runner import IConnector
12
+ from airbyte_cdk.test.standard_tests._job_runner import IConnector
14
13
  from airbyte_cdk.test.standard_tests.connector_base import MANIFEST_YAML
14
+ from airbyte_cdk.test.standard_tests.models import ConnectorTestScenario
15
15
  from airbyte_cdk.test.standard_tests.source_base import SourceTestSuiteBase
16
16
 
17
17
 
@@ -1,4 +1,4 @@
1
- from airbyte_cdk.test.declarative.models.scenario import (
1
+ from airbyte_cdk.test.standard_tests.models.scenario import (
2
2
  ConnectorTestScenario,
3
3
  )
4
4
 
@@ -13,13 +13,13 @@ from airbyte_cdk.models import (
13
13
  Type,
14
14
  )
15
15
  from airbyte_cdk.test import entrypoint_wrapper
16
- from airbyte_cdk.test.declarative.models import (
17
- ConnectorTestScenario,
18
- )
19
- from airbyte_cdk.test.declarative.utils.job_runner import run_test_job
16
+ from airbyte_cdk.test.standard_tests._job_runner import run_test_job
20
17
  from airbyte_cdk.test.standard_tests.connector_base import (
21
18
  ConnectorTestSuiteBase,
22
19
  )
20
+ from airbyte_cdk.test.standard_tests.models import (
21
+ ConnectorTestScenario,
22
+ )
23
23
 
24
24
 
25
25
  class SourceTestSuiteBase(ConnectorTestSuiteBase):
@@ -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.45.4.post72.dev14497997772" # Version will be calculated dynamically.
26
+ version = "6.45.6" # Version will be calculated dynamically.
27
27
 
28
28
  [tool.poetry-dynamic-versioning]
29
29
  enable = false
@@ -1,6 +0,0 @@
1
- # Copyright (c) 2024 Airbyte, Inc., all rights reserved.
2
- """Declarative tests framework.
3
-
4
- This module provides fixtures and utilities for testing Airbyte sources and destinations
5
- in a declarative way.
6
- """