runloop-api-client 0.16.0__tar.gz → 0.18.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 (247) hide show
  1. runloop_api_client-0.18.0/.release-please-manifest.json +3 -0
  2. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/CHANGELOG.md +16 -0
  3. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/PKG-INFO +1 -1
  4. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/api.md +4 -4
  5. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/pyproject.toml +1 -1
  6. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_version.py +1 -1
  7. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/pagination.py +236 -0
  8. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/benchmarks/benchmarks.py +12 -10
  9. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/benchmarks/runs.py +13 -14
  10. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/repositories.py +28 -2
  11. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/scenarios/runs.py +15 -16
  12. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/scenarios/scenarios.py +20 -10
  13. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_run_view.py +6 -0
  14. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/repository_create_params.py +4 -0
  15. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/repository_list_params.py +6 -0
  16. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_list_params.py +3 -0
  17. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_run_view.py +3 -0
  18. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenarios/run_list_params.py +1 -1
  19. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/benchmarks/test_runs.py +10 -9
  20. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/scenarios/test_runs.py +12 -11
  21. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/test_benchmarks.py +9 -9
  22. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/test_repositories.py +22 -0
  23. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/test_scenarios.py +11 -9
  24. runloop_api_client-0.16.0/.release-please-manifest.json +0 -3
  25. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/.gitignore +0 -0
  26. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/CONTRIBUTING.md +0 -0
  27. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/LICENSE +0 -0
  28. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/README.md +0 -0
  29. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/SECURITY.md +0 -0
  30. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/bin/check-release-environment +0 -0
  31. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/bin/publish-pypi +0 -0
  32. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/examples/.keep +0 -0
  33. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/mypy.ini +0 -0
  34. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/noxfile.py +0 -0
  35. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/release-please-config.json +0 -0
  36. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/requirements-dev.lock +0 -0
  37. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/requirements.lock +0 -0
  38. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop/lib/.keep +0 -0
  39. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/__init__.py +0 -0
  40. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_base_client.py +0 -0
  41. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_client.py +0 -0
  42. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_compat.py +0 -0
  43. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_constants.py +0 -0
  44. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_exceptions.py +0 -0
  45. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_files.py +0 -0
  46. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_models.py +0 -0
  47. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_qs.py +0 -0
  48. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_resource.py +0 -0
  49. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_response.py +0 -0
  50. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_streaming.py +0 -0
  51. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_types.py +0 -0
  52. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/__init__.py +0 -0
  53. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_logs.py +0 -0
  54. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
  55. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
  56. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_streams.py +0 -0
  57. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_sync.py +0 -0
  58. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_transform.py +0 -0
  59. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_typing.py +0 -0
  60. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/_utils/_utils.py +0 -0
  61. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/lib/.keep +0 -0
  62. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/lib/polling.py +0 -0
  63. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/lib/polling_async.py +0 -0
  64. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/py.typed +0 -0
  65. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/__init__.py +0 -0
  66. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/benchmarks/__init__.py +0 -0
  67. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/blueprints.py +0 -0
  68. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
  69. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/browsers.py +0 -0
  70. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/computers.py +0 -0
  71. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/devboxes.py +0 -0
  72. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/executions.py +0 -0
  73. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
  74. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/devboxes/lsp.py +0 -0
  75. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/resources/scenarios/__init__.py +0 -0
  76. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/__init__.py +0 -0
  77. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_create_params.py +0 -0
  78. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_list_params.py +0 -0
  79. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_list_view.py +0 -0
  80. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_run_list_view.py +0 -0
  81. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_start_run_params.py +0 -0
  82. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmark_view.py +0 -0
  83. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmarks/__init__.py +0 -0
  84. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/benchmarks/run_list_params.py +0 -0
  85. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
  86. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
  87. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
  88. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
  89. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
  90. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
  91. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
  92. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
  93. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
  94. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
  95. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_create_params.py +0 -0
  96. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
  97. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_create_tunnel_params.py +0 -0
  98. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
  99. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
  100. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
  101. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
  102. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
  103. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
  104. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
  105. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
  106. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
  107. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_remove_tunnel_params.py +0 -0
  108. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
  109. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
  110. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
  111. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_tunnel_view.py +0 -0
  112. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
  113. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_view.py +0 -0
  114. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
  115. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
  116. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_code_action.py +0 -0
  117. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_command.py +0 -0
  118. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_command_param.py +0 -0
  119. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_diagnostic.py +0 -0
  120. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_diagnostic_param.py +0 -0
  121. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_location.py +0 -0
  122. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_markup_content.py +0 -0
  123. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_parameter_information.py +0 -0
  124. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_range.py +0 -0
  125. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_range_param.py +0 -0
  126. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_signature.py +0 -0
  127. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_workspace_edit.py +0 -0
  128. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py +0 -0
  129. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/browser_view.py +0 -0
  130. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/code_action_application_result.py +0 -0
  131. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/code_action_context_param.py +0 -0
  132. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/code_action_kind.py +0 -0
  133. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py +0 -0
  134. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/code_description_param.py +0 -0
  135. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/code_segment_info_response.py +0 -0
  136. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_create_params.py +0 -0
  137. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_params.py +0 -0
  138. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_response.py +0 -0
  139. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_params.py +0 -0
  140. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_response.py +0 -0
  141. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_params.py +0 -0
  142. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_response.py +0 -0
  143. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/computer_view.py +0 -0
  144. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
  145. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/diagnostic_param.py +0 -0
  146. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py +0 -0
  147. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/diagnostic_severity.py +0 -0
  148. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/diagnostic_tag.py +0 -0
  149. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/diagnostics_response.py +0 -0
  150. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/document_symbol.py +0 -0
  151. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/document_uri.py +0 -0
  152. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
  153. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
  154. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
  155. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/file_contents_response.py +0 -0
  156. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/file_path.py +0 -0
  157. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/file_uri.py +0 -0
  158. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/health_status_response.py +0 -0
  159. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/integer.py +0 -0
  160. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/l_sp_any_param.py +0 -0
  161. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/location_param.py +0 -0
  162. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
  163. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py +0 -0
  164. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py +0 -0
  165. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py +0 -0
  166. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py +0 -0
  167. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py +0 -0
  168. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_file_params.py +0 -0
  169. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_files_response.py +0 -0
  170. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_formatting_params.py +0 -0
  171. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py +0 -0
  172. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py +0 -0
  173. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py +0 -0
  174. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py +0 -0
  175. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_references_params.py +0 -0
  176. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py +0 -0
  177. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py +0 -0
  178. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/position.py +0 -0
  179. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/position_param.py +0 -0
  180. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/range.py +0 -0
  181. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/range_param.py +0 -0
  182. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py +0 -0
  183. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py +0 -0
  184. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/signature_help_response.py +0 -0
  185. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/symbol_kind.py +0 -0
  186. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/symbol_tag.py +0 -0
  187. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/symbol_type.py +0 -0
  188. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/text_edit.py +0 -0
  189. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/text_edit_param.py +0 -0
  190. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/u_ri.py +0 -0
  191. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/uinteger.py +0 -0
  192. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/devboxes/watched_file_response.py +0 -0
  193. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/input_context.py +0 -0
  194. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/input_context_param.py +0 -0
  195. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/repository_connection_list_view.py +0 -0
  196. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/repository_connection_view.py +0 -0
  197. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/repository_version_details.py +0 -0
  198. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/repository_version_list_view.py +0 -0
  199. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_create_params.py +0 -0
  200. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_environment.py +0 -0
  201. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_environment_param.py +0 -0
  202. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_list_view.py +0 -0
  203. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_run_list_view.py +0 -0
  204. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_start_run_params.py +0 -0
  205. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenario_view.py +0 -0
  206. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scenarios/__init__.py +0 -0
  207. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scoring_contract.py +0 -0
  208. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scoring_contract_param.py +0 -0
  209. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scoring_contract_result_view.py +0 -0
  210. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scoring_function.py +0 -0
  211. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scoring_function_param.py +0 -0
  212. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/scoring_function_result_view.py +0 -0
  213. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared/__init__.py +0 -0
  214. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
  215. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
  216. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared/launch_parameters.py +0 -0
  217. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -0
  218. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
  219. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
  220. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +0 -0
  221. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/__init__.py +0 -0
  222. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/__init__.py +0 -0
  223. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/benchmarks/__init__.py +0 -0
  224. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/devboxes/__init__.py +0 -0
  225. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/devboxes/test_browsers.py +0 -0
  226. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/devboxes/test_computers.py +0 -0
  227. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/devboxes/test_executions.py +0 -0
  228. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/devboxes/test_logs.py +0 -0
  229. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/devboxes/test_lsp.py +0 -0
  230. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/scenarios/__init__.py +0 -0
  231. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/test_blueprints.py +0 -0
  232. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/api_resources/test_devboxes.py +0 -0
  233. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/conftest.py +0 -0
  234. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/sample_file.txt +0 -0
  235. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_client.py +0 -0
  236. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_deepcopy.py +0 -0
  237. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_extract_files.py +0 -0
  238. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_files.py +0 -0
  239. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_models.py +0 -0
  240. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_qs.py +0 -0
  241. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_required_args.py +0 -0
  242. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_response.py +0 -0
  243. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_streaming.py +0 -0
  244. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_transform.py +0 -0
  245. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_utils/test_proxy.py +0 -0
  246. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/test_utils/test_typing.py +0 -0
  247. {runloop_api_client-0.16.0 → runloop_api_client-0.18.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.18.0"
3
+ }
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.18.0 (2025-02-01)
4
+
5
+ Full Changelog: [v0.17.0...v0.18.0](https://github.com/runloopai/api-client-python/compare/v0.17.0...v0.18.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([#515](https://github.com/runloopai/api-client-python/issues/515)) ([1c68520](https://github.com/runloopai/api-client-python/commit/1c68520b90822af7d035acbf8b366a0c6492ec87))
10
+
11
+ ## 0.17.0 (2025-01-31)
12
+
13
+ Full Changelog: [v0.16.0...v0.17.0](https://github.com/runloopai/api-client-python/compare/v0.16.0...v0.17.0)
14
+
15
+ ### Features
16
+
17
+ * **api:** api update ([#512](https://github.com/runloopai/api-client-python/issues/512)) ([7664372](https://github.com/runloopai/api-client-python/commit/7664372659f1b7c63ee4e93ca4e2873402030733))
18
+
3
19
  ## 0.16.0 (2025-01-31)
4
20
 
5
21
  Full Changelog: [v0.15.0...v0.16.0](https://github.com/runloopai/api-client-python/compare/v0.15.0...v0.16.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: runloop_api_client
3
- Version: 0.16.0
3
+ Version: 0.18.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
@@ -23,7 +23,7 @@ Methods:
23
23
 
24
24
  - <code title="post /v1/benchmarks">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks/benchmarks.py">create</a>(\*\*<a href="src/runloop_api_client/types/benchmark_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">BenchmarkView</a></code>
25
25
  - <code title="get /v1/benchmarks/{id}">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks/benchmarks.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_view.py">BenchmarkView</a></code>
26
- - <code title="get /v1/benchmarks">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks/benchmarks.py">list</a>(\*\*<a href="src/runloop_api_client/types/benchmark_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_list_view.py">BenchmarkListView</a></code>
26
+ - <code title="get /v1/benchmarks">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks/benchmarks.py">list</a>(\*\*<a href="src/runloop_api_client/types/benchmark_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_view.py">SyncBenchmarksCursorIDPage[BenchmarkView]</a></code>
27
27
  - <code title="post /v1/benchmarks/start_run">client.benchmarks.<a href="./src/runloop_api_client/resources/benchmarks/benchmarks.py">start_run</a>(\*\*<a href="src/runloop_api_client/types/benchmark_start_run_params.py">params</a>) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
28
28
 
29
29
  ## Runs
@@ -31,7 +31,7 @@ Methods:
31
31
  Methods:
32
32
 
33
33
  - <code title="get /v1/benchmarks/runs/{id}">client.benchmarks.runs.<a href="./src/runloop_api_client/resources/benchmarks/runs.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/benchmark_run_view.py">BenchmarkRunView</a></code>
34
- - <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_list_view.py">BenchmarkRunListView</a></code>
34
+ - <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>
35
35
  - <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>
36
36
 
37
37
  # Blueprints
@@ -260,7 +260,7 @@ Methods:
260
260
 
261
261
  - <code title="post /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">create</a>(\*\*<a href="src/runloop_api_client/types/scenario_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
262
262
  - <code title="get /v1/scenarios/{id}">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
263
- - <code title="get /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenario_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_list_view.py">ScenarioListView</a></code>
263
+ - <code title="get /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenario_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">SyncScenariosCursorIDPage[ScenarioView]</a></code>
264
264
  - <code title="post /v1/scenarios/start_run">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">start_run</a>(\*\*<a href="src/runloop_api_client/types/scenario_start_run_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
265
265
 
266
266
  ## Runs
@@ -268,7 +268,7 @@ Methods:
268
268
  Methods:
269
269
 
270
270
  - <code title="get /v1/scenarios/runs/{id}">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
271
- - <code title="get /v1/scenarios/runs">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenarios/run_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_list_view.py">ScenarioRunListView</a></code>
271
+ - <code title="get /v1/scenarios/runs">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenarios/run_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">SyncBenchmarkRunsCursorIDPage[ScenarioRunView]</a></code>
272
272
  - <code title="post /v1/scenarios/runs/{id}/complete">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">complete</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
273
273
  - <code title="post /v1/scenarios/runs/{id}/score">client.scenarios.runs.<a href="./src/runloop_api_client/resources/scenarios/runs.py">score</a>(id) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
274
274
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "runloop_api_client"
3
- version = "0.16.0"
3
+ version = "0.18.0"
4
4
  description = "The official Python library for the runloop API"
5
5
  dynamic = ["readme"]
6
6
  license = "MIT"
@@ -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.16.0" # x-release-please-version
4
+ __version__ = "0.18.0" # x-release-please-version
@@ -14,6 +14,14 @@ __all__ = [
14
14
  "AsyncRepositoriesCursorIDPage",
15
15
  "SyncDiskSnapshotsCursorIDPage",
16
16
  "AsyncDiskSnapshotsCursorIDPage",
17
+ "SyncBenchmarksCursorIDPage",
18
+ "AsyncBenchmarksCursorIDPage",
19
+ "SyncBenchmarkRunsCursorIDPage",
20
+ "AsyncBenchmarkRunsCursorIDPage",
21
+ "SyncScenariosCursorIDPage",
22
+ "AsyncScenariosCursorIDPage",
23
+ "SyncScenarioRunsCursorIDPage",
24
+ "AsyncScenarioRunsCursorIDPage",
17
25
  ]
18
26
 
19
27
  _T = TypeVar("_T")
@@ -39,6 +47,26 @@ class DiskSnapshotsCursorIDPageItem(Protocol):
39
47
  id: str
40
48
 
41
49
 
50
+ @runtime_checkable
51
+ class BenchmarksCursorIDPageItem(Protocol):
52
+ id: str
53
+
54
+
55
+ @runtime_checkable
56
+ class BenchmarkRunsCursorIDPageItem(Protocol):
57
+ id: str
58
+
59
+
60
+ @runtime_checkable
61
+ class ScenariosCursorIDPageItem(Protocol):
62
+ id: str
63
+
64
+
65
+ @runtime_checkable
66
+ class ScenarioRunsCursorIDPageItem(Protocol):
67
+ id: str
68
+
69
+
42
70
  class SyncBlueprintsCursorIDPage(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
43
71
  blueprints: List[_T]
44
72
  has_more: Optional[bool] = None
@@ -245,3 +273,211 @@ class AsyncDiskSnapshotsCursorIDPage(BaseAsyncPage[_T], BasePage[_T], Generic[_T
245
273
  return None
246
274
 
247
275
  return PageInfo(params={"starting_after": item.id})
276
+
277
+
278
+ class SyncBenchmarksCursorIDPage(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
279
+ benchmarks: List[_T]
280
+ has_more: Optional[bool] = None
281
+ total_count: Optional[int] = None
282
+
283
+ @override
284
+ def _get_page_items(self) -> List[_T]:
285
+ benchmarks = self.benchmarks
286
+ if not benchmarks:
287
+ return []
288
+ return benchmarks
289
+
290
+ @override
291
+ def next_page_info(self) -> Optional[PageInfo]:
292
+ benchmarks = self.benchmarks
293
+ if not benchmarks:
294
+ return None
295
+
296
+ item = cast(Any, benchmarks[-1])
297
+ if not isinstance(item, BenchmarksCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
298
+ # TODO emit warning log
299
+ return None
300
+
301
+ return PageInfo(params={"starting_after": item.id})
302
+
303
+
304
+ class AsyncBenchmarksCursorIDPage(BaseAsyncPage[_T], BasePage[_T], Generic[_T]):
305
+ benchmarks: List[_T]
306
+ has_more: Optional[bool] = None
307
+ total_count: Optional[int] = None
308
+
309
+ @override
310
+ def _get_page_items(self) -> List[_T]:
311
+ benchmarks = self.benchmarks
312
+ if not benchmarks:
313
+ return []
314
+ return benchmarks
315
+
316
+ @override
317
+ def next_page_info(self) -> Optional[PageInfo]:
318
+ benchmarks = self.benchmarks
319
+ if not benchmarks:
320
+ return None
321
+
322
+ item = cast(Any, benchmarks[-1])
323
+ if not isinstance(item, BenchmarksCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
324
+ # TODO emit warning log
325
+ return None
326
+
327
+ return PageInfo(params={"starting_after": item.id})
328
+
329
+
330
+ class SyncBenchmarkRunsCursorIDPage(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
331
+ runs: List[_T]
332
+ has_more: Optional[bool] = None
333
+ total_count: Optional[int] = None
334
+
335
+ @override
336
+ def _get_page_items(self) -> List[_T]:
337
+ runs = self.runs
338
+ if not runs:
339
+ return []
340
+ return runs
341
+
342
+ @override
343
+ def next_page_info(self) -> Optional[PageInfo]:
344
+ runs = self.runs
345
+ if not runs:
346
+ return None
347
+
348
+ item = cast(Any, runs[-1])
349
+ if not isinstance(item, BenchmarkRunsCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
350
+ # TODO emit warning log
351
+ return None
352
+
353
+ return PageInfo(params={"starting_after": item.id})
354
+
355
+
356
+ class AsyncBenchmarkRunsCursorIDPage(BaseAsyncPage[_T], BasePage[_T], Generic[_T]):
357
+ runs: List[_T]
358
+ has_more: Optional[bool] = None
359
+ total_count: Optional[int] = None
360
+
361
+ @override
362
+ def _get_page_items(self) -> List[_T]:
363
+ runs = self.runs
364
+ if not runs:
365
+ return []
366
+ return runs
367
+
368
+ @override
369
+ def next_page_info(self) -> Optional[PageInfo]:
370
+ runs = self.runs
371
+ if not runs:
372
+ return None
373
+
374
+ item = cast(Any, runs[-1])
375
+ if not isinstance(item, BenchmarkRunsCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
376
+ # TODO emit warning log
377
+ return None
378
+
379
+ return PageInfo(params={"starting_after": item.id})
380
+
381
+
382
+ class SyncScenariosCursorIDPage(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
383
+ scenarios: List[_T]
384
+ has_more: Optional[bool] = None
385
+ total_count: Optional[int] = None
386
+
387
+ @override
388
+ def _get_page_items(self) -> List[_T]:
389
+ scenarios = self.scenarios
390
+ if not scenarios:
391
+ return []
392
+ return scenarios
393
+
394
+ @override
395
+ def next_page_info(self) -> Optional[PageInfo]:
396
+ scenarios = self.scenarios
397
+ if not scenarios:
398
+ return None
399
+
400
+ item = cast(Any, scenarios[-1])
401
+ if not isinstance(item, ScenariosCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
402
+ # TODO emit warning log
403
+ return None
404
+
405
+ return PageInfo(params={"starting_after": item.id})
406
+
407
+
408
+ class AsyncScenariosCursorIDPage(BaseAsyncPage[_T], BasePage[_T], Generic[_T]):
409
+ scenarios: List[_T]
410
+ has_more: Optional[bool] = None
411
+ total_count: Optional[int] = None
412
+
413
+ @override
414
+ def _get_page_items(self) -> List[_T]:
415
+ scenarios = self.scenarios
416
+ if not scenarios:
417
+ return []
418
+ return scenarios
419
+
420
+ @override
421
+ def next_page_info(self) -> Optional[PageInfo]:
422
+ scenarios = self.scenarios
423
+ if not scenarios:
424
+ return None
425
+
426
+ item = cast(Any, scenarios[-1])
427
+ if not isinstance(item, ScenariosCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
428
+ # TODO emit warning log
429
+ return None
430
+
431
+ return PageInfo(params={"starting_after": item.id})
432
+
433
+
434
+ class SyncScenarioRunsCursorIDPage(BaseSyncPage[_T], BasePage[_T], Generic[_T]):
435
+ runs: List[_T]
436
+ has_more: Optional[bool] = None
437
+ total_count: Optional[int] = None
438
+
439
+ @override
440
+ def _get_page_items(self) -> List[_T]:
441
+ runs = self.runs
442
+ if not runs:
443
+ return []
444
+ return runs
445
+
446
+ @override
447
+ def next_page_info(self) -> Optional[PageInfo]:
448
+ runs = self.runs
449
+ if not runs:
450
+ return None
451
+
452
+ item = cast(Any, runs[-1])
453
+ if not isinstance(item, ScenarioRunsCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
454
+ # TODO emit warning log
455
+ return None
456
+
457
+ return PageInfo(params={"starting_after": item.id})
458
+
459
+
460
+ class AsyncScenarioRunsCursorIDPage(BaseAsyncPage[_T], BasePage[_T], Generic[_T]):
461
+ runs: List[_T]
462
+ has_more: Optional[bool] = None
463
+ total_count: Optional[int] = None
464
+
465
+ @override
466
+ def _get_page_items(self) -> List[_T]:
467
+ runs = self.runs
468
+ if not runs:
469
+ return []
470
+ return runs
471
+
472
+ @override
473
+ def next_page_info(self) -> Optional[PageInfo]:
474
+ runs = self.runs
475
+ if not runs:
476
+ return None
477
+
478
+ item = cast(Any, runs[-1])
479
+ if not isinstance(item, ScenarioRunsCursorIDPageItem) or item.id is None: # pyright: ignore[reportUnnecessaryComparison]
480
+ # TODO emit warning log
481
+ return None
482
+
483
+ return PageInfo(params={"starting_after": item.id})
@@ -28,10 +28,10 @@ from ..._response import (
28
28
  async_to_raw_response_wrapper,
29
29
  async_to_streamed_response_wrapper,
30
30
  )
31
- from ..._base_client import make_request_options
31
+ from ...pagination import SyncBenchmarksCursorIDPage, AsyncBenchmarksCursorIDPage
32
+ from ..._base_client import AsyncPaginator, make_request_options
32
33
  from ...types.benchmark_view import BenchmarkView
33
34
  from ...types.benchmark_run_view import BenchmarkRunView
34
- from ...types.benchmark_list_view import BenchmarkListView
35
35
 
36
36
  __all__ = ["BenchmarksResource", "AsyncBenchmarksResource"]
37
37
 
@@ -155,7 +155,7 @@ class BenchmarksResource(SyncAPIResource):
155
155
  extra_query: Query | None = None,
156
156
  extra_body: Body | None = None,
157
157
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
158
- ) -> BenchmarkListView:
158
+ ) -> SyncBenchmarksCursorIDPage[BenchmarkView]:
159
159
  """
160
160
  List all Benchmarks matching filter.
161
161
 
@@ -175,8 +175,9 @@ class BenchmarksResource(SyncAPIResource):
175
175
 
176
176
  timeout: Override the client-level default timeout for this request, in seconds
177
177
  """
178
- return self._get(
178
+ return self._get_api_list(
179
179
  "/v1/benchmarks",
180
+ page=SyncBenchmarksCursorIDPage[BenchmarkView],
180
181
  options=make_request_options(
181
182
  extra_headers=extra_headers,
182
183
  extra_query=extra_query,
@@ -191,7 +192,7 @@ class BenchmarksResource(SyncAPIResource):
191
192
  benchmark_list_params.BenchmarkListParams,
192
193
  ),
193
194
  ),
194
- cast_to=BenchmarkListView,
195
+ model=BenchmarkView,
195
196
  )
196
197
 
197
198
  def start_run(
@@ -352,7 +353,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
352
353
  cast_to=BenchmarkView,
353
354
  )
354
355
 
355
- async def list(
356
+ def list(
356
357
  self,
357
358
  *,
358
359
  limit: int | NotGiven = NOT_GIVEN,
@@ -364,7 +365,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
364
365
  extra_query: Query | None = None,
365
366
  extra_body: Body | None = None,
366
367
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
367
- ) -> BenchmarkListView:
368
+ ) -> AsyncPaginator[BenchmarkView, AsyncBenchmarksCursorIDPage[BenchmarkView]]:
368
369
  """
369
370
  List all Benchmarks matching filter.
370
371
 
@@ -384,14 +385,15 @@ class AsyncBenchmarksResource(AsyncAPIResource):
384
385
 
385
386
  timeout: Override the client-level default timeout for this request, in seconds
386
387
  """
387
- return await self._get(
388
+ return self._get_api_list(
388
389
  "/v1/benchmarks",
390
+ page=AsyncBenchmarksCursorIDPage[BenchmarkView],
389
391
  options=make_request_options(
390
392
  extra_headers=extra_headers,
391
393
  extra_query=extra_query,
392
394
  extra_body=extra_body,
393
395
  timeout=timeout,
394
- query=await async_maybe_transform(
396
+ query=maybe_transform(
395
397
  {
396
398
  "limit": limit,
397
399
  "public": public,
@@ -400,7 +402,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
400
402
  benchmark_list_params.BenchmarkListParams,
401
403
  ),
402
404
  ),
403
- cast_to=BenchmarkListView,
405
+ model=BenchmarkView,
404
406
  )
405
407
 
406
408
  async def start_run(
@@ -5,10 +5,7 @@ from __future__ import annotations
5
5
  import httpx
6
6
 
7
7
  from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven
8
- from ..._utils import (
9
- maybe_transform,
10
- async_maybe_transform,
11
- )
8
+ from ..._utils import maybe_transform
12
9
  from ..._compat import cached_property
13
10
  from ..._resource import SyncAPIResource, AsyncAPIResource
14
11
  from ..._response import (
@@ -17,10 +14,10 @@ from ..._response import (
17
14
  async_to_raw_response_wrapper,
18
15
  async_to_streamed_response_wrapper,
19
16
  )
20
- from ..._base_client import make_request_options
17
+ from ...pagination import SyncBenchmarkRunsCursorIDPage, AsyncBenchmarkRunsCursorIDPage
18
+ from ..._base_client import AsyncPaginator, make_request_options
21
19
  from ...types.benchmarks import run_list_params
22
20
  from ...types.benchmark_run_view import BenchmarkRunView
23
- from ...types.benchmark_run_list_view import BenchmarkRunListView
24
21
 
25
22
  __all__ = ["RunsResource", "AsyncRunsResource"]
26
23
 
@@ -90,7 +87,7 @@ class RunsResource(SyncAPIResource):
90
87
  extra_query: Query | None = None,
91
88
  extra_body: Body | None = None,
92
89
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
93
- ) -> BenchmarkRunListView:
90
+ ) -> SyncBenchmarkRunsCursorIDPage[BenchmarkRunView]:
94
91
  """
95
92
  List all BenchmarkRuns matching filter.
96
93
 
@@ -109,8 +106,9 @@ class RunsResource(SyncAPIResource):
109
106
 
110
107
  timeout: Override the client-level default timeout for this request, in seconds
111
108
  """
112
- return self._get(
109
+ return self._get_api_list(
113
110
  "/v1/benchmarks/runs",
111
+ page=SyncBenchmarkRunsCursorIDPage[BenchmarkRunView],
114
112
  options=make_request_options(
115
113
  extra_headers=extra_headers,
116
114
  extra_query=extra_query,
@@ -125,7 +123,7 @@ class RunsResource(SyncAPIResource):
125
123
  run_list_params.RunListParams,
126
124
  ),
127
125
  ),
128
- cast_to=BenchmarkRunListView,
126
+ model=BenchmarkRunView,
129
127
  )
130
128
 
131
129
  def complete(
@@ -222,7 +220,7 @@ class AsyncRunsResource(AsyncAPIResource):
222
220
  cast_to=BenchmarkRunView,
223
221
  )
224
222
 
225
- async def list(
223
+ def list(
226
224
  self,
227
225
  *,
228
226
  benchmark_id: str | NotGiven = NOT_GIVEN,
@@ -234,7 +232,7 @@ class AsyncRunsResource(AsyncAPIResource):
234
232
  extra_query: Query | None = None,
235
233
  extra_body: Body | None = None,
236
234
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
237
- ) -> BenchmarkRunListView:
235
+ ) -> AsyncPaginator[BenchmarkRunView, AsyncBenchmarkRunsCursorIDPage[BenchmarkRunView]]:
238
236
  """
239
237
  List all BenchmarkRuns matching filter.
240
238
 
@@ -253,14 +251,15 @@ class AsyncRunsResource(AsyncAPIResource):
253
251
 
254
252
  timeout: Override the client-level default timeout for this request, in seconds
255
253
  """
256
- return await self._get(
254
+ return self._get_api_list(
257
255
  "/v1/benchmarks/runs",
256
+ page=AsyncBenchmarkRunsCursorIDPage[BenchmarkRunView],
258
257
  options=make_request_options(
259
258
  extra_headers=extra_headers,
260
259
  extra_query=extra_query,
261
260
  extra_body=extra_body,
262
261
  timeout=timeout,
263
- query=await async_maybe_transform(
262
+ query=maybe_transform(
264
263
  {
265
264
  "benchmark_id": benchmark_id,
266
265
  "limit": limit,
@@ -269,7 +268,7 @@ class AsyncRunsResource(AsyncAPIResource):
269
268
  run_list_params.RunListParams,
270
269
  ),
271
270
  ),
272
- cast_to=BenchmarkRunListView,
271
+ model=BenchmarkRunView,
273
272
  )
274
273
 
275
274
  async def complete(
@@ -2,6 +2,8 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ from typing import Optional
6
+
5
7
  import httpx
6
8
 
7
9
  from ..types import repository_list_params, repository_create_params
@@ -51,6 +53,7 @@ class RepositoriesResource(SyncAPIResource):
51
53
  *,
52
54
  name: str,
53
55
  owner: str,
56
+ blueprint_id: Optional[str] | NotGiven = NOT_GIVEN,
54
57
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
55
58
  # The extra values given here take precedence over values defined on the client or passed to this method.
56
59
  extra_headers: Headers | None = None,
@@ -68,6 +71,8 @@ class RepositoriesResource(SyncAPIResource):
68
71
 
69
72
  owner: Account owner of the repository.
70
73
 
74
+ blueprint_id: ID of blueprint to use as base for resulting RepositoryVersion blueprint.
75
+
71
76
  extra_headers: Send extra headers
72
77
 
73
78
  extra_query: Add additional query parameters to the request
@@ -84,6 +89,7 @@ class RepositoriesResource(SyncAPIResource):
84
89
  {
85
90
  "name": name,
86
91
  "owner": owner,
92
+ "blueprint_id": blueprint_id,
87
93
  },
88
94
  repository_create_params.RepositoryCreateParams,
89
95
  ),
@@ -110,7 +116,7 @@ class RepositoriesResource(SyncAPIResource):
110
116
  ) -> RepositoryConnectionView:
111
117
  """
112
118
  Get Repository Connection details including latest inspection status and
113
- generated respository insights.
119
+ generated repository insights.
114
120
 
115
121
  Args:
116
122
  extra_headers: Send extra headers
@@ -135,6 +141,8 @@ class RepositoriesResource(SyncAPIResource):
135
141
  self,
136
142
  *,
137
143
  limit: int | NotGiven = NOT_GIVEN,
144
+ name: str | NotGiven = NOT_GIVEN,
145
+ owner: str | NotGiven = NOT_GIVEN,
138
146
  starting_after: str | NotGiven = NOT_GIVEN,
139
147
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
140
148
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -149,6 +157,10 @@ class RepositoriesResource(SyncAPIResource):
149
157
  Args:
150
158
  limit: The limit of items to return. Default is 20.
151
159
 
160
+ name: Filter by repository name
161
+
162
+ owner: Filter by repository owner
163
+
152
164
  starting_after: Load the next page of data starting after the item with the given ID.
153
165
 
154
166
  extra_headers: Send extra headers
@@ -170,6 +182,8 @@ class RepositoriesResource(SyncAPIResource):
170
182
  query=maybe_transform(
171
183
  {
172
184
  "limit": limit,
185
+ "name": name,
186
+ "owner": owner,
173
187
  "starting_after": starting_after,
174
188
  },
175
189
  repository_list_params.RepositoryListParams,
@@ -279,6 +293,7 @@ class AsyncRepositoriesResource(AsyncAPIResource):
279
293
  *,
280
294
  name: str,
281
295
  owner: str,
296
+ blueprint_id: Optional[str] | NotGiven = NOT_GIVEN,
282
297
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
283
298
  # The extra values given here take precedence over values defined on the client or passed to this method.
284
299
  extra_headers: Headers | None = None,
@@ -296,6 +311,8 @@ class AsyncRepositoriesResource(AsyncAPIResource):
296
311
 
297
312
  owner: Account owner of the repository.
298
313
 
314
+ blueprint_id: ID of blueprint to use as base for resulting RepositoryVersion blueprint.
315
+
299
316
  extra_headers: Send extra headers
300
317
 
301
318
  extra_query: Add additional query parameters to the request
@@ -312,6 +329,7 @@ class AsyncRepositoriesResource(AsyncAPIResource):
312
329
  {
313
330
  "name": name,
314
331
  "owner": owner,
332
+ "blueprint_id": blueprint_id,
315
333
  },
316
334
  repository_create_params.RepositoryCreateParams,
317
335
  ),
@@ -338,7 +356,7 @@ class AsyncRepositoriesResource(AsyncAPIResource):
338
356
  ) -> RepositoryConnectionView:
339
357
  """
340
358
  Get Repository Connection details including latest inspection status and
341
- generated respository insights.
359
+ generated repository insights.
342
360
 
343
361
  Args:
344
362
  extra_headers: Send extra headers
@@ -363,6 +381,8 @@ class AsyncRepositoriesResource(AsyncAPIResource):
363
381
  self,
364
382
  *,
365
383
  limit: int | NotGiven = NOT_GIVEN,
384
+ name: str | NotGiven = NOT_GIVEN,
385
+ owner: str | NotGiven = NOT_GIVEN,
366
386
  starting_after: str | NotGiven = NOT_GIVEN,
367
387
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
368
388
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -377,6 +397,10 @@ class AsyncRepositoriesResource(AsyncAPIResource):
377
397
  Args:
378
398
  limit: The limit of items to return. Default is 20.
379
399
 
400
+ name: Filter by repository name
401
+
402
+ owner: Filter by repository owner
403
+
380
404
  starting_after: Load the next page of data starting after the item with the given ID.
381
405
 
382
406
  extra_headers: Send extra headers
@@ -398,6 +422,8 @@ class AsyncRepositoriesResource(AsyncAPIResource):
398
422
  query=maybe_transform(
399
423
  {
400
424
  "limit": limit,
425
+ "name": name,
426
+ "owner": owner,
401
427
  "starting_after": starting_after,
402
428
  },
403
429
  repository_list_params.RepositoryListParams,