hotdata 0.2.1__tar.gz → 0.2.2__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 (306) hide show
  1. {hotdata-0.2.1 → hotdata-0.2.2}/PKG-INFO +1 -1
  2. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api_client.py +5 -1
  3. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/rest.py +4 -0
  4. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata.egg-info/PKG-INFO +1 -1
  5. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata.egg-info/SOURCES.txt +3 -1
  6. {hotdata-0.2.1 → hotdata-0.2.2}/pyproject.toml +1 -1
  7. hotdata-0.2.2/test/test_api_client_close.py +28 -0
  8. hotdata-0.2.2/tests/test_update_changelog.py +48 -0
  9. {hotdata-0.2.1 → hotdata-0.2.2}/README.md +0 -0
  10. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/__init__.py +0 -0
  11. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/__init__.py +0 -0
  12. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/connection_types_api.py +0 -0
  13. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/connections_api.py +0 -0
  14. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/datasets_api.py +0 -0
  15. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/embedding_providers_api.py +0 -0
  16. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/indexes_api.py +0 -0
  17. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/information_schema_api.py +0 -0
  18. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/jobs_api.py +0 -0
  19. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/query_api.py +0 -0
  20. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/query_runs_api.py +0 -0
  21. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/refresh_api.py +0 -0
  22. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/results_api.py +0 -0
  23. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/sandboxes_api.py +0 -0
  24. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/saved_queries_api.py +0 -0
  25. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/secrets_api.py +0 -0
  26. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/uploads_api.py +0 -0
  27. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/workspace_context_api.py +0 -0
  28. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api/workspaces_api.py +0 -0
  29. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/api_response.py +0 -0
  30. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/arrow.py +0 -0
  31. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/configuration.py +0 -0
  32. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/exceptions.py +0 -0
  33. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/__init__.py +0 -0
  34. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/api_error_detail.py +0 -0
  35. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/api_error_response.py +0 -0
  36. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/async_query_response.py +0 -0
  37. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/boolean_profile_detail.py +0 -0
  38. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/categorical_profile_detail.py +0 -0
  39. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/category_value_info.py +0 -0
  40. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_definition.py +0 -0
  41. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_info.py +0 -0
  42. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_detail.py +0 -0
  43. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_detail_one_of.py +0 -0
  44. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_detail_one_of1.py +0 -0
  45. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_detail_one_of2.py +0 -0
  46. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_detail_one_of3.py +0 -0
  47. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_detail_one_of4.py +0 -0
  48. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_profile_info.py +0 -0
  49. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/column_type_spec.py +0 -0
  50. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/connection_health_response.py +0 -0
  51. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/connection_info.py +0 -0
  52. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/connection_refresh_result.py +0 -0
  53. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/connection_schema_error.py +0 -0
  54. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/connection_type_detail.py +0 -0
  55. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/connection_type_summary.py +0 -0
  56. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_connection_request.py +0 -0
  57. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_connection_response.py +0 -0
  58. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_dataset_request.py +0 -0
  59. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_dataset_response.py +0 -0
  60. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_embedding_provider_request.py +0 -0
  61. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_embedding_provider_response.py +0 -0
  62. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_index_request.py +0 -0
  63. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_sandbox_request.py +0 -0
  64. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_saved_query_request.py +0 -0
  65. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_secret_request.py +0 -0
  66. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_secret_response.py +0 -0
  67. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_workspace201_response.py +0 -0
  68. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_workspace_request.py +0 -0
  69. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/create_workspace_response.py +0 -0
  70. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_source.py +0 -0
  71. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_source_one_of.py +0 -0
  72. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_source_one_of1.py +0 -0
  73. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_source_one_of2.py +0 -0
  74. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_source_one_of3.py +0 -0
  75. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_source_one_of4.py +0 -0
  76. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_summary.py +0 -0
  77. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/dataset_version_summary.py +0 -0
  78. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/delete_sandbox_response.py +0 -0
  79. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/discovery_status.py +0 -0
  80. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/embedding_provider_response.py +0 -0
  81. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/error.py +0 -0
  82. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/execute_saved_query_request.py +0 -0
  83. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/get_connection_response.py +0 -0
  84. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/get_dataset_response.py +0 -0
  85. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/get_result_response.py +0 -0
  86. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/get_secret_response.py +0 -0
  87. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/get_workspace_context_response.py +0 -0
  88. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/index_info_response.py +0 -0
  89. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/index_status.py +0 -0
  90. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/information_schema_response.py +0 -0
  91. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/inline_data.py +0 -0
  92. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/inline_dataset_source.py +0 -0
  93. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/job_result.py +0 -0
  94. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/job_status.py +0 -0
  95. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/job_status_response.py +0 -0
  96. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/job_type.py +0 -0
  97. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_connection_types_response.py +0 -0
  98. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_connections_response.py +0 -0
  99. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_dataset_versions_response.py +0 -0
  100. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_datasets_response.py +0 -0
  101. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_embedding_providers_response.py +0 -0
  102. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_indexes_response.py +0 -0
  103. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_jobs_response.py +0 -0
  104. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_query_runs_response.py +0 -0
  105. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_results_response.py +0 -0
  106. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_sandboxes_response.py +0 -0
  107. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_saved_queries_response.py +0 -0
  108. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_saved_query_versions_response.py +0 -0
  109. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_secrets_response.py +0 -0
  110. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_uploads_response.py +0 -0
  111. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_workspace_contexts_response.py +0 -0
  112. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_workspaces200_response.py +0 -0
  113. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/list_workspaces_response.py +0 -0
  114. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/load_managed_table_request.py +0 -0
  115. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/load_managed_table_response.py +0 -0
  116. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/numeric_profile_detail.py +0 -0
  117. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/query_request.py +0 -0
  118. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/query_response.py +0 -0
  119. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/query_run_info.py +0 -0
  120. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/refresh_dataset_response.py +0 -0
  121. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/refresh_request.py +0 -0
  122. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/refresh_response.py +0 -0
  123. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/refresh_warning.py +0 -0
  124. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/result_info.py +0 -0
  125. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/results_format_query.py +0 -0
  126. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/sandbox.py +0 -0
  127. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/sandbox_response.py +0 -0
  128. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/saved_query_dataset_source.py +0 -0
  129. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/saved_query_detail.py +0 -0
  130. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/saved_query_summary.py +0 -0
  131. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/saved_query_version_info.py +0 -0
  132. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/schema_refresh_result.py +0 -0
  133. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/secret_metadata_response.py +0 -0
  134. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/sql_query_dataset_source.py +0 -0
  135. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/submit_job_response.py +0 -0
  136. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/table_info.py +0 -0
  137. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/table_profile_response.py +0 -0
  138. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/table_refresh_error.py +0 -0
  139. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/table_refresh_result.py +0 -0
  140. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/temporal_profile_detail.py +0 -0
  141. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/text_profile_detail.py +0 -0
  142. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_dataset_request.py +0 -0
  143. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_dataset_response.py +0 -0
  144. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_embedding_provider_request.py +0 -0
  145. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_embedding_provider_response.py +0 -0
  146. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_sandbox_request.py +0 -0
  147. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_saved_query_request.py +0 -0
  148. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_secret_request.py +0 -0
  149. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/update_secret_response.py +0 -0
  150. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/upload_dataset_source.py +0 -0
  151. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/upload_info.py +0 -0
  152. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/upload_response.py +0 -0
  153. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/upsert_workspace_context_request.py +0 -0
  154. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/upsert_workspace_context_response.py +0 -0
  155. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/url_dataset_source.py +0 -0
  156. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/workspace_context_entry.py +0 -0
  157. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/workspace_detail.py +0 -0
  158. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/models/workspace_list_item.py +0 -0
  159. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata/py.typed +0 -0
  160. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata.egg-info/dependency_links.txt +0 -0
  161. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata.egg-info/requires.txt +0 -0
  162. {hotdata-0.2.1 → hotdata-0.2.2}/hotdata.egg-info/top_level.txt +0 -0
  163. {hotdata-0.2.1 → hotdata-0.2.2}/setup.cfg +0 -0
  164. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_api_error_detail.py +0 -0
  165. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_api_error_response.py +0 -0
  166. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_async_query_response.py +0 -0
  167. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_boolean_profile_detail.py +0 -0
  168. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_categorical_profile_detail.py +0 -0
  169. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_category_value_info.py +0 -0
  170. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_definition.py +0 -0
  171. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_info.py +0 -0
  172. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_detail.py +0 -0
  173. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_detail_one_of.py +0 -0
  174. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_detail_one_of1.py +0 -0
  175. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_detail_one_of2.py +0 -0
  176. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_detail_one_of3.py +0 -0
  177. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_detail_one_of4.py +0 -0
  178. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_profile_info.py +0 -0
  179. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_column_type_spec.py +0 -0
  180. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_health_response.py +0 -0
  181. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_info.py +0 -0
  182. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_refresh_result.py +0 -0
  183. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_schema_error.py +0 -0
  184. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_type_detail.py +0 -0
  185. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_type_summary.py +0 -0
  186. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connection_types_api.py +0 -0
  187. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_connections_api.py +0 -0
  188. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_connection_request.py +0 -0
  189. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_connection_response.py +0 -0
  190. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_dataset_request.py +0 -0
  191. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_dataset_response.py +0 -0
  192. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_embedding_provider_request.py +0 -0
  193. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_embedding_provider_response.py +0 -0
  194. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_index_request.py +0 -0
  195. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_sandbox_request.py +0 -0
  196. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_saved_query_request.py +0 -0
  197. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_secret_request.py +0 -0
  198. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_secret_response.py +0 -0
  199. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_workspace201_response.py +0 -0
  200. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_workspace_request.py +0 -0
  201. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_create_workspace_response.py +0 -0
  202. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_source.py +0 -0
  203. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_source_one_of.py +0 -0
  204. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_source_one_of1.py +0 -0
  205. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_source_one_of2.py +0 -0
  206. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_source_one_of3.py +0 -0
  207. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_source_one_of4.py +0 -0
  208. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_summary.py +0 -0
  209. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_dataset_version_summary.py +0 -0
  210. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_datasets_api.py +0 -0
  211. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_delete_sandbox_response.py +0 -0
  212. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_discovery_status.py +0 -0
  213. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_embedding_provider_response.py +0 -0
  214. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_embedding_providers_api.py +0 -0
  215. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_error.py +0 -0
  216. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_execute_saved_query_request.py +0 -0
  217. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_get_connection_response.py +0 -0
  218. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_get_dataset_response.py +0 -0
  219. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_get_result_response.py +0 -0
  220. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_get_secret_response.py +0 -0
  221. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_get_workspace_context_response.py +0 -0
  222. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_index_info_response.py +0 -0
  223. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_index_status.py +0 -0
  224. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_indexes_api.py +0 -0
  225. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_information_schema_api.py +0 -0
  226. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_information_schema_response.py +0 -0
  227. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_inline_data.py +0 -0
  228. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_inline_dataset_source.py +0 -0
  229. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_job_result.py +0 -0
  230. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_job_status.py +0 -0
  231. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_job_status_response.py +0 -0
  232. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_job_type.py +0 -0
  233. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_jobs_api.py +0 -0
  234. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_connection_types_response.py +0 -0
  235. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_connections_response.py +0 -0
  236. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_dataset_versions_response.py +0 -0
  237. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_datasets_response.py +0 -0
  238. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_embedding_providers_response.py +0 -0
  239. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_indexes_response.py +0 -0
  240. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_jobs_response.py +0 -0
  241. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_query_runs_response.py +0 -0
  242. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_results_response.py +0 -0
  243. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_sandboxes_response.py +0 -0
  244. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_saved_queries_response.py +0 -0
  245. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_saved_query_versions_response.py +0 -0
  246. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_secrets_response.py +0 -0
  247. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_uploads_response.py +0 -0
  248. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_workspace_contexts_response.py +0 -0
  249. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_workspaces200_response.py +0 -0
  250. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_list_workspaces_response.py +0 -0
  251. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_load_managed_table_request.py +0 -0
  252. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_load_managed_table_response.py +0 -0
  253. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_numeric_profile_detail.py +0 -0
  254. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_query_api.py +0 -0
  255. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_query_request.py +0 -0
  256. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_query_response.py +0 -0
  257. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_query_run_info.py +0 -0
  258. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_query_runs_api.py +0 -0
  259. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_refresh_api.py +0 -0
  260. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_refresh_dataset_response.py +0 -0
  261. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_refresh_request.py +0 -0
  262. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_refresh_response.py +0 -0
  263. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_refresh_warning.py +0 -0
  264. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_result_info.py +0 -0
  265. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_results_api.py +0 -0
  266. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_results_format_query.py +0 -0
  267. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_sandbox.py +0 -0
  268. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_sandbox_response.py +0 -0
  269. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_sandboxes_api.py +0 -0
  270. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_saved_queries_api.py +0 -0
  271. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_saved_query_dataset_source.py +0 -0
  272. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_saved_query_detail.py +0 -0
  273. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_saved_query_summary.py +0 -0
  274. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_saved_query_version_info.py +0 -0
  275. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_schema_refresh_result.py +0 -0
  276. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_secret_metadata_response.py +0 -0
  277. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_secrets_api.py +0 -0
  278. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_sql_query_dataset_source.py +0 -0
  279. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_submit_job_response.py +0 -0
  280. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_table_info.py +0 -0
  281. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_table_profile_response.py +0 -0
  282. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_table_refresh_error.py +0 -0
  283. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_table_refresh_result.py +0 -0
  284. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_temporal_profile_detail.py +0 -0
  285. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_text_profile_detail.py +0 -0
  286. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_dataset_request.py +0 -0
  287. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_dataset_response.py +0 -0
  288. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_embedding_provider_request.py +0 -0
  289. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_embedding_provider_response.py +0 -0
  290. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_sandbox_request.py +0 -0
  291. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_saved_query_request.py +0 -0
  292. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_secret_request.py +0 -0
  293. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_update_secret_response.py +0 -0
  294. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_upload_dataset_source.py +0 -0
  295. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_upload_info.py +0 -0
  296. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_upload_response.py +0 -0
  297. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_uploads_api.py +0 -0
  298. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_upsert_workspace_context_request.py +0 -0
  299. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_upsert_workspace_context_response.py +0 -0
  300. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_url_dataset_source.py +0 -0
  301. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_workspace_context_api.py +0 -0
  302. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_workspace_context_entry.py +0 -0
  303. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_workspace_detail.py +0 -0
  304. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_workspace_list_item.py +0 -0
  305. {hotdata-0.2.1 → hotdata-0.2.2}/test/test_workspaces_api.py +0 -0
  306. {hotdata-0.2.1 → hotdata-0.2.2}/tests/test_arrow.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hotdata
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Hotdata API
5
5
  Author-email: Hotdata <developers@hotdata.dev>
6
6
  License: MIT
@@ -97,8 +97,12 @@ class ApiClient:
97
97
  def __enter__(self):
98
98
  return self
99
99
 
100
+ def close(self) -> None:
101
+ if self.rest_client is not None:
102
+ self.rest_client.close()
103
+
100
104
  def __exit__(self, exc_type, exc_value, traceback):
101
- pass
105
+ self.close()
102
106
 
103
107
  @property
104
108
  def user_agent(self):
@@ -118,6 +118,10 @@ class RESTClientObject:
118
118
  else:
119
119
  self.pool_manager = urllib3.PoolManager(**pool_args)
120
120
 
121
+ def close(self) -> None:
122
+ if self.pool_manager is not None:
123
+ self.pool_manager.clear()
124
+
121
125
  def request(
122
126
  self,
123
127
  method,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hotdata
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Hotdata API
5
5
  Author-email: Hotdata <developers@hotdata.dev>
6
6
  License: MIT
@@ -158,6 +158,7 @@ hotdata/models/url_dataset_source.py
158
158
  hotdata/models/workspace_context_entry.py
159
159
  hotdata/models/workspace_detail.py
160
160
  hotdata/models/workspace_list_item.py
161
+ test/test_api_client_close.py
161
162
  test/test_api_error_detail.py
162
163
  test/test_api_error_response.py
163
164
  test/test_async_query_response.py
@@ -300,4 +301,5 @@ test/test_workspace_context_entry.py
300
301
  test/test_workspace_detail.py
301
302
  test/test_workspace_list_item.py
302
303
  test/test_workspaces_api.py
303
- tests/test_arrow.py
304
+ tests/test_arrow.py
305
+ tests/test_update_changelog.py
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "hotdata"
3
- version = "0.2.1"
3
+ version = "0.2.2"
4
4
  description = "Hotdata API"
5
5
  authors = [
6
6
  {name = "Hotdata",email = "developers@hotdata.dev"},
@@ -0,0 +1,28 @@
1
+ import unittest
2
+
3
+ from hotdata import ApiClient
4
+
5
+
6
+ class TestApiClientClose(unittest.TestCase):
7
+ def test_close_does_not_raise(self) -> None:
8
+ client = ApiClient()
9
+ client.close()
10
+
11
+ def test_context_manager_calls_close(self) -> None:
12
+ client = ApiClient()
13
+ called = False
14
+ original_close = client.rest_client.close
15
+
16
+ def tracked_close() -> None:
17
+ nonlocal called
18
+ called = True
19
+ original_close()
20
+
21
+ client.rest_client.close = tracked_close
22
+ with client:
23
+ pass
24
+ self.assertTrue(called)
25
+
26
+
27
+ if __name__ == "__main__":
28
+ unittest.main()
@@ -0,0 +1,48 @@
1
+ import importlib.util
2
+ from pathlib import Path
3
+
4
+
5
+ def _update_changelog_text(text: str, ver: str, date: str) -> str:
6
+ path = Path(__file__).resolve().parents[1] / "scripts" / "update_changelog.py"
7
+ spec = importlib.util.spec_from_file_location("update_changelog", path)
8
+ module = importlib.util.module_from_spec(spec)
9
+ assert spec.loader is not None
10
+ spec.loader.exec_module(module)
11
+ return module.update_changelog_text(text, ver, date)
12
+
13
+
14
+ HEADER = """# Changelog
15
+
16
+ All notable changes to this project will be documented in this file.
17
+
18
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
19
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
20
+
21
+ ## [Unreleased]
22
+
23
+ ## [0.1.1] - 2026-05-19
24
+
25
+ ### Added
26
+
27
+ - Initial feature.
28
+ """
29
+
30
+
31
+ def test_empty_unreleased_inserts_version_without_duplicate_heading():
32
+ result = _update_changelog_text(HEADER, "0.1.2", "2026-05-20")
33
+ assert result.count("## [Unreleased]") == 1
34
+ assert "## [0.1.2] - 2026-05-20" in result
35
+ assert "The format is based on [Keep a Changelog]" in result.split("## [0.1.2]")[0]
36
+ assert result.index("## [0.1.2]") < result.index("## [0.1.1]")
37
+
38
+
39
+ def test_populated_unreleased_moves_notes_into_new_section():
40
+ text = HEADER.replace(
41
+ "## [Unreleased]\n\n",
42
+ "## [Unreleased]\n\n### Added\n\n- New widget.\n\n",
43
+ )
44
+ result = _update_changelog_text(text, "0.1.2", "2026-05-20")
45
+ assert result.count("## [Unreleased]") == 1
46
+ assert "- New widget." in result
47
+ assert result.index("- New widget.") < result.index("## [0.1.1]")
48
+ assert "The format is based on [Keep a Changelog]" in result.split("## [0.1.2]")[0]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes