From de7ba362c4162e719504b0493573d706322a09ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D1=80=D0=B5=D0=B4=D1=80=D0=B0=D0=B3=20=D0=9D=D0=B8?= =?UTF-8?q?=D0=BA=D0=BE=D0=BB=D0=B8=D1=9B?= Date: Thu, 27 Jun 2024 22:20:45 +0200 Subject: [PATCH] update --- lsp_types.py | 306 ++++++++++++++------- lsp_types_sublime_text_33.py | 310 ++++++++++++++------- lsprotocol/lsp.json | 508 ++++++++++++++++++++++------------- 3 files changed, 730 insertions(+), 394 deletions(-) diff --git a/lsp_types.py b/lsp_types.py index eb8f6ca..2c585db 100644 --- a/lsp_types.py +++ b/lsp_types.py @@ -394,6 +394,11 @@ class CodeActionKind(StrEnum): They should not suppress errors or perform unsafe fixes such as generating new types or classes. @since 3.15.0 """ + Notebook = 'notebook' + """ Base kind for all code actions applying to the entire notebook's scope. CodeActionKinds using + this should always begin with `notebook.` + + @since 3.18.0 """ class TraceValue(Enum): @@ -447,6 +452,7 @@ class LanguageKind(StrEnum): Go = 'go' Groovy = 'groovy' Handlebars = 'handlebars' + Haskell = 'haskell' HTML = 'html' Ini = 'ini' Java = 'java' @@ -2457,6 +2463,11 @@ class Command(TypedDict): function when invoked. """ title: str """ Title of the command, like `save`. """ + tooltip: NotRequired[str] + """ An optional tooltip. + + @since 3.18.0 + @proposed """ command: str """ The identifier of the actual command handler. """ arguments: NotRequired[List['LSPAny']] @@ -2524,6 +2535,22 @@ class CodeActionRegistrationOptions(TypedDict): The list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server may list out every specific kind they provide. """ + documentation: NotRequired[List['CodeActionKindDocumentation']] + """ Static documentation for a class of code actions. + + Documentation from the provider should be shown in the code actions menu if either: + + - Code actions of `kind` are requested by the editor. In this case, the editor will show the documentation that + most closely matches the requested code action kind. For example, if a provider has documentation for + both `Refactor` and `RefactorExtract`, when the user requests code actions for `RefactorExtract`, + the editor will use the documentation for `RefactorExtract` instead of the documentation for `Refactor`. + + - Any code actions of `kind` are returned by the provider. + + At most one documentation entry should be shown per provider. + + @since 3.18.0 + @proposed """ resolveProvider: NotRequired[bool] """ The server provides support to resolve additional information for a code action. @@ -2799,6 +2826,11 @@ class ApplyWorkspaceEditParams(TypedDict): stack to undo the workspace edit. """ edit: 'WorkspaceEdit' """ The edits to apply. """ + metadata: NotRequired['WorkspaceEditMetadata'] + """ Additional data about the edit. + + @since 3.18.0 + @proposed """ class ApplyWorkspaceEditResult(TypedDict): @@ -3106,10 +3138,13 @@ class TextDocumentEdit(TypedDict): kind of ordering. However the edits must be non overlapping. """ textDocument: 'OptionalVersionedTextDocumentIdentifier' """ The text document to change. """ - edits: List[Union['TextEdit', 'AnnotatedTextEdit']] + edits: List[Union['TextEdit', 'AnnotatedTextEdit', 'SnippetTextEdit']] """ The edits to be applied. @since 3.16.0 - support for AnnotatedTextEdit. This is guarded using a + client capability. + + @since 3.18.0 - support for SnippetTextEdit. This is guarded using a client capability. """ @@ -3704,8 +3739,7 @@ class ServerInfo(TypedDict): """ Information about the server @since 3.15.0 - @since 3.18.0 ServerInfo type name added. - @proposed """ + @since 3.18.0 ServerInfo type name added. """ name: str """ The name of the server as defined by the server. """ version: NotRequired[str] @@ -4019,8 +4053,7 @@ class CodeActionContext(TypedDict): class CodeActionDisabled(TypedDict): """ Captures why the code action is currently disabled. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ reason: str """ Human readable description of why the code action is currently disabled. @@ -4034,6 +4067,22 @@ class CodeActionOptions(TypedDict): The list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server may list out every specific kind they provide. """ + documentation: NotRequired[List['CodeActionKindDocumentation']] + """ Static documentation for a class of code actions. + + Documentation from the provider should be shown in the code actions menu if either: + + - Code actions of `kind` are requested by the editor. In this case, the editor will show the documentation that + most closely matches the requested code action kind. For example, if a provider has documentation for + both `Refactor` and `RefactorExtract`, when the user requests code actions for `RefactorExtract`, + the editor will use the documentation for `RefactorExtract` instead of the documentation for `Refactor`. + + - Any code actions of `kind` are returned by the provider. + + At most one documentation entry should be shown per provider. + + @since 3.18.0 + @proposed """ resolveProvider: NotRequired[bool] """ The server provides support to resolve additional information for a code action. @@ -4045,8 +4094,7 @@ class CodeActionOptions(TypedDict): class LocationUriOnly(TypedDict): """ Location with only uri and does not include range. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ uri: 'DocumentUri' @@ -4127,15 +4175,13 @@ class RenameOptions(TypedDict): class PrepareRenamePlaceholder(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ range: 'Range' placeholder: str class PrepareRenameDefaultBehavior(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ defaultBehavior: bool @@ -4146,6 +4192,15 @@ class ExecuteCommandOptions(TypedDict): workDoneProgress: NotRequired[bool] +class WorkspaceEditMetadata(TypedDict): + """ Additional data about a workspace edit. + + @since 3.18.0 + @proposed """ + isRefactoring: NotRequired[bool] + """ Signal to the editor that this edit is a refactoring. """ + + class SemanticTokensLegend(TypedDict): """ @since 3.16.0 """ tokenTypes: List[str] @@ -4157,8 +4212,7 @@ class SemanticTokensLegend(TypedDict): class SemanticTokensFullDelta(TypedDict): """ Semantic tokens options to support deltas for full documents - @since 3.18.0 - @proposed """ + @since 3.18.0 """ delta: NotRequired[bool] """ The server supports deltas for full documents. """ @@ -4189,6 +4243,19 @@ class AnnotatedTextEdit(TypedDict): empty string. """ +class SnippetTextEdit(TypedDict): + """ An interactive text edit. + + @since 3.18.0 + @proposed """ + range: 'Range' + """ The range of the text document to be manipulated. """ + snippet: 'StringValue' + """ The snippet to be inserted. """ + annotationId: NotRequired['ChangeAnnotationIdentifier'] + """ The actual identifier of the snippet edit. """ + + class ResourceOperation(TypedDict): """ A generic resource operation. """ kind: str @@ -4305,8 +4372,7 @@ class NotebookCell(TypedDict): class NotebookDocumentFilterWithNotebook(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ notebook: Union[str, 'NotebookDocumentFilter'] """ The notebook to be synced If a string value is provided it matches against the @@ -4316,8 +4382,7 @@ class NotebookDocumentFilterWithNotebook(TypedDict): class NotebookDocumentFilterWithCells(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ notebook: NotRequired[Union[str, 'NotebookDocumentFilter']] """ The notebook to be synced If a string value is provided it matches against the @@ -4329,8 +4394,7 @@ class NotebookDocumentFilterWithCells(TypedDict): class NotebookDocumentCellChanges(TypedDict): """ Cell changes to a notebook document. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ structure: NotRequired['NotebookDocumentCellChangeStructure'] """ Changes to the cell structure to add or remove cells. """ @@ -4356,8 +4420,7 @@ class ClientInfo(TypedDict): """ Information about the client @since 3.15.0 - @since 3.18.0 ClientInfo type name added. - @proposed """ + @since 3.18.0 ClientInfo type name added. """ name: str """ The name of the client as defined by the client. """ version: NotRequired[str] @@ -4405,8 +4468,7 @@ class TextDocumentSyncOptions(TypedDict): class WorkspaceOptions(TypedDict): """ Defines workspace specific capabilities of the server. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ workspaceFolders: NotRequired['WorkspaceFoldersServerCapabilities'] """ The server supports workspace folder. @@ -4418,8 +4480,7 @@ class WorkspaceOptions(TypedDict): class TextDocumentContentChangePartial(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ range: 'Range' """ The range of the document that changed. """ rangeLength: NotRequired[Uint] @@ -4431,8 +4492,7 @@ class TextDocumentContentChangePartial(TypedDict): class TextDocumentContentChangeWholeDocument(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ text: str """ The new text of the whole document. """ @@ -4458,15 +4518,13 @@ class DiagnosticRelatedInformation(TypedDict): class EditRangeWithInsertReplace(TypedDict): """ Edit range variant that includes ranges for insert and replace operations. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ insert: 'Range' replace: 'Range' class ServerCompletionItemOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ labelDetailsSupport: NotRequired[bool] """ The server has support for completion item label details (see also `CompletionItemLabelDetails`) when @@ -4477,7 +4535,6 @@ class ServerCompletionItemOptions(TypedDict): class MarkedStringWithLanguage(TypedDict): """ @since 3.18.0 - @proposed @deprecated use MarkupContent instead. """ language: str value: str @@ -4493,6 +4550,10 @@ class ParameterInformation(TypedDict): signature label. (see SignatureInformation.label). The offsets are based on a UTF-16 string representation as `Position` and `Range` does. + To avoid ambiguities a server should use the [start, end] offset value instead of using + a substring. Whether a client support this is controlled via `labelOffsetSupport` client + capability. + *Note*: a label of type string should be a substring of its containing signature label. Its intended use case is to highlight the parameter label part in the `SignatureInformation.label`. """ documentation: NotRequired[Union[str, 'MarkupContent']] @@ -4500,6 +4561,23 @@ class ParameterInformation(TypedDict): in the UI but can be omitted. """ +class CodeActionKindDocumentation(TypedDict): + """ Documentation for a class of code actions. + + @since 3.18.0 + @proposed """ + kind: 'CodeActionKind' + """ The kind of the code action being documented. + + If the kind is generic, such as `CodeActionKind.Refactor`, the documentation will be shown whenever any + refactorings are returned. If the kind if more specific, such as `CodeActionKind.RefactorExtract`, the + documentation will only be shown when extract refactoring code actions are returned. """ + command: 'Command' + """ Command that is ued to display the documentation to the user. + + The title of this documentation code action is taken from {@linkcode Command.title} """ + + class NotebookCellTextDocumentFilter(TypedDict): """ A notebook cell text document filter denotes a cell text document by different properties. @@ -4536,16 +4614,14 @@ class ExecutionSummary(TypedDict): class NotebookCellLanguage(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ language: str class NotebookDocumentCellChangeStructure(TypedDict): """ Structural changes to cells in a notebook document. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ array: 'NotebookCellArrayChange' """ The change to the cell array. """ didOpen: NotRequired[List['TextDocumentItem']] @@ -4557,8 +4633,7 @@ class NotebookDocumentCellChangeStructure(TypedDict): class NotebookDocumentCellContentChanges(TypedDict): """ Content changes to a cell in a notebook document. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ document: 'VersionedTextDocumentIdentifier' changes: List['TextDocumentContentChangeEvent'] @@ -4839,8 +4914,7 @@ class RelativePattern(TypedDict): class TextDocumentFilterLanguage(TypedDict): """ A document filter where `language` is required field. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ language: str """ A language id, like `typescript`. """ scheme: NotRequired[str] @@ -4852,8 +4926,7 @@ class TextDocumentFilterLanguage(TypedDict): class TextDocumentFilterScheme(TypedDict): """ A document filter where `scheme` is required field. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ language: NotRequired[str] """ A language id, like `typescript`. """ scheme: str @@ -4865,8 +4938,7 @@ class TextDocumentFilterScheme(TypedDict): class TextDocumentFilterPattern(TypedDict): """ A document filter where `pattern` is required field. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ language: NotRequired[str] """ A language id, like `typescript`. """ scheme: NotRequired[str] @@ -4878,8 +4950,7 @@ class TextDocumentFilterPattern(TypedDict): class NotebookDocumentFilterNotebookType(TypedDict): """ A notebook document filter where `notebookType` is required field. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ notebookType: str """ The type of the enclosing notebook. """ scheme: NotRequired[str] @@ -4891,8 +4962,7 @@ class NotebookDocumentFilterNotebookType(TypedDict): class NotebookDocumentFilterScheme(TypedDict): """ A notebook document filter where `scheme` is required field. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ notebookType: NotRequired[str] """ The type of the enclosing notebook. """ scheme: str @@ -4904,8 +4974,7 @@ class NotebookDocumentFilterScheme(TypedDict): class NotebookDocumentFilterPattern(TypedDict): """ A notebook document filter where `pattern` is required field. - @since 3.18.0 - @proposed """ + @since 3.18.0 """ notebookType: NotRequired[str] """ The type of the enclosing notebook. """ scheme: NotRequired[str] @@ -4953,6 +5022,16 @@ class WorkspaceEditClientCapabilities(TypedDict): create file, rename file and delete file changes. @since 3.16.0 """ + metadataSupport: NotRequired[bool] + """ Whether the client supports `WorkspaceEditMetadata` in `WorkspaceEdit`s. + + @since 3.18.0 + @proposed """ + snippetEditSupport: NotRequired[bool] + """ Whether the client supports snippets as text edits. + + @since 3.18.0 + @proposed """ class DidChangeConfigurationClientCapabilities(TypedDict): @@ -5280,6 +5359,12 @@ class CodeActionClientCapabilities(TypedDict): for confirmation. @since 3.16.0 """ + documentationSupport: NotRequired[bool] + """ Whether the client supports documentation for a class of + code actions. + + @since 3.18.0 + @proposed """ class CodeLensClientCapabilities(TypedDict): @@ -5386,17 +5471,17 @@ class SelectionRangeClientCapabilities(TypedDict): class PublishDiagnosticsClientCapabilities(TypedDict): """ The publish diagnostic client capabilities. """ + versionSupport: NotRequired[bool] + """ Whether the client interprets the version property of the + `textDocument/publishDiagnostics` notification's parameter. + + @since 3.15.0 """ relatedInformation: NotRequired[bool] """ Whether the clients accepts diagnostics with related information. """ tagSupport: NotRequired['ClientDiagnosticsTagOptions'] """ Client supports the tag property to provide meta data about a diagnostic. Clients supporting tags have to handle unknown tags gracefully. - @since 3.15.0 """ - versionSupport: NotRequired[bool] - """ Whether the client interprets the version property of the - `textDocument/publishDiagnostics` notification's parameter. - @since 3.15.0 """ codeDescriptionSupport: NotRequired[bool] """ Client supports a codeDescription property @@ -5520,6 +5605,23 @@ class DiagnosticClientCapabilities(TypedDict): return value for the corresponding server capability as well. """ relatedDocumentSupport: NotRequired[bool] """ Whether the clients supports related documents for document diagnostic pulls. """ + relatedInformation: NotRequired[bool] + """ Whether the clients accepts diagnostics with related information. """ + tagSupport: NotRequired['ClientDiagnosticsTagOptions'] + """ Client supports the tag property to provide meta data about a diagnostic. + Clients supporting tags have to handle unknown tags gracefully. + + @since 3.15.0 """ + codeDescriptionSupport: NotRequired[bool] + """ Client supports a codeDescription property + + @since 3.16.0 """ + dataSupport: NotRequired[bool] + """ Whether code action supports the `data` property which is + preserved between a `textDocument/publishDiagnostics` and + `textDocument/codeAction` request. + + @since 3.16.0 """ class InlineCompletionClientCapabilities(TypedDict): @@ -5560,8 +5662,7 @@ class ShowDocumentClientCapabilities(TypedDict): class StaleRequestSupportOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ cancel: bool """ The client will actively cancel the request. """ retryOnContentModified: List[str] @@ -5596,8 +5697,7 @@ class MarkdownClientCapabilities(TypedDict): class ChangeAnnotationsSupportOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ groupsOnLabel: NotRequired[bool] """ Whether the client groups edits with equal labels into tree nodes, for instance all edits labelled with "Changes in Strings" would @@ -5605,8 +5705,7 @@ class ChangeAnnotationsSupportOptions(TypedDict): class ClientSymbolKindOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: NotRequired[List['SymbolKind']] """ The symbol kind values the client supports. When this property exists the client also guarantees that it will @@ -5619,23 +5718,20 @@ class ClientSymbolKindOptions(TypedDict): class ClientSymbolTagOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: List['SymbolTag'] """ The tags supported by the client. """ class ClientSymbolResolveOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ properties: List[str] """ The properties that a client can resolve lazily. Usually `location.range` """ class ClientCompletionItemOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ snippetSupport: NotRequired[bool] """ Client supports snippets as insert text. @@ -5684,8 +5780,7 @@ class ClientCompletionItemOptions(TypedDict): class ClientCompletionItemOptionsKind(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: NotRequired[List['CompletionItemKind']] """ The completion item kind values the client supports. When this property exists the client also guarantees that it will @@ -5714,8 +5809,7 @@ class CompletionListCapabilities(TypedDict): class ClientSignatureInformationOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ documentationFormat: NotRequired[List['MarkupKind']] """ Client supports the following content formats for the documentation property. The order describes the preferred format of the client. """ @@ -5736,23 +5830,20 @@ class ClientSignatureInformationOptions(TypedDict): class ClientCodeActionLiteralOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ codeActionKind: 'ClientCodeActionKindOptions' """ The code action kind is support with the following value set. """ class ClientCodeActionResolveOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ properties: List[str] """ The properties that a client can resolve lazily. """ class ClientFoldingRangeKindOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: NotRequired[List['FoldingRangeKind']] """ The folding range kind values the client supports. When this property exists the client also guarantees that it will @@ -5761,8 +5852,7 @@ class ClientFoldingRangeKindOptions(TypedDict): class ClientFoldingRangeOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ collapsedText: NotRequired[bool] """ If set, the client signals that it supports setting collapsedText on folding ranges to display custom labels instead of the default text. @@ -5770,16 +5860,29 @@ class ClientFoldingRangeOptions(TypedDict): @since 3.17.0 """ -class ClientDiagnosticsTagOptions(TypedDict): - """ @since 3.18.0 - @proposed """ - valueSet: List['DiagnosticTag'] - """ The tags supported by the client. """ +class DiagnosticsCapabilities(TypedDict): + """ General diagnostics capabilities for pull and push model. """ + relatedInformation: NotRequired[bool] + """ Whether the clients accepts diagnostics with related information. """ + tagSupport: NotRequired['ClientDiagnosticsTagOptions'] + """ Client supports the tag property to provide meta data about a diagnostic. + Clients supporting tags have to handle unknown tags gracefully. + + @since 3.15.0 """ + codeDescriptionSupport: NotRequired[bool] + """ Client supports a codeDescription property + + @since 3.16.0 """ + dataSupport: NotRequired[bool] + """ Whether code action supports the `data` property which is + preserved between a `textDocument/publishDiagnostics` and + `textDocument/codeAction` request. + + @since 3.16.0 """ class ClientSemanticTokensRequestOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ range: NotRequired[Union[bool, dict]] """ The client will send the `textDocument/semanticTokens/range` request if the server provides a corresponding handler. """ @@ -5789,15 +5892,13 @@ class ClientSemanticTokensRequestOptions(TypedDict): class ClientInlayHintResolveOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ properties: List[str] """ The properties that a client can resolve lazily. """ class ClientShowMessageActionItemOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ additionalPropertiesSupport: NotRequired[bool] """ Whether the client supports additional attributes which are preserved and send back to the server in the @@ -5805,28 +5906,24 @@ class ClientShowMessageActionItemOptions(TypedDict): class CompletionItemTagOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: List['CompletionItemTag'] """ The tags supported by the client. """ class ClientCompletionItemResolveOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ properties: List[str] """ The properties that a client can resolve lazily. """ class ClientCompletionItemInsertTextModeOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: List['InsertTextMode'] class ClientSignatureParameterInformationOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ labelOffsetSupport: NotRequired[bool] """ The client supports processing label offsets instead of a simple label string. @@ -5835,8 +5932,7 @@ class ClientSignatureParameterInformationOptions(TypedDict): class ClientCodeActionKindOptions(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ valueSet: List['CodeActionKind'] """ The code action kind values the client supports. When this property exists the client also guarantees that it will @@ -5844,9 +5940,15 @@ class ClientCodeActionKindOptions(TypedDict): to a default value when unknown. """ +class ClientDiagnosticsTagOptions(TypedDict): + """ @since 3.18.0 """ + valueSet: List['DiagnosticTag'] + """ The tags supported by the client. """ + + class ClientSemanticTokensRequestFullDelta(TypedDict): - """ @since 3.18.0 - @proposed """ + """ @since 3.18.0 """ delta: NotRequired[bool] """ The client will send the `textDocument/semanticTokens/full/delta` request if the server provides a corresponding handler. """ + diff --git a/lsp_types_sublime_text_33.py b/lsp_types_sublime_text_33.py index 73366c9..7f40ee7 100644 --- a/lsp_types_sublime_text_33.py +++ b/lsp_types_sublime_text_33.py @@ -394,6 +394,11 @@ class CodeActionKind(StrEnum): They should not suppress errors or perform unsafe fixes such as generating new types or classes. @since 3.15.0 """ + Notebook = 'notebook' + """ Base kind for all code actions applying to the entire notebook's scope. CodeActionKinds using + this should always begin with `notebook.` + + @since 3.18.0 """ class TraceValue(Enum): @@ -447,6 +452,7 @@ class LanguageKind(StrEnum): Go = 'go' Groovy = 'groovy' Handlebars = 'handlebars' + Haskell = 'haskell' HTML = 'html' Ini = 'ini' Java = 'java' @@ -2576,6 +2582,11 @@ class TokenFormat(StrEnum): Command = TypedDict('Command', { # Title of the command, like `save`. 'title': str, + # An optional tooltip. + # + # @since 3.18.0 + # @proposed + 'tooltip': NotRequired[str], # The identifier of the actual command handler. 'command': str, # Arguments that the command handler should be @@ -2648,6 +2659,22 @@ class TokenFormat(StrEnum): # The list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server # may list out every specific kind they provide. 'codeActionKinds': NotRequired[List['CodeActionKind']], + # Static documentation for a class of code actions. + # + # Documentation from the provider should be shown in the code actions menu if either: + # + # - Code actions of `kind` are requested by the editor. In this case, the editor will show the documentation that + # most closely matches the requested code action kind. For example, if a provider has documentation for + # both `Refactor` and `RefactorExtract`, when the user requests code actions for `RefactorExtract`, + # the editor will use the documentation for `RefactorExtract` instead of the documentation for `Refactor`. + # + # - Any code actions of `kind` are returned by the provider. + # + # At most one documentation entry should be shown per provider. + # + # @since 3.18.0 + # @proposed + 'documentation': NotRequired[List['CodeActionKindDocumentation']], # The server provides support to resolve additional # information for a code action. # @@ -2945,6 +2972,11 @@ class TokenFormat(StrEnum): 'label': NotRequired[str], # The edits to apply. 'edit': 'WorkspaceEdit', + # Additional data about the edit. + # + # @since 3.18.0 + # @proposed + 'metadata': NotRequired['WorkspaceEditMetadata'], }) """ The parameters passed via an apply workspace edit request. """ @@ -3284,7 +3316,10 @@ class TokenFormat(StrEnum): # # @since 3.16.0 - support for AnnotatedTextEdit. This is guarded using a # client capability. - 'edits': List[Union['TextEdit', 'AnnotatedTextEdit']], + # + # @since 3.18.0 - support for SnippetTextEdit. This is guarded using a + # client capability. + 'edits': List[Union['TextEdit', 'AnnotatedTextEdit', 'SnippetTextEdit']], }) """ Describes textual changes on a text document. A TextDocumentEdit describes all changes on a document version Si and after they are applied move the document to version Si+1. @@ -3924,8 +3959,7 @@ class TokenFormat(StrEnum): """ Information about the server @since 3.15.0 -@since 3.18.0 ServerInfo type name added. -@proposed """ +@since 3.18.0 ServerInfo type name added. """ VersionedTextDocumentIdentifier = TypedDict('VersionedTextDocumentIdentifier', { @@ -4261,8 +4295,7 @@ class TokenFormat(StrEnum): }) """ Captures why the code action is currently disabled. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ CodeActionOptions = TypedDict('CodeActionOptions', { @@ -4271,6 +4304,22 @@ class TokenFormat(StrEnum): # The list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server # may list out every specific kind they provide. 'codeActionKinds': NotRequired[List['CodeActionKind']], + # Static documentation for a class of code actions. + # + # Documentation from the provider should be shown in the code actions menu if either: + # + # - Code actions of `kind` are requested by the editor. In this case, the editor will show the documentation that + # most closely matches the requested code action kind. For example, if a provider has documentation for + # both `Refactor` and `RefactorExtract`, when the user requests code actions for `RefactorExtract`, + # the editor will use the documentation for `RefactorExtract` instead of the documentation for `Refactor`. + # + # - Any code actions of `kind` are returned by the provider. + # + # At most one documentation entry should be shown per provider. + # + # @since 3.18.0 + # @proposed + 'documentation': NotRequired[List['CodeActionKindDocumentation']], # The server provides support to resolve additional # information for a code action. # @@ -4286,8 +4335,7 @@ class TokenFormat(StrEnum): }) """ Location with only uri and does not include range. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ WorkspaceSymbolOptions = TypedDict('WorkspaceSymbolOptions', { @@ -4378,15 +4426,13 @@ class TokenFormat(StrEnum): 'range': 'Range', 'placeholder': str, }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ PrepareRenameDefaultBehavior = TypedDict('PrepareRenameDefaultBehavior', { 'defaultBehavior': bool, }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ExecuteCommandOptions = TypedDict('ExecuteCommandOptions', { @@ -4397,6 +4443,16 @@ class TokenFormat(StrEnum): """ The server capabilities of a {@link ExecuteCommandRequest}. """ +WorkspaceEditMetadata = TypedDict('WorkspaceEditMetadata', { + # Signal to the editor that this edit is a refactoring. + 'isRefactoring': NotRequired[bool], +}) +""" Additional data about a workspace edit. + +@since 3.18.0 +@proposed """ + + SemanticTokensLegend = TypedDict('SemanticTokensLegend', { # The token types a server uses. 'tokenTypes': List[str], @@ -4412,8 +4468,7 @@ class TokenFormat(StrEnum): }) """ Semantic tokens options to support deltas for full documents -@since 3.18.0 -@proposed """ +@since 3.18.0 """ OptionalVersionedTextDocumentIdentifier = TypedDict('OptionalVersionedTextDocumentIdentifier', { @@ -4444,6 +4499,20 @@ class TokenFormat(StrEnum): @since 3.16.0. """ +SnippetTextEdit = TypedDict('SnippetTextEdit', { + # The range of the text document to be manipulated. + 'range': 'Range', + # The snippet to be inserted. + 'snippet': 'StringValue', + # The actual identifier of the snippet edit. + 'annotationId': NotRequired['ChangeAnnotationIdentifier'], +}) +""" An interactive text edit. + +@since 3.18.0 +@proposed """ + + ResourceOperation = TypedDict('ResourceOperation', { # The resource operation kind. 'kind': str, @@ -4575,8 +4644,7 @@ class TokenFormat(StrEnum): # The cells of the matching notebook to be synced. 'cells': NotRequired[List['NotebookCellLanguage']], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ NotebookDocumentFilterWithCells = TypedDict('NotebookDocumentFilterWithCells', { @@ -4587,8 +4655,7 @@ class TokenFormat(StrEnum): # The cells of the matching notebook to be synced. 'cells': List['NotebookCellLanguage'], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ NotebookDocumentCellChanges = TypedDict('NotebookDocumentCellChanges', { @@ -4603,8 +4670,7 @@ class TokenFormat(StrEnum): }) """ Cell changes to a notebook document. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ SelectedCompletionInfo = TypedDict('SelectedCompletionInfo', { @@ -4628,8 +4694,7 @@ class TokenFormat(StrEnum): """ Information about the client @since 3.15.0 -@since 3.18.0 ClientInfo type name added. -@proposed """ +@since 3.18.0 ClientInfo type name added. """ ClientCapabilities = TypedDict('ClientCapabilities', { @@ -4684,8 +4749,7 @@ class TokenFormat(StrEnum): }) """ Defines workspace specific capabilities of the server. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ TextDocumentContentChangePartial = TypedDict('TextDocumentContentChangePartial', { @@ -4698,16 +4762,14 @@ class TokenFormat(StrEnum): # The new text for the provided range. 'text': str, }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ TextDocumentContentChangeWholeDocument = TypedDict('TextDocumentContentChangeWholeDocument', { # The new text of the whole document. 'text': str, }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ CodeDescription = TypedDict('CodeDescription', { @@ -4736,8 +4798,7 @@ class TokenFormat(StrEnum): }) """ Edit range variant that includes ranges for insert and replace operations. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ ServerCompletionItemOptions = TypedDict('ServerCompletionItemOptions', { @@ -4748,8 +4809,7 @@ class TokenFormat(StrEnum): # @since 3.17.0 'labelDetailsSupport': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ MarkedStringWithLanguage = TypedDict('MarkedStringWithLanguage', { @@ -4757,7 +4817,6 @@ class TokenFormat(StrEnum): 'value': str, }) """ @since 3.18.0 -@proposed @deprecated use MarkupContent instead. """ @@ -4768,6 +4827,10 @@ class TokenFormat(StrEnum): # signature label. (see SignatureInformation.label). The offsets are based on a UTF-16 # string representation as `Position` and `Range` does. # + # To avoid ambiguities a server should use the [start, end] offset value instead of using + # a substring. Whether a client support this is controlled via `labelOffsetSupport` client + # capability. + # # *Note*: a label of type string should be a substring of its containing signature label. # Its intended use case is to highlight the parameter label part in the `SignatureInformation.label`. 'label': Union[str, List[Union[Uint, Uint]]], @@ -4779,6 +4842,24 @@ class TokenFormat(StrEnum): have a label and a doc-comment. """ +CodeActionKindDocumentation = TypedDict('CodeActionKindDocumentation', { + # The kind of the code action being documented. + # + # If the kind is generic, such as `CodeActionKind.Refactor`, the documentation will be shown whenever any + # refactorings are returned. If the kind if more specific, such as `CodeActionKind.RefactorExtract`, the + # documentation will only be shown when extract refactoring code actions are returned. + 'kind': 'CodeActionKind', + # Command that is ued to display the documentation to the user. + # + # The title of this documentation code action is taken from {@linkcode Command.title} + 'command': 'Command', +}) +""" Documentation for a class of code actions. + +@since 3.18.0 +@proposed """ + + NotebookCellTextDocumentFilter = TypedDict('NotebookCellTextDocumentFilter', { # A filter that matches against the notebook # containing the notebook cell. If a string @@ -4820,8 +4901,7 @@ class TokenFormat(StrEnum): NotebookCellLanguage = TypedDict('NotebookCellLanguage', { 'language': str, }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ NotebookDocumentCellChangeStructure = TypedDict('NotebookDocumentCellChangeStructure', { @@ -4834,8 +4914,7 @@ class TokenFormat(StrEnum): }) """ Structural changes to cells in a notebook document. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ NotebookDocumentCellContentChanges = TypedDict('NotebookDocumentCellContentChanges', { @@ -4844,8 +4923,7 @@ class TokenFormat(StrEnum): }) """ Content changes to a cell in a notebook document. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ WorkspaceClientCapabilities = TypedDict('WorkspaceClientCapabilities', { @@ -5139,8 +5217,7 @@ class TokenFormat(StrEnum): }) """ A document filter where `language` is required field. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ TextDocumentFilterScheme = TypedDict('TextDocumentFilterScheme', { @@ -5153,8 +5230,7 @@ class TokenFormat(StrEnum): }) """ A document filter where `scheme` is required field. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ TextDocumentFilterPattern = TypedDict('TextDocumentFilterPattern', { @@ -5167,8 +5243,7 @@ class TokenFormat(StrEnum): }) """ A document filter where `pattern` is required field. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ NotebookDocumentFilterNotebookType = TypedDict('NotebookDocumentFilterNotebookType', { @@ -5181,8 +5256,7 @@ class TokenFormat(StrEnum): }) """ A notebook document filter where `notebookType` is required field. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ NotebookDocumentFilterScheme = TypedDict('NotebookDocumentFilterScheme', { @@ -5195,8 +5269,7 @@ class TokenFormat(StrEnum): }) """ A notebook document filter where `scheme` is required field. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ NotebookDocumentFilterPattern = TypedDict('NotebookDocumentFilterPattern', { @@ -5209,8 +5282,7 @@ class TokenFormat(StrEnum): }) """ A notebook document filter where `pattern` is required field. -@since 3.18.0 -@proposed """ +@since 3.18.0 """ NotebookCellArrayChange = TypedDict('NotebookCellArrayChange', { @@ -5253,6 +5325,16 @@ class TokenFormat(StrEnum): # # @since 3.16.0 'changeAnnotationSupport': NotRequired['ChangeAnnotationsSupportOptions'], + # Whether the client supports `WorkspaceEditMetadata` in `WorkspaceEdit`s. + # + # @since 3.18.0 + # @proposed + 'metadataSupport': NotRequired[bool], + # Whether the client supports snippets as text edits. + # + # @since 3.18.0 + # @proposed + 'snippetEditSupport': NotRequired[bool], }) @@ -5602,6 +5684,12 @@ class TokenFormat(StrEnum): # # @since 3.16.0 'honorsChangeAnnotations': NotRequired[bool], + # Whether the client supports documentation for a class of + # code actions. + # + # @since 3.18.0 + # @proposed + 'documentationSupport': NotRequired[bool], }) """ The Client Capabilities of a {@link CodeActionRequest}. """ @@ -5718,6 +5806,11 @@ class TokenFormat(StrEnum): PublishDiagnosticsClientCapabilities = TypedDict('PublishDiagnosticsClientCapabilities', { + # Whether the client interprets the version property of the + # `textDocument/publishDiagnostics` notification's parameter. + # + # @since 3.15.0 + 'versionSupport': NotRequired[bool], # Whether the clients accepts diagnostics with related information. 'relatedInformation': NotRequired[bool], # Client supports the tag property to provide meta data about a diagnostic. @@ -5725,11 +5818,6 @@ class TokenFormat(StrEnum): # # @since 3.15.0 'tagSupport': NotRequired['ClientDiagnosticsTagOptions'], - # Whether the client interprets the version property of the - # `textDocument/publishDiagnostics` notification's parameter. - # - # @since 3.15.0 - 'versionSupport': NotRequired[bool], # Client supports a codeDescription property # # @since 3.16.0 @@ -5858,6 +5946,23 @@ class TokenFormat(StrEnum): 'dynamicRegistration': NotRequired[bool], # Whether the clients supports related documents for document diagnostic pulls. 'relatedDocumentSupport': NotRequired[bool], + # Whether the clients accepts diagnostics with related information. + 'relatedInformation': NotRequired[bool], + # Client supports the tag property to provide meta data about a diagnostic. + # Clients supporting tags have to handle unknown tags gracefully. + # + # @since 3.15.0 + 'tagSupport': NotRequired['ClientDiagnosticsTagOptions'], + # Client supports a codeDescription property + # + # @since 3.16.0 + 'codeDescriptionSupport': NotRequired[bool], + # Whether code action supports the `data` property which is + # preserved between a `textDocument/publishDiagnostics` and + # `textDocument/codeAction` request. + # + # @since 3.16.0 + 'dataSupport': NotRequired[bool], }) """ Client capabilities specific to diagnostic pull requests. @@ -5913,8 +6018,7 @@ class TokenFormat(StrEnum): # response with error code `ContentModified` 'retryOnContentModified': List[str], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ RegularExpressionsClientCapabilities = TypedDict('RegularExpressionsClientCapabilities', { @@ -5950,8 +6054,7 @@ class TokenFormat(StrEnum): # be a tree node. 'groupsOnLabel': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientSymbolKindOptions = TypedDict('ClientSymbolKindOptions', { @@ -5965,16 +6068,14 @@ class TokenFormat(StrEnum): # the initial version of the protocol. 'valueSet': NotRequired[List['SymbolKind']], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientSymbolTagOptions = TypedDict('ClientSymbolTagOptions', { # The tags supported by the client. 'valueSet': List['SymbolTag'], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientSymbolResolveOptions = TypedDict('ClientSymbolResolveOptions', { @@ -5982,8 +6083,7 @@ class TokenFormat(StrEnum): # `location.range` 'properties': List[str], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCompletionItemOptions = TypedDict('ClientCompletionItemOptions', { @@ -6033,8 +6133,7 @@ class TokenFormat(StrEnum): # @since 3.17.0 'labelDetailsSupport': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCompletionItemOptionsKind = TypedDict('ClientCompletionItemOptionsKind', { @@ -6048,8 +6147,7 @@ class TokenFormat(StrEnum): # the initial version of the protocol. 'valueSet': NotRequired[List['CompletionItemKind']], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ CompletionListCapabilities = TypedDict('CompletionListCapabilities', { @@ -6088,8 +6186,7 @@ class TokenFormat(StrEnum): # @proposed 'noActiveParameterSupport': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCodeActionLiteralOptions = TypedDict('ClientCodeActionLiteralOptions', { @@ -6097,16 +6194,14 @@ class TokenFormat(StrEnum): # set. 'codeActionKind': 'ClientCodeActionKindOptions', }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCodeActionResolveOptions = TypedDict('ClientCodeActionResolveOptions', { # The properties that a client can resolve lazily. 'properties': List[str], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientFoldingRangeKindOptions = TypedDict('ClientFoldingRangeKindOptions', { @@ -6116,8 +6211,7 @@ class TokenFormat(StrEnum): # to a default value when unknown. 'valueSet': NotRequired[List['FoldingRangeKind']], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientFoldingRangeOptions = TypedDict('ClientFoldingRangeOptions', { @@ -6127,16 +6221,29 @@ class TokenFormat(StrEnum): # @since 3.17.0 'collapsedText': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ -ClientDiagnosticsTagOptions = TypedDict('ClientDiagnosticsTagOptions', { - # The tags supported by the client. - 'valueSet': List['DiagnosticTag'], +DiagnosticsCapabilities = TypedDict('DiagnosticsCapabilities', { + # Whether the clients accepts diagnostics with related information. + 'relatedInformation': NotRequired[bool], + # Client supports the tag property to provide meta data about a diagnostic. + # Clients supporting tags have to handle unknown tags gracefully. + # + # @since 3.15.0 + 'tagSupport': NotRequired['ClientDiagnosticsTagOptions'], + # Client supports a codeDescription property + # + # @since 3.16.0 + 'codeDescriptionSupport': NotRequired[bool], + # Whether code action supports the `data` property which is + # preserved between a `textDocument/publishDiagnostics` and + # `textDocument/codeAction` request. + # + # @since 3.16.0 + 'dataSupport': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" General diagnostics capabilities for pull and push model. """ ClientSemanticTokensRequestOptions = TypedDict('ClientSemanticTokensRequestOptions', { @@ -6147,16 +6254,14 @@ class TokenFormat(StrEnum): # the server provides a corresponding handler. 'full': NotRequired[Union[bool, 'ClientSemanticTokensRequestFullDelta']], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientInlayHintResolveOptions = TypedDict('ClientInlayHintResolveOptions', { # The properties that a client can resolve lazily. 'properties': List[str], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientShowMessageActionItemOptions = TypedDict('ClientShowMessageActionItemOptions', { @@ -6165,31 +6270,27 @@ class TokenFormat(StrEnum): # request's response. 'additionalPropertiesSupport': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ CompletionItemTagOptions = TypedDict('CompletionItemTagOptions', { # The tags supported by the client. 'valueSet': List['CompletionItemTag'], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCompletionItemResolveOptions = TypedDict('ClientCompletionItemResolveOptions', { # The properties that a client can resolve lazily. 'properties': List[str], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCompletionItemInsertTextModeOptions = TypedDict('ClientCompletionItemInsertTextModeOptions', { 'valueSet': List['InsertTextMode'], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientSignatureParameterInformationOptions = TypedDict('ClientSignatureParameterInformationOptions', { @@ -6199,8 +6300,7 @@ class TokenFormat(StrEnum): # @since 3.14.0 'labelOffsetSupport': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ ClientCodeActionKindOptions = TypedDict('ClientCodeActionKindOptions', { @@ -6210,8 +6310,14 @@ class TokenFormat(StrEnum): # to a default value when unknown. 'valueSet': List['CodeActionKind'], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ + + +ClientDiagnosticsTagOptions = TypedDict('ClientDiagnosticsTagOptions', { + # The tags supported by the client. + 'valueSet': List['DiagnosticTag'], +}) +""" @since 3.18.0 """ ClientSemanticTokensRequestFullDelta = TypedDict('ClientSemanticTokensRequestFullDelta', { @@ -6219,5 +6325,5 @@ class TokenFormat(StrEnum): # the server provides a corresponding handler. 'delta': NotRequired[bool], }) -""" @since 3.18.0 -@proposed """ +""" @since 3.18.0 """ + diff --git a/lsprotocol/lsp.json b/lsprotocol/lsp.json index 678a117..2351492 100644 --- a/lsprotocol/lsp.json +++ b/lsprotocol/lsp.json @@ -5503,6 +5503,17 @@ }, "documentation": "Title of the command, like `save`." }, + { + "name": "tooltip", + "type": { + "kind": "base", + "name": "string" + }, + "optional": true, + "documentation": "An optional tooltip.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true + }, { "name": "command", "type": { @@ -6167,6 +6178,17 @@ "name": "WorkspaceEdit" }, "documentation": "The edits to apply." + }, + { + "name": "metadata", + "type": { + "kind": "reference", + "name": "WorkspaceEditMetadata" + }, + "optional": true, + "documentation": "Additional data about the edit.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true } ], "documentation": "The parameters passed via an apply workspace edit request." @@ -6854,12 +6876,16 @@ { "kind": "reference", "name": "AnnotatedTextEdit" + }, + { + "kind": "reference", + "name": "SnippetTextEdit" } ] } }, - "documentation": "The edits to be applied.\n\n@since 3.16.0 - support for AnnotatedTextEdit. This is guarded using a\nclient capability.", - "since": "3.16.0 - support for AnnotatedTextEdit. This is guarded using a\nclient capability." + "documentation": "The edits to be applied.\n\n@since 3.16.0 - support for AnnotatedTextEdit. This is guarded using a\nclient capability.\n\n@since 3.18.0 - support for SnippetTextEdit. This is guarded using a\nclient capability.", + "since": "3.18.0 - support for SnippetTextEdit. This is guarded using a\nclient capability." } ], "documentation": "Describes textual changes on a text document. A TextDocumentEdit describes all changes\non a document version Si and after they are applied move the document to version Si+1.\nSo the creator of a TextDocumentEdit doesn't need to sort the array of edits or do any\nkind of ordering. However the edits must be non overlapping." @@ -8602,9 +8628,8 @@ "documentation": "The server's version as defined by the server." } ], - "documentation": "Information about the server\n\n@since 3.15.0\n@since 3.18.0 ServerInfo type name added.\n@proposed", - "since": "3.18.0 ServerInfo type name added.", - "proposed": true + "documentation": "Information about the server\n\n@since 3.15.0\n@since 3.18.0 ServerInfo type name added.", + "since": "3.18.0 ServerInfo type name added." }, { "name": "VersionedTextDocumentIdentifier", @@ -9309,9 +9334,8 @@ "documentation": "Human readable description of why the code action is currently disabled.\n\nThis is displayed in the code actions UI." } ], - "documentation": "Captures why the code action is currently disabled.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Captures why the code action is currently disabled.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "CodeActionOptions", @@ -9328,6 +9352,20 @@ "optional": true, "documentation": "CodeActionKinds that this server may return.\n\nThe list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server\nmay list out every specific kind they provide." }, + { + "name": "documentation", + "type": { + "kind": "array", + "element": { + "kind": "reference", + "name": "CodeActionKindDocumentation" + } + }, + "optional": true, + "documentation": "Static documentation for a class of code actions.\n\nDocumentation from the provider should be shown in the code actions menu if either:\n\n- Code actions of `kind` are requested by the editor. In this case, the editor will show the documentation that\n most closely matches the requested code action kind. For example, if a provider has documentation for\n both `Refactor` and `RefactorExtract`, when the user requests code actions for `RefactorExtract`,\n the editor will use the documentation for `RefactorExtract` instead of the documentation for `Refactor`.\n\n- Any code actions of `kind` are returned by the provider.\n\nAt most one documentation entry should be shown per provider.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true + }, { "name": "resolveProvider", "type": { @@ -9358,9 +9396,8 @@ } } ], - "documentation": "Location with only uri and does not include range.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Location with only uri and does not include range.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "WorkspaceSymbolOptions", @@ -9578,9 +9615,8 @@ } } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "PrepareRenameDefaultBehavior", @@ -9593,9 +9629,8 @@ } } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ExecuteCommandOptions", @@ -9620,6 +9655,23 @@ ], "documentation": "The server capabilities of a {@link ExecuteCommandRequest}." }, + { + "name": "WorkspaceEditMetadata", + "properties": [ + { + "name": "isRefactoring", + "type": { + "kind": "base", + "name": "boolean" + }, + "optional": true, + "documentation": "Signal to the editor that this edit is a refactoring." + } + ], + "documentation": "Additional data about a workspace edit.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true + }, { "name": "SemanticTokensLegend", "properties": [ @@ -9662,9 +9714,8 @@ "documentation": "The server supports deltas for full documents." } ], - "documentation": "Semantic tokens options to support deltas for full documents\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Semantic tokens options to support deltas for full documents\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "OptionalVersionedTextDocumentIdentifier", @@ -9716,6 +9767,39 @@ "documentation": "A special text edit with an additional change annotation.\n\n@since 3.16.0.", "since": "3.16.0." }, + { + "name": "SnippetTextEdit", + "properties": [ + { + "name": "range", + "type": { + "kind": "reference", + "name": "Range" + }, + "documentation": "The range of the text document to be manipulated." + }, + { + "name": "snippet", + "type": { + "kind": "reference", + "name": "StringValue" + }, + "documentation": "The snippet to be inserted." + }, + { + "name": "annotationId", + "type": { + "kind": "reference", + "name": "ChangeAnnotationIdentifier" + }, + "optional": true, + "documentation": "The actual identifier of the snippet edit." + } + ], + "documentation": "An interactive text edit.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true + }, { "name": "ResourceOperation", "properties": [ @@ -9995,9 +10079,8 @@ "documentation": "The cells of the matching notebook to be synced." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentFilterWithCells", @@ -10032,9 +10115,8 @@ "documentation": "The cells of the matching notebook to be synced." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentCellChanges", @@ -10073,9 +10155,8 @@ "documentation": "Changes to the text content of notebook cells." } ], - "documentation": "Cell changes to a notebook document.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Cell changes to a notebook document.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "SelectedCompletionInfo", @@ -10122,9 +10203,8 @@ "documentation": "The client's version as defined by the client." } ], - "documentation": "Information about the client\n\n@since 3.15.0\n@since 3.18.0 ClientInfo type name added.\n@proposed", - "since": "3.18.0 ClientInfo type name added.", - "proposed": true + "documentation": "Information about the client\n\n@since 3.15.0\n@since 3.18.0 ClientInfo type name added.", + "since": "3.18.0 ClientInfo type name added." }, { "name": "ClientCapabilities", @@ -10271,9 +10351,8 @@ "since": "3.16.0" } ], - "documentation": "Defines workspace specific capabilities of the server.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Defines workspace specific capabilities of the server.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "TextDocumentContentChangePartial", @@ -10305,9 +10384,8 @@ "documentation": "The new text for the provided range." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "TextDocumentContentChangeWholeDocument", @@ -10321,9 +10399,8 @@ "documentation": "The new text of the whole document." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "CodeDescription", @@ -10380,9 +10457,8 @@ } } ], - "documentation": "Edit range variant that includes ranges for insert and replace operations.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Edit range variant that includes ranges for insert and replace operations.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "ServerCompletionItemOptions", @@ -10398,9 +10474,8 @@ "since": "3.17.0" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "MarkedStringWithLanguage", @@ -10420,10 +10495,9 @@ } } ], - "documentation": "@since 3.18.0\n@proposed\n@deprecated use MarkupContent instead.", + "documentation": "@since 3.18.0\n@deprecated use MarkupContent instead.", "since": "3.18.0", - "deprecated": "use MarkupContent instead.", - "proposed": true + "deprecated": "use MarkupContent instead." }, { "name": "ParameterInformation", @@ -10452,7 +10526,7 @@ } ] }, - "documentation": "The label of this parameter information.\n\nEither a string or an inclusive start and exclusive end offsets within its containing\nsignature label. (see SignatureInformation.label). The offsets are based on a UTF-16\nstring representation as `Position` and `Range` does.\n\n*Note*: a label of type string should be a substring of its containing signature label.\nIts intended use case is to highlight the parameter label part in the `SignatureInformation.label`." + "documentation": "The label of this parameter information.\n\nEither a string or an inclusive start and exclusive end offsets within its containing\nsignature label. (see SignatureInformation.label). The offsets are based on a UTF-16\nstring representation as `Position` and `Range` does.\n\nTo avoid ambiguities a server should use the [start, end] offset value instead of using\na substring. Whether a client support this is controlled via `labelOffsetSupport` client\ncapability.\n\n*Note*: a label of type string should be a substring of its containing signature label.\nIts intended use case is to highlight the parameter label part in the `SignatureInformation.label`." }, { "name": "documentation", @@ -10475,6 +10549,30 @@ ], "documentation": "Represents a parameter of a callable-signature. A parameter can\nhave a label and a doc-comment." }, + { + "name": "CodeActionKindDocumentation", + "properties": [ + { + "name": "kind", + "type": { + "kind": "reference", + "name": "CodeActionKind" + }, + "documentation": "The kind of the code action being documented.\n\nIf the kind is generic, such as `CodeActionKind.Refactor`, the documentation will be shown whenever any\nrefactorings are returned. If the kind if more specific, such as `CodeActionKind.RefactorExtract`, the\ndocumentation will only be shown when extract refactoring code actions are returned." + }, + { + "name": "command", + "type": { + "kind": "reference", + "name": "Command" + }, + "documentation": "Command that is ued to display the documentation to the user.\n\nThe title of this documentation code action is taken from {@linkcode Command.title}" + } + ], + "documentation": "Documentation for a class of code actions.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true + }, { "name": "NotebookCellTextDocumentFilter", "properties": [ @@ -10557,9 +10655,8 @@ } } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentCellChangeStructure", @@ -10597,9 +10694,8 @@ "documentation": "Additional closed cell text documents." } ], - "documentation": "Structural changes to cells in a notebook document.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Structural changes to cells in a notebook document.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentCellContentChanges", @@ -10622,9 +10718,8 @@ } } ], - "documentation": "Content changes to a cell in a notebook document.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "Content changes to a cell in a notebook document.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "WorkspaceClientCapabilities", @@ -11333,9 +11428,8 @@ "documentation": "A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples." } ], - "documentation": "A document filter where `language` is required field.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "A document filter where `language` is required field.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "TextDocumentFilterScheme", @@ -11367,9 +11461,8 @@ "documentation": "A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples." } ], - "documentation": "A document filter where `scheme` is required field.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "A document filter where `scheme` is required field.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "TextDocumentFilterPattern", @@ -11401,9 +11494,8 @@ "documentation": "A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples." } ], - "documentation": "A document filter where `pattern` is required field.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "A document filter where `pattern` is required field.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentFilterNotebookType", @@ -11435,9 +11527,8 @@ "documentation": "A glob pattern." } ], - "documentation": "A notebook document filter where `notebookType` is required field.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "A notebook document filter where `notebookType` is required field.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentFilterScheme", @@ -11469,9 +11560,8 @@ "documentation": "A glob pattern." } ], - "documentation": "A notebook document filter where `scheme` is required field.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "A notebook document filter where `scheme` is required field.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookDocumentFilterPattern", @@ -11503,9 +11593,8 @@ "documentation": "A glob pattern." } ], - "documentation": "A notebook document filter where `pattern` is required field.\n\n@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "A notebook document filter where `pattern` is required field.\n\n@since 3.18.0", + "since": "3.18.0" }, { "name": "NotebookCellArrayChange", @@ -11596,6 +11685,28 @@ "optional": true, "documentation": "Whether the client in general supports change annotations on text edits,\ncreate file, rename file and delete file changes.\n\n@since 3.16.0", "since": "3.16.0" + }, + { + "name": "metadataSupport", + "type": { + "kind": "base", + "name": "boolean" + }, + "optional": true, + "documentation": "Whether the client supports `WorkspaceEditMetadata` in `WorkspaceEdit`s.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true + }, + { + "name": "snippetEditSupport", + "type": { + "kind": "base", + "name": "boolean" + }, + "optional": true, + "documentation": "Whether the client supports snippets as text edits.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true } ] }, @@ -12281,6 +12392,17 @@ "optional": true, "documentation": "Whether the client honors the change annotations in\ntext edits and resource operations returned via the\n`CodeAction#edit` property by for example presenting\nthe workspace edit in the user interface and asking\nfor confirmation.\n\n@since 3.16.0", "since": "3.16.0" + }, + { + "name": "documentationSupport", + "type": { + "kind": "base", + "name": "boolean" + }, + "optional": true, + "documentation": "Whether the client supports documentation for a class of\ncode actions.\n\n@since 3.18.0\n@proposed", + "since": "3.18.0", + "proposed": true } ], "documentation": "The Client Capabilities of a {@link CodeActionRequest}." @@ -12508,25 +12630,6 @@ { "name": "PublishDiagnosticsClientCapabilities", "properties": [ - { - "name": "relatedInformation", - "type": { - "kind": "base", - "name": "boolean" - }, - "optional": true, - "documentation": "Whether the clients accepts diagnostics with related information." - }, - { - "name": "tagSupport", - "type": { - "kind": "reference", - "name": "ClientDiagnosticsTagOptions" - }, - "optional": true, - "documentation": "Client supports the tag property to provide meta data about a diagnostic.\nClients supporting tags have to handle unknown tags gracefully.\n\n@since 3.15.0", - "since": "3.15.0" - }, { "name": "versionSupport", "type": { @@ -12536,26 +12639,12 @@ "optional": true, "documentation": "Whether the client interprets the version property of the\n`textDocument/publishDiagnostics` notification's parameter.\n\n@since 3.15.0", "since": "3.15.0" - }, - { - "name": "codeDescriptionSupport", - "type": { - "kind": "base", - "name": "boolean" - }, - "optional": true, - "documentation": "Client supports a codeDescription property\n\n@since 3.16.0", - "since": "3.16.0" - }, + } + ], + "extends": [ { - "name": "dataSupport", - "type": { - "kind": "base", - "name": "boolean" - }, - "optional": true, - "documentation": "Whether code action supports the `data` property which is\npreserved between a `textDocument/publishDiagnostics` and\n`textDocument/codeAction` request.\n\n@since 3.16.0", - "since": "3.16.0" + "kind": "reference", + "name": "DiagnosticsCapabilities" } ], "documentation": "The publish diagnostic client capabilities." @@ -12782,6 +12871,12 @@ "documentation": "Whether the clients supports related documents for document diagnostic pulls." } ], + "extends": [ + { + "kind": "reference", + "name": "DiagnosticsCapabilities" + } + ], "documentation": "Client capabilities specific to diagnostic pull requests.\n\n@since 3.17.0", "since": "3.17.0" }, @@ -12880,9 +12975,8 @@ "documentation": "The list of requests for which the client\nwill retry the request if it receives a\nresponse with error code `ContentModified`" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "RegularExpressionsClientCapabilities", @@ -12958,9 +13052,8 @@ "documentation": "Whether the client groups edits with equal labels into tree nodes,\nfor instance all edits labelled with \"Changes in Strings\" would\nbe a tree node." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientSymbolKindOptions", @@ -12978,9 +13071,8 @@ "documentation": "The symbol kind values the client supports. When this\nproperty exists the client also guarantees that it will\nhandle values outside its set gracefully and falls back\nto a default value when unknown.\n\nIf this property is not present the client only supports\nthe symbol kinds from `File` to `Array` as defined in\nthe initial version of the protocol." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientSymbolTagOptions", @@ -12997,9 +13089,8 @@ "documentation": "The tags supported by the client." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientSymbolResolveOptions", @@ -13016,9 +13107,8 @@ "documentation": "The properties that a client can resolve lazily. Usually\n`location.range`" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCompletionItemOptions", @@ -13122,9 +13212,8 @@ "since": "3.17.0" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCompletionItemOptionsKind", @@ -13142,9 +13231,8 @@ "documentation": "The completion item kind values the client supports. When this\nproperty exists the client also guarantees that it will\nhandle values outside its set gracefully and falls back\nto a default value when unknown.\n\nIf this property is not present the client only supports\nthe completion items kinds from `Text` to `Reference` as defined in\nthe initial version of the protocol." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "CompletionListCapabilities", @@ -13212,9 +13300,8 @@ "proposed": true } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCodeActionLiteralOptions", @@ -13228,9 +13315,8 @@ "documentation": "The code action kind is support with the following value\nset." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCodeActionResolveOptions", @@ -13247,9 +13333,8 @@ "documentation": "The properties that a client can resolve lazily." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientFoldingRangeKindOptions", @@ -13267,9 +13352,8 @@ "documentation": "The folding range kind values the client supports. When this\nproperty exists the client also guarantees that it will\nhandle values outside its set gracefully and falls back\nto a default value when unknown." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientFoldingRangeOptions", @@ -13285,28 +13369,53 @@ "since": "3.17.0" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { - "name": "ClientDiagnosticsTagOptions", + "name": "DiagnosticsCapabilities", "properties": [ { - "name": "valueSet", + "name": "relatedInformation", "type": { - "kind": "array", - "element": { - "kind": "reference", - "name": "DiagnosticTag" - } + "kind": "base", + "name": "boolean" }, - "documentation": "The tags supported by the client." + "optional": true, + "documentation": "Whether the clients accepts diagnostics with related information." + }, + { + "name": "tagSupport", + "type": { + "kind": "reference", + "name": "ClientDiagnosticsTagOptions" + }, + "optional": true, + "documentation": "Client supports the tag property to provide meta data about a diagnostic.\nClients supporting tags have to handle unknown tags gracefully.\n\n@since 3.15.0", + "since": "3.15.0" + }, + { + "name": "codeDescriptionSupport", + "type": { + "kind": "base", + "name": "boolean" + }, + "optional": true, + "documentation": "Client supports a codeDescription property\n\n@since 3.16.0", + "since": "3.16.0" + }, + { + "name": "dataSupport", + "type": { + "kind": "base", + "name": "boolean" + }, + "optional": true, + "documentation": "Whether code action supports the `data` property which is\npreserved between a `textDocument/publishDiagnostics` and\n`textDocument/codeAction` request.\n\n@since 3.16.0", + "since": "3.16.0" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "General diagnostics capabilities for pull and push model." }, { "name": "ClientSemanticTokensRequestOptions", @@ -13350,9 +13459,8 @@ "documentation": "The client will send the `textDocument/semanticTokens/full` request if\nthe server provides a corresponding handler." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientInlayHintResolveOptions", @@ -13369,9 +13477,8 @@ "documentation": "The properties that a client can resolve lazily." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientShowMessageActionItemOptions", @@ -13386,9 +13493,8 @@ "documentation": "Whether the client supports additional attributes which\nare preserved and send back to the server in the\nrequest's response." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "CompletionItemTagOptions", @@ -13405,9 +13511,8 @@ "documentation": "The tags supported by the client." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCompletionItemResolveOptions", @@ -13424,9 +13529,8 @@ "documentation": "The properties that a client can resolve lazily." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCompletionItemInsertTextModeOptions", @@ -13442,9 +13546,8 @@ } } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientSignatureParameterInformationOptions", @@ -13460,9 +13563,8 @@ "since": "3.14.0" } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientCodeActionKindOptions", @@ -13479,9 +13581,26 @@ "documentation": "The code action kind values the client supports. When this\nproperty exists the client also guarantees that it will\nhandle values outside its set gracefully and falls back\nto a default value when unknown." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" + }, + { + "name": "ClientDiagnosticsTagOptions", + "properties": [ + { + "name": "valueSet", + "type": { + "kind": "array", + "element": { + "kind": "reference", + "name": "DiagnosticTag" + } + }, + "documentation": "The tags supported by the client." + } + ], + "documentation": "@since 3.18.0", + "since": "3.18.0" }, { "name": "ClientSemanticTokensRequestFullDelta", @@ -13496,9 +13615,8 @@ "documentation": "The client will send the `textDocument/semanticTokens/full/delta` request if\nthe server provides a corresponding handler." } ], - "documentation": "@since 3.18.0\n@proposed", - "since": "3.18.0", - "proposed": true + "documentation": "@since 3.18.0", + "since": "3.18.0" } ], "enumerations": [ @@ -14331,6 +14449,12 @@ "value": "source.fixAll", "documentation": "Base kind for auto-fix source actions: `source.fixAll`.\n\nFix all actions automatically fix errors that have a clear fix that do not require user input.\nThey should not suppress errors or perform unsafe fixes such as generating new types or classes.\n\n@since 3.15.0", "since": "3.15.0" + }, + { + "name": "Notebook", + "value": "notebook", + "documentation": "Base kind for all code actions applying to the entire notebook's scope. CodeActionKinds using\nthis should always begin with `notebook.`\n\n@since 3.18.0", + "since": "3.18.0" } ], "supportsCustomValues": true, @@ -14481,6 +14605,10 @@ "name": "Handlebars", "value": "handlebars" }, + { + "name": "Haskell", + "value": "haskell" + }, { "name": "HTML", "value": "html"