diff --git a/.stats.yml b/.stats.yml index d5e332922..45d420f36 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,2 +1,2 @@ -configured_endpoints: 47 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-bb75051b5b1bd5fe1a0e7912e0f221a29b8bb78980fc0398efe5b98e0136d867.yml +configured_endpoints: 33 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runloop-ai%2Frunloop-4a7d2f5dd47f9a588ee54346097c35e45faa34684c4b0da098915a31753e2840.yml diff --git a/api.md b/api.md index b051193ac..160665026 100644 --- a/api.md +++ b/api.md @@ -80,88 +80,6 @@ Methods: - client.devboxes.upload_file(id, \*\*params) -> object - client.devboxes.write_file(id, \*\*params) -> DevboxExecutionDetailView -## Lsp - -Types: - -```python -from runloop_api_client.types.devboxes import ( - BaseCodeAction, - BaseCommand, - BaseDiagnostic, - BaseLocation, - BaseMarkupContent, - BaseParameterInformation, - BaseRange, - BaseSignature, - BaseWorkspaceEdit, - CodeActionApplicationResult, - CodeActionContext, - CodeActionKind, - CodeActionsForDiagnosticRequestBody, - CodeActionsRequestBody, - CodeActionsResponse, - CodeActionTriggerKind, - CodeDescription, - CodeSegmentInfoRequestBody, - CodeSegmentInfoResponse, - Diagnostic, - DiagnosticRelatedInformation, - DiagnosticSeverity, - DiagnosticsResponse, - DiagnosticTag, - DocumentSymbol, - DocumentSymbolResponse, - DocumentUri, - FileContentsResponse, - FileDefinitionRequestBody, - FileDefinitionResponse, - FilePath, - FileRequestBody, - FileUri, - FormattingResponse, - HealthStatusResponse, - Integer, - Location, - LSpAny, - Position, - Range, - RecordStringTextEditArray, - ReferencesRequestBody, - ReferencesResponse, - SetWatchDirectoryRequestBody, - SignatureHelpRequestBody, - SignatureHelpResponse, - SymbolKind, - SymbolTag, - SymbolType, - TextEdit, - Uinteger, - URi, - WatchedFileResponse, - LspFilesResponse, - LspGetCodeActionsForDiagnosticResponse, - LspSetWatchDirectoryResponse, -) -``` - -Methods: - -- client.devboxes.lsp.apply_code_action(id, \*\*params) -> CodeActionApplicationResult -- client.devboxes.lsp.code_actions(id, \*\*params) -> object -- client.devboxes.lsp.diagnostics(id, \*\*params) -> DiagnosticsResponse -- client.devboxes.lsp.document_symbols(id, \*\*params) -> object -- client.devboxes.lsp.file(id, \*\*params) -> FileContentsResponse -- client.devboxes.lsp.file_definition(id, \*\*params) -> object -- client.devboxes.lsp.files(id) -> LspFilesResponse -- client.devboxes.lsp.formatting(id, \*\*params) -> object -- client.devboxes.lsp.get_code_actions_for_diagnostic(id, \*\*params) -> LspGetCodeActionsForDiagnosticResponse -- client.devboxes.lsp.get_code_segment_info(id, \*\*params) -> CodeSegmentInfoResponse -- client.devboxes.lsp.get_signature_help(id, \*\*params) -> SignatureHelpResponse -- client.devboxes.lsp.health(id) -> HealthStatusResponse -- client.devboxes.lsp.references(id, \*\*params) -> object -- client.devboxes.lsp.set_watch_directory(id, \*\*params) -> str - ## Logs Types: diff --git a/src/runloop_api_client/resources/devboxes/__init__.py b/src/runloop_api_client/resources/devboxes/__init__.py index d5378fb54..ec7c746ac 100644 --- a/src/runloop_api_client/resources/devboxes/__init__.py +++ b/src/runloop_api_client/resources/devboxes/__init__.py @@ -1,13 +1,5 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. -from .lsp import ( - LspResource, - AsyncLspResource, - LspResourceWithRawResponse, - AsyncLspResourceWithRawResponse, - LspResourceWithStreamingResponse, - AsyncLspResourceWithStreamingResponse, -) from .logs import ( LogsResource, AsyncLogsResource, @@ -34,12 +26,6 @@ ) __all__ = [ - "LspResource", - "AsyncLspResource", - "LspResourceWithRawResponse", - "AsyncLspResourceWithRawResponse", - "LspResourceWithStreamingResponse", - "AsyncLspResourceWithStreamingResponse", "LogsResource", "AsyncLogsResource", "LogsResourceWithRawResponse", diff --git a/src/runloop_api_client/resources/devboxes/devboxes.py b/src/runloop_api_client/resources/devboxes/devboxes.py index 2e3c7bc03..9e53c1633 100644 --- a/src/runloop_api_client/resources/devboxes/devboxes.py +++ b/src/runloop_api_client/resources/devboxes/devboxes.py @@ -6,14 +6,6 @@ import httpx -from .lsp import ( - LspResource, - AsyncLspResource, - LspResourceWithRawResponse, - AsyncLspResourceWithRawResponse, - LspResourceWithStreamingResponse, - AsyncLspResourceWithStreamingResponse, -) from .logs import ( LogsResource, AsyncLogsResource, @@ -82,10 +74,6 @@ class DevboxesResource(SyncAPIResource): - @cached_property - def lsp(self) -> LspResource: - return LspResource(self._client) - @cached_property def logs(self) -> LogsResource: return LogsResource(self._client) @@ -852,10 +840,6 @@ def write_file( class AsyncDevboxesResource(AsyncAPIResource): - @cached_property - def lsp(self) -> AsyncLspResource: - return AsyncLspResource(self._client) - @cached_property def logs(self) -> AsyncLogsResource: return AsyncLogsResource(self._client) @@ -1678,10 +1662,6 @@ def __init__(self, devboxes: DevboxesResource) -> None: devboxes.write_file, ) - @cached_property - def lsp(self) -> LspResourceWithRawResponse: - return LspResourceWithRawResponse(self._devboxes.lsp) - @cached_property def logs(self) -> LogsResourceWithRawResponse: return LogsResourceWithRawResponse(self._devboxes.logs) @@ -1748,10 +1728,6 @@ def __init__(self, devboxes: AsyncDevboxesResource) -> None: devboxes.write_file, ) - @cached_property - def lsp(self) -> AsyncLspResourceWithRawResponse: - return AsyncLspResourceWithRawResponse(self._devboxes.lsp) - @cached_property def logs(self) -> AsyncLogsResourceWithRawResponse: return AsyncLogsResourceWithRawResponse(self._devboxes.logs) @@ -1818,10 +1794,6 @@ def __init__(self, devboxes: DevboxesResource) -> None: devboxes.write_file, ) - @cached_property - def lsp(self) -> LspResourceWithStreamingResponse: - return LspResourceWithStreamingResponse(self._devboxes.lsp) - @cached_property def logs(self) -> LogsResourceWithStreamingResponse: return LogsResourceWithStreamingResponse(self._devboxes.logs) @@ -1888,10 +1860,6 @@ def __init__(self, devboxes: AsyncDevboxesResource) -> None: devboxes.write_file, ) - @cached_property - def lsp(self) -> AsyncLspResourceWithStreamingResponse: - return AsyncLspResourceWithStreamingResponse(self._devboxes.lsp) - @cached_property def logs(self) -> AsyncLogsResourceWithStreamingResponse: return AsyncLogsResourceWithStreamingResponse(self._devboxes.logs) diff --git a/src/runloop_api_client/resources/devboxes/lsp.py b/src/runloop_api_client/resources/devboxes/lsp.py deleted file mode 100644 index 7d0c9fe4d..000000000 --- a/src/runloop_api_client/resources/devboxes/lsp.py +++ /dev/null @@ -1,1461 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -import httpx - -from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven -from ..._utils import ( - maybe_transform, - async_maybe_transform, -) -from ..._compat import cached_property -from ..._resource import SyncAPIResource, AsyncAPIResource -from ..._response import ( - to_raw_response_wrapper, - to_streamed_response_wrapper, - async_to_raw_response_wrapper, - async_to_streamed_response_wrapper, -) -from ..._base_client import make_request_options -from ...types.devboxes import ( - FileUri, - FilePath, - SymbolType, - lsp_file_params, - lsp_formatting_params, - lsp_references_params, - lsp_diagnostics_params, - lsp_code_actions_params, - lsp_file_definition_params, - lsp_document_symbols_params, - lsp_apply_code_action_params, - lsp_get_signature_help_params, - lsp_set_watch_directory_params, - lsp_get_code_segment_info_params, - lsp_get_code_actions_for_diagnostic_params, -) -from ...types.devboxes.file_uri import FileUri -from ...types.devboxes.file_path import FilePath -from ...types.devboxes.range_param import RangeParam -from ...types.devboxes.symbol_type import SymbolType -from ...types.devboxes.base_command_param import BaseCommandParam -from ...types.devboxes.lsp_files_response import LspFilesResponse -from ...types.devboxes.diagnostics_response import DiagnosticsResponse -from ...types.devboxes.base_diagnostic_param import BaseDiagnosticParam -from ...types.devboxes.file_contents_response import FileContentsResponse -from ...types.devboxes.health_status_response import HealthStatusResponse -from ...types.devboxes.signature_help_response import SignatureHelpResponse -from ...types.devboxes.base_workspace_edit_param import BaseWorkspaceEditParam -from ...types.devboxes.code_action_context_param import CodeActionContextParam -from ...types.devboxes.code_segment_info_response import CodeSegmentInfoResponse -from ...types.devboxes.code_action_application_result import CodeActionApplicationResult -from ...types.devboxes.lsp_get_code_actions_for_diagnostic_response import LspGetCodeActionsForDiagnosticResponse - -__all__ = ["LspResource", "AsyncLspResource"] - - -class LspResource(SyncAPIResource): - @cached_property - def with_raw_response(self) -> LspResourceWithRawResponse: - """ - This property can be used as a prefix for any HTTP method call to return the - the raw response object instead of the parsed content. - - For more information, see https://www.github.com/runloopai/api-client-python#accessing-raw-response-data-eg-headers - """ - return LspResourceWithRawResponse(self) - - @cached_property - def with_streaming_response(self) -> LspResourceWithStreamingResponse: - """ - An alternative to `.with_raw_response` that doesn't eagerly read the response body. - - For more information, see https://www.github.com/runloopai/api-client-python#with_streaming_response - """ - return LspResourceWithStreamingResponse(self) - - def apply_code_action( - self, - id: str, - *, - title: str, - command: BaseCommandParam | NotGiven = NOT_GIVEN, - edit: BaseWorkspaceEditParam | NotGiven = NOT_GIVEN, - is_preferred: bool | NotGiven = NOT_GIVEN, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> CodeActionApplicationResult: - """ - Apply a code action to a given code segment not all code actions are supported - yet - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/apply-code-action", - body=maybe_transform( - { - "title": title, - "command": command, - "edit": edit, - "is_preferred": is_preferred, - }, - lsp_apply_code_action_params.LspApplyCodeActionParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=CodeActionApplicationResult, - ) - - def code_actions( - self, - id: str, - *, - uri: str, - context: CodeActionContextParam | NotGiven = NOT_GIVEN, - range: RangeParam | NotGiven = NOT_GIVEN, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """Get code actions for a part of a document. - - This method calls the - `getCodeActions` method of the `LanguageService` class, which in turn - communicates with the TypeScript language server to retrieve code actions for a - given document. - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_codeAction - - Args: - context: Contains additional diagnostic information about the context in which a {@link - CodeActionProvider.provideCodeActions code action} is run. The CodeActionContext - namespace provides helper functions to work with {@link CodeActionContext} - literals. - - range: A range in a text document expressed as (zero-based) start and end positions. - - If you want to specify a range that contains a line including the line ending - character(s) then use an end position denoting the start of the next line. For - example: - - ```ts - { - start: { line: 5, character: 23 } - end : { line 6, character : 0 } - } - ``` - - The Range namespace provides helper functions to work with {@link Range} - literals. - - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/code-actions", - body=maybe_transform( - { - "uri": uri, - "context": context, - "range": range, - }, - lsp_code_actions_params.LspCodeActionsParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - def diagnostics( - self, - id: str, - *, - uri: FileUri, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> DiagnosticsResponse: - """ - Get diagnostics for a given file URI from the language server - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/diagnostics", - body=maybe_transform({"uri": uri}, lsp_diagnostics_params.LspDiagnosticsParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=DiagnosticsResponse, - ) - - def document_symbols( - self, - id: str, - *, - uri: FileUri, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """ - Get document symbols for a given document. - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/document-symbols", - body=maybe_transform({"uri": uri}, lsp_document_symbols_params.LspDocumentSymbolsParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - def file( - self, - id: str, - *, - path: FilePath, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> FileContentsResponse: - """ - Get the contents of a file at a given path relative to the root directory - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/file", - body=maybe_transform({"path": path}, lsp_file_params.LspFileParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=FileContentsResponse, - ) - - def file_definition( - self, - id: str, - *, - character: float, - line: float, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """ - Get the definition of a symbol at a given position in a file - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_definition - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/file-definition", - body=maybe_transform( - { - "character": character, - "line": line, - "uri": uri, - }, - lsp_file_definition_params.LspFileDefinitionParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - def files( - self, - id: str, - *, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> LspFilesResponse: - """ - Get a list of all files being watched by the language server - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._get( - f"/v1/devboxes/{id}/lsp/files", - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=LspFilesResponse, - ) - - def formatting( - self, - id: str, - *, - uri: FileUri, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """ - Get formatting changes for a given document. - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_formatting - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/formatting", - body=maybe_transform({"uri": uri}, lsp_formatting_params.LspFormattingParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - def get_code_actions_for_diagnostic( - self, - id: str, - *, - diagnostic: BaseDiagnosticParam, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> LspGetCodeActionsForDiagnosticResponse: - """ - Get a list of code actions for a given diagnostic - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/get-code-actions-for-diagnostic", - body=maybe_transform( - { - "diagnostic": diagnostic, - "uri": uri, - }, - lsp_get_code_actions_for_diagnostic_params.LspGetCodeActionsForDiagnosticParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=LspGetCodeActionsForDiagnosticResponse, - ) - - def get_code_segment_info( - self, - id: str, - *, - symbol_name: str, - uri: FileUri, - symbol_type: SymbolType | NotGiven = NOT_GIVEN, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> CodeSegmentInfoResponse: - """ - Get the symbol, reference, and diagnostic information for a given code segment - in a file at a given depth - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/get-code-segment-info", - body=maybe_transform( - { - "symbol_name": symbol_name, - "uri": uri, - "symbol_type": symbol_type, - }, - lsp_get_code_segment_info_params.LspGetCodeSegmentInfoParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=CodeSegmentInfoResponse, - ) - - def get_signature_help( - self, - id: str, - *, - character: float, - line: float, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> SignatureHelpResponse: - """ - Get the symbol, reference, and diagnostic information for a given code segment - in a file at a given depth - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/get-signature-help", - body=maybe_transform( - { - "character": character, - "line": line, - "uri": uri, - }, - lsp_get_signature_help_params.LspGetSignatureHelpParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=SignatureHelpResponse, - ) - - def health( - self, - id: str, - *, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> HealthStatusResponse: - """ - This method provides a health check for the language server, including its - status, uptime, the directory being watched, and the name of the module. - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._get( - f"/v1/devboxes/{id}/lsp/health", - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=HealthStatusResponse, - ) - - def references( - self, - id: str, - *, - character: float, - line: float, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """Get references for a given symbol. - - This method calls the `getReferences` method - of the `LanguageService` class, which in turn communicates with the TypeScript - language server to retrieve references for a given symbol in the document. - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_references - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/references", - body=maybe_transform( - { - "character": character, - "line": line, - "uri": uri, - }, - lsp_references_params.LspReferencesParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - def set_watch_directory( - self, - id: str, - *, - path: FilePath, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> str: - """ - Set the watch directory for the language server to a new path and restart the - server - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return self._post( - f"/v1/devboxes/{id}/lsp/set-watch-directory", - body=maybe_transform({"path": path}, lsp_set_watch_directory_params.LspSetWatchDirectoryParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=str, - ) - - -class AsyncLspResource(AsyncAPIResource): - @cached_property - def with_raw_response(self) -> AsyncLspResourceWithRawResponse: - """ - This property can be used as a prefix for any HTTP method call to return the - the raw response object instead of the parsed content. - - For more information, see https://www.github.com/runloopai/api-client-python#accessing-raw-response-data-eg-headers - """ - return AsyncLspResourceWithRawResponse(self) - - @cached_property - def with_streaming_response(self) -> AsyncLspResourceWithStreamingResponse: - """ - An alternative to `.with_raw_response` that doesn't eagerly read the response body. - - For more information, see https://www.github.com/runloopai/api-client-python#with_streaming_response - """ - return AsyncLspResourceWithStreamingResponse(self) - - async def apply_code_action( - self, - id: str, - *, - title: str, - command: BaseCommandParam | NotGiven = NOT_GIVEN, - edit: BaseWorkspaceEditParam | NotGiven = NOT_GIVEN, - is_preferred: bool | NotGiven = NOT_GIVEN, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> CodeActionApplicationResult: - """ - Apply a code action to a given code segment not all code actions are supported - yet - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/apply-code-action", - body=await async_maybe_transform( - { - "title": title, - "command": command, - "edit": edit, - "is_preferred": is_preferred, - }, - lsp_apply_code_action_params.LspApplyCodeActionParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=CodeActionApplicationResult, - ) - - async def code_actions( - self, - id: str, - *, - uri: str, - context: CodeActionContextParam | NotGiven = NOT_GIVEN, - range: RangeParam | NotGiven = NOT_GIVEN, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """Get code actions for a part of a document. - - This method calls the - `getCodeActions` method of the `LanguageService` class, which in turn - communicates with the TypeScript language server to retrieve code actions for a - given document. - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_codeAction - - Args: - context: Contains additional diagnostic information about the context in which a {@link - CodeActionProvider.provideCodeActions code action} is run. The CodeActionContext - namespace provides helper functions to work with {@link CodeActionContext} - literals. - - range: A range in a text document expressed as (zero-based) start and end positions. - - If you want to specify a range that contains a line including the line ending - character(s) then use an end position denoting the start of the next line. For - example: - - ```ts - { - start: { line: 5, character: 23 } - end : { line 6, character : 0 } - } - ``` - - The Range namespace provides helper functions to work with {@link Range} - literals. - - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/code-actions", - body=await async_maybe_transform( - { - "uri": uri, - "context": context, - "range": range, - }, - lsp_code_actions_params.LspCodeActionsParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - async def diagnostics( - self, - id: str, - *, - uri: FileUri, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> DiagnosticsResponse: - """ - Get diagnostics for a given file URI from the language server - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/diagnostics", - body=await async_maybe_transform({"uri": uri}, lsp_diagnostics_params.LspDiagnosticsParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=DiagnosticsResponse, - ) - - async def document_symbols( - self, - id: str, - *, - uri: FileUri, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """ - Get document symbols for a given document. - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/document-symbols", - body=await async_maybe_transform({"uri": uri}, lsp_document_symbols_params.LspDocumentSymbolsParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - async def file( - self, - id: str, - *, - path: FilePath, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> FileContentsResponse: - """ - Get the contents of a file at a given path relative to the root directory - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/file", - body=await async_maybe_transform({"path": path}, lsp_file_params.LspFileParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=FileContentsResponse, - ) - - async def file_definition( - self, - id: str, - *, - character: float, - line: float, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """ - Get the definition of a symbol at a given position in a file - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_definition - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/file-definition", - body=await async_maybe_transform( - { - "character": character, - "line": line, - "uri": uri, - }, - lsp_file_definition_params.LspFileDefinitionParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - async def files( - self, - id: str, - *, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> LspFilesResponse: - """ - Get a list of all files being watched by the language server - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._get( - f"/v1/devboxes/{id}/lsp/files", - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=LspFilesResponse, - ) - - async def formatting( - self, - id: str, - *, - uri: FileUri, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """ - Get formatting changes for a given document. - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_formatting - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/formatting", - body=await async_maybe_transform({"uri": uri}, lsp_formatting_params.LspFormattingParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - async def get_code_actions_for_diagnostic( - self, - id: str, - *, - diagnostic: BaseDiagnosticParam, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> LspGetCodeActionsForDiagnosticResponse: - """ - Get a list of code actions for a given diagnostic - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/get-code-actions-for-diagnostic", - body=await async_maybe_transform( - { - "diagnostic": diagnostic, - "uri": uri, - }, - lsp_get_code_actions_for_diagnostic_params.LspGetCodeActionsForDiagnosticParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=LspGetCodeActionsForDiagnosticResponse, - ) - - async def get_code_segment_info( - self, - id: str, - *, - symbol_name: str, - uri: FileUri, - symbol_type: SymbolType | NotGiven = NOT_GIVEN, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> CodeSegmentInfoResponse: - """ - Get the symbol, reference, and diagnostic information for a given code segment - in a file at a given depth - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/get-code-segment-info", - body=await async_maybe_transform( - { - "symbol_name": symbol_name, - "uri": uri, - "symbol_type": symbol_type, - }, - lsp_get_code_segment_info_params.LspGetCodeSegmentInfoParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=CodeSegmentInfoResponse, - ) - - async def get_signature_help( - self, - id: str, - *, - character: float, - line: float, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> SignatureHelpResponse: - """ - Get the symbol, reference, and diagnostic information for a given code segment - in a file at a given depth - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/get-signature-help", - body=await async_maybe_transform( - { - "character": character, - "line": line, - "uri": uri, - }, - lsp_get_signature_help_params.LspGetSignatureHelpParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=SignatureHelpResponse, - ) - - async def health( - self, - id: str, - *, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> HealthStatusResponse: - """ - This method provides a health check for the language server, including its - status, uptime, the directory being watched, and the name of the module. - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._get( - f"/v1/devboxes/{id}/lsp/health", - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=HealthStatusResponse, - ) - - async def references( - self, - id: str, - *, - character: float, - line: float, - uri: str, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> object: - """Get references for a given symbol. - - This method calls the `getReferences` method - of the `LanguageService` class, which in turn communicates with the TypeScript - language server to retrieve references for a given symbol in the document. - https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_references - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/references", - body=await async_maybe_transform( - { - "character": character, - "line": line, - "uri": uri, - }, - lsp_references_params.LspReferencesParams, - ), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=object, - ) - - async def set_watch_directory( - self, - id: str, - *, - path: FilePath, - # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs. - # The extra values given here take precedence over values defined on the client or passed to this method. - extra_headers: Headers | None = None, - extra_query: Query | None = None, - extra_body: Body | None = None, - timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN, - ) -> str: - """ - Set the watch directory for the language server to a new path and restart the - server - - Args: - extra_headers: Send extra headers - - extra_query: Add additional query parameters to the request - - extra_body: Add additional JSON properties to the request - - timeout: Override the client-level default timeout for this request, in seconds - """ - if not id: - raise ValueError(f"Expected a non-empty value for `id` but received {id!r}") - return await self._post( - f"/v1/devboxes/{id}/lsp/set-watch-directory", - body=await async_maybe_transform({"path": path}, lsp_set_watch_directory_params.LspSetWatchDirectoryParams), - options=make_request_options( - extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout - ), - cast_to=str, - ) - - -class LspResourceWithRawResponse: - def __init__(self, lsp: LspResource) -> None: - self._lsp = lsp - - self.apply_code_action = to_raw_response_wrapper( - lsp.apply_code_action, - ) - self.code_actions = to_raw_response_wrapper( - lsp.code_actions, - ) - self.diagnostics = to_raw_response_wrapper( - lsp.diagnostics, - ) - self.document_symbols = to_raw_response_wrapper( - lsp.document_symbols, - ) - self.file = to_raw_response_wrapper( - lsp.file, - ) - self.file_definition = to_raw_response_wrapper( - lsp.file_definition, - ) - self.files = to_raw_response_wrapper( - lsp.files, - ) - self.formatting = to_raw_response_wrapper( - lsp.formatting, - ) - self.get_code_actions_for_diagnostic = to_raw_response_wrapper( - lsp.get_code_actions_for_diagnostic, - ) - self.get_code_segment_info = to_raw_response_wrapper( - lsp.get_code_segment_info, - ) - self.get_signature_help = to_raw_response_wrapper( - lsp.get_signature_help, - ) - self.health = to_raw_response_wrapper( - lsp.health, - ) - self.references = to_raw_response_wrapper( - lsp.references, - ) - self.set_watch_directory = to_raw_response_wrapper( - lsp.set_watch_directory, - ) - - -class AsyncLspResourceWithRawResponse: - def __init__(self, lsp: AsyncLspResource) -> None: - self._lsp = lsp - - self.apply_code_action = async_to_raw_response_wrapper( - lsp.apply_code_action, - ) - self.code_actions = async_to_raw_response_wrapper( - lsp.code_actions, - ) - self.diagnostics = async_to_raw_response_wrapper( - lsp.diagnostics, - ) - self.document_symbols = async_to_raw_response_wrapper( - lsp.document_symbols, - ) - self.file = async_to_raw_response_wrapper( - lsp.file, - ) - self.file_definition = async_to_raw_response_wrapper( - lsp.file_definition, - ) - self.files = async_to_raw_response_wrapper( - lsp.files, - ) - self.formatting = async_to_raw_response_wrapper( - lsp.formatting, - ) - self.get_code_actions_for_diagnostic = async_to_raw_response_wrapper( - lsp.get_code_actions_for_diagnostic, - ) - self.get_code_segment_info = async_to_raw_response_wrapper( - lsp.get_code_segment_info, - ) - self.get_signature_help = async_to_raw_response_wrapper( - lsp.get_signature_help, - ) - self.health = async_to_raw_response_wrapper( - lsp.health, - ) - self.references = async_to_raw_response_wrapper( - lsp.references, - ) - self.set_watch_directory = async_to_raw_response_wrapper( - lsp.set_watch_directory, - ) - - -class LspResourceWithStreamingResponse: - def __init__(self, lsp: LspResource) -> None: - self._lsp = lsp - - self.apply_code_action = to_streamed_response_wrapper( - lsp.apply_code_action, - ) - self.code_actions = to_streamed_response_wrapper( - lsp.code_actions, - ) - self.diagnostics = to_streamed_response_wrapper( - lsp.diagnostics, - ) - self.document_symbols = to_streamed_response_wrapper( - lsp.document_symbols, - ) - self.file = to_streamed_response_wrapper( - lsp.file, - ) - self.file_definition = to_streamed_response_wrapper( - lsp.file_definition, - ) - self.files = to_streamed_response_wrapper( - lsp.files, - ) - self.formatting = to_streamed_response_wrapper( - lsp.formatting, - ) - self.get_code_actions_for_diagnostic = to_streamed_response_wrapper( - lsp.get_code_actions_for_diagnostic, - ) - self.get_code_segment_info = to_streamed_response_wrapper( - lsp.get_code_segment_info, - ) - self.get_signature_help = to_streamed_response_wrapper( - lsp.get_signature_help, - ) - self.health = to_streamed_response_wrapper( - lsp.health, - ) - self.references = to_streamed_response_wrapper( - lsp.references, - ) - self.set_watch_directory = to_streamed_response_wrapper( - lsp.set_watch_directory, - ) - - -class AsyncLspResourceWithStreamingResponse: - def __init__(self, lsp: AsyncLspResource) -> None: - self._lsp = lsp - - self.apply_code_action = async_to_streamed_response_wrapper( - lsp.apply_code_action, - ) - self.code_actions = async_to_streamed_response_wrapper( - lsp.code_actions, - ) - self.diagnostics = async_to_streamed_response_wrapper( - lsp.diagnostics, - ) - self.document_symbols = async_to_streamed_response_wrapper( - lsp.document_symbols, - ) - self.file = async_to_streamed_response_wrapper( - lsp.file, - ) - self.file_definition = async_to_streamed_response_wrapper( - lsp.file_definition, - ) - self.files = async_to_streamed_response_wrapper( - lsp.files, - ) - self.formatting = async_to_streamed_response_wrapper( - lsp.formatting, - ) - self.get_code_actions_for_diagnostic = async_to_streamed_response_wrapper( - lsp.get_code_actions_for_diagnostic, - ) - self.get_code_segment_info = async_to_streamed_response_wrapper( - lsp.get_code_segment_info, - ) - self.get_signature_help = async_to_streamed_response_wrapper( - lsp.get_signature_help, - ) - self.health = async_to_streamed_response_wrapper( - lsp.health, - ) - self.references = async_to_streamed_response_wrapper( - lsp.references, - ) - self.set_watch_directory = async_to_streamed_response_wrapper( - lsp.set_watch_directory, - ) diff --git a/src/runloop_api_client/types/devboxes/__init__.py b/src/runloop_api_client/types/devboxes/__init__.py index 30d13b0fb..809acc5e1 100644 --- a/src/runloop_api_client/types/devboxes/__init__.py +++ b/src/runloop_api_client/types/devboxes/__init__.py @@ -2,75 +2,8 @@ from __future__ import annotations -from .u_ri import URi as URi -from .range import Range as Range -from .integer import Integer as Integer -from .file_uri import FileUri as FileUri -from .position import Position as Position -from .uinteger import Uinteger as Uinteger -from .file_path import FilePath as FilePath -from .text_edit import TextEdit as TextEdit -from .base_range import BaseRange as BaseRange -from .symbol_tag import SymbolTag as SymbolTag -from .range_param import RangeParam as RangeParam -from .symbol_kind import SymbolKind as SymbolKind -from .symbol_type import SymbolType as SymbolType -from .base_command import BaseCommand as BaseCommand -from .document_uri import DocumentUri as DocumentUri -from .base_location import BaseLocation as BaseLocation -from .base_signature import BaseSignature as BaseSignature -from .diagnostic_tag import DiagnosticTag as DiagnosticTag -from .l_sp_any_param import LSpAnyParam as LSpAnyParam -from .location_param import LocationParam as LocationParam -from .position_param import PositionParam as PositionParam -from .base_diagnostic import BaseDiagnostic as BaseDiagnostic -from .document_symbol import DocumentSymbol as DocumentSymbol from .log_list_params import LogListParams as LogListParams -from .lsp_file_params import LspFileParams as LspFileParams -from .text_edit_param import TextEditParam as TextEditParam -from .base_code_action import BaseCodeAction as BaseCodeAction -from .base_range_param import BaseRangeParam as BaseRangeParam -from .code_action_kind import CodeActionKind as CodeActionKind -from .diagnostic_param import DiagnosticParam as DiagnosticParam -from .base_command_param import BaseCommandParam as BaseCommandParam -from .lsp_files_response import LspFilesResponse as LspFilesResponse -from .base_markup_content import BaseMarkupContent as BaseMarkupContent -from .base_workspace_edit import BaseWorkspaceEdit as BaseWorkspaceEdit -from .diagnostic_severity import DiagnosticSeverity as DiagnosticSeverity -from .diagnostics_response import DiagnosticsResponse as DiagnosticsResponse -from .base_diagnostic_param import BaseDiagnosticParam as BaseDiagnosticParam from .devbox_logs_list_view import DevboxLogsListView as DevboxLogsListView -from .lsp_formatting_params import LspFormattingParams as LspFormattingParams -from .lsp_references_params import LspReferencesParams as LspReferencesParams -from .watched_file_response import WatchedFileResponse as WatchedFileResponse -from .code_description_param import CodeDescriptionParam as CodeDescriptionParam -from .file_contents_response import FileContentsResponse as FileContentsResponse -from .health_status_response import HealthStatusResponse as HealthStatusResponse -from .lsp_diagnostics_params import LspDiagnosticsParams as LspDiagnosticsParams -from .lsp_code_actions_params import LspCodeActionsParams as LspCodeActionsParams -from .signature_help_response import SignatureHelpResponse as SignatureHelpResponse -from .code_action_trigger_kind import CodeActionTriggerKind as CodeActionTriggerKind -from .base_workspace_edit_param import BaseWorkspaceEditParam as BaseWorkspaceEditParam -from .code_action_context_param import CodeActionContextParam as CodeActionContextParam from .execution_retrieve_params import ExecutionRetrieveParams as ExecutionRetrieveParams -from .base_parameter_information import BaseParameterInformation as BaseParameterInformation -from .code_segment_info_response import CodeSegmentInfoResponse as CodeSegmentInfoResponse -from .lsp_file_definition_params import LspFileDefinitionParams as LspFileDefinitionParams -from .lsp_document_symbols_params import LspDocumentSymbolsParams as LspDocumentSymbolsParams -from .lsp_apply_code_action_params import LspApplyCodeActionParams as LspApplyCodeActionParams from .execution_execute_sync_params import ExecutionExecuteSyncParams as ExecutionExecuteSyncParams -from .lsp_get_signature_help_params import LspGetSignatureHelpParams as LspGetSignatureHelpParams -from .record_string_text_edit_array import RecordStringTextEditArray as RecordStringTextEditArray -from .code_action_application_result import CodeActionApplicationResult as CodeActionApplicationResult from .execution_execute_async_params import ExecutionExecuteAsyncParams as ExecutionExecuteAsyncParams -from .lsp_set_watch_directory_params import LspSetWatchDirectoryParams as LspSetWatchDirectoryParams -from .lsp_get_code_segment_info_params import LspGetCodeSegmentInfoParams as LspGetCodeSegmentInfoParams -from .lsp_set_watch_directory_response import LspSetWatchDirectoryResponse as LspSetWatchDirectoryResponse -from .record_string_text_edit_array_param import RecordStringTextEditArrayParam as RecordStringTextEditArrayParam -from .diagnostic_related_information_param import DiagnosticRelatedInformationParam as DiagnosticRelatedInformationParam -from .lsp_get_code_actions_for_diagnostic_params import ( - LspGetCodeActionsForDiagnosticParams as LspGetCodeActionsForDiagnosticParams, -) -from .lsp_get_code_actions_for_diagnostic_response import ( - LspGetCodeActionsForDiagnosticResponse as LspGetCodeActionsForDiagnosticResponse, -) diff --git a/src/runloop_api_client/types/devboxes/base_code_action.py b/src/runloop_api_client/types/devboxes/base_code_action.py deleted file mode 100644 index d74e9a0f6..000000000 --- a/src/runloop_api_client/types/devboxes/base_code_action.py +++ /dev/null @@ -1,21 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import Optional - -from pydantic import Field as FieldInfo - -from ..._models import BaseModel -from .base_command import BaseCommand -from .base_workspace_edit import BaseWorkspaceEdit - -__all__ = ["BaseCodeAction"] - - -class BaseCodeAction(BaseModel): - title: str - - command: Optional[BaseCommand] = None - - edit: Optional[BaseWorkspaceEdit] = None - - is_preferred: Optional[bool] = FieldInfo(alias="isPreferred", default=None) diff --git a/src/runloop_api_client/types/devboxes/base_command.py b/src/runloop_api_client/types/devboxes/base_command.py deleted file mode 100644 index 7defd0e9a..000000000 --- a/src/runloop_api_client/types/devboxes/base_command.py +++ /dev/null @@ -1,15 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List, Optional - -from ..._models import BaseModel - -__all__ = ["BaseCommand"] - - -class BaseCommand(BaseModel): - command: str - - title: str - - arguments: Optional[List[object]] = None diff --git a/src/runloop_api_client/types/devboxes/base_command_param.py b/src/runloop_api_client/types/devboxes/base_command_param.py deleted file mode 100644 index fe17f38f6..000000000 --- a/src/runloop_api_client/types/devboxes/base_command_param.py +++ /dev/null @@ -1,16 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import Iterable -from typing_extensions import Required, TypedDict - -__all__ = ["BaseCommandParam"] - - -class BaseCommandParam(TypedDict, total=False): - command: Required[str] - - title: Required[str] - - arguments: Iterable[object] diff --git a/src/runloop_api_client/types/devboxes/base_diagnostic.py b/src/runloop_api_client/types/devboxes/base_diagnostic.py deleted file mode 100644 index 83249c034..000000000 --- a/src/runloop_api_client/types/devboxes/base_diagnostic.py +++ /dev/null @@ -1,22 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import Union, Optional - -from ..._models import BaseModel -from .base_range import BaseRange -from .diagnostic_severity import DiagnosticSeverity - -__all__ = ["BaseDiagnostic"] - - -class BaseDiagnostic(BaseModel): - message: str - - range: BaseRange - - code: Union[float, str, None] = None - - severity: Optional[DiagnosticSeverity] = None - """The diagnostic's severity.""" - - source: Optional[str] = None diff --git a/src/runloop_api_client/types/devboxes/base_diagnostic_param.py b/src/runloop_api_client/types/devboxes/base_diagnostic_param.py deleted file mode 100644 index b74f7435e..000000000 --- a/src/runloop_api_client/types/devboxes/base_diagnostic_param.py +++ /dev/null @@ -1,24 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import Union -from typing_extensions import Required, TypedDict - -from .base_range_param import BaseRangeParam -from .diagnostic_severity import DiagnosticSeverity - -__all__ = ["BaseDiagnosticParam"] - - -class BaseDiagnosticParam(TypedDict, total=False): - message: Required[str] - - range: Required[BaseRangeParam] - - code: Union[float, str] - - severity: DiagnosticSeverity - """The diagnostic's severity.""" - - source: str diff --git a/src/runloop_api_client/types/devboxes/base_location.py b/src/runloop_api_client/types/devboxes/base_location.py deleted file mode 100644 index 3d83663f0..000000000 --- a/src/runloop_api_client/types/devboxes/base_location.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from ..._models import BaseModel -from .base_range import BaseRange - -__all__ = ["BaseLocation"] - - -class BaseLocation(BaseModel): - range: BaseRange - - uri: str diff --git a/src/runloop_api_client/types/devboxes/base_markup_content.py b/src/runloop_api_client/types/devboxes/base_markup_content.py deleted file mode 100644 index bd874488d..000000000 --- a/src/runloop_api_client/types/devboxes/base_markup_content.py +++ /dev/null @@ -1,12 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from ..._models import BaseModel - -__all__ = ["BaseMarkupContent"] - - -class BaseMarkupContent(BaseModel): - kind: str - - value: str diff --git a/src/runloop_api_client/types/devboxes/base_parameter_information.py b/src/runloop_api_client/types/devboxes/base_parameter_information.py deleted file mode 100644 index 0075870f3..000000000 --- a/src/runloop_api_client/types/devboxes/base_parameter_information.py +++ /dev/null @@ -1,17 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import Union, Optional -from typing_extensions import TypeAlias - -from ..._models import BaseModel -from .base_markup_content import BaseMarkupContent - -__all__ = ["BaseParameterInformation", "Documentation"] - -Documentation: TypeAlias = Union[str, BaseMarkupContent] - - -class BaseParameterInformation(BaseModel): - label: str - - documentation: Optional[Documentation] = None diff --git a/src/runloop_api_client/types/devboxes/base_range.py b/src/runloop_api_client/types/devboxes/base_range.py deleted file mode 100644 index 52e22338d..000000000 --- a/src/runloop_api_client/types/devboxes/base_range.py +++ /dev/null @@ -1,24 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from ..._models import BaseModel - -__all__ = ["BaseRange", "End", "Start"] - - -class End(BaseModel): - character: float - - line: float - - -class Start(BaseModel): - character: float - - line: float - - -class BaseRange(BaseModel): - end: End - - start: Start diff --git a/src/runloop_api_client/types/devboxes/base_range_param.py b/src/runloop_api_client/types/devboxes/base_range_param.py deleted file mode 100644 index d97e7fdee..000000000 --- a/src/runloop_api_client/types/devboxes/base_range_param.py +++ /dev/null @@ -1,25 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -__all__ = ["BaseRangeParam", "End", "Start"] - - -class End(TypedDict, total=False): - character: Required[float] - - line: Required[float] - - -class Start(TypedDict, total=False): - character: Required[float] - - line: Required[float] - - -class BaseRangeParam(TypedDict, total=False): - end: Required[End] - - start: Required[Start] diff --git a/src/runloop_api_client/types/devboxes/base_signature.py b/src/runloop_api_client/types/devboxes/base_signature.py deleted file mode 100644 index 7c1df775f..000000000 --- a/src/runloop_api_client/types/devboxes/base_signature.py +++ /dev/null @@ -1,20 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List, Union, Optional -from typing_extensions import TypeAlias - -from ..._models import BaseModel -from .base_markup_content import BaseMarkupContent -from .base_parameter_information import BaseParameterInformation - -__all__ = ["BaseSignature", "Documentation"] - -Documentation: TypeAlias = Union[str, BaseMarkupContent] - - -class BaseSignature(BaseModel): - label: str - - documentation: Optional[Documentation] = None - - parameters: Optional[List[BaseParameterInformation]] = None diff --git a/src/runloop_api_client/types/devboxes/base_workspace_edit.py b/src/runloop_api_client/types/devboxes/base_workspace_edit.py deleted file mode 100644 index db5a77fa4..000000000 --- a/src/runloop_api_client/types/devboxes/base_workspace_edit.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import Optional - -from ..._models import BaseModel -from .record_string_text_edit_array import RecordStringTextEditArray - -__all__ = ["BaseWorkspaceEdit"] - - -class BaseWorkspaceEdit(BaseModel): - changes: Optional[RecordStringTextEditArray] = None - """Construct a type with a set of properties K of type T""" diff --git a/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py b/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py deleted file mode 100644 index 89a933497..000000000 --- a/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py +++ /dev/null @@ -1,14 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import TypedDict - -from .record_string_text_edit_array_param import RecordStringTextEditArrayParam - -__all__ = ["BaseWorkspaceEditParam"] - - -class BaseWorkspaceEditParam(TypedDict, total=False): - changes: RecordStringTextEditArrayParam - """Construct a type with a set of properties K of type T""" diff --git a/src/runloop_api_client/types/devboxes/code_action_application_result.py b/src/runloop_api_client/types/devboxes/code_action_application_result.py deleted file mode 100644 index 49a2ad557..000000000 --- a/src/runloop_api_client/types/devboxes/code_action_application_result.py +++ /dev/null @@ -1,17 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List, Optional - -from pydantic import Field as FieldInfo - -from ..._models import BaseModel - -__all__ = ["CodeActionApplicationResult"] - - -class CodeActionApplicationResult(BaseModel): - success: bool - - error: Optional[str] = None - - files_changed: Optional[List[str]] = FieldInfo(alias="filesChanged", default=None) diff --git a/src/runloop_api_client/types/devboxes/code_action_context_param.py b/src/runloop_api_client/types/devboxes/code_action_context_param.py deleted file mode 100644 index df6ee765f..000000000 --- a/src/runloop_api_client/types/devboxes/code_action_context_param.py +++ /dev/null @@ -1,34 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import List, Iterable -from typing_extensions import Required, Annotated, TypedDict - -from ..._utils import PropertyInfo -from .code_action_kind import CodeActionKind -from .diagnostic_param import DiagnosticParam -from .code_action_trigger_kind import CodeActionTriggerKind - -__all__ = ["CodeActionContextParam"] - - -class CodeActionContextParam(TypedDict, total=False): - diagnostics: Required[Iterable[DiagnosticParam]] - """ - An array of diagnostics known on the client side overlapping the range provided - to the `textDocument/codeAction` request. They are provided so that the server - knows which errors are currently presented to the user for the given range. - There is no guarantee that these accurately reflect the error state of the - resource. The primary parameter to compute code actions is the provided range. - """ - - only: List[CodeActionKind] - """Requested kind of actions to return. - - Actions not of this kind are filtered out by the client before being shown. So - servers can omit computing them. - """ - - trigger_kind: Annotated[CodeActionTriggerKind, PropertyInfo(alias="triggerKind")] - """The reason why code actions were requested.""" diff --git a/src/runloop_api_client/types/devboxes/code_action_kind.py b/src/runloop_api_client/types/devboxes/code_action_kind.py deleted file mode 100644 index 2878d6335..000000000 --- a/src/runloop_api_client/types/devboxes/code_action_kind.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["CodeActionKind"] - -CodeActionKind: TypeAlias = str diff --git a/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py b/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py deleted file mode 100644 index f365d75f8..000000000 --- a/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["CodeActionTriggerKind"] - -CodeActionTriggerKind: TypeAlias = Literal[1, 2] diff --git a/src/runloop_api_client/types/devboxes/code_description_param.py b/src/runloop_api_client/types/devboxes/code_description_param.py deleted file mode 100644 index 616f4446f..000000000 --- a/src/runloop_api_client/types/devboxes/code_description_param.py +++ /dev/null @@ -1,14 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .u_ri import URi - -__all__ = ["CodeDescriptionParam"] - - -class CodeDescriptionParam(TypedDict, total=False): - href: Required[URi] - """An URI to open with more information about the diagnostic error.""" diff --git a/src/runloop_api_client/types/devboxes/code_segment_info_response.py b/src/runloop_api_client/types/devboxes/code_segment_info_response.py deleted file mode 100644 index 43b4e0a72..000000000 --- a/src/runloop_api_client/types/devboxes/code_segment_info_response.py +++ /dev/null @@ -1,53 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import List, Optional - -from .file_uri import FileUri -from ..._compat import PYDANTIC_V2 -from ..._models import BaseModel -from .base_range import BaseRange -from .base_location import BaseLocation -from .base_diagnostic import BaseDiagnostic -from .document_symbol import DocumentSymbol -from .base_code_action import BaseCodeAction -from .signature_help_response import SignatureHelpResponse - -__all__ = ["CodeSegmentInfoResponse", "Hover"] - - -class Hover(BaseModel): - contents: object - - range: Optional[BaseRange] = None - - -class CodeSegmentInfoResponse(BaseModel): - actions: List[BaseCodeAction] - - diagnostics: List[BaseDiagnostic] - - references: List[BaseLocation] - - symbol: DocumentSymbol - """ - Represents programming constructs like variables, classes, interfaces etc. that - appear in a document. Document symbols can be hierarchical and they have two - ranges: one that encloses its definition and one that points to its most - interesting range, e.g. the range of an identifier. - """ - - uri: FileUri - - hover: Optional[Hover] = None - - signature: Optional[SignatureHelpResponse] = None - - -if PYDANTIC_V2: - CodeSegmentInfoResponse.model_rebuild() - Hover.model_rebuild() -else: - CodeSegmentInfoResponse.update_forward_refs() # type: ignore - Hover.update_forward_refs() # type: ignore diff --git a/src/runloop_api_client/types/devboxes/diagnostic_param.py b/src/runloop_api_client/types/devboxes/diagnostic_param.py deleted file mode 100644 index 4ec525ec8..000000000 --- a/src/runloop_api_client/types/devboxes/diagnostic_param.py +++ /dev/null @@ -1,65 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import Union, Iterable -from typing_extensions import Required, Annotated, TypedDict - -from .integer import Integer -from ..._utils import PropertyInfo -from .range_param import RangeParam -from .diagnostic_tag import DiagnosticTag -from .l_sp_any_param import LSpAnyParam -from .diagnostic_severity import DiagnosticSeverity -from .code_description_param import CodeDescriptionParam -from .diagnostic_related_information_param import DiagnosticRelatedInformationParam - -__all__ = ["DiagnosticParam"] - - -class DiagnosticParam(TypedDict, total=False): - message: Required[str] - """The diagnostic's message. It usually appears in the user interface""" - - range: Required[RangeParam] - """The range at which the message applies""" - - code: Union[Integer, str] - """The diagnostic's code, which usually appear in the user interface.""" - - code_description: Annotated[CodeDescriptionParam, PropertyInfo(alias="codeDescription")] - """ - An optional property to describe the error code. Requires the code field (above) - to be present/not null. - """ - - data: LSpAnyParam - """ - A data entry field that is preserved between a `textDocument/publishDiagnostics` - notification and `textDocument/codeAction` request. - """ - - related_information: Annotated[ - Iterable[DiagnosticRelatedInformationParam], PropertyInfo(alias="relatedInformation") - ] - """An array of related diagnostic information, e.g. - - when symbol-names within a scope collide all definitions can be marked via this - property. - """ - - severity: DiagnosticSeverity - """The diagnostic's severity. - - Can be omitted. If omitted it is up to the client to interpret diagnostics as - error, warning, info or hint. - """ - - source: str - """A human-readable string describing the source of this diagnostic, e.g. - - 'typescript' or 'super lint'. It usually appears in the user interface. - """ - - tags: Iterable[DiagnosticTag] - """Additional metadata about the diagnostic.""" diff --git a/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py b/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py deleted file mode 100644 index 9e902d731..000000000 --- a/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py +++ /dev/null @@ -1,17 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .location_param import LocationParam - -__all__ = ["DiagnosticRelatedInformationParam"] - - -class DiagnosticRelatedInformationParam(TypedDict, total=False): - location: Required[LocationParam] - """The location of this related diagnostic information.""" - - message: Required[str] - """The message of this related diagnostic information.""" diff --git a/src/runloop_api_client/types/devboxes/diagnostic_severity.py b/src/runloop_api_client/types/devboxes/diagnostic_severity.py deleted file mode 100644 index 34bb1dfe6..000000000 --- a/src/runloop_api_client/types/devboxes/diagnostic_severity.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["DiagnosticSeverity"] - -DiagnosticSeverity: TypeAlias = Literal[1, 2, 3, 4] diff --git a/src/runloop_api_client/types/devboxes/diagnostic_tag.py b/src/runloop_api_client/types/devboxes/diagnostic_tag.py deleted file mode 100644 index 693d4f6e4..000000000 --- a/src/runloop_api_client/types/devboxes/diagnostic_tag.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["DiagnosticTag"] - -DiagnosticTag: TypeAlias = Literal[1, 2] diff --git a/src/runloop_api_client/types/devboxes/diagnostics_response.py b/src/runloop_api_client/types/devboxes/diagnostics_response.py deleted file mode 100644 index 1b75b2741..000000000 --- a/src/runloop_api_client/types/devboxes/diagnostics_response.py +++ /dev/null @@ -1,14 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List - -from ..._models import BaseModel -from .base_diagnostic import BaseDiagnostic - -__all__ = ["DiagnosticsResponse"] - - -class DiagnosticsResponse(BaseModel): - diagnostics: List[BaseDiagnostic] - - uri: str diff --git a/src/runloop_api_client/types/devboxes/document_symbol.py b/src/runloop_api_client/types/devboxes/document_symbol.py deleted file mode 100644 index 0e58f87ed..000000000 --- a/src/runloop_api_client/types/devboxes/document_symbol.py +++ /dev/null @@ -1,58 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import List, Optional - -from pydantic import Field as FieldInfo - -from .range import Range -from ..._compat import PYDANTIC_V2 -from ..._models import BaseModel -from .symbol_tag import SymbolTag -from .symbol_kind import SymbolKind - -__all__ = ["DocumentSymbol"] - - -class DocumentSymbol(BaseModel): - kind: SymbolKind - """The kind of this symbol.""" - - name: str - """The name of this symbol. - - Will be displayed in the user interface and therefore must not be an empty - string or a string only consisting of white spaces. - """ - - range: Range - """ - The range enclosing this symbol not including leading/trailing whitespace but - everything else like comments. This information is typically used to determine - if the clients cursor is inside the symbol to reveal in the symbol in the UI. - """ - - selection_range: Range = FieldInfo(alias="selectionRange") - """ - The range that should be selected and revealed when this symbol is being picked, - e.g the name of a function. Must be contained by the `range`. - """ - - children: Optional[List[DocumentSymbol]] = None - """Children of this symbol, e.g. properties of a class.""" - - deprecated: Optional[bool] = None - """Indicates if this symbol is deprecated.""" - - detail: Optional[str] = None - """More detail for this symbol, e.g the signature of a function.""" - - tags: Optional[List[SymbolTag]] = None - """Tags for this document symbol.""" - - -if PYDANTIC_V2: - DocumentSymbol.model_rebuild() -else: - DocumentSymbol.update_forward_refs() # type: ignore diff --git a/src/runloop_api_client/types/devboxes/document_uri.py b/src/runloop_api_client/types/devboxes/document_uri.py deleted file mode 100644 index 0b7ae87a3..000000000 --- a/src/runloop_api_client/types/devboxes/document_uri.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["DocumentUri"] - -DocumentUri: TypeAlias = str diff --git a/src/runloop_api_client/types/devboxes/file_contents_response.py b/src/runloop_api_client/types/devboxes/file_contents_response.py deleted file mode 100644 index e5aa38d11..000000000 --- a/src/runloop_api_client/types/devboxes/file_contents_response.py +++ /dev/null @@ -1,17 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from pydantic import Field as FieldInfo - -from ..._models import BaseModel -from .file_path import FilePath - -__all__ = ["FileContentsResponse"] - - -class FileContentsResponse(BaseModel): - contents: str - - full_path: str = FieldInfo(alias="fullPath") - - path: FilePath diff --git a/src/runloop_api_client/types/devboxes/file_path.py b/src/runloop_api_client/types/devboxes/file_path.py deleted file mode 100644 index 008c01f66..000000000 --- a/src/runloop_api_client/types/devboxes/file_path.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["FilePath"] - -FilePath: TypeAlias = str diff --git a/src/runloop_api_client/types/devboxes/file_uri.py b/src/runloop_api_client/types/devboxes/file_uri.py deleted file mode 100644 index 293323d00..000000000 --- a/src/runloop_api_client/types/devboxes/file_uri.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["FileUri"] - -FileUri: TypeAlias = str diff --git a/src/runloop_api_client/types/devboxes/health_status_response.py b/src/runloop_api_client/types/devboxes/health_status_response.py deleted file mode 100644 index 5b02dd9af..000000000 --- a/src/runloop_api_client/types/devboxes/health_status_response.py +++ /dev/null @@ -1,23 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import Dict, List - -from pydantic import Field as FieldInfo - -from ..._models import BaseModel - -__all__ = ["HealthStatusResponse"] - - -class HealthStatusResponse(BaseModel): - dirty_files: List[str] = FieldInfo(alias="dirtyFiles") - - module_name: str = FieldInfo(alias="moduleName") - - pending_work: Dict[str, object] = FieldInfo(alias="pendingWork") - - status: str - - uptime: str - - watch_directory: str = FieldInfo(alias="watchDirectory") diff --git a/src/runloop_api_client/types/devboxes/integer.py b/src/runloop_api_client/types/devboxes/integer.py deleted file mode 100644 index 2ff55a8c7..000000000 --- a/src/runloop_api_client/types/devboxes/integer.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["Integer"] - -Integer: TypeAlias = float diff --git a/src/runloop_api_client/types/devboxes/l_sp_any_param.py b/src/runloop_api_client/types/devboxes/l_sp_any_param.py deleted file mode 100644 index 1fe0adec1..000000000 --- a/src/runloop_api_client/types/devboxes/l_sp_any_param.py +++ /dev/null @@ -1,9 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import TypeAlias - -__all__ = ["LSpAnyParam"] - -LSpAnyParam: TypeAlias = object diff --git a/src/runloop_api_client/types/devboxes/location_param.py b/src/runloop_api_client/types/devboxes/location_param.py deleted file mode 100644 index e2deae54b..000000000 --- a/src/runloop_api_client/types/devboxes/location_param.py +++ /dev/null @@ -1,33 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .range_param import RangeParam -from .document_uri import DocumentUri - -__all__ = ["LocationParam"] - - -class LocationParam(TypedDict, total=False): - range: Required[RangeParam] - """A range in a text document expressed as (zero-based) start and end positions. - - If you want to specify a range that contains a line including the line ending - character(s) then use an end position denoting the start of the next line. For - example: - - ```ts - { - start: { line: 5, character: 23 } - end : { line 6, character : 0 } - } - ``` - - The Range namespace provides helper functions to work with {@link Range} - literals. - """ - - uri: Required[DocumentUri] - """A tagging type for string properties that are actually document URIs.""" diff --git a/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py b/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py deleted file mode 100644 index 1ab3b23d5..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py +++ /dev/null @@ -1,21 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, Annotated, TypedDict - -from ..._utils import PropertyInfo -from .base_command_param import BaseCommandParam -from .base_workspace_edit_param import BaseWorkspaceEditParam - -__all__ = ["LspApplyCodeActionParams"] - - -class LspApplyCodeActionParams(TypedDict, total=False): - title: Required[str] - - command: BaseCommandParam - - edit: BaseWorkspaceEditParam - - is_preferred: Annotated[bool, PropertyInfo(alias="isPreferred")] diff --git a/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py b/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py deleted file mode 100644 index f59f19457..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py +++ /dev/null @@ -1,40 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .range_param import RangeParam -from .code_action_context_param import CodeActionContextParam - -__all__ = ["LspCodeActionsParams"] - - -class LspCodeActionsParams(TypedDict, total=False): - uri: Required[str] - - context: CodeActionContextParam - """ - Contains additional diagnostic information about the context in which a {@link - CodeActionProvider.provideCodeActions code action} is run. The CodeActionContext - namespace provides helper functions to work with {@link CodeActionContext} - literals. - """ - - range: RangeParam - """A range in a text document expressed as (zero-based) start and end positions. - - If you want to specify a range that contains a line including the line ending - character(s) then use an end position denoting the start of the next line. For - example: - - ```ts - { - start: { line: 5, character: 23 } - end : { line 6, character : 0 } - } - ``` - - The Range namespace provides helper functions to work with {@link Range} - literals. - """ diff --git a/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py b/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py deleted file mode 100644 index 103f7c1c1..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .file_uri import FileUri - -__all__ = ["LspDiagnosticsParams"] - - -class LspDiagnosticsParams(TypedDict, total=False): - uri: Required[FileUri] diff --git a/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py b/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py deleted file mode 100644 index f1c85e223..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .file_uri import FileUri - -__all__ = ["LspDocumentSymbolsParams"] - - -class LspDocumentSymbolsParams(TypedDict, total=False): - uri: Required[FileUri] diff --git a/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py b/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py deleted file mode 100644 index ea8b647cc..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py +++ /dev/null @@ -1,15 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -__all__ = ["LspFileDefinitionParams"] - - -class LspFileDefinitionParams(TypedDict, total=False): - character: Required[float] - - line: Required[float] - - uri: Required[str] diff --git a/src/runloop_api_client/types/devboxes/lsp_file_params.py b/src/runloop_api_client/types/devboxes/lsp_file_params.py deleted file mode 100644 index f3caba3d8..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_file_params.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .file_path import FilePath - -__all__ = ["LspFileParams"] - - -class LspFileParams(TypedDict, total=False): - path: Required[FilePath] diff --git a/src/runloop_api_client/types/devboxes/lsp_files_response.py b/src/runloop_api_client/types/devboxes/lsp_files_response.py deleted file mode 100644 index 699491a0a..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_files_response.py +++ /dev/null @@ -1,10 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List -from typing_extensions import TypeAlias - -from .watched_file_response import WatchedFileResponse - -__all__ = ["LspFilesResponse"] - -LspFilesResponse: TypeAlias = List[WatchedFileResponse] diff --git a/src/runloop_api_client/types/devboxes/lsp_formatting_params.py b/src/runloop_api_client/types/devboxes/lsp_formatting_params.py deleted file mode 100644 index 4ffecaee8..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_formatting_params.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .file_uri import FileUri - -__all__ = ["LspFormattingParams"] - - -class LspFormattingParams(TypedDict, total=False): - uri: Required[FileUri] diff --git a/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py b/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py deleted file mode 100644 index 03d24fa27..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py +++ /dev/null @@ -1,15 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .base_diagnostic_param import BaseDiagnosticParam - -__all__ = ["LspGetCodeActionsForDiagnosticParams"] - - -class LspGetCodeActionsForDiagnosticParams(TypedDict, total=False): - diagnostic: Required[BaseDiagnosticParam] - - uri: Required[str] diff --git a/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py b/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py deleted file mode 100644 index fac1c53a8..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py +++ /dev/null @@ -1,10 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List -from typing_extensions import TypeAlias - -from .base_code_action import BaseCodeAction - -__all__ = ["LspGetCodeActionsForDiagnosticResponse"] - -LspGetCodeActionsForDiagnosticResponse: TypeAlias = List[BaseCodeAction] diff --git a/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py b/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py deleted file mode 100644 index d26cafc31..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py +++ /dev/null @@ -1,19 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, Annotated, TypedDict - -from ..._utils import PropertyInfo -from .file_uri import FileUri -from .symbol_type import SymbolType - -__all__ = ["LspGetCodeSegmentInfoParams"] - - -class LspGetCodeSegmentInfoParams(TypedDict, total=False): - symbol_name: Required[Annotated[str, PropertyInfo(alias="symbolName")]] - - uri: Required[FileUri] - - symbol_type: Annotated[SymbolType, PropertyInfo(alias="symbolType")] diff --git a/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py b/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py deleted file mode 100644 index c15382de0..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py +++ /dev/null @@ -1,15 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -__all__ = ["LspGetSignatureHelpParams"] - - -class LspGetSignatureHelpParams(TypedDict, total=False): - character: Required[float] - - line: Required[float] - - uri: Required[str] diff --git a/src/runloop_api_client/types/devboxes/lsp_references_params.py b/src/runloop_api_client/types/devboxes/lsp_references_params.py deleted file mode 100644 index f84058b8b..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_references_params.py +++ /dev/null @@ -1,15 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -__all__ = ["LspReferencesParams"] - - -class LspReferencesParams(TypedDict, total=False): - character: Required[float] - - line: Required[float] - - uri: Required[str] diff --git a/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py b/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py deleted file mode 100644 index 88abae178..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py +++ /dev/null @@ -1,13 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .file_path import FilePath - -__all__ = ["LspSetWatchDirectoryParams"] - - -class LspSetWatchDirectoryParams(TypedDict, total=False): - path: Required[FilePath] diff --git a/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py b/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py deleted file mode 100644 index 575252b7f..000000000 --- a/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["LspSetWatchDirectoryResponse"] - -LspSetWatchDirectoryResponse: TypeAlias = str diff --git a/src/runloop_api_client/types/devboxes/position.py b/src/runloop_api_client/types/devboxes/position.py deleted file mode 100644 index 8ae66b6ad..000000000 --- a/src/runloop_api_client/types/devboxes/position.py +++ /dev/null @@ -1,27 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from .uinteger import Uinteger -from ..._models import BaseModel - -__all__ = ["Position"] - - -class Position(BaseModel): - character: Uinteger - """Character offset on a line in a document (zero-based). - - The meaning of this offset is determined by the negotiated - `PositionEncodingKind`. - - If the character value is greater than the line length it defaults back to the - line length. - """ - - line: Uinteger - """Line position in a document (zero-based). - - If a line number is greater than the number of lines in a document, it defaults - back to the number of lines in the document. If a line number is negative, it - defaults to 0. - """ diff --git a/src/runloop_api_client/types/devboxes/position_param.py b/src/runloop_api_client/types/devboxes/position_param.py deleted file mode 100644 index 0afee2ba3..000000000 --- a/src/runloop_api_client/types/devboxes/position_param.py +++ /dev/null @@ -1,29 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .uinteger import Uinteger - -__all__ = ["PositionParam"] - - -class PositionParam(TypedDict, total=False): - character: Required[Uinteger] - """Character offset on a line in a document (zero-based). - - The meaning of this offset is determined by the negotiated - `PositionEncodingKind`. - - If the character value is greater than the line length it defaults back to the - line length. - """ - - line: Required[Uinteger] - """Line position in a document (zero-based). - - If a line number is greater than the number of lines in a document, it defaults - back to the number of lines in the document. If a line number is negative, it - defaults to 0. - """ diff --git a/src/runloop_api_client/types/devboxes/range.py b/src/runloop_api_client/types/devboxes/range.py deleted file mode 100644 index c9eaf78a6..000000000 --- a/src/runloop_api_client/types/devboxes/range.py +++ /dev/null @@ -1,15 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from .position import Position -from ..._models import BaseModel - -__all__ = ["Range"] - - -class Range(BaseModel): - end: Position - """The range's end position.""" - - start: Position - """The range's start position.""" diff --git a/src/runloop_api_client/types/devboxes/range_param.py b/src/runloop_api_client/types/devboxes/range_param.py deleted file mode 100644 index 87a516655..000000000 --- a/src/runloop_api_client/types/devboxes/range_param.py +++ /dev/null @@ -1,17 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, TypedDict - -from .position_param import PositionParam - -__all__ = ["RangeParam"] - - -class RangeParam(TypedDict, total=False): - end: Required[PositionParam] - """The range's end position.""" - - start: Required[PositionParam] - """The range's start position.""" diff --git a/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py b/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py deleted file mode 100644 index 84efd3ea0..000000000 --- a/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py +++ /dev/null @@ -1,10 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import Dict, List -from typing_extensions import TypeAlias - -from .text_edit import TextEdit - -__all__ = ["RecordStringTextEditArray"] - -RecordStringTextEditArray: TypeAlias = Dict[str, List[TextEdit]] diff --git a/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py b/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py deleted file mode 100644 index 19e7cf731..000000000 --- a/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py +++ /dev/null @@ -1,12 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing import Dict, Iterable -from typing_extensions import TypeAlias - -from .text_edit_param import TextEditParam - -__all__ = ["RecordStringTextEditArrayParam"] - -RecordStringTextEditArrayParam: TypeAlias = Dict[str, Iterable[TextEditParam]] diff --git a/src/runloop_api_client/types/devboxes/signature_help_response.py b/src/runloop_api_client/types/devboxes/signature_help_response.py deleted file mode 100644 index 1cf0ac4cb..000000000 --- a/src/runloop_api_client/types/devboxes/signature_help_response.py +++ /dev/null @@ -1,18 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing import List, Optional - -from pydantic import Field as FieldInfo - -from ..._models import BaseModel -from .base_signature import BaseSignature - -__all__ = ["SignatureHelpResponse"] - - -class SignatureHelpResponse(BaseModel): - signatures: List[BaseSignature] - - active_parameter: Optional[float] = FieldInfo(alias="activeParameter", default=None) - - active_signature: Optional[float] = FieldInfo(alias="activeSignature", default=None) diff --git a/src/runloop_api_client/types/devboxes/symbol_kind.py b/src/runloop_api_client/types/devboxes/symbol_kind.py deleted file mode 100644 index d21c01515..000000000 --- a/src/runloop_api_client/types/devboxes/symbol_kind.py +++ /dev/null @@ -1,9 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["SymbolKind"] - -SymbolKind: TypeAlias = Literal[ - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 -] diff --git a/src/runloop_api_client/types/devboxes/symbol_tag.py b/src/runloop_api_client/types/devboxes/symbol_tag.py deleted file mode 100644 index 0779efce5..000000000 --- a/src/runloop_api_client/types/devboxes/symbol_tag.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["SymbolTag"] - -SymbolTag: TypeAlias = Literal[1] diff --git a/src/runloop_api_client/types/devboxes/symbol_type.py b/src/runloop_api_client/types/devboxes/symbol_type.py deleted file mode 100644 index 1623bacf2..000000000 --- a/src/runloop_api_client/types/devboxes/symbol_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import Literal, TypeAlias - -__all__ = ["SymbolType"] - -SymbolType: TypeAlias = Literal["function", "variable", "class", "interface", "type"] diff --git a/src/runloop_api_client/types/devboxes/text_edit.py b/src/runloop_api_client/types/devboxes/text_edit.py deleted file mode 100644 index e91fde3ff..000000000 --- a/src/runloop_api_client/types/devboxes/text_edit.py +++ /dev/null @@ -1,20 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from pydantic import Field as FieldInfo - -from .range import Range -from ..._models import BaseModel - -__all__ = ["TextEdit"] - - -class TextEdit(BaseModel): - new_text: str = FieldInfo(alias="newText") - """The string to be inserted. For delete operations use an empty string.""" - - range: Range - """The range of the text document to be manipulated. - - To insert text into a document create a range where start === end. - """ diff --git a/src/runloop_api_client/types/devboxes/text_edit_param.py b/src/runloop_api_client/types/devboxes/text_edit_param.py deleted file mode 100644 index 882a423c6..000000000 --- a/src/runloop_api_client/types/devboxes/text_edit_param.py +++ /dev/null @@ -1,21 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -from typing_extensions import Required, Annotated, TypedDict - -from ..._utils import PropertyInfo -from .range_param import RangeParam - -__all__ = ["TextEditParam"] - - -class TextEditParam(TypedDict, total=False): - new_text: Required[Annotated[str, PropertyInfo(alias="newText")]] - """The string to be inserted. For delete operations use an empty string.""" - - range: Required[RangeParam] - """The range of the text document to be manipulated. - - To insert text into a document create a range where start === end. - """ diff --git a/src/runloop_api_client/types/devboxes/u_ri.py b/src/runloop_api_client/types/devboxes/u_ri.py deleted file mode 100644 index 132a3bd29..000000000 --- a/src/runloop_api_client/types/devboxes/u_ri.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["URi"] - -URi: TypeAlias = str diff --git a/src/runloop_api_client/types/devboxes/uinteger.py b/src/runloop_api_client/types/devboxes/uinteger.py deleted file mode 100644 index b1f8376cb..000000000 --- a/src/runloop_api_client/types/devboxes/uinteger.py +++ /dev/null @@ -1,7 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from typing_extensions import TypeAlias - -__all__ = ["Uinteger"] - -Uinteger: TypeAlias = float diff --git a/src/runloop_api_client/types/devboxes/watched_file_response.py b/src/runloop_api_client/types/devboxes/watched_file_response.py deleted file mode 100644 index 01884f8e8..000000000 --- a/src/runloop_api_client/types/devboxes/watched_file_response.py +++ /dev/null @@ -1,16 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - - -from pydantic import Field as FieldInfo - -from ..._models import BaseModel - -__all__ = ["WatchedFileResponse"] - - -class WatchedFileResponse(BaseModel): - filename: str - - full_path: str = FieldInfo(alias="fullPath") - - path: str diff --git a/tests/api_resources/devboxes/test_lsp.py b/tests/api_resources/devboxes/test_lsp.py deleted file mode 100644 index e68ed575f..000000000 --- a/tests/api_resources/devboxes/test_lsp.py +++ /dev/null @@ -1,1999 +0,0 @@ -# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. - -from __future__ import annotations - -import os -from typing import Any, cast - -import pytest - -from tests.utils import assert_matches_type -from runloop_api_client import Runloop, AsyncRunloop -from runloop_api_client.types.devboxes import ( - LspFilesResponse, - DiagnosticsResponse, - FileContentsResponse, - HealthStatusResponse, - SignatureHelpResponse, - CodeSegmentInfoResponse, - CodeActionApplicationResult, - LspGetCodeActionsForDiagnosticResponse, -) - -base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010") - - -class TestLsp: - parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"]) - - @parametrize - def test_method_apply_code_action(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.apply_code_action( - id="id", - title="title", - ) - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - @parametrize - def test_method_apply_code_action_with_all_params(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.apply_code_action( - id="id", - title="title", - command={ - "command": "command", - "title": "title", - "arguments": [{}, {}, {}], - }, - edit={ - "changes": { - "foo": [ - { - "new_text": "newText", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - { - "new_text": "newText", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - { - "new_text": "newText", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - ] - } - }, - is_preferred=True, - ) - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - @parametrize - def test_raw_response_apply_code_action(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.apply_code_action( - id="id", - title="title", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - @parametrize - def test_streaming_response_apply_code_action(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.apply_code_action( - id="id", - title="title", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_apply_code_action(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.apply_code_action( - id="", - title="title", - ) - - @parametrize - def test_method_code_actions(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.code_actions( - id="id", - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_method_code_actions_with_all_params(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.code_actions( - id="id", - uri="uri", - context={ - "diagnostics": [ - { - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "code_description": {"href": "href"}, - "data": {}, - "related_information": [ - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - ], - "severity": 1, - "source": "source", - "tags": [1, 2], - }, - { - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "code_description": {"href": "href"}, - "data": {}, - "related_information": [ - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - ], - "severity": 1, - "source": "source", - "tags": [1, 2], - }, - { - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "code_description": {"href": "href"}, - "data": {}, - "related_information": [ - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - ], - "severity": 1, - "source": "source", - "tags": [1, 2], - }, - ], - "only": ["string", "string", "string"], - "trigger_kind": 1, - }, - range={ - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_raw_response_code_actions(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.code_actions( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_streaming_response_code_actions(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.code_actions( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_code_actions(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.code_actions( - id="", - uri="uri", - ) - - @parametrize - def test_method_diagnostics(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.diagnostics( - id="id", - uri="uri", - ) - assert_matches_type(DiagnosticsResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_diagnostics(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.diagnostics( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(DiagnosticsResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_diagnostics(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.diagnostics( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(DiagnosticsResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_diagnostics(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.diagnostics( - id="", - uri="uri", - ) - - @parametrize - def test_method_document_symbols(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.document_symbols( - id="id", - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_raw_response_document_symbols(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.document_symbols( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_streaming_response_document_symbols(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.document_symbols( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_document_symbols(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.document_symbols( - id="", - uri="uri", - ) - - @parametrize - def test_method_file(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.file( - id="id", - path="path", - ) - assert_matches_type(FileContentsResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_file(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.file( - id="id", - path="path", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(FileContentsResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_file(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.file( - id="id", - path="path", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(FileContentsResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_file(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.file( - id="", - path="path", - ) - - @parametrize - def test_method_file_definition(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.file_definition( - id="id", - character=0, - line=0, - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_raw_response_file_definition(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.file_definition( - id="id", - character=0, - line=0, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_streaming_response_file_definition(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.file_definition( - id="id", - character=0, - line=0, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_file_definition(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.file_definition( - id="", - character=0, - line=0, - uri="uri", - ) - - @parametrize - def test_method_files(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.files( - "id", - ) - assert_matches_type(LspFilesResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_files(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.files( - "id", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(LspFilesResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_files(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.files( - "id", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(LspFilesResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_files(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.files( - "", - ) - - @parametrize - def test_method_formatting(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.formatting( - id="id", - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_raw_response_formatting(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.formatting( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_streaming_response_formatting(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.formatting( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_formatting(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.formatting( - id="", - uri="uri", - ) - - @parametrize - def test_method_get_code_actions_for_diagnostic(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - @parametrize - def test_method_get_code_actions_for_diagnostic_with_all_params(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "severity": 1, - "source": "source", - }, - uri="uri", - ) - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_get_code_actions_for_diagnostic(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_get_code_actions_for_diagnostic(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_get_code_actions_for_diagnostic(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.get_code_actions_for_diagnostic( - id="", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) - - @parametrize - def test_method_get_code_segment_info(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - ) - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - @parametrize - def test_method_get_code_segment_info_with_all_params(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - symbol_type="function", - ) - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_get_code_segment_info(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_get_code_segment_info(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_get_code_segment_info(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.get_code_segment_info( - id="", - symbol_name="symbolName", - uri="uri", - ) - - @parametrize - def test_method_get_signature_help(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.get_signature_help( - id="id", - character=0, - line=0, - uri="uri", - ) - assert_matches_type(SignatureHelpResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_get_signature_help(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.get_signature_help( - id="id", - character=0, - line=0, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(SignatureHelpResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_get_signature_help(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.get_signature_help( - id="id", - character=0, - line=0, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(SignatureHelpResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_get_signature_help(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.get_signature_help( - id="", - character=0, - line=0, - uri="uri", - ) - - @parametrize - def test_method_health(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.health( - "id", - ) - assert_matches_type(HealthStatusResponse, lsp, path=["response"]) - - @parametrize - def test_raw_response_health(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.health( - "id", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(HealthStatusResponse, lsp, path=["response"]) - - @parametrize - def test_streaming_response_health(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.health( - "id", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(HealthStatusResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_health(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.health( - "", - ) - - @parametrize - def test_method_references(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.references( - id="id", - character=0, - line=0, - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_raw_response_references(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.references( - id="id", - character=0, - line=0, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - def test_streaming_response_references(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.references( - id="id", - character=0, - line=0, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_references(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.references( - id="", - character=0, - line=0, - uri="uri", - ) - - @parametrize - def test_method_set_watch_directory(self, client: Runloop) -> None: - lsp = client.devboxes.lsp.set_watch_directory( - id="id", - path="path", - ) - assert_matches_type(str, lsp, path=["response"]) - - @parametrize - def test_raw_response_set_watch_directory(self, client: Runloop) -> None: - response = client.devboxes.lsp.with_raw_response.set_watch_directory( - id="id", - path="path", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = response.parse() - assert_matches_type(str, lsp, path=["response"]) - - @parametrize - def test_streaming_response_set_watch_directory(self, client: Runloop) -> None: - with client.devboxes.lsp.with_streaming_response.set_watch_directory( - id="id", - path="path", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = response.parse() - assert_matches_type(str, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - def test_path_params_set_watch_directory(self, client: Runloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - client.devboxes.lsp.with_raw_response.set_watch_directory( - id="", - path="path", - ) - - -class TestAsyncLsp: - parametrize = pytest.mark.parametrize("async_client", [False, True], indirect=True, ids=["loose", "strict"]) - - @parametrize - async def test_method_apply_code_action(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.apply_code_action( - id="id", - title="title", - ) - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - @parametrize - async def test_method_apply_code_action_with_all_params(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.apply_code_action( - id="id", - title="title", - command={ - "command": "command", - "title": "title", - "arguments": [{}, {}, {}], - }, - edit={ - "changes": { - "foo": [ - { - "new_text": "newText", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - { - "new_text": "newText", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - { - "new_text": "newText", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - ] - } - }, - is_preferred=True, - ) - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - @parametrize - async def test_raw_response_apply_code_action(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.apply_code_action( - id="id", - title="title", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_apply_code_action(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.apply_code_action( - id="id", - title="title", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(CodeActionApplicationResult, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_apply_code_action(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.apply_code_action( - id="", - title="title", - ) - - @parametrize - async def test_method_code_actions(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.code_actions( - id="id", - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_method_code_actions_with_all_params(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.code_actions( - id="id", - uri="uri", - context={ - "diagnostics": [ - { - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "code_description": {"href": "href"}, - "data": {}, - "related_information": [ - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - ], - "severity": 1, - "source": "source", - "tags": [1, 2], - }, - { - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "code_description": {"href": "href"}, - "data": {}, - "related_information": [ - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - ], - "severity": 1, - "source": "source", - "tags": [1, 2], - }, - { - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "code_description": {"href": "href"}, - "data": {}, - "related_information": [ - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - { - "location": { - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "uri": "uri", - }, - "message": "message", - }, - ], - "severity": 1, - "source": "source", - "tags": [1, 2], - }, - ], - "only": ["string", "string", "string"], - "trigger_kind": 1, - }, - range={ - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_raw_response_code_actions(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.code_actions( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_code_actions(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.code_actions( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_code_actions(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.code_actions( - id="", - uri="uri", - ) - - @parametrize - async def test_method_diagnostics(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.diagnostics( - id="id", - uri="uri", - ) - assert_matches_type(DiagnosticsResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_diagnostics(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.diagnostics( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(DiagnosticsResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_diagnostics(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.diagnostics( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(DiagnosticsResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_diagnostics(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.diagnostics( - id="", - uri="uri", - ) - - @parametrize - async def test_method_document_symbols(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.document_symbols( - id="id", - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_raw_response_document_symbols(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.document_symbols( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_document_symbols(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.document_symbols( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_document_symbols(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.document_symbols( - id="", - uri="uri", - ) - - @parametrize - async def test_method_file(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.file( - id="id", - path="path", - ) - assert_matches_type(FileContentsResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_file(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.file( - id="id", - path="path", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(FileContentsResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_file(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.file( - id="id", - path="path", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(FileContentsResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_file(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.file( - id="", - path="path", - ) - - @parametrize - async def test_method_file_definition(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.file_definition( - id="id", - character=0, - line=0, - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_raw_response_file_definition(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.file_definition( - id="id", - character=0, - line=0, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_file_definition(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.file_definition( - id="id", - character=0, - line=0, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_file_definition(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.file_definition( - id="", - character=0, - line=0, - uri="uri", - ) - - @parametrize - async def test_method_files(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.files( - "id", - ) - assert_matches_type(LspFilesResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_files(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.files( - "id", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(LspFilesResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_files(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.files( - "id", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(LspFilesResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_files(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.files( - "", - ) - - @parametrize - async def test_method_formatting(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.formatting( - id="id", - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_raw_response_formatting(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.formatting( - id="id", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_formatting(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.formatting( - id="id", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_formatting(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.formatting( - id="", - uri="uri", - ) - - @parametrize - async def test_method_get_code_actions_for_diagnostic(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - @parametrize - async def test_method_get_code_actions_for_diagnostic_with_all_params(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - "code": 0, - "severity": 1, - "source": "source", - }, - uri="uri", - ) - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_get_code_actions_for_diagnostic(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_get_code_actions_for_diagnostic(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.get_code_actions_for_diagnostic( - id="id", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(LspGetCodeActionsForDiagnosticResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_get_code_actions_for_diagnostic(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.get_code_actions_for_diagnostic( - id="", - diagnostic={ - "message": "message", - "range": { - "end": { - "character": 0, - "line": 0, - }, - "start": { - "character": 0, - "line": 0, - }, - }, - }, - uri="uri", - ) - - @parametrize - async def test_method_get_code_segment_info(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - ) - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - @parametrize - async def test_method_get_code_segment_info_with_all_params(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - symbol_type="function", - ) - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_get_code_segment_info(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_get_code_segment_info(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.get_code_segment_info( - id="id", - symbol_name="symbolName", - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(CodeSegmentInfoResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_get_code_segment_info(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.get_code_segment_info( - id="", - symbol_name="symbolName", - uri="uri", - ) - - @parametrize - async def test_method_get_signature_help(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.get_signature_help( - id="id", - character=0, - line=0, - uri="uri", - ) - assert_matches_type(SignatureHelpResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_get_signature_help(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.get_signature_help( - id="id", - character=0, - line=0, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(SignatureHelpResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_get_signature_help(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.get_signature_help( - id="id", - character=0, - line=0, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(SignatureHelpResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_get_signature_help(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.get_signature_help( - id="", - character=0, - line=0, - uri="uri", - ) - - @parametrize - async def test_method_health(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.health( - "id", - ) - assert_matches_type(HealthStatusResponse, lsp, path=["response"]) - - @parametrize - async def test_raw_response_health(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.health( - "id", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(HealthStatusResponse, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_health(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.health( - "id", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(HealthStatusResponse, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_health(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.health( - "", - ) - - @parametrize - async def test_method_references(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.references( - id="id", - character=0, - line=0, - uri="uri", - ) - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_raw_response_references(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.references( - id="id", - character=0, - line=0, - uri="uri", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_references(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.references( - id="id", - character=0, - line=0, - uri="uri", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(object, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_references(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.references( - id="", - character=0, - line=0, - uri="uri", - ) - - @parametrize - async def test_method_set_watch_directory(self, async_client: AsyncRunloop) -> None: - lsp = await async_client.devboxes.lsp.set_watch_directory( - id="id", - path="path", - ) - assert_matches_type(str, lsp, path=["response"]) - - @parametrize - async def test_raw_response_set_watch_directory(self, async_client: AsyncRunloop) -> None: - response = await async_client.devboxes.lsp.with_raw_response.set_watch_directory( - id="id", - path="path", - ) - - assert response.is_closed is True - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - lsp = await response.parse() - assert_matches_type(str, lsp, path=["response"]) - - @parametrize - async def test_streaming_response_set_watch_directory(self, async_client: AsyncRunloop) -> None: - async with async_client.devboxes.lsp.with_streaming_response.set_watch_directory( - id="id", - path="path", - ) as response: - assert not response.is_closed - assert response.http_request.headers.get("X-Stainless-Lang") == "python" - - lsp = await response.parse() - assert_matches_type(str, lsp, path=["response"]) - - assert cast(Any, response.is_closed) is True - - @parametrize - async def test_path_params_set_watch_directory(self, async_client: AsyncRunloop) -> None: - with pytest.raises(ValueError, match=r"Expected a non-empty value for `id` but received ''"): - await async_client.devboxes.lsp.with_raw_response.set_watch_directory( - id="", - path="path", - )