deeporigin-data-sdk 0.1.0a47__tar.gz → 0.1.0a50__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.0a50/.release-please-manifest.json +3 -0
  2. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/CHANGELOG.md +33 -0
  3. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/PKG-INFO +44 -5
  4. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/README.md +41 -1
  5. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/SECURITY.md +2 -2
  6. deeporigin_data_sdk-0.1.0a50/bin/publish-pypi +6 -0
  7. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/pyproject.toml +4 -5
  8. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/requirements-dev.lock +2 -1
  9. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/requirements.lock +1 -0
  10. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_base_client.py +18 -100
  11. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_client.py +4 -4
  12. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_constants.py +1 -1
  13. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_models.py +13 -4
  14. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_sync.py +17 -2
  15. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_transform.py +11 -1
  16. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_version.py +1 -1
  17. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_chat_create_thread_params.py +2 -2
  18. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/parse_base_sequence_data_response.py +2 -2
  19. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/condition.py +25 -11
  20. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared_params/condition.py +26 -11
  21. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/api_resources/test_client.py +14 -12
  22. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_client.py +24 -11
  23. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_models.py +32 -0
  24. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_transform.py +10 -1
  25. deeporigin_data_sdk-0.1.0a47/.release-please-manifest.json +0 -3
  26. deeporigin_data_sdk-0.1.0a47/bin/publish-pypi +0 -9
  27. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/.gitignore +0 -0
  28. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/CONTRIBUTING.md +0 -0
  29. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/LICENSE +0 -0
  30. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/api.md +0 -0
  31. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/bin/check-release-environment +0 -0
  32. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/examples/.keep +0 -0
  33. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/mypy.ini +0 -0
  34. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/noxfile.py +0 -0
  35. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/release-please-config.json +0 -0
  36. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/__init__.py +0 -0
  37. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_compat.py +0 -0
  38. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_exceptions.py +0 -0
  39. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_files.py +0 -0
  40. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_qs.py +0 -0
  41. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_resource.py +0 -0
  42. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_response.py +2 -2
  43. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_streaming.py +0 -0
  44. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_types.py +0 -0
  45. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/__init__.py +0 -0
  46. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_logs.py +0 -0
  47. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_proxy.py +0 -0
  48. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_reflection.py +0 -0
  49. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_streams.py +0 -0
  50. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_typing.py +0 -0
  51. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/_utils/_utils.py +0 -0
  52. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/lib/.keep +0 -0
  53. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/py.typed +0 -0
  54. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/resources/__init__.py +0 -0
  55. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/__init__.py +0 -0
  56. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/add_database_column_response.py +0 -0
  57. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/chat_create_thread_response.py +0 -0
  58. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/chat_list_messages_response.py +0 -0
  59. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_add_database_column_params.py +0 -0
  60. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_archive_files_params.py +0 -0
  61. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_chat_list_messages_params.py +0 -0
  62. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_chat_send_message_params.py +0 -0
  63. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_configure_column_select_options_params.py +0 -0
  64. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_convert_id_format_params.py +0 -0
  65. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_create_database_params.py +0 -0
  66. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_create_file_download_url_params.py +0 -0
  67. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_create_file_upload_params.py +0 -0
  68. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_create_workspace_params.py +0 -0
  69. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_delete_database_column_params.py +0 -0
  70. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_delete_database_params.py +0 -0
  71. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_delete_rows_params.py +0 -0
  72. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_delete_workspace_params.py +0 -0
  73. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_code_execution_params.py +0 -0
  74. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_database_params.py +0 -0
  75. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_database_row_params.py +0 -0
  76. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_database_stats_params.py +0 -0
  77. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_file_params.py +0 -0
  78. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_hierarchy_params.py +0 -0
  79. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_row_params.py +0 -0
  80. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_describe_workspace_params.py +0 -0
  81. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_download_file_params.py +0 -0
  82. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_ensure_rows_params.py +0 -0
  83. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_execute_code_async_params.py +0 -0
  84. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_execute_code_sync_params.py +0 -0
  85. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_export_database_params.py +0 -0
  86. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_get_code_execution_result_params.py +0 -0
  87. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_import_rows_params.py +0 -0
  88. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_list_database_column_unique_values_v2_params.py +0 -0
  89. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_list_database_rows_params.py +0 -0
  90. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_list_files_params.py +0 -0
  91. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_list_mentions_params.py +0 -0
  92. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_list_row_back_references_params.py +0 -0
  93. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_list_rows_params.py +0 -0
  94. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_lock_database_params.py +0 -0
  95. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_parse_base_sequence_data_params.py +0 -0
  96. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_resolve_ids_params.py +0 -0
  97. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_unlock_database_params.py +0 -0
  98. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_update_database_column_params.py +0 -0
  99. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_update_database_params.py +0 -0
  100. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/client_update_workspace_params.py +0 -0
  101. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/configure_column_select_options_response.py +0 -0
  102. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/convert_id_format_response.py +0 -0
  103. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/create_database_response.py +0 -0
  104. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/create_file_download_url_response.py +0 -0
  105. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/create_file_upload_response.py +0 -0
  106. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/create_workspace_response.py +0 -0
  107. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/delete_database_column_response.py +0 -0
  108. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/delete_database_response.py +0 -0
  109. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/delete_rows_response.py +0 -0
  110. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/delete_workspace_response.py +0 -0
  111. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_code_execution_response.py +0 -0
  112. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_database_response.py +0 -0
  113. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_database_row_response.py +0 -0
  114. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_database_stats_response.py +0 -0
  115. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_file_response.py +0 -0
  116. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_hierarchy_response.py +0 -0
  117. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/describe_workspace_response.py +0 -0
  118. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/ensure_rows_response.py +0 -0
  119. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/execute_code_async_response.py +0 -0
  120. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/execute_code_sync_response.py +0 -0
  121. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/import_rows_response.py +0 -0
  122. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/list_database_column_unique_values_v2_response.py +0 -0
  123. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/list_database_rows_response.py +0 -0
  124. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/list_files_response.py +0 -0
  125. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/list_mentions_response.py +0 -0
  126. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/list_row_back_references_response.py +0 -0
  127. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/list_rows_response.py +0 -0
  128. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/lock_database_response.py +0 -0
  129. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/resolve_ids_response.py +0 -0
  130. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/__init__.py +0 -0
  131. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/add_column_base.py +0 -0
  132. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/add_column_union.py +0 -0
  133. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/database.py +0 -0
  134. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/database_row.py +0 -0
  135. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/describe_row_response.py +0 -0
  136. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/file.py +0 -0
  137. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/row_filter_join.py +0 -0
  138. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared/workspace.py +0 -0
  139. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared_params/__init__.py +0 -0
  140. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared_params/add_column_base.py +0 -0
  141. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared_params/add_column_union.py +0 -0
  142. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/shared_params/row_filter_join.py +0 -0
  143. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/unlock_database_response.py +0 -0
  144. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/update_database_column_response.py +0 -0
  145. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/update_database_response.py +0 -0
  146. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/src/deeporigin_data/types/update_workspace_response.py +0 -0
  147. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/__init__.py +0 -0
  148. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/api_resources/__init__.py +0 -0
  149. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/conftest.py +0 -0
  150. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/sample_file.txt +0 -0
  151. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_deepcopy.py +0 -0
  152. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_extract_files.py +0 -0
  153. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_files.py +0 -0
  154. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_qs.py +0 -0
  155. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_required_args.py +0 -0
  156. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_response.py +0 -0
  157. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_streaming.py +0 -0
  158. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_utils/test_proxy.py +0 -0
  159. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/test_utils/test_typing.py +0 -0
  160. {deeporigin_data_sdk-0.1.0a47 → deeporigin_data_sdk-0.1.0a50}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-alpha.50"
3
+ }
@@ -1,5 +1,38 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.50 (2025-03-17)
4
+
5
+ Full Changelog: [v0.1.0-alpha.49...v0.1.0-alpha.50](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.49...v0.1.0-alpha.50)
6
+
7
+ ### Bug Fixes
8
+
9
+ * **ci:** ensure pip is always available ([#195](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/195)) ([5a4ae6f](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/5a4ae6fc982182855e604df0ef3ea8882cc13ef3))
10
+ * **ci:** remove publishing patch ([#197](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/197)) ([ffb8a3f](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/ffb8a3f7990a62f4a62bacda68d233bfadcaa988))
11
+
12
+ ## 0.1.0-alpha.49 (2025-03-15)
13
+
14
+ Full Changelog: [v0.1.0-alpha.48...v0.1.0-alpha.49](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.48...v0.1.0-alpha.49)
15
+
16
+ ### Bug Fixes
17
+
18
+ * **types:** handle more discriminated union shapes ([#193](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/193)) ([c2d98ef](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/c2d98ef855574f49ab385743f9b999e4d135b13e))
19
+
20
+
21
+ ### Chores
22
+
23
+ * **internal:** bump rye to 0.44.0 ([#192](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/192)) ([fd51188](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/fd51188772f5513755d9bd9b7b61a823d8dcc362))
24
+ * **internal:** codegen related update ([#188](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/188)) ([6da2e16](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/6da2e169ee7780ac520f3d9ddcb1c44072c6b318))
25
+ * **internal:** codegen related update ([#191](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/191)) ([547b866](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/547b866f58f053501b7f2b8fa352919a0bdf80b6))
26
+ * **internal:** remove extra empty newlines ([#190](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/190)) ([16028da](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/16028da9148bcafb6481e05a326e69b52aa1a964))
27
+
28
+ ## 0.1.0-alpha.48 (2025-03-04)
29
+
30
+ Full Changelog: [v0.1.0-alpha.47...v0.1.0-alpha.48](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.47...v0.1.0-alpha.48)
31
+
32
+ ### Chores
33
+
34
+ * **internal:** codegen related update ([#185](https://github.com/deeporiginbio/deeporigin-data-sdk/issues/185)) ([e11a8a2](https://github.com/deeporiginbio/deeporigin-data-sdk/commit/e11a8a2464934e341727738f54040eccd715a019))
35
+
3
36
  ## 0.1.0-alpha.47 (2025-01-17)
4
37
 
5
38
  Full Changelog: [v0.1.0-alpha.46...v0.1.0-alpha.47](https://github.com/deeporiginbio/deeporigin-data-sdk/compare/v0.1.0-alpha.46...v0.1.0-alpha.47)
@@ -1,12 +1,11 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.3
2
2
  Name: deeporigin_data_sdk
3
- Version: 0.1.0a47
3
+ Version: 0.1.0a50
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
7
7
  Author-email: Deeporigin Data <support@deeporigin.com>
8
- License-Expression: Apache-2.0
9
- License-File: LICENSE
8
+ License: Apache-2.0
10
9
  Classifier: Intended Audience :: Developers
11
10
  Classifier: License :: OSI Approved :: Apache Software License
12
11
  Classifier: Operating System :: MacOS
@@ -38,7 +37,7 @@ The Deeporigin Data Python library provides convenient access to the Deeporigin
38
37
  application. The library includes type definitions for all request params and response fields,
39
38
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
40
39
 
41
- It is generated with [Stainless](https://www.stainlessapi.com/).
40
+ It is generated with [Stainless](https://www.stainless.com/).
42
41
 
43
42
  ## Documentation
44
43
 
@@ -111,6 +110,46 @@ Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typ
111
110
 
112
111
  Typed requests and responses provide autocomplete and documentation within your editor. If you would like to see type errors in VS Code to help catch bugs earlier, set `python.analysis.typeCheckingMode` to `basic`.
113
112
 
113
+ ## Nested params
114
+
115
+ Nested parameters are dictionaries, typed using `TypedDict`, for example:
116
+
117
+ ```python
118
+ from deeporigin_data import DeeporiginData
119
+
120
+ client = DeeporiginData(
121
+ org_id="My Org ID",
122
+ )
123
+
124
+ client.chat_send_message(
125
+ messages=[
126
+ {
127
+ "content": "x",
128
+ "role": "user",
129
+ }
130
+ ],
131
+ thread_id="threadId",
132
+ context={
133
+ "databases": [
134
+ {
135
+ "database": {
136
+ "hid": "hid",
137
+ "hid_prefix": "hidPrefix",
138
+ "name": "name",
139
+ },
140
+ "columns": [{"name": "name"}],
141
+ "rows": [
142
+ {
143
+ "hid": "hid",
144
+ "name": "name",
145
+ }
146
+ ],
147
+ }
148
+ ]
149
+ },
150
+ )
151
+ ```
152
+
114
153
  ## Handling errors
115
154
 
116
155
  When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `deeporigin_data.APIConnectionError` is raised.
@@ -6,7 +6,7 @@ The Deeporigin Data Python library provides convenient access to the Deeporigin
6
6
  application. The library includes type definitions for all request params and response fields,
7
7
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
8
8
 
9
- It is generated with [Stainless](https://www.stainlessapi.com/).
9
+ It is generated with [Stainless](https://www.stainless.com/).
10
10
 
11
11
  ## Documentation
12
12
 
@@ -79,6 +79,46 @@ Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typ
79
79
 
80
80
  Typed requests and responses provide autocomplete and documentation within your editor. If you would like to see type errors in VS Code to help catch bugs earlier, set `python.analysis.typeCheckingMode` to `basic`.
81
81
 
82
+ ## Nested params
83
+
84
+ Nested parameters are dictionaries, typed using `TypedDict`, for example:
85
+
86
+ ```python
87
+ from deeporigin_data import DeeporiginData
88
+
89
+ client = DeeporiginData(
90
+ org_id="My Org ID",
91
+ )
92
+
93
+ client.chat_send_message(
94
+ messages=[
95
+ {
96
+ "content": "x",
97
+ "role": "user",
98
+ }
99
+ ],
100
+ thread_id="threadId",
101
+ context={
102
+ "databases": [
103
+ {
104
+ "database": {
105
+ "hid": "hid",
106
+ "hid_prefix": "hidPrefix",
107
+ "name": "name",
108
+ },
109
+ "columns": [{"name": "name"}],
110
+ "rows": [
111
+ {
112
+ "hid": "hid",
113
+ "name": "name",
114
+ }
115
+ ],
116
+ }
117
+ ]
118
+ },
119
+ )
120
+ ```
121
+
82
122
  ## Handling errors
83
123
 
84
124
  When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `deeporigin_data.APIConnectionError` is raised.
@@ -2,9 +2,9 @@
2
2
 
3
3
  ## Reporting Security Issues
4
4
 
5
- This SDK is generated by [Stainless Software Inc](http://stainlessapi.com). Stainless takes security seriously, and encourages you to report any security vulnerability promptly so that appropriate action can be taken.
5
+ This SDK is generated by [Stainless Software Inc](http://stainless.com). Stainless takes security seriously, and encourages you to report any security vulnerability promptly so that appropriate action can be taken.
6
6
 
7
- To report a security issue, please contact the Stainless team at security@stainlessapi.com.
7
+ To report a security issue, please contact the Stainless team at security@stainless.com.
8
8
 
9
9
  ## Responsible Disclosure
10
10
 
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -eux
4
+ mkdir -p dist
5
+ rye build --clean
6
+ rye publish --yes --token=$PYPI_TOKEN
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "deeporigin_data_sdk"
3
- version = "0.1.0-alpha.47"
3
+ version = "0.1.0-alpha.50"
4
4
  description = "The official Python library for the deeporigin_data API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -38,7 +38,6 @@ Homepage = "https://github.com/deeporiginbio/deeporigin-data-sdk"
38
38
  Repository = "https://github.com/deeporiginbio/deeporigin-data-sdk"
39
39
 
40
40
 
41
-
42
41
  [tool.rye]
43
42
  managed = true
44
43
  # version pins are in requirements-dev.lock
@@ -87,7 +86,7 @@ typecheck = { chain = [
87
86
  "typecheck:mypy" = "mypy ."
88
87
 
89
88
  [build-system]
90
- requires = ["hatchling", "hatch-fancy-pypi-readme"]
89
+ requires = ["hatchling==1.26.3", "hatch-fancy-pypi-readme"]
91
90
  build-backend = "hatchling.build"
92
91
 
93
92
  [tool.hatch.build]
@@ -129,6 +128,7 @@ testpaths = ["tests"]
129
128
  addopts = "--tb=short"
130
129
  xfail_strict = true
131
130
  asyncio_mode = "auto"
131
+ asyncio_default_fixture_loop_scope = "session"
132
132
  filterwarnings = [
133
133
  "error"
134
134
  ]
@@ -151,7 +151,6 @@ reportImplicitOverride = true
151
151
  reportImportCycles = false
152
152
  reportPrivateUsage = false
153
153
 
154
-
155
154
  [tool.ruff]
156
155
  line-length = 120
157
156
  output-format = "grouped"
@@ -176,7 +175,7 @@ select = [
176
175
  "T201",
177
176
  "T203",
178
177
  # misuse of typing.TYPE_CHECKING
179
- "TCH004",
178
+ "TC004",
180
179
  # import rules
181
180
  "TID251",
182
181
  ]
@@ -7,6 +7,7 @@
7
7
  # all-features: true
8
8
  # with-sources: false
9
9
  # generate-hashes: false
10
+ # universal: false
10
11
 
11
12
  -e file:.
12
13
  annotated-types==0.6.0
@@ -78,7 +79,7 @@ pytz==2023.3.post1
78
79
  # via dirty-equals
79
80
  respx==0.22.0
80
81
  rich==13.7.1
81
- ruff==0.6.9
82
+ ruff==0.9.4
82
83
  setuptools==68.2.2
83
84
  # via nodeenv
84
85
  six==1.16.0
@@ -7,6 +7,7 @@
7
7
  # all-features: true
8
8
  # with-sources: false
9
9
  # generate-hashes: false
10
+ # universal: false
10
11
 
11
12
  -e file:.
12
13
  annotated-types==0.6.0
@@ -9,7 +9,6 @@ import asyncio
9
9
  import inspect
10
10
  import logging
11
11
  import platform
12
- import warnings
13
12
  import email.utils
14
13
  from types import TracebackType
15
14
  from random import random
@@ -36,7 +35,7 @@ import anyio
36
35
  import httpx
37
36
  import distro
38
37
  import pydantic
39
- from httpx import URL, Limits
38
+ from httpx import URL
40
39
  from pydantic import PrivateAttr
41
40
 
42
41
  from . import _exceptions
@@ -51,19 +50,16 @@ from ._types import (
51
50
  Timeout,
52
51
  NotGiven,
53
52
  ResponseT,
54
- Transport,
55
53
  AnyMapping,
56
54
  PostParser,
57
- ProxiesTypes,
58
55
  RequestFiles,
59
56
  HttpxSendArgs,
60
- AsyncTransport,
61
57
  RequestOptions,
62
58
  HttpxRequestFiles,
63
59
  ModelBuilderProtocol,
64
60
  )
65
61
  from ._utils import is_dict, is_list, asyncify, is_given, lru_cache, is_mapping
66
- from ._compat import model_copy, model_dump
62
+ from ._compat import PYDANTIC_V2, model_copy, model_dump
67
63
  from ._models import GenericModel, FinalRequestOptions, validate_type, construct_type
68
64
  from ._response import (
69
65
  APIResponse,
@@ -207,6 +203,9 @@ class BaseSyncPage(BasePage[_T], Generic[_T]):
207
203
  model: Type[_T],
208
204
  options: FinalRequestOptions,
209
205
  ) -> None:
206
+ if PYDANTIC_V2 and getattr(self, "__pydantic_private__", None) is None:
207
+ self.__pydantic_private__ = {}
208
+
210
209
  self._model = model
211
210
  self._client = client
212
211
  self._options = options
@@ -292,6 +291,9 @@ class BaseAsyncPage(BasePage[_T], Generic[_T]):
292
291
  client: AsyncAPIClient,
293
292
  options: FinalRequestOptions,
294
293
  ) -> None:
294
+ if PYDANTIC_V2 and getattr(self, "__pydantic_private__", None) is None:
295
+ self.__pydantic_private__ = {}
296
+
295
297
  self._model = model
296
298
  self._client = client
297
299
  self._options = options
@@ -331,9 +333,6 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
331
333
  _base_url: URL
332
334
  max_retries: int
333
335
  timeout: Union[float, Timeout, None]
334
- _limits: httpx.Limits
335
- _proxies: ProxiesTypes | None
336
- _transport: Transport | AsyncTransport | None
337
336
  _strict_response_validation: bool
338
337
  _idempotency_header: str | None
339
338
  _default_stream_cls: type[_DefaultStreamT] | None = None
@@ -346,9 +345,6 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
346
345
  _strict_response_validation: bool,
347
346
  max_retries: int = DEFAULT_MAX_RETRIES,
348
347
  timeout: float | Timeout | None = DEFAULT_TIMEOUT,
349
- limits: httpx.Limits,
350
- transport: Transport | AsyncTransport | None,
351
- proxies: ProxiesTypes | None,
352
348
  custom_headers: Mapping[str, str] | None = None,
353
349
  custom_query: Mapping[str, object] | None = None,
354
350
  ) -> None:
@@ -356,9 +352,6 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
356
352
  self._base_url = self._enforce_trailing_slash(URL(base_url))
357
353
  self.max_retries = max_retries
358
354
  self.timeout = timeout
359
- self._limits = limits
360
- self._proxies = proxies
361
- self._transport = transport
362
355
  self._custom_headers = custom_headers or {}
363
356
  self._custom_query = custom_query or {}
364
357
  self._strict_response_validation = _strict_response_validation
@@ -418,10 +411,17 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
418
411
  if idempotency_header and options.method.lower() != "get" and idempotency_header not in headers:
419
412
  headers[idempotency_header] = options.idempotency_key or self._idempotency_key()
420
413
 
421
- # Don't set the retry count header if it was already set or removed by the caller. We check
414
+ # Don't set these headers if they were already set or removed by the caller. We check
422
415
  # `custom_headers`, which can contain `Omit()`, instead of `headers` to account for the removal case.
423
- if "x-stainless-retry-count" not in (header.lower() for header in custom_headers):
416
+ lower_custom_headers = [header.lower() for header in custom_headers]
417
+ if "x-stainless-retry-count" not in lower_custom_headers:
424
418
  headers["x-stainless-retry-count"] = str(retries_taken)
419
+ if "x-stainless-read-timeout" not in lower_custom_headers:
420
+ timeout = self.timeout if isinstance(options.timeout, NotGiven) else options.timeout
421
+ if isinstance(timeout, Timeout):
422
+ timeout = timeout.read
423
+ if timeout is not None:
424
+ headers["x-stainless-read-timeout"] = str(timeout)
425
425
 
426
426
  return headers
427
427
 
@@ -511,7 +511,7 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
511
511
  # so that passing a `TypedDict` doesn't cause an error.
512
512
  # https://github.com/microsoft/pyright/issues/3526#event-6715453066
513
513
  params=self.qs.stringify(cast(Mapping[str, Any], params)) if params else None,
514
- json=json_data,
514
+ json=json_data if is_given(json_data) else None,
515
515
  files=files,
516
516
  **kwargs,
517
517
  )
@@ -787,46 +787,11 @@ class SyncAPIClient(BaseClient[httpx.Client, Stream[Any]]):
787
787
  base_url: str | URL,
788
788
  max_retries: int = DEFAULT_MAX_RETRIES,
789
789
  timeout: float | Timeout | None | NotGiven = NOT_GIVEN,
790
- transport: Transport | None = None,
791
- proxies: ProxiesTypes | None = None,
792
- limits: Limits | None = None,
793
790
  http_client: httpx.Client | None = None,
794
791
  custom_headers: Mapping[str, str] | None = None,
795
792
  custom_query: Mapping[str, object] | None = None,
796
793
  _strict_response_validation: bool,
797
794
  ) -> None:
798
- kwargs: dict[str, Any] = {}
799
- if limits is not None:
800
- warnings.warn(
801
- "The `connection_pool_limits` argument is deprecated. The `http_client` argument should be passed instead",
802
- category=DeprecationWarning,
803
- stacklevel=3,
804
- )
805
- if http_client is not None:
806
- raise ValueError("The `http_client` argument is mutually exclusive with `connection_pool_limits`")
807
- else:
808
- limits = DEFAULT_CONNECTION_LIMITS
809
-
810
- if transport is not None:
811
- kwargs["transport"] = transport
812
- warnings.warn(
813
- "The `transport` argument is deprecated. The `http_client` argument should be passed instead",
814
- category=DeprecationWarning,
815
- stacklevel=3,
816
- )
817
- if http_client is not None:
818
- raise ValueError("The `http_client` argument is mutually exclusive with `transport`")
819
-
820
- if proxies is not None:
821
- kwargs["proxies"] = proxies
822
- warnings.warn(
823
- "The `proxies` argument is deprecated. The `http_client` argument should be passed instead",
824
- category=DeprecationWarning,
825
- stacklevel=3,
826
- )
827
- if http_client is not None:
828
- raise ValueError("The `http_client` argument is mutually exclusive with `proxies`")
829
-
830
795
  if not is_given(timeout):
831
796
  # if the user passed in a custom http client with a non-default
832
797
  # timeout set then we use that timeout.
@@ -847,12 +812,9 @@ class SyncAPIClient(BaseClient[httpx.Client, Stream[Any]]):
847
812
 
848
813
  super().__init__(
849
814
  version=version,
850
- limits=limits,
851
815
  # cast to a valid type because mypy doesn't understand our type narrowing
852
816
  timeout=cast(Timeout, timeout),
853
- proxies=proxies,
854
817
  base_url=base_url,
855
- transport=transport,
856
818
  max_retries=max_retries,
857
819
  custom_query=custom_query,
858
820
  custom_headers=custom_headers,
@@ -862,9 +824,6 @@ class SyncAPIClient(BaseClient[httpx.Client, Stream[Any]]):
862
824
  base_url=base_url,
863
825
  # cast to a valid type because mypy doesn't understand our type narrowing
864
826
  timeout=cast(Timeout, timeout),
865
- limits=limits,
866
- follow_redirects=True,
867
- **kwargs, # type: ignore
868
827
  )
869
828
 
870
829
  def is_closed(self) -> bool:
@@ -1359,45 +1318,10 @@ class AsyncAPIClient(BaseClient[httpx.AsyncClient, AsyncStream[Any]]):
1359
1318
  _strict_response_validation: bool,
1360
1319
  max_retries: int = DEFAULT_MAX_RETRIES,
1361
1320
  timeout: float | Timeout | None | NotGiven = NOT_GIVEN,
1362
- transport: AsyncTransport | None = None,
1363
- proxies: ProxiesTypes | None = None,
1364
- limits: Limits | None = None,
1365
1321
  http_client: httpx.AsyncClient | None = None,
1366
1322
  custom_headers: Mapping[str, str] | None = None,
1367
1323
  custom_query: Mapping[str, object] | None = None,
1368
1324
  ) -> None:
1369
- kwargs: dict[str, Any] = {}
1370
- if limits is not None:
1371
- warnings.warn(
1372
- "The `connection_pool_limits` argument is deprecated. The `http_client` argument should be passed instead",
1373
- category=DeprecationWarning,
1374
- stacklevel=3,
1375
- )
1376
- if http_client is not None:
1377
- raise ValueError("The `http_client` argument is mutually exclusive with `connection_pool_limits`")
1378
- else:
1379
- limits = DEFAULT_CONNECTION_LIMITS
1380
-
1381
- if transport is not None:
1382
- kwargs["transport"] = transport
1383
- warnings.warn(
1384
- "The `transport` argument is deprecated. The `http_client` argument should be passed instead",
1385
- category=DeprecationWarning,
1386
- stacklevel=3,
1387
- )
1388
- if http_client is not None:
1389
- raise ValueError("The `http_client` argument is mutually exclusive with `transport`")
1390
-
1391
- if proxies is not None:
1392
- kwargs["proxies"] = proxies
1393
- warnings.warn(
1394
- "The `proxies` argument is deprecated. The `http_client` argument should be passed instead",
1395
- category=DeprecationWarning,
1396
- stacklevel=3,
1397
- )
1398
- if http_client is not None:
1399
- raise ValueError("The `http_client` argument is mutually exclusive with `proxies`")
1400
-
1401
1325
  if not is_given(timeout):
1402
1326
  # if the user passed in a custom http client with a non-default
1403
1327
  # timeout set then we use that timeout.
@@ -1419,11 +1343,8 @@ class AsyncAPIClient(BaseClient[httpx.AsyncClient, AsyncStream[Any]]):
1419
1343
  super().__init__(
1420
1344
  version=version,
1421
1345
  base_url=base_url,
1422
- limits=limits,
1423
1346
  # cast to a valid type because mypy doesn't understand our type narrowing
1424
1347
  timeout=cast(Timeout, timeout),
1425
- proxies=proxies,
1426
- transport=transport,
1427
1348
  max_retries=max_retries,
1428
1349
  custom_query=custom_query,
1429
1350
  custom_headers=custom_headers,
@@ -1433,9 +1354,6 @@ class AsyncAPIClient(BaseClient[httpx.AsyncClient, AsyncStream[Any]]):
1433
1354
  base_url=base_url,
1434
1355
  # cast to a valid type because mypy doesn't understand our type narrowing
1435
1356
  timeout=cast(Timeout, timeout),
1436
- limits=limits,
1437
- follow_redirects=True,
1438
- **kwargs, # type: ignore
1439
1357
  )
1440
1358
 
1441
1359
  def is_closed(self) -> bool:
@@ -180,7 +180,7 @@ class DeeporiginData(SyncAPIClient):
180
180
  # part of our public interface in the future.
181
181
  _strict_response_validation: bool = False,
182
182
  ) -> None:
183
- """Construct a new synchronous deeporigin_data client instance.
183
+ """Construct a new synchronous DeeporiginData client instance.
184
184
 
185
185
  This automatically infers the following arguments from their corresponding environment variables if they are not provided:
186
186
  - `token` from `ORG_BEARER_TOKEN`
@@ -369,7 +369,7 @@ class DeeporiginData(SyncAPIClient):
369
369
  def chat_create_thread(
370
370
  self,
371
371
  *,
372
- body: object,
372
+ body: object | NotGiven = NOT_GIVEN,
373
373
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
374
374
  # The extra values given here take precedence over values defined on the client or passed to this method.
375
375
  extra_headers: Headers | None = None,
@@ -2000,7 +2000,7 @@ class AsyncDeeporiginData(AsyncAPIClient):
2000
2000
  # part of our public interface in the future.
2001
2001
  _strict_response_validation: bool = False,
2002
2002
  ) -> None:
2003
- """Construct a new async deeporigin_data client instance.
2003
+ """Construct a new async AsyncDeeporiginData client instance.
2004
2004
 
2005
2005
  This automatically infers the following arguments from their corresponding environment variables if they are not provided:
2006
2006
  - `token` from `ORG_BEARER_TOKEN`
@@ -2191,7 +2191,7 @@ class AsyncDeeporiginData(AsyncAPIClient):
2191
2191
  async def chat_create_thread(
2192
2192
  self,
2193
2193
  *,
2194
- body: object,
2194
+ body: object | NotGiven = NOT_GIVEN,
2195
2195
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
2196
2196
  # The extra values given here take precedence over values defined on the client or passed to this method.
2197
2197
  extra_headers: Headers | None = None,
@@ -6,7 +6,7 @@ RAW_RESPONSE_HEADER = "X-Stainless-Raw-Response"
6
6
  OVERRIDE_CAST_TO_HEADER = "____stainless_override_cast_to"
7
7
 
8
8
  # default timeout is 1 minute
9
- DEFAULT_TIMEOUT = httpx.Timeout(timeout=60.0, connect=5.0)
9
+ DEFAULT_TIMEOUT = httpx.Timeout(timeout=60, connect=5.0)
10
10
  DEFAULT_MAX_RETRIES = 2
11
11
  DEFAULT_CONNECTION_LIMITS = httpx.Limits(max_connections=100, max_keepalive_connections=20)
12
12
 
@@ -65,7 +65,7 @@ from ._compat import (
65
65
  from ._constants import RAW_RESPONSE_HEADER
66
66
 
67
67
  if TYPE_CHECKING:
68
- from pydantic_core.core_schema import ModelField, LiteralSchema, ModelFieldsSchema
68
+ from pydantic_core.core_schema import ModelField, ModelSchema, LiteralSchema, ModelFieldsSchema
69
69
 
70
70
  __all__ = ["BaseModel", "GenericModel"]
71
71
 
@@ -172,7 +172,7 @@ class BaseModel(pydantic.BaseModel):
172
172
  @override
173
173
  def __str__(self) -> str:
174
174
  # mypy complains about an invalid self arg
175
- return f'{self.__repr_name__()}({self.__repr_str__(", ")})' # type: ignore[misc]
175
+ return f"{self.__repr_name__()}({self.__repr_str__(', ')})" # type: ignore[misc]
176
176
 
177
177
  # Override the 'construct' method in a way that supports recursive parsing without validation.
178
178
  # Based on https://github.com/samuelcolvin/pydantic/issues/1168#issuecomment-817742836.
@@ -426,10 +426,16 @@ def construct_type(*, value: object, type_: object) -> object:
426
426
 
427
427
  If the given value does not match the expected type then it is returned as-is.
428
428
  """
429
+
430
+ # store a reference to the original type we were given before we extract any inner
431
+ # types so that we can properly resolve forward references in `TypeAliasType` annotations
432
+ original_type = None
433
+
429
434
  # we allow `object` as the input type because otherwise, passing things like
430
435
  # `Literal['value']` will be reported as a type error by type checkers
431
436
  type_ = cast("type[object]", type_)
432
437
  if is_type_alias_type(type_):
438
+ original_type = type_ # type: ignore[unreachable]
433
439
  type_ = type_.__value__ # type: ignore[unreachable]
434
440
 
435
441
  # unwrap `Annotated[T, ...]` -> `T`
@@ -446,7 +452,7 @@ def construct_type(*, value: object, type_: object) -> object:
446
452
 
447
453
  if is_union(origin):
448
454
  try:
449
- return validate_type(type_=cast("type[object]", type_), value=value)
455
+ return validate_type(type_=cast("type[object]", original_type or type_), value=value)
450
456
  except Exception:
451
457
  pass
452
458
 
@@ -640,15 +646,18 @@ def _build_discriminated_union_meta(*, union: type, meta_annotations: tuple[Any,
640
646
 
641
647
  def _extract_field_schema_pv2(model: type[BaseModel], field_name: str) -> ModelField | None:
642
648
  schema = model.__pydantic_core_schema__
649
+ if schema["type"] == "definitions":
650
+ schema = schema["schema"]
651
+
643
652
  if schema["type"] != "model":
644
653
  return None
645
654
 
655
+ schema = cast("ModelSchema", schema)
646
656
  fields_schema = schema["schema"]
647
657
  if fields_schema["type"] != "model-fields":
648
658
  return None
649
659
 
650
660
  fields_schema = cast("ModelFieldsSchema", fields_schema)
651
-
652
661
  field = fields_schema["fields"].get(field_name)
653
662
  if not field:
654
663
  return None
@@ -7,16 +7,20 @@ import contextvars
7
7
  from typing import Any, TypeVar, Callable, Awaitable
8
8
  from typing_extensions import ParamSpec
9
9
 
10
+ import anyio
11
+ import sniffio
12
+ import anyio.to_thread
13
+
10
14
  T_Retval = TypeVar("T_Retval")
11
15
  T_ParamSpec = ParamSpec("T_ParamSpec")
12
16
 
13
17
 
14
18
  if sys.version_info >= (3, 9):
15
- to_thread = asyncio.to_thread
19
+ _asyncio_to_thread = asyncio.to_thread
16
20
  else:
17
21
  # backport of https://docs.python.org/3/library/asyncio-task.html#asyncio.to_thread
18
22
  # for Python 3.8 support
19
- async def to_thread(
23
+ async def _asyncio_to_thread(
20
24
  func: Callable[T_ParamSpec, T_Retval], /, *args: T_ParamSpec.args, **kwargs: T_ParamSpec.kwargs
21
25
  ) -> Any:
22
26
  """Asynchronously run function *func* in a separate thread.
@@ -34,6 +38,17 @@ else:
34
38
  return await loop.run_in_executor(None, func_call)
35
39
 
36
40
 
41
+ async def to_thread(
42
+ func: Callable[T_ParamSpec, T_Retval], /, *args: T_ParamSpec.args, **kwargs: T_ParamSpec.kwargs
43
+ ) -> T_Retval:
44
+ if sniffio.current_async_library() == "asyncio":
45
+ return await _asyncio_to_thread(func, *args, **kwargs)
46
+
47
+ return await anyio.to_thread.run_sync(
48
+ functools.partial(func, *args, **kwargs),
49
+ )
50
+
51
+
37
52
  # inspired by `asyncer`, https://github.com/tiangolo/asyncer
38
53
  def asyncify(function: Callable[T_ParamSpec, T_Retval]) -> Callable[T_ParamSpec, Awaitable[T_Retval]]:
39
54
  """