deeporigin-data-sdk 0.1.0a68__tar.gz → 0.1.0a70__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 (160) hide show
  1. deeporigin_data_sdk-0.1.0a70/.release-please-manifest.json +3 -0
  2. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/CHANGELOG.md +16 -0
  3. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/PKG-INFO +39 -1
  4. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/README.md +35 -0
  5. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/pyproject.toml +3 -1
  6. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/requirements-dev.lock +27 -0
  7. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/requirements.lock +27 -0
  8. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/__init__.py +2 -1
  9. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_base_client.py +22 -0
  10. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_version.py +1 -1
  11. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/api_resources/test_client.py +3 -1
  12. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/conftest.py +34 -5
  13. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_client.py +2 -0
  14. deeporigin_data_sdk-0.1.0a68/.release-please-manifest.json +0 -3
  15. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/.gitignore +0 -0
  16. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/CONTRIBUTING.md +0 -0
  17. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/LICENSE +0 -0
  18. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/SECURITY.md +0 -0
  19. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/api.md +0 -0
  20. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/bin/check-release-environment +0 -0
  21. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/bin/publish-pypi +0 -0
  22. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/examples/.keep +0 -0
  23. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/mypy.ini +0 -0
  24. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/noxfile.py +0 -0
  25. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/release-please-config.json +0 -0
  26. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_client.py +0 -0
  27. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_compat.py +0 -0
  28. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_constants.py +0 -0
  29. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_exceptions.py +0 -0
  30. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_files.py +0 -0
  31. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_models.py +0 -0
  32. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_qs.py +0 -0
  33. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_resource.py +0 -0
  34. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_response.py +0 -0
  35. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_streaming.py +0 -0
  36. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_types.py +0 -0
  37. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/__init__.py +0 -0
  38. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_logs.py +0 -0
  39. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_proxy.py +0 -0
  40. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_reflection.py +0 -0
  41. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_resources_proxy.py +0 -0
  42. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_streams.py +0 -0
  43. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_sync.py +0 -0
  44. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_transform.py +0 -0
  45. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_typing.py +0 -0
  46. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/_utils/_utils.py +0 -0
  47. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/lib/.keep +0 -0
  48. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/py.typed +0 -0
  49. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/resources/__init__.py +0 -0
  50. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/__init__.py +0 -0
  51. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/add_database_column_response.py +0 -0
  52. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/chat_create_thread_response.py +0 -0
  53. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/chat_list_messages_response.py +0 -0
  54. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_add_database_column_params.py +0 -0
  55. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_archive_files_params.py +0 -0
  56. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_chat_create_thread_params.py +0 -0
  57. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_chat_list_messages_params.py +0 -0
  58. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_chat_send_message_params.py +0 -0
  59. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_configure_column_select_options_params.py +0 -0
  60. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_convert_id_format_params.py +0 -0
  61. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_create_database_params.py +0 -0
  62. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_create_file_download_url_params.py +0 -0
  63. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_create_file_upload_params.py +0 -0
  64. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_create_workspace_params.py +0 -0
  65. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_delete_database_column_params.py +0 -0
  66. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_delete_database_params.py +0 -0
  67. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_delete_rows_params.py +0 -0
  68. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_delete_workspace_params.py +0 -0
  69. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_code_execution_params.py +0 -0
  70. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_database_params.py +0 -0
  71. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_database_row_params.py +0 -0
  72. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_database_stats_params.py +0 -0
  73. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_file_params.py +0 -0
  74. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_hierarchy_params.py +0 -0
  75. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_row_params.py +0 -0
  76. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_describe_workspace_params.py +0 -0
  77. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_download_file_params.py +0 -0
  78. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_ensure_rows_params.py +0 -0
  79. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_execute_code_async_params.py +0 -0
  80. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_execute_code_sync_params.py +0 -0
  81. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_export_database_params.py +0 -0
  82. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_get_code_execution_result_params.py +0 -0
  83. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_import_rows_params.py +0 -0
  84. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_list_database_column_unique_values_v2_params.py +0 -0
  85. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_list_database_rows_params.py +0 -0
  86. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_list_files_params.py +0 -0
  87. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_list_mentions_params.py +0 -0
  88. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_list_row_back_references_params.py +0 -0
  89. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_list_rows_params.py +0 -0
  90. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_lock_database_params.py +0 -0
  91. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_parse_base_sequence_data_params.py +0 -0
  92. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_resolve_ids_params.py +0 -0
  93. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_unlock_database_params.py +0 -0
  94. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_update_database_column_params.py +0 -0
  95. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_update_database_params.py +0 -0
  96. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/client_update_workspace_params.py +0 -0
  97. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/configure_column_select_options_response.py +0 -0
  98. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/convert_id_format_response.py +0 -0
  99. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/create_database_response.py +0 -0
  100. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/create_file_download_url_response.py +0 -0
  101. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/create_file_upload_response.py +0 -0
  102. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/create_workspace_response.py +0 -0
  103. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/delete_database_column_response.py +0 -0
  104. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/delete_database_response.py +0 -0
  105. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/delete_rows_response.py +0 -0
  106. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/delete_workspace_response.py +0 -0
  107. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_code_execution_response.py +0 -0
  108. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_database_response.py +0 -0
  109. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_database_row_response.py +0 -0
  110. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_database_stats_response.py +0 -0
  111. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_file_response.py +0 -0
  112. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_hierarchy_response.py +0 -0
  113. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/describe_workspace_response.py +0 -0
  114. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/ensure_rows_response.py +0 -0
  115. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/execute_code_async_response.py +0 -0
  116. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/execute_code_sync_response.py +0 -0
  117. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/import_rows_response.py +0 -0
  118. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/list_database_column_unique_values_v2_response.py +0 -0
  119. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/list_database_rows_response.py +0 -0
  120. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/list_files_response.py +0 -0
  121. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/list_mentions_response.py +0 -0
  122. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/list_row_back_references_response.py +0 -0
  123. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/list_rows_response.py +0 -0
  124. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/lock_database_response.py +0 -0
  125. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/parse_base_sequence_data_response.py +0 -0
  126. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/resolve_ids_response.py +0 -0
  127. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/__init__.py +0 -0
  128. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/add_column_base.py +0 -0
  129. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/add_column_union.py +0 -0
  130. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/condition.py +0 -0
  131. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/database.py +0 -0
  132. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/database_row.py +0 -0
  133. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/describe_row_response.py +0 -0
  134. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/file.py +0 -0
  135. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/row_filter_join.py +0 -0
  136. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared/workspace.py +0 -0
  137. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared_params/__init__.py +0 -0
  138. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared_params/add_column_base.py +0 -0
  139. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared_params/add_column_union.py +0 -0
  140. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared_params/condition.py +0 -0
  141. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/shared_params/row_filter_join.py +0 -0
  142. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/unlock_database_response.py +0 -0
  143. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/update_database_column_response.py +0 -0
  144. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/update_database_response.py +0 -0
  145. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/src/deeporigin_data/types/update_workspace_response.py +0 -0
  146. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/__init__.py +0 -0
  147. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/api_resources/__init__.py +0 -0
  148. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/sample_file.txt +0 -0
  149. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_deepcopy.py +0 -0
  150. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_extract_files.py +0 -0
  151. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_files.py +0 -0
  152. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_models.py +0 -0
  153. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_qs.py +0 -0
  154. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_required_args.py +0 -0
  155. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_response.py +0 -0
  156. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_streaming.py +0 -0
  157. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_transform.py +0 -0
  158. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_utils/test_proxy.py +0 -0
  159. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/test_utils/test_typing.py +0 -0
  160. {deeporigin_data_sdk-0.1.0a68 → deeporigin_data_sdk-0.1.0a70}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-alpha.70"
3
+ }
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.70 (2025-06-24)
4
+
5
+ Full Changelog: [v0.1.0-alpha.69...v0.1.0-alpha.70](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.69...v0.1.0-alpha.70)
6
+
7
+ ### Chores
8
+
9
+ * **tests:** skip some failing tests on the latest python versions ([5794e1f](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/5794e1f37af26b37563d976a38fa463f144df27c))
10
+
11
+ ## 0.1.0-alpha.69 (2025-06-21)
12
+
13
+ Full Changelog: [v0.1.0-alpha.68...v0.1.0-alpha.69](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.68...v0.1.0-alpha.69)
14
+
15
+ ### Features
16
+
17
+ * **client:** add support for aiohttp ([5225de6](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/5225de64b73a4d25b60255c430ddaa132b668a6b))
18
+
3
19
  ## 0.1.0-alpha.68 (2025-06-19)
4
20
 
5
21
  Full Changelog: [v0.1.0-alpha.67...v0.1.0-alpha.68](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.67...v0.1.0-alpha.68)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: deeporigin_data_sdk
3
- Version: 0.1.0a68
3
+ Version: 0.1.0a70
4
4
  Summary: The official Python library for the deeporigin_data API
5
5
  Project-URL: Homepage, https://github.com/deeporiginbio/deeporigin-data-sdk
6
6
  Project-URL: Repository, https://github.com/deeporiginbio/deeporigin-data-sdk
@@ -27,6 +27,9 @@ Requires-Dist: httpx<1,>=0.23.0
27
27
  Requires-Dist: pydantic<3,>=1.9.0
28
28
  Requires-Dist: sniffio
29
29
  Requires-Dist: typing-extensions<5,>=4.10
30
+ Provides-Extra: aiohttp
31
+ Requires-Dist: aiohttp; extra == 'aiohttp'
32
+ Requires-Dist: httpx-aiohttp>=0.1.6; extra == 'aiohttp'
30
33
  Description-Content-Type: text/markdown
31
34
 
32
35
  # Deeporigin Data Python API library
@@ -101,6 +104,41 @@ asyncio.run(main())
101
104
 
102
105
  Functionality between the synchronous and asynchronous clients is otherwise identical.
103
106
 
107
+ ### With aiohttp
108
+
109
+ By default, the async client uses `httpx` for HTTP requests. However, for improved concurrency performance you may also use `aiohttp` as the HTTP backend.
110
+
111
+ You can enable this by installing `aiohttp`:
112
+
113
+ ```sh
114
+ # install from PyPI
115
+ pip install --pre deeporigin_data_sdk[aiohttp]
116
+ ```
117
+
118
+ Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
119
+
120
+ ```python
121
+ import os
122
+ import asyncio
123
+ from deeporigin_data import DefaultAioHttpClient
124
+ from deeporigin_data import AsyncDeeporiginData
125
+
126
+
127
+ async def main() -> None:
128
+ async with AsyncDeeporiginData(
129
+ org_id="My Org ID",
130
+ token=os.environ.get("ORG_BEARER_TOKEN"), # This is the default and can be omitted
131
+ http_client=DefaultAioHttpClient(),
132
+ ) as client:
133
+ describe_row_response = await client.describe_row(
134
+ row_id="rowId",
135
+ )
136
+ print(describe_row_response.data)
137
+
138
+
139
+ asyncio.run(main())
140
+ ```
141
+
104
142
  ## Using types
105
143
 
106
144
  Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
@@ -70,6 +70,41 @@ asyncio.run(main())
70
70
 
71
71
  Functionality between the synchronous and asynchronous clients is otherwise identical.
72
72
 
73
+ ### With aiohttp
74
+
75
+ By default, the async client uses `httpx` for HTTP requests. However, for improved concurrency performance you may also use `aiohttp` as the HTTP backend.
76
+
77
+ You can enable this by installing `aiohttp`:
78
+
79
+ ```sh
80
+ # install from PyPI
81
+ pip install --pre deeporigin_data_sdk[aiohttp]
82
+ ```
83
+
84
+ Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
85
+
86
+ ```python
87
+ import os
88
+ import asyncio
89
+ from deeporigin_data import DefaultAioHttpClient
90
+ from deeporigin_data import AsyncDeeporiginData
91
+
92
+
93
+ async def main() -> None:
94
+ async with AsyncDeeporiginData(
95
+ org_id="My Org ID",
96
+ token=os.environ.get("ORG_BEARER_TOKEN"), # This is the default and can be omitted
97
+ http_client=DefaultAioHttpClient(),
98
+ ) as client:
99
+ describe_row_response = await client.describe_row(
100
+ row_id="rowId",
101
+ )
102
+ print(describe_row_response.data)
103
+
104
+
105
+ asyncio.run(main())
106
+ ```
107
+
73
108
  ## Using types
74
109
 
75
110
  Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "deeporigin_data_sdk"
3
- version = "0.1.0-alpha.68"
3
+ version = "0.1.0-alpha.70"
4
4
  description = "The official Python library for the deeporigin_data API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -37,6 +37,8 @@ classifiers = [
37
37
  Homepage = "https://github.com/deeporiginbio/deeporigin-data-sdk"
38
38
  Repository = "https://github.com/deeporiginbio/deeporigin-data-sdk"
39
39
 
40
+ [project.optional-dependencies]
41
+ aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.6"]
40
42
 
41
43
  [tool.rye]
42
44
  managed = true
@@ -10,6 +10,13 @@
10
10
  # universal: false
11
11
 
12
12
  -e file:.
13
+ aiohappyeyeballs==2.6.1
14
+ # via aiohttp
15
+ aiohttp==3.12.8
16
+ # via deeporigin-data-sdk
17
+ # via httpx-aiohttp
18
+ aiosignal==1.3.2
19
+ # via aiohttp
13
20
  annotated-types==0.6.0
14
21
  # via pydantic
15
22
  anyio==4.4.0
@@ -17,6 +24,10 @@ anyio==4.4.0
17
24
  # via httpx
18
25
  argcomplete==3.1.2
19
26
  # via nox
27
+ async-timeout==5.0.1
28
+ # via aiohttp
29
+ attrs==25.3.0
30
+ # via aiohttp
20
31
  certifi==2023.7.22
21
32
  # via httpcore
22
33
  # via httpx
@@ -34,16 +45,23 @@ execnet==2.1.1
34
45
  # via pytest-xdist
35
46
  filelock==3.12.4
36
47
  # via virtualenv
48
+ frozenlist==1.6.2
49
+ # via aiohttp
50
+ # via aiosignal
37
51
  h11==0.14.0
38
52
  # via httpcore
39
53
  httpcore==1.0.2
40
54
  # via httpx
41
55
  httpx==0.28.1
42
56
  # via deeporigin-data-sdk
57
+ # via httpx-aiohttp
43
58
  # via respx
59
+ httpx-aiohttp==0.1.6
60
+ # via deeporigin-data-sdk
44
61
  idna==3.4
45
62
  # via anyio
46
63
  # via httpx
64
+ # via yarl
47
65
  importlib-metadata==7.0.0
48
66
  iniconfig==2.0.0
49
67
  # via pytest
@@ -51,6 +69,9 @@ markdown-it-py==3.0.0
51
69
  # via rich
52
70
  mdurl==0.1.2
53
71
  # via markdown-it-py
72
+ multidict==6.4.4
73
+ # via aiohttp
74
+ # via yarl
54
75
  mypy==1.14.1
55
76
  mypy-extensions==1.0.0
56
77
  # via mypy
@@ -65,6 +86,9 @@ platformdirs==3.11.0
65
86
  # via virtualenv
66
87
  pluggy==1.5.0
67
88
  # via pytest
89
+ propcache==0.3.1
90
+ # via aiohttp
91
+ # via yarl
68
92
  pydantic==2.10.3
69
93
  # via deeporigin-data-sdk
70
94
  pydantic-core==2.27.1
@@ -98,11 +122,14 @@ tomli==2.0.2
98
122
  typing-extensions==4.12.2
99
123
  # via anyio
100
124
  # via deeporigin-data-sdk
125
+ # via multidict
101
126
  # via mypy
102
127
  # via pydantic
103
128
  # via pydantic-core
104
129
  # via pyright
105
130
  virtualenv==20.24.5
106
131
  # via nox
132
+ yarl==1.20.0
133
+ # via aiohttp
107
134
  zipp==3.17.0
108
135
  # via importlib-metadata
@@ -10,11 +10,22 @@
10
10
  # universal: false
11
11
 
12
12
  -e file:.
13
+ aiohappyeyeballs==2.6.1
14
+ # via aiohttp
15
+ aiohttp==3.12.8
16
+ # via deeporigin-data-sdk
17
+ # via httpx-aiohttp
18
+ aiosignal==1.3.2
19
+ # via aiohttp
13
20
  annotated-types==0.6.0
14
21
  # via pydantic
15
22
  anyio==4.4.0
16
23
  # via deeporigin-data-sdk
17
24
  # via httpx
25
+ async-timeout==5.0.1
26
+ # via aiohttp
27
+ attrs==25.3.0
28
+ # via aiohttp
18
29
  certifi==2023.7.22
19
30
  # via httpcore
20
31
  # via httpx
@@ -22,15 +33,28 @@ distro==1.8.0
22
33
  # via deeporigin-data-sdk
23
34
  exceptiongroup==1.2.2
24
35
  # via anyio
36
+ frozenlist==1.6.2
37
+ # via aiohttp
38
+ # via aiosignal
25
39
  h11==0.14.0
26
40
  # via httpcore
27
41
  httpcore==1.0.2
28
42
  # via httpx
29
43
  httpx==0.28.1
30
44
  # via deeporigin-data-sdk
45
+ # via httpx-aiohttp
46
+ httpx-aiohttp==0.1.6
47
+ # via deeporigin-data-sdk
31
48
  idna==3.4
32
49
  # via anyio
33
50
  # via httpx
51
+ # via yarl
52
+ multidict==6.4.4
53
+ # via aiohttp
54
+ # via yarl
55
+ propcache==0.3.1
56
+ # via aiohttp
57
+ # via yarl
34
58
  pydantic==2.10.3
35
59
  # via deeporigin-data-sdk
36
60
  pydantic-core==2.27.1
@@ -41,5 +65,8 @@ sniffio==1.3.0
41
65
  typing-extensions==4.12.2
42
66
  # via anyio
43
67
  # via deeporigin-data-sdk
68
+ # via multidict
44
69
  # via pydantic
45
70
  # via pydantic-core
71
+ yarl==1.20.0
72
+ # via aiohttp
@@ -36,7 +36,7 @@ from ._exceptions import (
36
36
  UnprocessableEntityError,
37
37
  APIResponseValidationError,
38
38
  )
39
- from ._base_client import DefaultHttpxClient, DefaultAsyncHttpxClient
39
+ from ._base_client import DefaultHttpxClient, DefaultAioHttpClient, DefaultAsyncHttpxClient
40
40
  from ._utils._logs import setup_logging as _setup_logging
41
41
 
42
42
  __all__ = [
@@ -78,6 +78,7 @@ __all__ = [
78
78
  "DEFAULT_CONNECTION_LIMITS",
79
79
  "DefaultHttpxClient",
80
80
  "DefaultAsyncHttpxClient",
81
+ "DefaultAioHttpClient",
81
82
  ]
82
83
 
83
84
  if not _t.TYPE_CHECKING:
@@ -1289,6 +1289,24 @@ class _DefaultAsyncHttpxClient(httpx.AsyncClient):
1289
1289
  super().__init__(**kwargs)
1290
1290
 
1291
1291
 
1292
+ try:
1293
+ import httpx_aiohttp
1294
+ except ImportError:
1295
+
1296
+ class _DefaultAioHttpClient(httpx.AsyncClient):
1297
+ def __init__(self, **_kwargs: Any) -> None:
1298
+ raise RuntimeError("To use the aiohttp client you must have installed the package with the `aiohttp` extra")
1299
+ else:
1300
+
1301
+ class _DefaultAioHttpClient(httpx_aiohttp.HttpxAiohttpClient): # type: ignore
1302
+ def __init__(self, **kwargs: Any) -> None:
1303
+ kwargs.setdefault("timeout", DEFAULT_TIMEOUT)
1304
+ kwargs.setdefault("limits", DEFAULT_CONNECTION_LIMITS)
1305
+ kwargs.setdefault("follow_redirects", True)
1306
+
1307
+ super().__init__(**kwargs)
1308
+
1309
+
1292
1310
  if TYPE_CHECKING:
1293
1311
  DefaultAsyncHttpxClient = httpx.AsyncClient
1294
1312
  """An alias to `httpx.AsyncClient` that provides the same defaults that this SDK
@@ -1297,8 +1315,12 @@ if TYPE_CHECKING:
1297
1315
  This is useful because overriding the `http_client` with your own instance of
1298
1316
  `httpx.AsyncClient` will result in httpx's defaults being used, not ours.
1299
1317
  """
1318
+
1319
+ DefaultAioHttpClient = httpx.AsyncClient
1320
+ """An alias to `httpx.AsyncClient` that changes the default HTTP transport to `aiohttp`."""
1300
1321
  else:
1301
1322
  DefaultAsyncHttpxClient = _DefaultAsyncHttpxClient
1323
+ DefaultAioHttpClient = _DefaultAioHttpClient
1302
1324
 
1303
1325
 
1304
1326
  class AsyncHttpxClientWrapper(DefaultAsyncHttpxClient):
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "deeporigin_data"
4
- __version__ = "0.1.0-alpha.68" # x-release-please-version
4
+ __version__ = "0.1.0-alpha.70" # x-release-please-version
@@ -1864,7 +1864,9 @@ class TestClient:
1864
1864
 
1865
1865
 
1866
1866
  class TestAsyncClient:
1867
- parametrize = pytest.mark.parametrize("async_client", [False, True], indirect=True, ids=["loose", "strict"])
1867
+ parametrize = pytest.mark.parametrize(
1868
+ "async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
1869
+ )
1868
1870
 
1869
1871
  @parametrize
1870
1872
  async def test_method_add_database_column(self, async_client: AsyncDeeporiginData) -> None:
@@ -6,10 +6,12 @@ import os
6
6
  import logging
7
7
  from typing import TYPE_CHECKING, Iterator, AsyncIterator
8
8
 
9
+ import httpx
9
10
  import pytest
10
11
  from pytest_asyncio import is_async_test
11
12
 
12
- from deeporigin_data import DeeporiginData, AsyncDeeporiginData
13
+ from deeporigin_data import DeeporiginData, AsyncDeeporiginData, DefaultAioHttpClient
14
+ from deeporigin_data._utils import is_dict
13
15
 
14
16
  if TYPE_CHECKING:
15
17
  from _pytest.fixtures import FixtureRequest # pyright: ignore[reportPrivateImportUsage]
@@ -27,6 +29,19 @@ def pytest_collection_modifyitems(items: list[pytest.Function]) -> None:
27
29
  for async_test in pytest_asyncio_tests:
28
30
  async_test.add_marker(session_scope_marker, append=False)
29
31
 
32
+ # We skip tests that use both the aiohttp client and respx_mock as respx_mock
33
+ # doesn't support custom transports.
34
+ for item in items:
35
+ if "async_client" not in item.fixturenames or "respx_mock" not in item.fixturenames:
36
+ continue
37
+
38
+ if not hasattr(item, "callspec"):
39
+ continue
40
+
41
+ async_client_param = item.callspec.params.get("async_client")
42
+ if is_dict(async_client_param) and async_client_param.get("http_client") == "aiohttp":
43
+ item.add_marker(pytest.mark.skip(reason="aiohttp client is not compatible with respx_mock"))
44
+
30
45
 
31
46
  base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
32
47
 
@@ -46,11 +61,25 @@ def client(request: FixtureRequest) -> Iterator[DeeporiginData]:
46
61
 
47
62
  @pytest.fixture(scope="session")
48
63
  async def async_client(request: FixtureRequest) -> AsyncIterator[AsyncDeeporiginData]:
49
- strict = getattr(request, "param", True)
50
- if not isinstance(strict, bool):
51
- raise TypeError(f"Unexpected fixture parameter type {type(strict)}, expected {bool}")
64
+ param = getattr(request, "param", True)
65
+
66
+ # defaults
67
+ strict = True
68
+ http_client: None | httpx.AsyncClient = None
69
+
70
+ if isinstance(param, bool):
71
+ strict = param
72
+ elif is_dict(param):
73
+ strict = param.get("strict", True)
74
+ assert isinstance(strict, bool)
75
+
76
+ http_client_type = param.get("http_client", "httpx")
77
+ if http_client_type == "aiohttp":
78
+ http_client = DefaultAioHttpClient()
79
+ else:
80
+ raise TypeError(f"Unexpected fixture parameter type {type(param)}, expected bool or dict")
52
81
 
53
82
  async with AsyncDeeporiginData(
54
- base_url=base_url, token=token, org_id=org_id, _strict_response_validation=strict
83
+ base_url=base_url, token=token, org_id=org_id, _strict_response_validation=strict, http_client=http_client
55
84
  ) as client:
56
85
  yield client
@@ -204,6 +204,7 @@ class TestDeeporiginData:
204
204
  copy_param = copy_signature.parameters.get(name)
205
205
  assert copy_param is not None, f"copy() signature is missing the {name} param"
206
206
 
207
+ @pytest.mark.skipif(sys.version_info >= (3, 10), reason="fails because of a memory leak that started from 3.12")
207
208
  def test_copy_build_request(self) -> None:
208
209
  options = FinalRequestOptions(method="get", url="/foo")
209
210
 
@@ -1056,6 +1057,7 @@ class TestAsyncDeeporiginData:
1056
1057
  copy_param = copy_signature.parameters.get(name)
1057
1058
  assert copy_param is not None, f"copy() signature is missing the {name} param"
1058
1059
 
1060
+ @pytest.mark.skipif(sys.version_info >= (3, 10), reason="fails because of a memory leak that started from 3.12")
1059
1061
  def test_copy_build_request(self) -> None:
1060
1062
  options = FinalRequestOptions(method="get", url="/foo")
1061
1063
 
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.1.0-alpha.68"
3
- }