blaxel 0.1.9rc37__tar.gz → 0.1.10rc38__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 (619) hide show
  1. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/.gitignore +2 -1
  2. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/Makefile +16 -1
  3. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/PKG-INFO +1 -1
  4. blaxel-0.1.10rc38/integrationtest/sandbox.py +80 -0
  5. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/pyproject.toml +1 -1
  6. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/authentication/__init__.py +11 -2
  7. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/authentication/devicemode.py +1 -0
  8. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/common/autoload.py +1 -0
  9. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/common/internal.py +5 -5
  10. blaxel-0.1.10rc38/src/blaxel/sandbox/base.py +68 -0
  11. blaxel-0.1.10rc38/src/blaxel/sandbox/client/__init__.py +8 -0
  12. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/__init__.py +1 -0
  13. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/filesystem/delete_filesystem_path.py +184 -0
  14. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/filesystem/get_filesystem_path.py +184 -0
  15. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/filesystem/put_filesystem_path.py +189 -0
  16. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/network/__init__.py +0 -0
  17. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/network/delete_network_process_pid_monitor.py +169 -0
  18. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/network/get_network_process_pid_ports.py +169 -0
  19. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/network/post_network_process_pid_monitor.py +195 -0
  20. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/__init__.py +0 -0
  21. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/delete_process_identifier.py +163 -0
  22. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/delete_process_identifier_kill.py +189 -0
  23. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/get_process.py +135 -0
  24. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/get_process_identifier.py +159 -0
  25. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/get_process_identifier_logs.py +167 -0
  26. blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/process/post_process.py +176 -0
  27. blaxel-0.1.10rc38/src/blaxel/sandbox/client/client.py +162 -0
  28. blaxel-0.1.10rc38/src/blaxel/sandbox/client/errors.py +16 -0
  29. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/__init__.py +35 -0
  30. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/delete_network_process_pid_monitor_response_200.py +45 -0
  31. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/directory.py +110 -0
  32. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/error_response.py +60 -0
  33. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/file.py +105 -0
  34. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/file_request.py +78 -0
  35. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/file_with_content.py +114 -0
  36. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/get_network_process_pid_ports_response_200.py +45 -0
  37. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/get_process_identifier_logs_response_200.py +45 -0
  38. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/port_monitor_request.py +60 -0
  39. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/post_network_process_pid_monitor_response_200.py +45 -0
  40. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/process_kill_request.py +60 -0
  41. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/process_request.py +118 -0
  42. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/process_response.py +123 -0
  43. blaxel-0.1.10rc38/src/blaxel/sandbox/client/models/success_response.py +69 -0
  44. blaxel-0.1.10rc38/src/blaxel/sandbox/client/py.typed +1 -0
  45. blaxel-0.1.10rc38/src/blaxel/sandbox/client/types.py +46 -0
  46. blaxel-0.1.10rc38/src/blaxel/sandbox/filesystem.py +102 -0
  47. blaxel-0.1.10rc38/src/blaxel/sandbox/process.py +57 -0
  48. blaxel-0.1.10rc38/src/blaxel/sandbox/sandbox.py +92 -0
  49. blaxel-0.1.10rc38/templates/endpoint_init.py.jinja +0 -0
  50. blaxel-0.1.9rc37/definition.yml +0 -3569
  51. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/.github/workflows/dev.yaml +0 -0
  52. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/.github/workflows/prod.yaml +0 -0
  53. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/LICENSE +0 -0
  54. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/README.md +0 -0
  55. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/blaxel.toml +0 -0
  56. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/doc.sh +0 -0
  57. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/agents.md +0 -0
  58. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/create_agent.md +0 -0
  59. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/delete_agent.md +0 -0
  60. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/get_agent.md +0 -0
  61. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/index.md +0 -0
  62. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/list_agent_revisions.md +0 -0
  63. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/list_agents.md +0 -0
  64. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/agents/update_agent.md +0 -0
  65. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/configurations/get_configuration.md +0 -0
  66. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/configurations/index.md +0 -0
  67. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/default/get_template.md +0 -0
  68. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/default/get_template_contents.md +0 -0
  69. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/default/get_template_file_contents.md +0 -0
  70. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/default/index.md +0 -0
  71. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/default/list_mcp_hub_definitions.md +0 -0
  72. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/create_function.md +0 -0
  73. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/delete_function.md +0 -0
  74. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/get_function.md +0 -0
  75. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/index.md +0 -0
  76. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/list_function_revisions.md +0 -0
  77. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/list_functions.md +0 -0
  78. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/functions/update_function.md +0 -0
  79. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/index.md +0 -0
  80. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/create_integration_connection.md +0 -0
  81. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/delete_integration_connection.md +0 -0
  82. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/get_integration.md +0 -0
  83. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/get_integration_connection.md +0 -0
  84. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/get_integration_connection_model.md +0 -0
  85. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/get_integration_connection_model_endpoint_configurations.md +0 -0
  86. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/index.md +0 -0
  87. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/list_integration_connection_models.md +0 -0
  88. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/list_integration_connections.md +0 -0
  89. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/integrations/update_integration_connection.md +0 -0
  90. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/invitations/index.md +0 -0
  91. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/invitations/list_all_pending_invitations.md +0 -0
  92. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/create_knowledgebase.md +0 -0
  93. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/delete_knowledgebase.md +0 -0
  94. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/get_knowledgebase.md +0 -0
  95. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/index.md +0 -0
  96. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/list_knowledgebase_revisions.md +0 -0
  97. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/list_knowledgebases.md +0 -0
  98. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/knowledgebases/update_knowledgebase.md +0 -0
  99. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/locations/index.md +0 -0
  100. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/locations/list_locations.md +0 -0
  101. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/create_model.md +0 -0
  102. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/delete_model.md +0 -0
  103. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/get_model.md +0 -0
  104. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/index.md +0 -0
  105. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/list_model_revisions.md +0 -0
  106. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/list_models.md +0 -0
  107. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/models/update_model.md +0 -0
  108. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/policies/create_policy.md +0 -0
  109. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/policies/delete_policy.md +0 -0
  110. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/policies/get_policy.md +0 -0
  111. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/policies/index.md +0 -0
  112. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/policies/list_policies.md +0 -0
  113. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/policies/update_policy.md +0 -0
  114. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/create_private_cluster.md +0 -0
  115. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/delete_private_cluster.md +0 -0
  116. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/get_private_cluster.md +0 -0
  117. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/get_private_cluster_health.md +0 -0
  118. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/index.md +0 -0
  119. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/list_private_clusters.md +0 -0
  120. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/update_private_cluster.md +0 -0
  121. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/privateclusters/update_private_cluster_health.md +0 -0
  122. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/create_api_key_for_service_account.md +0 -0
  123. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/create_workspace_service_account.md +0 -0
  124. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/delete_api_key_for_service_account.md +0 -0
  125. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/delete_workspace_service_account.md +0 -0
  126. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/get_workspace_service_accounts.md +0 -0
  127. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/index.md +0 -0
  128. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/list_api_keys_for_service_account.md +0 -0
  129. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/service_accounts/update_workspace_service_account.md +0 -0
  130. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/templates/index.md +0 -0
  131. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/templates/list_templates.md +0 -0
  132. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/accept_workspace_invitation.md +0 -0
  133. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/create_worspace.md +0 -0
  134. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/decline_workspace_invitation.md +0 -0
  135. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/delete_workspace.md +0 -0
  136. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/get_workspace.md +0 -0
  137. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/index.md +0 -0
  138. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/invite_workspace_user.md +0 -0
  139. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/leave_workspace.md +0 -0
  140. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/list_workspace_users.md +0 -0
  141. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/list_workspaces.md +0 -0
  142. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/remove_workspace_user.md +0 -0
  143. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/update_workspace.md +0 -0
  144. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/api/workspaces/update_workspace_user_role.md +0 -0
  145. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/authentication/apikey.md +0 -0
  146. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/authentication/authentication.md +0 -0
  147. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/authentication/clientcredentials.md +0 -0
  148. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/authentication/credentials.md +0 -0
  149. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/authentication/device_mode.md +0 -0
  150. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/authentication/index.md +0 -0
  151. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/client.md +0 -0
  152. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/error.md +0 -0
  153. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/index.md +0 -0
  154. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/instrumentation.md +0 -0
  155. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/logger.md +0 -0
  156. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/secrets.md +0 -0
  157. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/settings.md +0 -0
  158. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/common/utils.md +0 -0
  159. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/deploy/deploy.md +0 -0
  160. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/deploy/format.md +0 -0
  161. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/deploy/index.md +0 -0
  162. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/deploy/parser.md +0 -0
  163. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/errors.md +0 -0
  164. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/functions.md +0 -0
  165. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/index.md +0 -0
  166. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/chroma.md +0 -0
  167. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/embeddings.md +0 -0
  168. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/factory.md +0 -0
  169. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/index.md +0 -0
  170. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/pinecone.md +0 -0
  171. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/qdrant.md +0 -0
  172. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/knowledgebases/types.md +0 -0
  173. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/acl.md +0 -0
  174. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/agent.md +0 -0
  175. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/agent_chain.md +0 -0
  176. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/agent_spec.md +0 -0
  177. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/api_key.md +0 -0
  178. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/configuration.md +0 -0
  179. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/continent.md +0 -0
  180. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/core_event.md +0 -0
  181. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/core_spec.md +0 -0
  182. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/core_spec_configurations.md +0 -0
  183. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/country.md +0 -0
  184. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/create_api_key_for_service_account_body.md +0 -0
  185. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/create_workspace_service_account_body.md +0 -0
  186. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/create_workspace_service_account_response_200.md +0 -0
  187. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/delete_workspace_service_account_response_200.md +0 -0
  188. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/entrypoint.md +0 -0
  189. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/entrypoint_env.md +0 -0
  190. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/flavor.md +0 -0
  191. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/form.md +0 -0
  192. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/form_config.md +0 -0
  193. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/form_oauth.md +0 -0
  194. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/form_secrets.md +0 -0
  195. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function.md +0 -0
  196. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function_kit.md +0 -0
  197. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function_schema.md +0 -0
  198. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function_schema_not.md +0 -0
  199. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function_schema_or_bool.md +0 -0
  200. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function_schema_properties.md +0 -0
  201. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/function_spec.md +0 -0
  202. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/get_workspace_service_accounts_response_200_item.md +0 -0
  203. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/histogram_bucket.md +0 -0
  204. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/histogram_stats.md +0 -0
  205. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/index.md +0 -0
  206. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/integration_connection.md +0 -0
  207. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/integration_connection_spec.md +0 -0
  208. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/integration_connection_spec_config.md +0 -0
  209. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/integration_connection_spec_secret.md +0 -0
  210. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/integration_model.md +0 -0
  211. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/integration_repository.md +0 -0
  212. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/invite_workspace_user_body.md +0 -0
  213. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/knowledgebase.md +0 -0
  214. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/knowledgebase_spec.md +0 -0
  215. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/knowledgebase_spec_options.md +0 -0
  216. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/last_n_requests_metric.md +0 -0
  217. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/latency_metric.md +0 -0
  218. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/location_response.md +0 -0
  219. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/mcp_definition.md +0 -0
  220. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/mcp_definition_entrypoint.md +0 -0
  221. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/mcp_definition_form.md +0 -0
  222. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/memory_allocation_metric.md +0 -0
  223. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metadata.md +0 -0
  224. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metadata_labels.md +0 -0
  225. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metric.md +0 -0
  226. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metrics.md +0 -0
  227. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metrics_models.md +0 -0
  228. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metrics_request_total_per_code.md +0 -0
  229. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/metrics_rps_per_code.md +0 -0
  230. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/model.md +0 -0
  231. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/model_private_cluster.md +0 -0
  232. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/model_spec.md +0 -0
  233. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/o_auth.md +0 -0
  234. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/owner_fields.md +0 -0
  235. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pending_invitation.md +0 -0
  236. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pending_invitation_accept.md +0 -0
  237. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pending_invitation_render.md +0 -0
  238. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pending_invitation_render_invited_by.md +0 -0
  239. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pending_invitation_render_workspace.md +0 -0
  240. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pending_invitation_workspace_details.md +0 -0
  241. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/pod_template_spec.md +0 -0
  242. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/policy.md +0 -0
  243. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/policy_location.md +0 -0
  244. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/policy_max_tokens.md +0 -0
  245. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/policy_spec.md +0 -0
  246. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/private_cluster.md +0 -0
  247. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/private_location.md +0 -0
  248. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/repository.md +0 -0
  249. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_duration_over_time_metric.md +0 -0
  250. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_duration_over_time_metrics.md +0 -0
  251. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_total_by_origin_metric.md +0 -0
  252. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_total_by_origin_metric_request_total_by_origin.md +0 -0
  253. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_total_by_origin_metric_request_total_by_origin_and_code.md +0 -0
  254. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_total_metric.md +0 -0
  255. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_total_metric_request_total_per_code.md +0 -0
  256. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/request_total_metric_rps_per_code.md +0 -0
  257. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/resource_log.md +0 -0
  258. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/resource_metrics.md +0 -0
  259. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/resource_metrics_request_total_per_code.md +0 -0
  260. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/resource_metrics_rps_per_code.md +0 -0
  261. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/revision_configuration.md +0 -0
  262. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/revision_metadata.md +0 -0
  263. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/runtime.md +0 -0
  264. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/runtime_startup_probe.md +0 -0
  265. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/serverless_config.md +0 -0
  266. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/spec_configuration.md +0 -0
  267. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/store_agent.md +0 -0
  268. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/store_agent_labels.md +0 -0
  269. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/store_configuration.md +0 -0
  270. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/store_configuration_option.md +0 -0
  271. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/template.md +0 -0
  272. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/template_variable.md +0 -0
  273. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/time_fields.md +0 -0
  274. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/time_to_first_token_over_time_metrics.md +0 -0
  275. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/token_rate_metric.md +0 -0
  276. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/token_rate_metrics.md +0 -0
  277. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/token_total_metric.md +0 -0
  278. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/trace_ids_response.md +0 -0
  279. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/update_workspace_service_account_body.md +0 -0
  280. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/update_workspace_service_account_response_200.md +0 -0
  281. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/update_workspace_user_role_body.md +0 -0
  282. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/websocket_channel.md +0 -0
  283. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/workspace.md +0 -0
  284. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/workspace_labels.md +0 -0
  285. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/models/workspace_user.md +0 -0
  286. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/run.md +0 -0
  287. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/serve/app.md +0 -0
  288. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/serve/index.md +0 -0
  289. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/serve/middlewares/accesslog.md +0 -0
  290. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/serve/middlewares/index.md +0 -0
  291. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/serve/middlewares/processtime.md +0 -0
  292. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel/types.md +0 -0
  293. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/docs/blaxel-docs.md +0 -0
  294. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_crewai.py +0 -0
  295. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_googleadk.py +0 -0
  296. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_langchain.py +0 -0
  297. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_langgraph.py +0 -0
  298. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_livekit.py +0 -0
  299. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_llamaindex.py +0 -0
  300. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_openai.py +0 -0
  301. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/agent_pydantic.py +0 -0
  302. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/bl_agents.py +0 -0
  303. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/bl_models.py +0 -0
  304. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/bl_tools.py +0 -0
  305. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/client.py +0 -0
  306. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/env.py +0 -0
  307. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/fastapi_crewai.py +0 -0
  308. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/fastapi_google_adk.py +0 -0
  309. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/fastapi_langchain.py +0 -0
  310. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/fastapi_llamaindex.py +0 -0
  311. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/fastapi_openai.py +0 -0
  312. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/fastapi_pydantic.py +0 -0
  313. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/global_hash.py +0 -0
  314. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/mcp_client.py +0 -0
  315. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/integrationtest/mcp_server.py +0 -0
  316. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/openapi-python-client.yml +0 -0
  317. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/__init__.py +0 -0
  318. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/agents/__init__.py +0 -0
  319. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/authentication/apikey.py +0 -0
  320. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/authentication/clientcredentials.py +0 -0
  321. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/authentication/oauth.py +0 -0
  322. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/authentication/types.py +0 -0
  323. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/cache/__init__.py +0 -0
  324. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/cache/cache.py +0 -0
  325. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/__init__.py +0 -0
  326. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/__init__.py +0 -0
  327. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/__init__.py +0 -0
  328. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/create_agent.py +0 -0
  329. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/delete_agent.py +0 -0
  330. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/get_agent.py +0 -0
  331. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/list_agent_revisions.py +0 -0
  332. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/list_agents.py +0 -0
  333. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/agents/update_agent.py +0 -0
  334. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/__init__.py +0 -0
  335. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/create_sandbox.py +0 -0
  336. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/delete_sandbox.py +0 -0
  337. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/get_sandbox.py +0 -0
  338. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/list_sandboxes.py +0 -0
  339. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/start_sandbox.py +0 -0
  340. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/stop_sandbox.py +0 -0
  341. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/compute/update_sandbox.py +0 -0
  342. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/configurations/__init__.py +0 -0
  343. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/configurations/get_configuration.py +0 -0
  344. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/default/__init__.py +0 -0
  345. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/default/get_template.py +0 -0
  346. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/default/get_template_contents.py +0 -0
  347. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/default/get_template_file_contents.py +0 -0
  348. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/default/list_mcp_hub_definitions.py +0 -0
  349. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/default/list_sandbox_hub_definitions.py +0 -0
  350. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/__init__.py +0 -0
  351. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/create_function.py +0 -0
  352. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/delete_function.py +0 -0
  353. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/get_function.py +0 -0
  354. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/list_function_revisions.py +0 -0
  355. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/list_functions.py +0 -0
  356. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/functions/update_function.py +0 -0
  357. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/__init__.py +0 -0
  358. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/create_integration_connection.py +0 -0
  359. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/delete_integration_connection.py +0 -0
  360. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/get_integration.py +0 -0
  361. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/get_integration_connection.py +0 -0
  362. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/get_integration_connection_model.py +0 -0
  363. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/get_integration_connection_model_endpoint_configurations.py +0 -0
  364. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/list_integration_connection_models.py +0 -0
  365. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/list_integration_connections.py +0 -0
  366. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/integrations/update_integration_connection.py +0 -0
  367. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/invitations/__init__.py +0 -0
  368. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/invitations/list_all_pending_invitations.py +0 -0
  369. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/__init__.py +0 -0
  370. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/create_knowledgebase.py +0 -0
  371. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/delete_knowledgebase.py +0 -0
  372. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/get_knowledgebase.py +0 -0
  373. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/list_knowledgebase_revisions.py +0 -0
  374. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/list_knowledgebases.py +0 -0
  375. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/knowledgebases/update_knowledgebase.py +0 -0
  376. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/locations/__init__.py +0 -0
  377. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/locations/list_locations.py +0 -0
  378. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/__init__.py +0 -0
  379. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/create_model.py +0 -0
  380. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/delete_model.py +0 -0
  381. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/get_model.py +0 -0
  382. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/list_model_revisions.py +0 -0
  383. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/list_models.py +0 -0
  384. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/models/update_model.py +0 -0
  385. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/policies/__init__.py +0 -0
  386. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/policies/create_policy.py +0 -0
  387. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/policies/delete_policy.py +0 -0
  388. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/policies/get_policy.py +0 -0
  389. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/policies/list_policies.py +0 -0
  390. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/policies/update_policy.py +0 -0
  391. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/__init__.py +0 -0
  392. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/create_private_cluster.py +0 -0
  393. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/delete_private_cluster.py +0 -0
  394. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/get_private_cluster.py +0 -0
  395. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/get_private_cluster_health.py +0 -0
  396. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/list_private_clusters.py +0 -0
  397. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/update_private_cluster.py +0 -0
  398. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/privateclusters/update_private_cluster_health.py +0 -0
  399. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/__init__.py +0 -0
  400. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/create_api_key_for_service_account.py +0 -0
  401. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/create_workspace_service_account.py +0 -0
  402. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/delete_api_key_for_service_account.py +0 -0
  403. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/delete_workspace_service_account.py +0 -0
  404. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/get_workspace_service_accounts.py +0 -0
  405. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/list_api_keys_for_service_account.py +0 -0
  406. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/service_accounts/update_workspace_service_account.py +0 -0
  407. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/templates/__init__.py +0 -0
  408. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/templates/list_templates.py +0 -0
  409. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/__init__.py +0 -0
  410. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/accept_workspace_invitation.py +0 -0
  411. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/create_worspace.py +0 -0
  412. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/decline_workspace_invitation.py +0 -0
  413. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/delete_workspace.py +0 -0
  414. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/get_workspace.py +0 -0
  415. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/invite_workspace_user.py +0 -0
  416. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/leave_workspace.py +0 -0
  417. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/list_workspace_users.py +0 -0
  418. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/list_workspaces.py +0 -0
  419. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/remove_workspace_user.py +0 -0
  420. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/update_workspace.py +0 -0
  421. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/api/workspaces/update_workspace_user_role.py +0 -0
  422. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/client.py +0 -0
  423. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/errors.py +0 -0
  424. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/__init__.py +0 -0
  425. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/acl.py +0 -0
  426. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/agent.py +0 -0
  427. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/agent_spec.py +0 -0
  428. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/api_key.py +0 -0
  429. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/configuration.py +0 -0
  430. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/continent.py +0 -0
  431. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/core_event.py +0 -0
  432. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/core_spec.py +0 -0
  433. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/core_spec_configurations.py +0 -0
  434. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/country.py +0 -0
  435. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/create_api_key_for_service_account_body.py +0 -0
  436. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/create_workspace_service_account_body.py +0 -0
  437. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/create_workspace_service_account_response_200.py +0 -0
  438. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/delete_workspace_service_account_response_200.py +0 -0
  439. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/entrypoint.py +0 -0
  440. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/entrypoint_env.py +0 -0
  441. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/flavor.py +0 -0
  442. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/form.py +0 -0
  443. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/form_config.py +0 -0
  444. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/form_oauth.py +0 -0
  445. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/form_secrets.py +0 -0
  446. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function.py +0 -0
  447. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function_kit.py +0 -0
  448. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function_schema.py +0 -0
  449. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function_schema_not.py +0 -0
  450. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function_schema_or_bool.py +0 -0
  451. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function_schema_properties.py +0 -0
  452. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/function_spec.py +0 -0
  453. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/get_workspace_service_accounts_response_200_item.py +0 -0
  454. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/histogram_bucket.py +0 -0
  455. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/histogram_stats.py +0 -0
  456. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/integration_connection.py +0 -0
  457. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/integration_connection_spec.py +0 -0
  458. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/integration_connection_spec_config.py +0 -0
  459. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/integration_connection_spec_secret.py +0 -0
  460. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/integration_model.py +0 -0
  461. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/integration_repository.py +0 -0
  462. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/invite_workspace_user_body.py +0 -0
  463. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/knowledgebase.py +0 -0
  464. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/knowledgebase_spec.py +0 -0
  465. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/knowledgebase_spec_options.py +0 -0
  466. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/last_n_requests_metric.py +0 -0
  467. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/latency_metric.py +0 -0
  468. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/location_response.py +0 -0
  469. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/mcp_definition.py +0 -0
  470. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/mcp_definition_entrypoint.py +0 -0
  471. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/mcp_definition_form.py +0 -0
  472. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/memory_allocation_metric.py +0 -0
  473. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metadata.py +0 -0
  474. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metadata_labels.py +0 -0
  475. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metric.py +0 -0
  476. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metrics.py +0 -0
  477. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metrics_models.py +0 -0
  478. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metrics_request_total_per_code.py +0 -0
  479. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/metrics_rps_per_code.py +0 -0
  480. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/model.py +0 -0
  481. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/model_private_cluster.py +0 -0
  482. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/model_spec.py +0 -0
  483. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/o_auth.py +0 -0
  484. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/owner_fields.py +0 -0
  485. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pending_invitation.py +0 -0
  486. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pending_invitation_accept.py +0 -0
  487. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pending_invitation_render.py +0 -0
  488. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pending_invitation_render_invited_by.py +0 -0
  489. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pending_invitation_render_workspace.py +0 -0
  490. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pending_invitation_workspace_details.py +0 -0
  491. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/pod_template_spec.py +0 -0
  492. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/policy.py +0 -0
  493. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/policy_location.py +0 -0
  494. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/policy_max_tokens.py +0 -0
  495. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/policy_spec.py +0 -0
  496. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/port.py +0 -0
  497. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/private_cluster.py +0 -0
  498. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/private_location.py +0 -0
  499. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/repository.py +0 -0
  500. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_duration_over_time_metric.py +0 -0
  501. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_duration_over_time_metrics.py +0 -0
  502. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_by_origin_metric.py +0 -0
  503. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_by_origin_metric_request_total_by_origin.py +0 -0
  504. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_by_origin_metric_request_total_by_origin_and_code.py +0 -0
  505. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_metric.py +0 -0
  506. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_metric_request_total_per_code.py +0 -0
  507. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_metric_rps_per_code.py +0 -0
  508. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/request_total_response_data.py +0 -0
  509. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/resource_log.py +0 -0
  510. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/resource_metrics.py +0 -0
  511. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/resource_metrics_request_total_per_code.py +0 -0
  512. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/resource_metrics_request_total_per_code_previous.py +0 -0
  513. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/resource_metrics_rps_per_code.py +0 -0
  514. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/resource_metrics_rps_per_code_previous.py +0 -0
  515. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/revision_configuration.py +0 -0
  516. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/revision_metadata.py +0 -0
  517. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/runtime.py +0 -0
  518. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/runtime_configuration.py +0 -0
  519. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/runtime_startup_probe.py +0 -0
  520. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/sandbox.py +0 -0
  521. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/sandbox_definition.py +0 -0
  522. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/sandbox_spec.py +0 -0
  523. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/sandboxes.py +0 -0
  524. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/serverless_config.py +0 -0
  525. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/serverless_config_configuration.py +0 -0
  526. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/spec_configuration.py +0 -0
  527. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/start_sandbox.py +0 -0
  528. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/stop_sandbox.py +0 -0
  529. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/store_agent.py +0 -0
  530. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/store_agent_labels.py +0 -0
  531. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/store_configuration.py +0 -0
  532. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/store_configuration_option.py +0 -0
  533. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/template.py +0 -0
  534. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/template_variable.py +0 -0
  535. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/time_fields.py +0 -0
  536. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/time_to_first_token_over_time_metrics.py +0 -0
  537. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/token_rate_metric.py +0 -0
  538. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/token_rate_metrics.py +0 -0
  539. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/token_total_metric.py +0 -0
  540. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/trace_ids_response.py +0 -0
  541. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/trigger.py +0 -0
  542. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/trigger_configuration.py +0 -0
  543. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/update_workspace_service_account_body.py +0 -0
  544. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/update_workspace_service_account_response_200.py +0 -0
  545. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/update_workspace_user_role_body.py +0 -0
  546. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/websocket_channel.py +0 -0
  547. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/workspace.py +0 -0
  548. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/workspace_labels.py +0 -0
  549. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/workspace_runtime.py +0 -0
  550. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/models/workspace_user.py +0 -0
  551. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/py.typed +0 -0
  552. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/client/types.py +0 -0
  553. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/common/env.py +0 -0
  554. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/common/logger.py +0 -0
  555. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/common/settings.py +0 -0
  556. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/instrumentation/exporters.py +0 -0
  557. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/instrumentation/log.py +0 -0
  558. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/instrumentation/manager.py +0 -0
  559. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/instrumentation/map.py +0 -0
  560. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/instrumentation/span.py +0 -0
  561. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/mcp/__init__.py +0 -0
  562. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/mcp/client.py +0 -0
  563. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/mcp/server.py +0 -0
  564. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/__init__.py +0 -0
  565. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/crewai.py +0 -0
  566. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/custom/langchain/gemini.py +0 -0
  567. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/custom/llamaindex/cohere.py +0 -0
  568. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/custom/pydantic/gemini.py +0 -0
  569. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/googleadk.py +0 -0
  570. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/langchain.py +0 -0
  571. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/livekit.py +0 -0
  572. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/llamaindex.py +0 -0
  573. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/openai.py +0 -0
  574. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/models/pydantic.py +0 -0
  575. blaxel-0.1.9rc37/templates/endpoint_init.py.jinja → blaxel-0.1.10rc38/src/blaxel/sandbox/client/api/filesystem/__init__.py +0 -0
  576. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/__init__.py +1 -1
  577. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/common.py +0 -0
  578. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/crewai.py +0 -0
  579. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/googleadk.py +0 -0
  580. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/langchain.py +0 -0
  581. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/livekit.py +0 -0
  582. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/llamaindex.py +0 -0
  583. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/openai.py +0 -0
  584. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/pydantic.py +0 -0
  585. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/src/blaxel/tools/types.py +0 -0
  586. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/.gitignore.jinja +0 -0
  587. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/README.md.jinja +0 -0
  588. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/api_init.py.jinja +0 -0
  589. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/client.py.jinja +0 -0
  590. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/endpoint_macros.py.jinja +0 -0
  591. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/endpoint_module.py.jinja +0 -0
  592. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/errors.py.jinja +0 -0
  593. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/helpers.jinja +0 -0
  594. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/int_enum.py.jinja +0 -0
  595. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/literal_enum.py.jinja +0 -0
  596. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/model.py.jinja +0 -0
  597. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/models_init.py.jinja +0 -0
  598. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/package_init.py.jinja +0 -0
  599. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/any_property.py.jinja +0 -0
  600. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/boolean_property.py.jinja +0 -0
  601. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/const_property.py.jinja +0 -0
  602. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/date_property.py.jinja +0 -0
  603. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/datetime_property.py.jinja +0 -0
  604. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/enum_property.py.jinja +0 -0
  605. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/file_property.py.jinja +0 -0
  606. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/float_property.py.jinja +0 -0
  607. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/helpers.jinja +0 -0
  608. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/int_property.py.jinja +0 -0
  609. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/list_property.py.jinja +0 -0
  610. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/literal_enum_property.py.jinja +0 -0
  611. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/model_property.py.jinja +0 -0
  612. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/property_macros.py.jinja +0 -0
  613. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/union_property.py.jinja +0 -0
  614. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/property_templates/uuid_property.py.jinja +0 -0
  615. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/pyproject.toml.jinja +0 -0
  616. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/pyproject_ruff.toml.jinja +0 -0
  617. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/setup.py.jinja +0 -0
  618. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/str_enum.py.jinja +0 -0
  619. {blaxel-0.1.9rc37 → blaxel-0.1.10rc38}/templates/types.py.jinja +0 -0
@@ -23,4 +23,5 @@ dmypy.json
23
23
  /.coverage
24
24
  uv.lock
25
25
 
26
- telemetry.sh
26
+ telemetry.sh
27
+ definition.yml
@@ -1,6 +1,19 @@
1
1
  ARGS:= $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
2
2
 
3
- sdk:
3
+ sdk-sandbox:
4
+ cp ../sandbox/sandbox-api/docs/openapi.yml ./definition.yml
5
+ rm -rf src/blaxel/sandbox/client/api src/blaxel/sandbox/client/models
6
+ openapi-python-client generate \
7
+ --path=definition.yml \
8
+ --output-path=./tmp-sdk-sandbox \
9
+ --overwrite \
10
+ --custom-template-path=./templates \
11
+ --config=./openapi-python-client.yml
12
+ cp -r ./tmp-sdk-sandbox/blaxel/* ./src/blaxel/sandbox/client
13
+ rm -rf ./tmp-sdk-sandbox
14
+ uv run ruff check --fix
15
+
16
+ sdk-controlplane:
4
17
  cp ../controlplane/api/api/definitions/controlplane.yml ./definition.yml
5
18
  rm -rf src/blaxel/client/api src/blaxel/client/models
6
19
  openapi-python-client generate \
@@ -13,6 +26,8 @@ sdk:
13
26
  rm -rf ./tmp-sdk-python
14
27
  uv run ruff check --fix
15
28
 
29
+ sdk: sdk-sandbox sdk-controlplane
30
+
16
31
  doc:
17
32
  rm -rf docs
18
33
  uv run pdoc blaxel-docs src/blaxel -o docs --force --skip-errors
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: blaxel
3
- Version: 0.1.9rc37
3
+ Version: 0.1.10rc38
4
4
  Summary: Add your description here
5
5
  Author-email: cploujoux <cploujoux@blaxel.ai>
6
6
  License-File: LICENSE
@@ -0,0 +1,80 @@
1
+ import asyncio
2
+ import logging
3
+ import os
4
+
5
+ from blaxel.client.models import Metadata, Port, Runtime, Sandbox, SandboxSpec
6
+ from blaxel.sandbox.base import ResponseError
7
+ from blaxel.sandbox.client.models import ProcessRequest
8
+ from blaxel.sandbox.sandbox import SandboxInstance
9
+
10
+ logger = logging.getLogger(__name__)
11
+
12
+
13
+ async def create_sandbox(sandbox_name: str):
14
+ # Create sandbox
15
+ image = "blaxel/prod-base:14769328323"
16
+ logger.info(f"Creating sandbox {sandbox_name} with image {image}")
17
+ sandbox = await SandboxInstance.create(Sandbox(
18
+ metadata=Metadata(name=sandbox_name),
19
+ spec=SandboxSpec(
20
+ runtime=Runtime(
21
+ image=image,
22
+ memory=2048,
23
+ cpu=2,
24
+ ports=[
25
+ Port(name="sandbox-api", target=8080, protocol="HTTP")
26
+ ]
27
+ )
28
+ )
29
+ ))
30
+ logger.info("Waiting for sandbox to be deployed")
31
+ await sandbox.wait(max_wait=120000, interval=1000)
32
+ logger.info("Sandbox deployed")
33
+ return sandbox
34
+
35
+ async def main():
36
+ user = os.environ.get("USER")
37
+ sandbox_name = "sandbox-test-3"
38
+ sandbox = None
39
+ try:
40
+ sandbox = await create_sandbox(sandbox_name)
41
+ sandbox = await SandboxInstance.get(sandbox_name)
42
+
43
+ # Filesystem tests
44
+ await sandbox.fs.write(f"/Users/{user}/Downloads/test", "Hello world")
45
+ content = await sandbox.fs.read(f"/Users/{user}/Downloads/test")
46
+ assert content == "Hello world", "File content is not correct"
47
+ dir = await sandbox.fs.ls(f"/Users/{user}/Downloads")
48
+ assert dir.files and len(dir.files) >= 1, "Directory is empty"
49
+ assert any(f.path == f"/Users/{user}/Downloads/test" for f in dir.files), "File not found in directory"
50
+ await sandbox.fs.mkdir(f"/Users/{user}/Downloads/test2")
51
+ after_mkdir = await sandbox.fs.ls(f"/Users/{user}/Downloads/test2")
52
+ assert not after_mkdir.files or len(after_mkdir.files) == 0, "Directory is not empty after mkdir"
53
+ await sandbox.fs.cp(f"/Users/{user}/Downloads/test", f"/Users/{user}/Downloads/test2/test")
54
+ after_cp_ls = await sandbox.fs.ls(f"/Users/{user}/Downloads/test2")
55
+ assert after_cp_ls.files and any(f.path == f"/Users/{user}/Downloads/test2/test" for f in after_cp_ls.files), "File not found in directory after cp"
56
+ await sandbox.fs.rm(f"/Users/{user}/Downloads/test")
57
+ try:
58
+ await sandbox.fs.rm(f"/Users/{user}/Downloads/test2")
59
+ except ResponseError as e:
60
+ logger.info(f"That is expected => {e.error}")
61
+ await sandbox.fs.rm(f"/Users/{user}/Downloads/test2", True)
62
+
63
+ # Process tests
64
+ process = await sandbox.process.exec(ProcessRequest(name="test", command="echo 'Hello world'"))
65
+ assert getattr(process, "status", None) != "completed", "Process did complete without waiting"
66
+ await asyncio.sleep(0.01)
67
+ completed_process = await sandbox.process.get("test")
68
+ assert getattr(completed_process, "status", None) == "completed", "Process did not complete"
69
+ logs = await sandbox.process.logs("test")
70
+ assert logs == 'Hello world\n', "Logs are not correct"
71
+ try:
72
+ await sandbox.process.kill("test")
73
+ except ResponseError as e:
74
+ logger.info(f"That is expected => {e.error}")
75
+ finally:
76
+ logger.info("Deleting sandbox")
77
+ await SandboxInstance.delete(sandbox_name)
78
+
79
+ if __name__ == "__main__":
80
+ asyncio.run(main())
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "blaxel"
3
- version = "0.1.9.pre-37"
3
+ version = "0.1.10.pre-38"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  authors = [{ name = "cploujoux", email = "cploujoux@blaxel.ai" }]
@@ -19,16 +19,25 @@ def get_credentials() -> Optional[CredentialsType]:
19
19
  Returns:
20
20
  Optional[CredentialsType]: The credentials or None if not found
21
21
  """
22
+ def get_workspace():
23
+ if os.environ.get("BL_WORKSPACE"):
24
+ return os.environ.get("BL_WORKSPACE")
25
+ home_dir = Path.home()
26
+ config_path = home_dir / '.blaxel' / 'config.yaml'
27
+ with open(config_path, encoding='utf-8') as f:
28
+ config_json = yaml.safe_load(f)
29
+ return config_json.get("context", {}).get("workspace")
30
+
22
31
  if os.environ.get("BL_API_KEY"):
23
32
  return CredentialsType(
24
33
  api_key=os.environ.get("BL_API_KEY"),
25
- workspace=os.environ.get("BL_WORKSPACE")
34
+ workspace=get_workspace()
26
35
  )
27
36
 
28
37
  if os.environ.get("BL_CLIENT_CREDENTIALS"):
29
38
  return CredentialsType(
30
39
  client_credentials=os.environ.get("BL_CLIENT_CREDENTIALS"),
31
- workspace=os.environ.get("BL_WORKSPACE")
40
+ workspace=get_workspace()
32
41
  )
33
42
 
34
43
  try:
@@ -117,6 +117,7 @@ class DeviceMode(BlaxelAuth):
117
117
  current_time = datetime.now()
118
118
  # Refresh if token expires in less than 10 minutes
119
119
  if current_time + timedelta(minutes=10) > exp_time:
120
+ print("Refreshing token")
120
121
  return self.do_refresh()
121
122
 
122
123
  return None
@@ -2,6 +2,7 @@ from ..client import client
2
2
  from ..instrumentation.manager import telemetry_manager
3
3
  from .settings import settings
4
4
 
5
+
5
6
  def autoload() -> None:
6
7
  client.with_base_url(settings.base_url)
7
8
  client.with_auth(settings.auth)
@@ -2,24 +2,24 @@ import base64
2
2
  import hashlib
3
3
  import os
4
4
  import re
5
- from typing import Optional
6
5
  from logging import getLogger
6
+ from typing import Optional
7
7
 
8
8
  logger = getLogger(__name__)
9
9
 
10
10
  def get_alphanumeric_limited_hash(input_str, max_size):
11
11
  # Create SHA-256 hash of the input string
12
12
  hash_obj = hashlib.sha256(input_str.encode('utf-8'))
13
-
13
+
14
14
  # Get the hash digest in base64 format
15
15
  hash_base64 = base64.b64encode(hash_obj.digest()).decode('utf-8')
16
-
16
+
17
17
  # Remove non-alphanumeric characters and convert to lowercase
18
18
  alphanumeric = re.sub(r'[^a-zA-Z0-9]', '', hash_base64).lower()
19
-
19
+
20
20
  # Skip the first character to match the Node.js crypto output
21
21
  alphanumeric = alphanumeric[1:]
22
-
22
+
23
23
  # Limit to max_size characters
24
24
  return alphanumeric[:max_size] if len(alphanumeric) > max_size else alphanumeric
25
25
 
@@ -0,0 +1,68 @@
1
+ import os
2
+
3
+ from httpx import Response
4
+
5
+ from ..client.models import Sandbox
6
+ from ..common.internal import get_global_unique_hash
7
+ from ..common.settings import settings
8
+ from .client.client import client
9
+ from .client.models import ErrorResponse
10
+
11
+
12
+ class ResponseError(Exception):
13
+ def __init__(self, response: Response):
14
+ self.status_code = response.status_code
15
+ self.status_text = response.content
16
+ self.error = None
17
+ data_error = {
18
+ "status": response.status_code,
19
+ "statusText": response.content,
20
+ }
21
+ if hasattr(response, "parsed") and isinstance(response.parsed, ErrorResponse):
22
+ data_error["error"] = response.parsed.error
23
+ self.error = response.parsed.error
24
+ super().__init__(str(data_error))
25
+
26
+
27
+ class SandboxHandleBase:
28
+ def __init__(self, sandbox: Sandbox):
29
+ self.sandbox = sandbox
30
+ self.client = client.with_base_url(self.url).with_headers(settings.headers)
31
+
32
+ @property
33
+ def name(self):
34
+ return self.sandbox.metadata and self.sandbox.metadata.name
35
+
36
+ @property
37
+ def fallback_url(self):
38
+ if self.external_url != self.url:
39
+ return self.external_url
40
+ return None
41
+
42
+ @property
43
+ def external_url(self):
44
+ return f"{settings.run_url}/{settings.workspace}/sandboxes/{self.name}"
45
+
46
+ @property
47
+ def internal_url(self):
48
+ hash_ = get_global_unique_hash(settings.workspace, "sandbox", self.name)
49
+ return f"{settings.run_internal_protocol}://bl-{settings.env}-{hash_}.{settings.run_internal_hostname}"
50
+
51
+ @property
52
+ def forced_url(self):
53
+ env_var = self.name.replace("-", "_").upper()
54
+ env_name = f"BL_SANDBOX_{env_var}_URL"
55
+ return os.environ.get(env_name)
56
+
57
+ @property
58
+ def url(self):
59
+ if self.forced_url:
60
+ return self.forced_url
61
+ if settings.run_internal_hostname:
62
+ return self.internal_url
63
+ return self.external_url
64
+
65
+ def handle_response(self, response: Response):
66
+ if response.status_code >= 400:
67
+ raise ResponseError(response)
68
+
@@ -0,0 +1,8 @@
1
+ """A client library for accessing Sandbox API"""
2
+
3
+ from .client import Client, client
4
+
5
+ __all__ = (
6
+ "Client",
7
+ "client",
8
+ )
@@ -0,0 +1 @@
1
+ """Contains methods for accessing the API"""
@@ -0,0 +1,184 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import Client
8
+ from ...models.error_response import ErrorResponse
9
+ from ...models.success_response import SuccessResponse
10
+ from ...types import UNSET, Response, Unset
11
+
12
+
13
+ def _get_kwargs(
14
+ path: str,
15
+ *,
16
+ recursive: Union[Unset, bool] = UNSET,
17
+ ) -> dict[str, Any]:
18
+ params: dict[str, Any] = {}
19
+
20
+ params["recursive"] = recursive
21
+
22
+ params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
23
+
24
+ _kwargs: dict[str, Any] = {
25
+ "method": "delete",
26
+ "url": f"/filesystem/{path}",
27
+ "params": params,
28
+ }
29
+
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[ErrorResponse, SuccessResponse]]:
34
+ if response.status_code == 200:
35
+ response_200 = SuccessResponse.from_dict(response.json())
36
+
37
+ return response_200
38
+ if response.status_code == 404:
39
+ response_404 = ErrorResponse.from_dict(response.json())
40
+
41
+ return response_404
42
+ if response.status_code == 500:
43
+ response_500 = ErrorResponse.from_dict(response.json())
44
+
45
+ return response_500
46
+ if client.raise_on_unexpected_status:
47
+ raise errors.UnexpectedStatus(response.status_code, response.content)
48
+ else:
49
+ return None
50
+
51
+
52
+ def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[ErrorResponse, SuccessResponse]]:
53
+ return Response(
54
+ status_code=HTTPStatus(response.status_code),
55
+ content=response.content,
56
+ headers=response.headers,
57
+ parsed=_parse_response(client=client, response=response),
58
+ )
59
+
60
+
61
+ def sync_detailed(
62
+ path: str,
63
+ *,
64
+ client: Union[Client],
65
+ recursive: Union[Unset, bool] = UNSET,
66
+ ) -> Response[Union[ErrorResponse, SuccessResponse]]:
67
+ """Delete file or directory
68
+
69
+ Delete a file or directory
70
+
71
+ Args:
72
+ path (str):
73
+ recursive (Union[Unset, bool]):
74
+
75
+ Raises:
76
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
77
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
78
+
79
+ Returns:
80
+ Response[Union[ErrorResponse, SuccessResponse]]
81
+ """
82
+
83
+ kwargs = _get_kwargs(
84
+ path=path,
85
+ recursive=recursive,
86
+ )
87
+
88
+ response = client.get_httpx_client().request(
89
+ **kwargs,
90
+ )
91
+
92
+ return _build_response(client=client, response=response)
93
+
94
+
95
+ def sync(
96
+ path: str,
97
+ *,
98
+ client: Union[Client],
99
+ recursive: Union[Unset, bool] = UNSET,
100
+ ) -> Optional[Union[ErrorResponse, SuccessResponse]]:
101
+ """Delete file or directory
102
+
103
+ Delete a file or directory
104
+
105
+ Args:
106
+ path (str):
107
+ recursive (Union[Unset, bool]):
108
+
109
+ Raises:
110
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
111
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
112
+
113
+ Returns:
114
+ Union[ErrorResponse, SuccessResponse]
115
+ """
116
+
117
+ return sync_detailed(
118
+ path=path,
119
+ client=client,
120
+ recursive=recursive,
121
+ ).parsed
122
+
123
+
124
+ async def asyncio_detailed(
125
+ path: str,
126
+ *,
127
+ client: Union[Client],
128
+ recursive: Union[Unset, bool] = UNSET,
129
+ ) -> Response[Union[ErrorResponse, SuccessResponse]]:
130
+ """Delete file or directory
131
+
132
+ Delete a file or directory
133
+
134
+ Args:
135
+ path (str):
136
+ recursive (Union[Unset, bool]):
137
+
138
+ Raises:
139
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
140
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
141
+
142
+ Returns:
143
+ Response[Union[ErrorResponse, SuccessResponse]]
144
+ """
145
+
146
+ kwargs = _get_kwargs(
147
+ path=path,
148
+ recursive=recursive,
149
+ )
150
+
151
+ response = await client.get_async_httpx_client().request(**kwargs)
152
+
153
+ return _build_response(client=client, response=response)
154
+
155
+
156
+ async def asyncio(
157
+ path: str,
158
+ *,
159
+ client: Union[Client],
160
+ recursive: Union[Unset, bool] = UNSET,
161
+ ) -> Optional[Union[ErrorResponse, SuccessResponse]]:
162
+ """Delete file or directory
163
+
164
+ Delete a file or directory
165
+
166
+ Args:
167
+ path (str):
168
+ recursive (Union[Unset, bool]):
169
+
170
+ Raises:
171
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
172
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
173
+
174
+ Returns:
175
+ Union[ErrorResponse, SuccessResponse]
176
+ """
177
+
178
+ return (
179
+ await asyncio_detailed(
180
+ path=path,
181
+ client=client,
182
+ recursive=recursive,
183
+ )
184
+ ).parsed
@@ -0,0 +1,184 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, Optional, Union
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import Client
8
+ from ...models.directory import Directory
9
+ from ...models.error_response import ErrorResponse
10
+ from ...models.file_with_content import FileWithContent
11
+ from ...types import Response
12
+
13
+
14
+ def _get_kwargs(
15
+ path: str,
16
+ ) -> dict[str, Any]:
17
+ _kwargs: dict[str, Any] = {
18
+ "method": "get",
19
+ "url": f"/filesystem/{path}",
20
+ }
21
+
22
+ return _kwargs
23
+
24
+
25
+ def _parse_response(
26
+ *, client: Client, response: httpx.Response
27
+ ) -> Optional[Union[ErrorResponse, Union["Directory", "FileWithContent"]]]:
28
+ if response.status_code == 200:
29
+
30
+ def _parse_response_200(data: object) -> Union["Directory", "FileWithContent"]:
31
+ try:
32
+ if not isinstance(data, dict):
33
+ raise TypeError()
34
+ response_200_type_0 = Directory.from_dict(data)
35
+
36
+ return response_200_type_0
37
+ except: # noqa: E722
38
+ pass
39
+ if not isinstance(data, dict):
40
+ raise TypeError()
41
+ response_200_type_1 = FileWithContent.from_dict(data)
42
+
43
+ return response_200_type_1
44
+
45
+ response_200 = _parse_response_200(response.json())
46
+
47
+ return response_200
48
+ if response.status_code == 404:
49
+ response_404 = ErrorResponse.from_dict(response.json())
50
+
51
+ return response_404
52
+ if response.status_code == 500:
53
+ response_500 = ErrorResponse.from_dict(response.json())
54
+
55
+ return response_500
56
+ if client.raise_on_unexpected_status:
57
+ raise errors.UnexpectedStatus(response.status_code, response.content)
58
+ else:
59
+ return None
60
+
61
+
62
+ def _build_response(
63
+ *, client: Client, response: httpx.Response
64
+ ) -> Response[Union[ErrorResponse, Union["Directory", "FileWithContent"]]]:
65
+ return Response(
66
+ status_code=HTTPStatus(response.status_code),
67
+ content=response.content,
68
+ headers=response.headers,
69
+ parsed=_parse_response(client=client, response=response),
70
+ )
71
+
72
+
73
+ def sync_detailed(
74
+ path: str,
75
+ *,
76
+ client: Union[Client],
77
+ ) -> Response[Union[ErrorResponse, Union["Directory", "FileWithContent"]]]:
78
+ """Get file or directory information
79
+
80
+ Get content of a file or listing of a directory
81
+
82
+ Args:
83
+ path (str):
84
+
85
+ Raises:
86
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
87
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
88
+
89
+ Returns:
90
+ Response[Union[ErrorResponse, Union['Directory', 'FileWithContent']]]
91
+ """
92
+
93
+ kwargs = _get_kwargs(
94
+ path=path,
95
+ )
96
+
97
+ response = client.get_httpx_client().request(
98
+ **kwargs,
99
+ )
100
+
101
+ return _build_response(client=client, response=response)
102
+
103
+
104
+ def sync(
105
+ path: str,
106
+ *,
107
+ client: Union[Client],
108
+ ) -> Optional[Union[ErrorResponse, Union["Directory", "FileWithContent"]]]:
109
+ """Get file or directory information
110
+
111
+ Get content of a file or listing of a directory
112
+
113
+ Args:
114
+ path (str):
115
+
116
+ Raises:
117
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
118
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
119
+
120
+ Returns:
121
+ Union[ErrorResponse, Union['Directory', 'FileWithContent']]
122
+ """
123
+
124
+ return sync_detailed(
125
+ path=path,
126
+ client=client,
127
+ ).parsed
128
+
129
+
130
+ async def asyncio_detailed(
131
+ path: str,
132
+ *,
133
+ client: Union[Client],
134
+ ) -> Response[Union[ErrorResponse, Union["Directory", "FileWithContent"]]]:
135
+ """Get file or directory information
136
+
137
+ Get content of a file or listing of a directory
138
+
139
+ Args:
140
+ path (str):
141
+
142
+ Raises:
143
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
144
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
145
+
146
+ Returns:
147
+ Response[Union[ErrorResponse, Union['Directory', 'FileWithContent']]]
148
+ """
149
+
150
+ kwargs = _get_kwargs(
151
+ path=path,
152
+ )
153
+
154
+ response = await client.get_async_httpx_client().request(**kwargs)
155
+
156
+ return _build_response(client=client, response=response)
157
+
158
+
159
+ async def asyncio(
160
+ path: str,
161
+ *,
162
+ client: Union[Client],
163
+ ) -> Optional[Union[ErrorResponse, Union["Directory", "FileWithContent"]]]:
164
+ """Get file or directory information
165
+
166
+ Get content of a file or listing of a directory
167
+
168
+ Args:
169
+ path (str):
170
+
171
+ Raises:
172
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
173
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
174
+
175
+ Returns:
176
+ Union[ErrorResponse, Union['Directory', 'FileWithContent']]
177
+ """
178
+
179
+ return (
180
+ await asyncio_detailed(
181
+ path=path,
182
+ client=client,
183
+ )
184
+ ).parsed