runloop-api-client 0.35.0__tar.gz → 0.37.0__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 (279) hide show
  1. runloop_api_client-0.37.0/.release-please-manifest.json +3 -0
  2. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/CHANGELOG.md +23 -0
  3. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/CONTRIBUTING.md +1 -2
  4. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/PKG-INFO +2 -18
  5. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/README.md +1 -17
  6. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/api.md +6 -3
  7. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/pyproject.toml +1 -1
  8. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_base_client.py +6 -0
  9. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_models.py +2 -0
  10. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_types.py +2 -0
  11. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_version.py +1 -1
  12. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/benchmarks/runs.py +114 -1
  13. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/devboxes.py +8 -0
  14. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/repositories.py +123 -21
  15. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/__init__.py +3 -2
  16. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmarks/__init__.py +1 -0
  17. runloop_api_client-0.37.0/src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py +15 -0
  18. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_create_params.py +19 -1
  19. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/repository_connection_view.py +0 -9
  20. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/repository_create_params.py +3 -0
  21. runloop_api_client-0.37.0/src/runloop_api_client/types/repository_inspection_details.py +39 -0
  22. runloop_api_client-0.37.0/src/runloop_api_client/types/repository_inspection_list_view.py +13 -0
  23. runloop_api_client-0.37.0/src/runloop_api_client/types/repository_manifest_view.py +91 -0
  24. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/benchmarks/test_runs.py +95 -1
  25. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/test_devboxes.py +8 -0
  26. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/test_repositories.py +101 -23
  27. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_client.py +54 -0
  28. runloop_api_client-0.35.0/.release-please-manifest.json +0 -3
  29. runloop_api_client-0.35.0/src/runloop_api_client/types/repository_version_details.py +0 -44
  30. runloop_api_client-0.35.0/src/runloop_api_client/types/repository_version_list_view.py +0 -13
  31. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/.gitignore +0 -0
  32. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/LICENSE +0 -0
  33. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/SECURITY.md +0 -0
  34. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/bin/check-release-environment +0 -0
  35. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/bin/publish-pypi +0 -0
  36. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/examples/.keep +0 -0
  37. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/mypy.ini +0 -0
  38. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/noxfile.py +0 -0
  39. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/release-please-config.json +0 -0
  40. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/requirements-dev.lock +0 -0
  41. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/requirements.lock +0 -0
  42. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop/lib/.keep +0 -0
  43. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/__init__.py +0 -0
  44. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_client.py +0 -0
  45. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_compat.py +0 -0
  46. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_constants.py +0 -0
  47. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_exceptions.py +0 -0
  48. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_files.py +0 -0
  49. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_qs.py +0 -0
  50. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_resource.py +0 -0
  51. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_response.py +0 -0
  52. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_streaming.py +0 -0
  53. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/__init__.py +0 -0
  54. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_logs.py +0 -0
  55. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
  56. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
  57. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_resources_proxy.py +0 -0
  58. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_streams.py +0 -0
  59. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_sync.py +0 -0
  60. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_transform.py +0 -0
  61. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_typing.py +0 -0
  62. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/_utils/_utils.py +0 -0
  63. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/lib/.keep +0 -0
  64. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/lib/polling.py +0 -0
  65. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/lib/polling_async.py +0 -0
  66. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/pagination.py +0 -0
  67. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/py.typed +0 -0
  68. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/__init__.py +0 -0
  69. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/benchmarks/__init__.py +0 -0
  70. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/benchmarks/benchmarks.py +0 -0
  71. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/blueprints.py +0 -0
  72. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
  73. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/browsers.py +0 -0
  74. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/computers.py +0 -0
  75. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +0 -0
  76. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/executions.py +0 -0
  77. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
  78. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/devboxes/lsp.py +0 -0
  79. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/scenarios/__init__.py +0 -0
  80. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/scenarios/runs.py +0 -0
  81. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/scenarios/scenarios.py +0 -0
  82. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/resources/scenarios/scorers.py +0 -0
  83. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_create_params.py +0 -0
  84. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_list_params.py +0 -0
  85. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_list_public_params.py +0 -0
  86. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_run_list_view.py +0 -0
  87. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_run_view.py +0 -0
  88. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_start_run_params.py +0 -0
  89. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_update_params.py +0 -0
  90. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmark_view.py +0 -0
  91. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/benchmarks/run_list_params.py +0 -0
  92. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
  93. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
  94. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
  95. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
  96. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
  97. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
  98. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
  99. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
  100. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
  101. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
  102. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
  103. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_create_tunnel_params.py +0 -0
  104. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
  105. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
  106. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
  107. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
  108. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
  109. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
  110. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
  111. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
  112. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
  113. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_remove_tunnel_params.py +0 -0
  114. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_snapshot_disk_async_params.py +0 -0
  115. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
  116. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
  117. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
  118. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_tunnel_view.py +0 -0
  119. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_update_params.py +0 -0
  120. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
  121. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_view.py +0 -0
  122. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
  123. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
  124. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_code_action.py +0 -0
  125. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_command.py +0 -0
  126. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_command_param.py +0 -0
  127. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_diagnostic.py +0 -0
  128. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_diagnostic_param.py +0 -0
  129. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_location.py +0 -0
  130. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_markup_content.py +0 -0
  131. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_parameter_information.py +0 -0
  132. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_range.py +0 -0
  133. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_range_param.py +0 -0
  134. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_signature.py +0 -0
  135. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_workspace_edit.py +0 -0
  136. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py +0 -0
  137. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/browser_create_params.py +0 -0
  138. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/browser_view.py +0 -0
  139. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_action_application_result.py +0 -0
  140. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_action_context_param.py +0 -0
  141. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_action_kind.py +0 -0
  142. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py +0 -0
  143. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_actions_response.py +0 -0
  144. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_description_param.py +0 -0
  145. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/code_segment_info_response.py +0 -0
  146. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_create_params.py +0 -0
  147. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_params.py +0 -0
  148. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_response.py +0 -0
  149. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_params.py +0 -0
  150. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_response.py +0 -0
  151. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_params.py +0 -0
  152. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_response.py +0 -0
  153. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/computer_view.py +0 -0
  154. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
  155. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/devbox_snapshot_async_status_view.py +0 -0
  156. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/diagnostic_param.py +0 -0
  157. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py +0 -0
  158. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/diagnostic_severity.py +0 -0
  159. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/diagnostic_tag.py +0 -0
  160. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/diagnostics_response.py +0 -0
  161. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py +0 -0
  162. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py +0 -0
  163. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/document_symbol.py +0 -0
  164. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/document_symbol_response.py +0 -0
  165. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/document_uri.py +0 -0
  166. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
  167. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
  168. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
  169. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/file_contents_response.py +0 -0
  170. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/file_definition_response.py +0 -0
  171. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/file_path.py +0 -0
  172. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/file_uri.py +0 -0
  173. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/formatting_response.py +0 -0
  174. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/health_status_response.py +0 -0
  175. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/integer.py +0 -0
  176. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/l_sp_any_param.py +0 -0
  177. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/location_param.py +0 -0
  178. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
  179. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py +0 -0
  180. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py +0 -0
  181. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py +0 -0
  182. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py +0 -0
  183. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py +0 -0
  184. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_file_params.py +0 -0
  185. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_files_response.py +0 -0
  186. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_formatting_params.py +0 -0
  187. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py +0 -0
  188. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py +0 -0
  189. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py +0 -0
  190. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py +0 -0
  191. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_references_params.py +0 -0
  192. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py +0 -0
  193. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py +0 -0
  194. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/position.py +0 -0
  195. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/position_param.py +0 -0
  196. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/range.py +0 -0
  197. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/range_param.py +0 -0
  198. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py +0 -0
  199. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py +0 -0
  200. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/references_response.py +0 -0
  201. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/signature_help_response.py +0 -0
  202. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/symbol_kind.py +0 -0
  203. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/symbol_tag.py +0 -0
  204. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/symbol_type.py +0 -0
  205. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/text_edit.py +0 -0
  206. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/text_edit_param.py +0 -0
  207. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/u_ri.py +0 -0
  208. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/uinteger.py +0 -0
  209. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/devboxes/watched_file_response.py +0 -0
  210. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/input_context.py +0 -0
  211. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/input_context_param.py +0 -0
  212. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/repository_connection_list_view.py +0 -0
  213. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/repository_list_params.py +0 -0
  214. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_create_params.py +0 -0
  215. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_environment.py +0 -0
  216. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_environment_param.py +0 -0
  217. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_list_params.py +0 -0
  218. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_list_public_params.py +0 -0
  219. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_run_list_view.py +0 -0
  220. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_run_view.py +0 -0
  221. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_start_run_params.py +0 -0
  222. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_update_params.py +0 -0
  223. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenario_view.py +0 -0
  224. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/__init__.py +0 -0
  225. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/run_list_params.py +0 -0
  226. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -0
  227. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -0
  228. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -0
  229. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -0
  230. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -0
  231. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -0
  232. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -0
  233. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_validate_params.py +0 -0
  234. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scenarios/scorer_validate_response.py +0 -0
  235. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scoring_contract.py +0 -0
  236. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scoring_contract_param.py +0 -0
  237. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scoring_contract_result_view.py +0 -0
  238. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scoring_function.py +0 -0
  239. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scoring_function_param.py +0 -0
  240. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/scoring_function_result_view.py +0 -0
  241. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared/__init__.py +0 -0
  242. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
  243. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
  244. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared/launch_parameters.py +0 -0
  245. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -0
  246. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
  247. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
  248. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +0 -0
  249. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/__init__.py +0 -0
  250. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/__init__.py +0 -0
  251. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/benchmarks/__init__.py +0 -0
  252. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/__init__.py +0 -0
  253. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/test_browsers.py +0 -0
  254. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/test_computers.py +0 -0
  255. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/test_disk_snapshots.py +0 -0
  256. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/test_executions.py +0 -0
  257. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/test_logs.py +0 -0
  258. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/devboxes/test_lsp.py +0 -0
  259. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/scenarios/__init__.py +0 -0
  260. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/scenarios/test_runs.py +0 -0
  261. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/scenarios/test_scorers.py +0 -0
  262. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/test_benchmarks.py +0 -0
  263. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/test_blueprints.py +0 -0
  264. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/api_resources/test_scenarios.py +0 -0
  265. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/conftest.py +0 -0
  266. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/sample_file.txt +0 -0
  267. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_deepcopy.py +0 -0
  268. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_extract_files.py +0 -0
  269. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_files.py +0 -0
  270. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_models.py +0 -0
  271. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_qs.py +0 -0
  272. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_required_args.py +0 -0
  273. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_response.py +0 -0
  274. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_streaming.py +0 -0
  275. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_transform.py +0 -0
  276. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_utils/test_proxy.py +0 -0
  277. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/test_utils/test_typing.py +0 -0
  278. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/tests/utils.py +0 -0
  279. {runloop_api_client-0.35.0 → runloop_api_client-0.37.0}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.37.0"
3
+ }
@@ -1,5 +1,28 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.37.0 (2025-06-04)
4
+
5
+ Full Changelog: [v0.36.0...v0.37.0](https://github.com/runloopai/api-client-python/compare/v0.36.0...v0.37.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([a167d0b](https://github.com/runloopai/api-client-python/commit/a167d0b2dbab59cb4ffbb029ea6dae22d0d7c2f4))
10
+ * **client:** add follow_redirects request option ([c29d24c](https://github.com/runloopai/api-client-python/commit/c29d24c5483ee2ca7e4d53dfdf8d40278f04f1fe))
11
+
12
+
13
+ ### Chores
14
+
15
+ * **docs:** remove reference to rye shell ([af51a95](https://github.com/runloopai/api-client-python/commit/af51a958afb08cc728959b154c52d0ca31f4206c))
16
+ * **docs:** remove unnecessary param examples ([a29553d](https://github.com/runloopai/api-client-python/commit/a29553d048fa85207e28e5b3dbc4ad9ea326ad86))
17
+
18
+ ## 0.36.0 (2025-06-02)
19
+
20
+ Full Changelog: [v0.35.0...v0.36.0](https://github.com/runloopai/api-client-python/compare/v0.35.0...v0.36.0)
21
+
22
+ ### Features
23
+
24
+ * **api:** api update ([43e693c](https://github.com/runloopai/api-client-python/commit/43e693ce72c8000ee98ae50925a05b8163e04c15))
25
+
3
26
  ## 0.35.0 (2025-05-30)
4
27
 
5
28
  Full Changelog: [v0.34.1...v0.35.0](https://github.com/runloopai/api-client-python/compare/v0.34.1...v0.35.0)
@@ -17,8 +17,7 @@ $ rye sync --all-features
17
17
  You can then run scripts using `rye run python script.py` or by activating the virtual environment:
18
18
 
19
19
  ```sh
20
- $ rye shell
21
- # or manually activate - https://docs.python.org/3/library/venv.html#how-venvs-work
20
+ # Activate the virtual environment - https://docs.python.org/3/library/venv.html#how-venvs-work
22
21
  $ source .venv/bin/activate
23
22
 
24
23
  # now you can omit the `rye run` prefix
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: runloop_api_client
3
- Version: 0.35.0
3
+ Version: 0.37.0
4
4
  Summary: The official Python library for the runloop API
5
5
  Project-URL: Homepage, https://github.com/runloopai/api-client-python
6
6
  Project-URL: Repository, https://github.com/runloopai/api-client-python
@@ -177,23 +177,7 @@ from runloop_api_client import Runloop
177
177
  client = Runloop()
178
178
 
179
179
  devbox_view = client.devboxes.create(
180
- launch_parameters={
181
- "after_idle": {
182
- "idle_time_seconds": 0,
183
- "on_idle": "shutdown",
184
- },
185
- "architecture": "x86_64",
186
- "available_ports": [0],
187
- "custom_cpu_cores": 0,
188
- "custom_gb_memory": 0,
189
- "keep_alive_time_seconds": 0,
190
- "launch_commands": ["string"],
191
- "resource_size_request": "X_SMALL",
192
- "user_parameters": {
193
- "uid": 0,
194
- "username": "username",
195
- },
196
- },
180
+ launch_parameters={},
197
181
  )
198
182
  print(devbox_view.launch_parameters)
199
183
  ```
@@ -146,23 +146,7 @@ from runloop_api_client import Runloop
146
146
  client = Runloop()
147
147
 
148
148
  devbox_view = client.devboxes.create(
149
- launch_parameters={
150
- "after_idle": {
151
- "idle_time_seconds": 0,
152
- "on_idle": "shutdown",
153
- },
154
- "architecture": "x86_64",
155
- "available_ports": [0],
156
- "custom_cpu_cores": 0,
157
- "custom_gb_memory": 0,
158
- "keep_alive_time_seconds": 0,
159
- "launch_commands": ["string"],
160
- "resource_size_request": "X_SMALL",
161
- "user_parameters": {
162
- "uid": 0,
163
- "username": "username",
164
- },
165
- },
149
+ launch_parameters={},
166
150
  )
167
151
  print(devbox_view.launch_parameters)
168
152
  ```
@@ -35,6 +35,7 @@ Methods:
35
35
  - <code title="get /v1/benchmarks/runs">client.benchmarks.runs.<a href="./src/runloop_api_client/resources/benchmarks/runs.py">list</a>(\*\*<a href="src/runloop_api_client/types/benchmarks/run_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">SyncBenchmarkRunsCursorIDPage[BenchmarkRunView]</a></code>
36
36
  - <code title="post /v1/benchmarks/runs/{id}/cancel">client.benchmarks.runs.<a href="./src/runloop_api_client/resources/benchmarks/runs.py">cancel</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
37
37
  - <code title="post /v1/benchmarks/runs/{id}/complete">client.benchmarks.runs.<a href="./src/runloop_api_client/resources/benchmarks/runs.py">complete</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
38
+ - <code title="get /v1/benchmarks/runs/{id}/scenario_runs">client.benchmarks.runs.<a href="./src/runloop_api_client/resources/benchmarks/runs.py">list_scenario_runs</a>(id, \*\*<a href="src/runloop_api_client/types/benchmarks/run_list_scenario_runs_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">SyncBenchmarkRunsCursorIDPage[ScenarioRunView]</a></code>
38
39
 
39
40
  # Blueprints
40
41
 
@@ -323,8 +324,9 @@ Types:
323
324
  from runloop_api_client.types import (
324
325
  RepositoryConnectionListView,
325
326
  RepositoryConnectionView,
326
- RepositoryVersionDetails,
327
- RepositoryVersionListView,
327
+ RepositoryInspectionDetails,
328
+ RepositoryInspectionListView,
329
+ RepositoryManifestView,
328
330
  )
329
331
  ```
330
332
 
@@ -334,4 +336,5 @@ Methods:
334
336
  - <code title="get /v1/repositories/{id}">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/repository_connection_view.py">RepositoryConnectionView</a></code>
335
337
  - <code title="get /v1/repositories">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">list</a>(\*\*<a href="src/runloop_api_client/types/repository_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/repository_connection_view.py">SyncRepositoriesCursorIDPage[RepositoryConnectionView]</a></code>
336
338
  - <code title="post /v1/repositories/{id}/delete">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">delete</a>(id) -> object</code>
337
- - <code title="get /v1/repositories/{id}/versions">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">versions</a>(id) -> <a href="./src/runloop_api_client/types/repository_version_list_view.py">RepositoryVersionListView</a></code>
339
+ - <code title="get /v1/repositories/{id}/inspections">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">list_inspections</a>(id) -> <a href="./src/runloop_api_client/types/repository_inspection_list_view.py">RepositoryInspectionListView</a></code>
340
+ - <code title="post /v1/repositories/{id}/refresh">client.repositories.<a href="./src/runloop_api_client/resources/repositories.py">refresh</a>(id) -> object</code>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runloop_api_client"
3
- version = "0.35.0"
3
+ version = "0.37.0"
4
4
  description = "The official Python library for the runloop API"
5
5
  dynamic = ["readme"]
6
6
  license = "MIT"
@@ -960,6 +960,9 @@ class SyncAPIClient(BaseClient[httpx.Client, Stream[Any]]):
960
960
  if self.custom_auth is not None:
961
961
  kwargs["auth"] = self.custom_auth
962
962
 
963
+ if options.follow_redirects is not None:
964
+ kwargs["follow_redirects"] = options.follow_redirects
965
+
963
966
  log.debug("Sending HTTP Request: %s %s", request.method, request.url)
964
967
 
965
968
  response = None
@@ -1460,6 +1463,9 @@ class AsyncAPIClient(BaseClient[httpx.AsyncClient, AsyncStream[Any]]):
1460
1463
  if self.custom_auth is not None:
1461
1464
  kwargs["auth"] = self.custom_auth
1462
1465
 
1466
+ if options.follow_redirects is not None:
1467
+ kwargs["follow_redirects"] = options.follow_redirects
1468
+
1463
1469
  log.debug("Sending HTTP Request: %s %s", request.method, request.url)
1464
1470
 
1465
1471
  response = None
@@ -737,6 +737,7 @@ class FinalRequestOptionsInput(TypedDict, total=False):
737
737
  idempotency_key: str
738
738
  json_data: Body
739
739
  extra_json: AnyMapping
740
+ follow_redirects: bool
740
741
 
741
742
 
742
743
  @final
@@ -750,6 +751,7 @@ class FinalRequestOptions(pydantic.BaseModel):
750
751
  files: Union[HttpxRequestFiles, None] = None
751
752
  idempotency_key: Union[str, None] = None
752
753
  post_parser: Union[Callable[[Any], Any], NotGiven] = NotGiven()
754
+ follow_redirects: Union[bool, None] = None
753
755
 
754
756
  # It should be noted that we cannot use `json` here as that would override
755
757
  # a BaseModel method in an incompatible fashion.
@@ -100,6 +100,7 @@ class RequestOptions(TypedDict, total=False):
100
100
  params: Query
101
101
  extra_json: AnyMapping
102
102
  idempotency_key: str
103
+ follow_redirects: bool
103
104
 
104
105
 
105
106
  # Sentinel class used until PEP 0661 is accepted
@@ -215,3 +216,4 @@ class _GenericAlias(Protocol):
215
216
 
216
217
  class HttpxSendArgs(TypedDict, total=False):
217
218
  auth: httpx.Auth
219
+ follow_redirects: bool
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "runloop_api_client"
4
- __version__ = "0.35.0" # x-release-please-version
4
+ __version__ = "0.37.0" # x-release-please-version
@@ -16,7 +16,8 @@ from ..._response import (
16
16
  )
17
17
  from ...pagination import SyncBenchmarkRunsCursorIDPage, AsyncBenchmarkRunsCursorIDPage
18
18
  from ..._base_client import AsyncPaginator, make_request_options
19
- from ...types.benchmarks import run_list_params
19
+ from ...types.benchmarks import run_list_params, run_list_scenario_runs_params
20
+ from ...types.scenario_run_view import ScenarioRunView
20
21
  from ...types.benchmark_run_view import BenchmarkRunView
21
22
 
22
23
  __all__ = ["RunsResource", "AsyncRunsResource"]
@@ -206,6 +207,56 @@ class RunsResource(SyncAPIResource):
206
207
  cast_to=BenchmarkRunView,
207
208
  )
208
209
 
210
+ def list_scenario_runs(
211
+ self,
212
+ id: str,
213
+ *,
214
+ limit: int | NotGiven = NOT_GIVEN,
215
+ starting_after: str | NotGiven = NOT_GIVEN,
216
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
217
+ # The extra values given here take precedence over values defined on the client or passed to this method.
218
+ extra_headers: Headers | None = None,
219
+ extra_query: Query | None = None,
220
+ extra_body: Body | None = None,
221
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
222
+ ) -> SyncBenchmarkRunsCursorIDPage[ScenarioRunView]:
223
+ """
224
+ List started scenario runs for a benchmark run.
225
+
226
+ Args:
227
+ limit: The limit of items to return. Default is 20.
228
+
229
+ starting_after: Load the next page of data starting after the item with the given ID.
230
+
231
+ extra_headers: Send extra headers
232
+
233
+ extra_query: Add additional query parameters to the request
234
+
235
+ extra_body: Add additional JSON properties to the request
236
+
237
+ timeout: Override the client-level default timeout for this request, in seconds
238
+ """
239
+ if not id:
240
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
241
+ return self._get_api_list(
242
+ f"/v1/benchmarks/runs/{id}/scenario_runs",
243
+ page=SyncBenchmarkRunsCursorIDPage[ScenarioRunView],
244
+ options=make_request_options(
245
+ extra_headers=extra_headers,
246
+ extra_query=extra_query,
247
+ extra_body=extra_body,
248
+ timeout=timeout,
249
+ query=maybe_transform(
250
+ {
251
+ "limit": limit,
252
+ "starting_after": starting_after,
253
+ },
254
+ run_list_scenario_runs_params.RunListScenarioRunsParams,
255
+ ),
256
+ ),
257
+ model=ScenarioRunView,
258
+ )
259
+
209
260
 
210
261
  class AsyncRunsResource(AsyncAPIResource):
211
262
  @cached_property
@@ -391,6 +442,56 @@ class AsyncRunsResource(AsyncAPIResource):
391
442
  cast_to=BenchmarkRunView,
392
443
  )
393
444
 
445
+ def list_scenario_runs(
446
+ self,
447
+ id: str,
448
+ *,
449
+ limit: int | NotGiven = NOT_GIVEN,
450
+ starting_after: str | NotGiven = NOT_GIVEN,
451
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
452
+ # The extra values given here take precedence over values defined on the client or passed to this method.
453
+ extra_headers: Headers | None = None,
454
+ extra_query: Query | None = None,
455
+ extra_body: Body | None = None,
456
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
457
+ ) -> AsyncPaginator[ScenarioRunView, AsyncBenchmarkRunsCursorIDPage[ScenarioRunView]]:
458
+ """
459
+ List started scenario runs for a benchmark run.
460
+
461
+ Args:
462
+ limit: The limit of items to return. Default is 20.
463
+
464
+ starting_after: Load the next page of data starting after the item with the given ID.
465
+
466
+ extra_headers: Send extra headers
467
+
468
+ extra_query: Add additional query parameters to the request
469
+
470
+ extra_body: Add additional JSON properties to the request
471
+
472
+ timeout: Override the client-level default timeout for this request, in seconds
473
+ """
474
+ if not id:
475
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
476
+ return self._get_api_list(
477
+ f"/v1/benchmarks/runs/{id}/scenario_runs",
478
+ page=AsyncBenchmarkRunsCursorIDPage[ScenarioRunView],
479
+ options=make_request_options(
480
+ extra_headers=extra_headers,
481
+ extra_query=extra_query,
482
+ extra_body=extra_body,
483
+ timeout=timeout,
484
+ query=maybe_transform(
485
+ {
486
+ "limit": limit,
487
+ "starting_after": starting_after,
488
+ },
489
+ run_list_scenario_runs_params.RunListScenarioRunsParams,
490
+ ),
491
+ ),
492
+ model=ScenarioRunView,
493
+ )
494
+
394
495
 
395
496
  class RunsResourceWithRawResponse:
396
497
  def __init__(self, runs: RunsResource) -> None:
@@ -408,6 +509,9 @@ class RunsResourceWithRawResponse:
408
509
  self.complete = to_raw_response_wrapper(
409
510
  runs.complete,
410
511
  )
512
+ self.list_scenario_runs = to_raw_response_wrapper(
513
+ runs.list_scenario_runs,
514
+ )
411
515
 
412
516
 
413
517
  class AsyncRunsResourceWithRawResponse:
@@ -426,6 +530,9 @@ class AsyncRunsResourceWithRawResponse:
426
530
  self.complete = async_to_raw_response_wrapper(
427
531
  runs.complete,
428
532
  )
533
+ self.list_scenario_runs = async_to_raw_response_wrapper(
534
+ runs.list_scenario_runs,
535
+ )
429
536
 
430
537
 
431
538
  class RunsResourceWithStreamingResponse:
@@ -444,6 +551,9 @@ class RunsResourceWithStreamingResponse:
444
551
  self.complete = to_streamed_response_wrapper(
445
552
  runs.complete,
446
553
  )
554
+ self.list_scenario_runs = to_streamed_response_wrapper(
555
+ runs.list_scenario_runs,
556
+ )
447
557
 
448
558
 
449
559
  class AsyncRunsResourceWithStreamingResponse:
@@ -462,3 +572,6 @@ class AsyncRunsResourceWithStreamingResponse:
462
572
  self.complete = async_to_streamed_response_wrapper(
463
573
  runs.complete,
464
574
  )
575
+ self.list_scenario_runs = async_to_streamed_response_wrapper(
576
+ runs.list_scenario_runs,
577
+ )
@@ -170,6 +170,7 @@ class DevboxesResource(SyncAPIResource):
170
170
  metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
171
171
  name: Optional[str] | NotGiven = NOT_GIVEN,
172
172
  prebuilt: Optional[str] | NotGiven = NOT_GIVEN,
173
+ repository_connection: Optional[devbox_create_params.RepositoryConnection] | NotGiven = NOT_GIVEN,
173
174
  snapshot_id: Optional[str] | NotGiven = NOT_GIVEN,
174
175
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
175
176
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -215,6 +216,8 @@ class DevboxesResource(SyncAPIResource):
215
216
  prebuilt: Reference to prebuilt Blueprint to create the Devbox from. Should not be used
216
217
  together with (Snapshot ID, Blueprint ID, or Blueprint name).
217
218
 
219
+ repository_connection: Repository connection parameters for configuring repository integration.
220
+
218
221
  snapshot_id: Snapshot ID to use for the Devbox. Only one of (Snapshot ID, Blueprint ID,
219
222
  Blueprint name) should be specified.
220
223
 
@@ -242,6 +245,7 @@ class DevboxesResource(SyncAPIResource):
242
245
  "metadata": metadata,
243
246
  "name": name,
244
247
  "prebuilt": prebuilt,
248
+ "repository_connection": repository_connection,
245
249
  "snapshot_id": snapshot_id,
246
250
  },
247
251
  devbox_create_params.DevboxCreateParams,
@@ -1425,6 +1429,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
1425
1429
  metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
1426
1430
  name: Optional[str] | NotGiven = NOT_GIVEN,
1427
1431
  prebuilt: Optional[str] | NotGiven = NOT_GIVEN,
1432
+ repository_connection: Optional[devbox_create_params.RepositoryConnection] | NotGiven = NOT_GIVEN,
1428
1433
  snapshot_id: Optional[str] | NotGiven = NOT_GIVEN,
1429
1434
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1430
1435
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1470,6 +1475,8 @@ class AsyncDevboxesResource(AsyncAPIResource):
1470
1475
  prebuilt: Reference to prebuilt Blueprint to create the Devbox from. Should not be used
1471
1476
  together with (Snapshot ID, Blueprint ID, or Blueprint name).
1472
1477
 
1478
+ repository_connection: Repository connection parameters for configuring repository integration.
1479
+
1473
1480
  snapshot_id: Snapshot ID to use for the Devbox. Only one of (Snapshot ID, Blueprint ID,
1474
1481
  Blueprint name) should be specified.
1475
1482
 
@@ -1497,6 +1504,7 @@ class AsyncDevboxesResource(AsyncAPIResource):
1497
1504
  "metadata": metadata,
1498
1505
  "name": name,
1499
1506
  "prebuilt": prebuilt,
1507
+ "repository_connection": repository_connection,
1500
1508
  "snapshot_id": snapshot_id,
1501
1509
  },
1502
1510
  devbox_create_params.DevboxCreateParams,
@@ -20,7 +20,7 @@ from .._response import (
20
20
  from ..pagination import SyncRepositoriesCursorIDPage, AsyncRepositoriesCursorIDPage
21
21
  from .._base_client import AsyncPaginator, make_request_options
22
22
  from ..types.repository_connection_view import RepositoryConnectionView
23
- from ..types.repository_version_list_view import RepositoryVersionListView
23
+ from ..types.repository_inspection_list_view import RepositoryInspectionListView
24
24
 
25
25
  __all__ = ["RepositoriesResource", "AsyncRepositoriesResource"]
26
26
 
@@ -51,6 +51,7 @@ class RepositoriesResource(SyncAPIResource):
51
51
  name: str,
52
52
  owner: str,
53
53
  blueprint_id: Optional[str] | NotGiven = NOT_GIVEN,
54
+ github_auth_token: Optional[str] | NotGiven = NOT_GIVEN,
54
55
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
55
56
  # The extra values given here take precedence over values defined on the client or passed to this method.
56
57
  extra_headers: Headers | None = None,
@@ -70,6 +71,8 @@ class RepositoriesResource(SyncAPIResource):
70
71
 
71
72
  blueprint_id: ID of blueprint to use as base for resulting RepositoryVersion blueprint.
72
73
 
74
+ github_auth_token: GitHub authentication token for accessing private repositories.
75
+
73
76
  extra_headers: Send extra headers
74
77
 
75
78
  extra_query: Add additional query parameters to the request
@@ -87,6 +90,7 @@ class RepositoriesResource(SyncAPIResource):
87
90
  "name": name,
88
91
  "owner": owner,
89
92
  "blueprint_id": blueprint_id,
93
+ "github_auth_token": github_auth_token,
90
94
  },
91
95
  repository_create_params.RepositoryCreateParams,
92
96
  ),
@@ -230,7 +234,7 @@ class RepositoriesResource(SyncAPIResource):
230
234
  cast_to=object,
231
235
  )
232
236
 
233
- def versions(
237
+ def list_inspections(
234
238
  self,
235
239
  id: str,
236
240
  *,
@@ -240,10 +244,10 @@ class RepositoriesResource(SyncAPIResource):
240
244
  extra_query: Query | None = None,
241
245
  extra_body: Body | None = None,
242
246
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
243
- ) -> RepositoryVersionListView:
247
+ ) -> RepositoryInspectionListView:
244
248
  """
245
- List all analyzed versions of a repository connection including automatically
246
- generated insights for each version.
249
+ List all inspections of a repository connection including automatically
250
+ generated insights for each inspection.
247
251
 
248
252
  Args:
249
253
  extra_headers: Send extra headers
@@ -257,11 +261,52 @@ class RepositoriesResource(SyncAPIResource):
257
261
  if not id:
258
262
  raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
259
263
  return self._get(
260
- f"/v1/repositories/{id}/versions",
264
+ f"/v1/repositories/{id}/inspections",
261
265
  options=make_request_options(
262
266
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
263
267
  ),
264
- cast_to=RepositoryVersionListView,
268
+ cast_to=RepositoryInspectionListView,
269
+ )
270
+
271
+ def refresh(
272
+ self,
273
+ id: str,
274
+ *,
275
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
276
+ # The extra values given here take precedence over values defined on the client or passed to this method.
277
+ extra_headers: Headers | None = None,
278
+ extra_query: Query | None = None,
279
+ extra_body: Body | None = None,
280
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
281
+ idempotency_key: str | None = None,
282
+ ) -> object:
283
+ """
284
+ Refresh a repository connection by inspecting the latest version including
285
+ repo's technical stack and developer environment requirements.
286
+
287
+ Args:
288
+ extra_headers: Send extra headers
289
+
290
+ extra_query: Add additional query parameters to the request
291
+
292
+ extra_body: Add additional JSON properties to the request
293
+
294
+ timeout: Override the client-level default timeout for this request, in seconds
295
+
296
+ idempotency_key: Specify a custom idempotency key for this request
297
+ """
298
+ if not id:
299
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
300
+ return self._post(
301
+ f"/v1/repositories/{id}/refresh",
302
+ options=make_request_options(
303
+ extra_headers=extra_headers,
304
+ extra_query=extra_query,
305
+ extra_body=extra_body,
306
+ timeout=timeout,
307
+ idempotency_key=idempotency_key,
308
+ ),
309
+ cast_to=object,
265
310
  )
266
311
 
267
312
 
@@ -291,6 +336,7 @@ class AsyncRepositoriesResource(AsyncAPIResource):
291
336
  name: str,
292
337
  owner: str,
293
338
  blueprint_id: Optional[str] | NotGiven = NOT_GIVEN,
339
+ github_auth_token: Optional[str] | NotGiven = NOT_GIVEN,
294
340
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
295
341
  # The extra values given here take precedence over values defined on the client or passed to this method.
296
342
  extra_headers: Headers | None = None,
@@ -310,6 +356,8 @@ class AsyncRepositoriesResource(AsyncAPIResource):
310
356
 
311
357
  blueprint_id: ID of blueprint to use as base for resulting RepositoryVersion blueprint.
312
358
 
359
+ github_auth_token: GitHub authentication token for accessing private repositories.
360
+
313
361
  extra_headers: Send extra headers
314
362
 
315
363
  extra_query: Add additional query parameters to the request
@@ -327,6 +375,7 @@ class AsyncRepositoriesResource(AsyncAPIResource):
327
375
  "name": name,
328
376
  "owner": owner,
329
377
  "blueprint_id": blueprint_id,
378
+ "github_auth_token": github_auth_token,
330
379
  },
331
380
  repository_create_params.RepositoryCreateParams,
332
381
  ),
@@ -470,7 +519,7 @@ class AsyncRepositoriesResource(AsyncAPIResource):
470
519
  cast_to=object,
471
520
  )
472
521
 
473
- async def versions(
522
+ async def list_inspections(
474
523
  self,
475
524
  id: str,
476
525
  *,
@@ -480,10 +529,10 @@ class AsyncRepositoriesResource(AsyncAPIResource):
480
529
  extra_query: Query | None = None,
481
530
  extra_body: Body | None = None,
482
531
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
483
- ) -> RepositoryVersionListView:
532
+ ) -> RepositoryInspectionListView:
484
533
  """
485
- List all analyzed versions of a repository connection including automatically
486
- generated insights for each version.
534
+ List all inspections of a repository connection including automatically
535
+ generated insights for each inspection.
487
536
 
488
537
  Args:
489
538
  extra_headers: Send extra headers
@@ -497,11 +546,52 @@ class AsyncRepositoriesResource(AsyncAPIResource):
497
546
  if not id:
498
547
  raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
499
548
  return await self._get(
500
- f"/v1/repositories/{id}/versions",
549
+ f"/v1/repositories/{id}/inspections",
501
550
  options=make_request_options(
502
551
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
503
552
  ),
504
- cast_to=RepositoryVersionListView,
553
+ cast_to=RepositoryInspectionListView,
554
+ )
555
+
556
+ async def refresh(
557
+ self,
558
+ id: str,
559
+ *,
560
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
561
+ # The extra values given here take precedence over values defined on the client or passed to this method.
562
+ extra_headers: Headers | None = None,
563
+ extra_query: Query | None = None,
564
+ extra_body: Body | None = None,
565
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
566
+ idempotency_key: str | None = None,
567
+ ) -> object:
568
+ """
569
+ Refresh a repository connection by inspecting the latest version including
570
+ repo's technical stack and developer environment requirements.
571
+
572
+ Args:
573
+ extra_headers: Send extra headers
574
+
575
+ extra_query: Add additional query parameters to the request
576
+
577
+ extra_body: Add additional JSON properties to the request
578
+
579
+ timeout: Override the client-level default timeout for this request, in seconds
580
+
581
+ idempotency_key: Specify a custom idempotency key for this request
582
+ """
583
+ if not id:
584
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
585
+ return await self._post(
586
+ f"/v1/repositories/{id}/refresh",
587
+ options=make_request_options(
588
+ extra_headers=extra_headers,
589
+ extra_query=extra_query,
590
+ extra_body=extra_body,
591
+ timeout=timeout,
592
+ idempotency_key=idempotency_key,
593
+ ),
594
+ cast_to=object,
505
595
  )
506
596
 
507
597
 
@@ -521,8 +611,11 @@ class RepositoriesResourceWithRawResponse:
521
611
  self.delete = to_raw_response_wrapper(
522
612
  repositories.delete,
523
613
  )
524
- self.versions = to_raw_response_wrapper(
525
- repositories.versions,
614
+ self.list_inspections = to_raw_response_wrapper(
615
+ repositories.list_inspections,
616
+ )
617
+ self.refresh = to_raw_response_wrapper(
618
+ repositories.refresh,
526
619
  )
527
620
 
528
621
 
@@ -542,8 +635,11 @@ class AsyncRepositoriesResourceWithRawResponse:
542
635
  self.delete = async_to_raw_response_wrapper(
543
636
  repositories.delete,
544
637
  )
545
- self.versions = async_to_raw_response_wrapper(
546
- repositories.versions,
638
+ self.list_inspections = async_to_raw_response_wrapper(
639
+ repositories.list_inspections,
640
+ )
641
+ self.refresh = async_to_raw_response_wrapper(
642
+ repositories.refresh,
547
643
  )
548
644
 
549
645
 
@@ -563,8 +659,11 @@ class RepositoriesResourceWithStreamingResponse:
563
659
  self.delete = to_streamed_response_wrapper(
564
660
  repositories.delete,
565
661
  )
566
- self.versions = to_streamed_response_wrapper(
567
- repositories.versions,
662
+ self.list_inspections = to_streamed_response_wrapper(
663
+ repositories.list_inspections,
664
+ )
665
+ self.refresh = to_streamed_response_wrapper(
666
+ repositories.refresh,
568
667
  )
569
668
 
570
669
 
@@ -584,6 +683,9 @@ class AsyncRepositoriesResourceWithStreamingResponse:
584
683
  self.delete = async_to_streamed_response_wrapper(
585
684
  repositories.delete,
586
685
  )
587
- self.versions = async_to_streamed_response_wrapper(
588
- repositories.versions,
686
+ self.list_inspections = async_to_streamed_response_wrapper(
687
+ repositories.list_inspections,
688
+ )
689
+ self.refresh = async_to_streamed_response_wrapper(
690
+ repositories.refresh,
589
691
  )