Skip to content

Refactor: update LSP types from upstream repo#2746

Merged
rchl merged 3 commits intomainfrom
refactor/lsp-types
Feb 4, 2026
Merged

Refactor: update LSP types from upstream repo#2746
rchl merged 3 commits intomainfrom
refactor/lsp-types

Conversation

@rchl
Copy link
Member

@rchl rchl commented Feb 1, 2026

Updates with fixes from sublimelsp/lsp-python-types#29

Mostly just formatting of docs but there is one or two other changes.

@rchl
Copy link
Member Author

rchl commented Feb 1, 2026

mostly just docs formatting changes after all. Some quotes removed from types here and there also.

Pretty useless one could say but at least safe :)

@rchl
Copy link
Member Author

rchl commented Feb 4, 2026

Good to merge?
It's good to do those changes even if they don't bring much since it will be hard to review later, when mixed with other changes done in protocol.

@jwortmann
Copy link
Member

I'm not going to review that diff, but I guess it's fine to merge.

@rchl
Copy link
Member Author

rchl commented Feb 4, 2026

I've stripped comments and then created diff for transparency:

--- /usr/local/workspace/sublime-packages/LSP/protocol/__init__a.py	Wed Feb  4 21:43:07 2026
+++ /usr/local/workspace/sublime-packages/LSP/protocol/__init__a.py	Wed Feb  4 21:49:19 2026
@@ -433,7 +433,7 @@
 
 
 class Location(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     range: 'Range'
 
 
@@ -455,7 +455,7 @@
 
 
 class WorkspaceFolder(TypedDict):
-    uri: 'URI'
+    uri: URI
     name: str
 
 
@@ -573,7 +573,7 @@
     kind: 'SymbolKind'
     tags: NotRequired[List['SymbolTag']]
     detail: NotRequired[str]
-    uri: 'DocumentUri'
+    uri: DocumentUri
     range: 'Range'
     selectionRange: 'Range'
     data: NotRequired['LSPAny']
@@ -628,7 +628,7 @@
 class SemanticTokensRegistrationOptions(TypedDict):
     documentSelector: Union['DocumentSelector', None]
     legend: 'SemanticTokensLegend'
-    range: NotRequired[Union[bool, dict]]
+    range: NotRequired[Union[bool, Dict[str, LSPAny]]]
     full: NotRequired[Union[bool, 'SemanticTokensFullDelta']]
     id: NotRequired[str]
 
@@ -657,7 +657,7 @@
 
 
 class ShowDocumentParams(TypedDict):
-    uri: 'URI'
+    uri: URI
     external: NotRequired[bool]
     takeFocus: NotRequired[bool]
     selection: NotRequired['Range']
@@ -688,9 +688,9 @@
 
 
 class WorkspaceEdit(TypedDict):
-    changes: NotRequired[Dict['DocumentUri', List['TextEdit']]]
+    changes: NotRequired[Dict[DocumentUri, List['TextEdit']]]
     documentChanges: NotRequired[List[Union['TextDocumentEdit', 'CreateFile', 'RenameFile', 'DeleteFile']]]
-    changeAnnotations: NotRequired[Dict['ChangeAnnotationIdentifier', 'ChangeAnnotation']]
+    changeAnnotations: NotRequired[Dict[ChangeAnnotationIdentifier, 'ChangeAnnotation']]
 
 
 class FileOperationRegistrationOptions(TypedDict):
@@ -734,7 +734,7 @@
     kind: 'SymbolKind'
     tags: NotRequired[List['SymbolTag']]
     detail: NotRequired[str]
-    uri: 'DocumentUri'
+    uri: DocumentUri
     range: 'Range'
     selectionRange: 'Range'
     data: NotRequired['LSPAny']
@@ -801,7 +801,7 @@
 
 
 class DocumentDiagnosticReportPartialResult(TypedDict):
-    relatedDocuments: Dict['DocumentUri', Union['FullDocumentDiagnosticReport', 'UnchangedDocumentDiagnosticReport']]
+    relatedDocuments: Dict[DocumentUri, Union['FullDocumentDiagnosticReport', 'UnchangedDocumentDiagnosticReport']]
 
 
 class DiagnosticServerCancellationData(TypedDict):
@@ -880,7 +880,7 @@
 
 
 class TextDocumentContentParams(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
 
 
 class TextDocumentContentResult(TypedDict):
@@ -893,7 +893,7 @@
 
 
 class TextDocumentContentRefreshParams(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
 
 
 class RegistrationParams(TypedDict):
@@ -909,7 +909,7 @@
     clientInfo: NotRequired['ClientInfo']
     locale: NotRequired[str]
     rootPath: NotRequired[Union[str, None]]
-    rootUri: Union['DocumentUri', None]
+    rootUri: Union[DocumentUri, None]
     capabilities: 'ClientCapabilities'
     initializationOptions: NotRequired['LSPAny']
     trace: NotRequired['TraceValue']
@@ -1004,7 +1004,7 @@
 
 
 class PublishDiagnosticsParams(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     version: NotRequired[int]
     diagnostics: List['Diagnostic']
 
@@ -1236,7 +1236,7 @@
 
 class DocumentLink(TypedDict):
     range: 'Range'
-    target: NotRequired['URI']
+    target: NotRequired[URI]
     tooltip: NotRequired[str]
     data: NotRequired['LSPAny']
 
@@ -1381,7 +1381,7 @@
 
 class LocationLink(TypedDict):
     originSelectionRange: NotRequired['Range']
-    targetUri: 'DocumentUri'
+    targetUri: DocumentUri
     targetRange: 'Range'
     targetSelectionRange: 'Range'
 
@@ -1409,12 +1409,12 @@
 
 
 class ConfigurationItem(TypedDict):
-    scopeUri: NotRequired['URI']
+    scopeUri: NotRequired[URI]
     section: NotRequired[str]
 
 
 class TextDocumentIdentifier(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
 
 
 class Color(TypedDict):
@@ -1451,7 +1451,7 @@
 
 class SemanticTokensOptions(TypedDict):
     legend: 'SemanticTokensLegend'
-    range: NotRequired[Union[bool, dict]]
+    range: NotRequired[Union[bool, Dict[str, LSPAny]]]
     full: NotRequired[Union[bool, 'SemanticTokensFullDelta']]
     workDoneProgress: NotRequired[bool]
 
@@ -1477,22 +1477,22 @@
 
 class CreateFile(TypedDict):
     kind: Literal['create']
-    uri: 'DocumentUri'
+    uri: DocumentUri
     options: NotRequired['CreateFileOptions']
     annotationId: NotRequired['ChangeAnnotationIdentifier']
 
 
 class RenameFile(TypedDict):
     kind: Literal['rename']
-    oldUri: 'DocumentUri'
-    newUri: 'DocumentUri'
+    oldUri: DocumentUri
+    newUri: DocumentUri
     options: NotRequired['RenameFileOptions']
     annotationId: NotRequired['ChangeAnnotationIdentifier']
 
 
 class DeleteFile(TypedDict):
     kind: Literal['delete']
-    uri: 'DocumentUri'
+    uri: DocumentUri
     options: NotRequired['DeleteFileOptions']
     annotationId: NotRequired['ChangeAnnotationIdentifier']
 
@@ -1568,14 +1568,14 @@
 
 
 class RelatedFullDocumentDiagnosticReport(TypedDict):
-    relatedDocuments: NotRequired[Dict['DocumentUri', Union['FullDocumentDiagnosticReport', 'UnchangedDocumentDiagnosticReport']]]
+    relatedDocuments: NotRequired[Dict[DocumentUri, Union['FullDocumentDiagnosticReport', 'UnchangedDocumentDiagnosticReport']]]
     kind: Literal['full']
     resultId: NotRequired[str]
     items: List['Diagnostic']
 
 
 class RelatedUnchangedDocumentDiagnosticReport(TypedDict):
-    relatedDocuments: NotRequired[Dict['DocumentUri', Union['FullDocumentDiagnosticReport', 'UnchangedDocumentDiagnosticReport']]]
+    relatedDocuments: NotRequired[Dict[DocumentUri, Union['FullDocumentDiagnosticReport', 'UnchangedDocumentDiagnosticReport']]]
     kind: Literal['unchanged']
     resultId: str
 
@@ -1599,12 +1599,12 @@
 
 
 class PreviousResultId(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     value: str
 
 
 class NotebookDocument(TypedDict):
-    uri: 'URI'
+    uri: URI
     notebookType: str
     version: int
     metadata: NotRequired['LSPObject']
@@ -1612,7 +1612,7 @@
 
 
 class TextDocumentItem(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     languageId: 'LanguageKind'
     version: int
     text: str
@@ -1625,7 +1625,7 @@
 
 class VersionedNotebookDocumentIdentifier(TypedDict):
     version: int
-    uri: 'URI'
+    uri: URI
 
 
 class NotebookDocumentChangeEvent(TypedDict):
@@ -1634,7 +1634,7 @@
 
 
 class NotebookDocumentIdentifier(TypedDict):
-    uri: 'URI'
+    uri: URI
 
 
 class InlineCompletionContext(TypedDict):
@@ -1716,7 +1716,7 @@
 
 class VersionedTextDocumentIdentifier(TypedDict):
     version: int
-    uri: 'DocumentUri'
+    uri: DocumentUri
 
 
 class SaveOptions(TypedDict):
@@ -1724,7 +1724,7 @@
 
 
 class FileEvent(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     type: 'FileChangeType'
 
 
@@ -1852,7 +1852,7 @@
 
 
 class LocationUriOnly(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
 
 
 class WorkspaceSymbolOptions(TypedDict):
@@ -1926,7 +1926,7 @@
 
 class OptionalVersionedTextDocumentIdentifier(TypedDict):
     version: Union[int, None]
-    uri: 'DocumentUri'
+    uri: DocumentUri
 
 
 class AnnotatedTextEdit(TypedDict):
@@ -1968,7 +1968,7 @@
 
 
 class WorkspaceFullDocumentDiagnosticReport(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     version: Union[int, None]
     kind: Literal['full']
     resultId: NotRequired[str]
@@ -1976,7 +1976,7 @@
 
 
 class WorkspaceUnchangedDocumentDiagnosticReport(TypedDict):
-    uri: 'DocumentUri'
+    uri: DocumentUri
     version: Union[int, None]
     kind: Literal['unchanged']
     resultId: str
@@ -1984,7 +1984,7 @@
 
 class NotebookCell(TypedDict):
     kind: 'NotebookCellKind'
-    document: 'DocumentUri'
+    document: DocumentUri
     metadata: NotRequired['LSPObject']
     executionSummary: NotRequired['ExecutionSummary']
 
@@ -2049,7 +2049,7 @@
 
 
 class CodeDescription(TypedDict):
-    href: 'URI'
+    href: URI
 
 
 class DiagnosticRelatedInformation(TypedDict):
@@ -2072,7 +2072,7 @@
 
 
 class ParameterInformation(TypedDict):
-    label: Union[str, List[Union[Uint, Uint]]]
+    label: Union[str, list[Uint]]
     documentation: NotRequired[Union[str, 'MarkupContent']]
 
 
@@ -2196,7 +2196,7 @@
 
 
 class RelativePattern(TypedDict):
-    baseUri: Union['WorkspaceFolder', 'URI']
+    baseUri: Union['WorkspaceFolder', URI]
     pattern: 'Pattern'
 
 
@@ -2599,7 +2599,7 @@
 
 
 class ClientSemanticTokensRequestOptions(TypedDict):
-    range: NotRequired[Union[bool, dict]]
+    range: NotRequired[Union[bool, Dict[str, LSPAny]]]
     full: NotRequired[Union[bool, 'ClientSemanticTokensRequestFullDelta']]
 

@rchl rchl merged commit 0c1abb6 into main Feb 4, 2026
8 checks passed
@rchl rchl deleted the refactor/lsp-types branch February 4, 2026 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants