brighterscript 1.0.0-alpha.51 → 1.0.0-alpha.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -5
- package/bsconfig.schema.json +151 -0
- package/dist/BsConfig.d.ts +158 -44
- package/dist/BsConfig.js +24 -0
- package/dist/BsConfig.js.map +1 -1
- package/dist/BusyStatusTracker.js +3 -0
- package/dist/BusyStatusTracker.js.map +1 -1
- package/dist/CrossScopeValidator.js +5 -0
- package/dist/CrossScopeValidator.js.map +1 -1
- package/dist/DiagnosticFilterer.d.ts +17 -1
- package/dist/DiagnosticFilterer.js +69 -6
- package/dist/DiagnosticFilterer.js.map +1 -1
- package/dist/DiagnosticManager.d.ts +11 -1
- package/dist/DiagnosticManager.js +22 -3
- package/dist/DiagnosticManager.js.map +1 -1
- package/dist/DiagnosticMessages.d.ts +93 -4
- package/dist/DiagnosticMessages.js +91 -5
- package/dist/DiagnosticMessages.js.map +1 -1
- package/dist/LanguageServer.d.ts +17 -4
- package/dist/LanguageServer.js +65 -6
- package/dist/LanguageServer.js.map +1 -1
- package/dist/Logger.d.ts +7 -7
- package/dist/Logger.js +2 -2
- package/dist/Logger.js.map +1 -1
- package/dist/PluginInterface.js +2 -1
- package/dist/PluginInterface.js.map +1 -1
- package/dist/Program.d.ts +110 -9
- package/dist/Program.js +293 -23
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.js +6 -0
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/RokuConstants.d.ts +123 -0
- package/dist/RokuConstants.js +87 -0
- package/dist/RokuConstants.js.map +1 -0
- package/dist/ScopeNamespaceLookup.js.map +1 -1
- package/dist/Stopwatch.js +2 -2
- package/dist/Stopwatch.js.map +1 -1
- package/dist/SymbolTable.d.ts +1 -0
- package/dist/SymbolTable.js +20 -12
- package/dist/SymbolTable.js.map +1 -1
- package/dist/Throttler.d.ts +1 -1
- package/dist/Throttler.js.map +1 -1
- package/dist/astUtils/reflection.d.ts +6 -1
- package/dist/astUtils/reflection.js +15 -4
- package/dist/astUtils/reflection.js.map +1 -1
- package/dist/astUtils/visitors.d.ts +1 -1
- package/dist/astUtils/visitors.js +2 -0
- package/dist/astUtils/visitors.js.map +1 -1
- package/dist/bscPlugin/BscPlugin.d.ts +3 -2
- package/dist/bscPlugin/BscPlugin.js +5 -1
- package/dist/bscPlugin/BscPlugin.js.map +1 -1
- package/dist/bscPlugin/CallExpressionInfo.js.map +1 -1
- package/dist/bscPlugin/SignatureHelpUtil.js.map +1 -1
- package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.d.ts +3 -3
- package/dist/bscPlugin/codeActions/FixAllCodeActionsProcessor.js.map +1 -1
- package/dist/bscPlugin/completions/CompletionsProcessor.js +2 -3
- package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -1
- package/dist/bscPlugin/definition/DefinitionProvider.d.ts +67 -2
- package/dist/bscPlugin/definition/DefinitionProvider.js +244 -5
- package/dist/bscPlugin/definition/DefinitionProvider.js.map +1 -1
- package/dist/bscPlugin/inlayHints/InlayHintProcessor.d.ts +23 -0
- package/dist/bscPlugin/inlayHints/InlayHintProcessor.js +186 -0
- package/dist/bscPlugin/inlayHints/InlayHintProcessor.js.map +1 -0
- package/dist/bscPlugin/references/ReferencesProvider.js +7 -1
- package/dist/bscPlugin/references/ReferencesProvider.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.d.ts +40 -6
- package/dist/bscPlugin/validation/BrsFileValidator.js +109 -18
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
- package/dist/bscPlugin/validation/ProgramValidator.d.ts +10 -0
- package/dist/bscPlugin/validation/ProgramValidator.js +54 -0
- package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -1
- package/dist/bscPlugin/validation/ScopeValidator.js +55 -30
- package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -1
- package/dist/bscPlugin/validation/XmlFileValidator.d.ts +18 -0
- package/dist/bscPlugin/validation/XmlFileValidator.js +51 -0
- package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/diagnosticUtils.d.ts +1 -1
- package/dist/diagnosticUtils.js.map +1 -1
- package/dist/files/BrsFile.d.ts +2 -2
- package/dist/files/BrsFile.js +2 -2
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/XmlFile.d.ts +51 -1
- package/dist/files/XmlFile.js +264 -0
- package/dist/files/XmlFile.js.map +1 -1
- package/dist/formatUtils.d.ts +20 -0
- package/dist/formatUtils.js +38 -0
- package/dist/formatUtils.js.map +1 -0
- package/dist/globalCallables.d.ts +1 -1
- package/dist/globalCallables.js +4 -1
- package/dist/globalCallables.js.map +1 -1
- package/dist/interfaces.d.ts +93 -5
- package/dist/interfaces.js.map +1 -1
- package/dist/lexer/Lexer.d.ts +26 -0
- package/dist/lexer/Lexer.js +140 -15
- package/dist/lexer/Lexer.js.map +1 -1
- package/dist/lexer/TokenKind.d.ts +27 -0
- package/dist/lexer/TokenKind.js +77 -3
- package/dist/lexer/TokenKind.js.map +1 -1
- package/dist/lsp/ActionQueue.js +1 -2
- package/dist/lsp/ActionQueue.js.map +1 -1
- package/dist/lsp/DocumentManager.js +4 -0
- package/dist/lsp/DocumentManager.js.map +1 -1
- package/dist/lsp/LspProject.d.ts +9 -2
- package/dist/lsp/Project.d.ts +6 -2
- package/dist/lsp/Project.js +8 -0
- package/dist/lsp/Project.js.map +1 -1
- package/dist/lsp/ProjectManager.d.ts +11 -2
- package/dist/lsp/ProjectManager.js +15 -1
- package/dist/lsp/ProjectManager.js.map +1 -1
- package/dist/lsp/worker/MessageHandler.d.ts +1 -0
- package/dist/lsp/worker/MessageHandler.js +9 -0
- package/dist/lsp/worker/MessageHandler.js.map +1 -1
- package/dist/lsp/worker/WorkerPool.d.ts +51 -17
- package/dist/lsp/worker/WorkerPool.js +118 -40
- package/dist/lsp/worker/WorkerPool.js.map +1 -1
- package/dist/lsp/worker/WorkerThreadProject.d.ts +20 -3
- package/dist/lsp/worker/WorkerThreadProject.js +53 -10
- package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
- package/dist/lsp/worker/WorkerThreadProjectRunner.js +6 -0
- package/dist/lsp/worker/WorkerThreadProjectRunner.js.map +1 -1
- package/dist/lsp/worker/run.js +20 -3
- package/dist/lsp/worker/run.js.map +1 -1
- package/dist/parser/AstNode.d.ts +59 -2
- package/dist/parser/AstNode.js +63 -5
- package/dist/parser/AstNode.js.map +1 -1
- package/dist/parser/BrsTranspileState.d.ts +44 -0
- package/dist/parser/BrsTranspileState.js +49 -0
- package/dist/parser/BrsTranspileState.js.map +1 -1
- package/dist/parser/Expression.d.ts +56 -8
- package/dist/parser/Expression.js +91 -8
- package/dist/parser/Expression.js.map +1 -1
- package/dist/parser/Parser.d.ts +0 -5
- package/dist/parser/Parser.js +5 -9
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/SGParser.d.ts +7 -1
- package/dist/parser/SGParser.js +20 -10
- package/dist/parser/SGParser.js.map +1 -1
- package/dist/parser/SGTypes.js +8 -2
- package/dist/parser/SGTypes.js.map +1 -1
- package/dist/parser/Statement.d.ts +21 -10
- package/dist/parser/Statement.js +61 -1
- package/dist/parser/Statement.js.map +1 -1
- package/dist/parser/TranspileState.js +3 -0
- package/dist/parser/TranspileState.js.map +1 -1
- package/dist/preprocessor/Manifest.d.ts +16 -0
- package/dist/preprocessor/Manifest.js +21 -5
- package/dist/preprocessor/Manifest.js.map +1 -1
- package/dist/roku-types/index.d.ts +3 -0
- package/dist/types/BuiltInInterfaceAdder.js +1 -1
- package/dist/types/BuiltInInterfaceAdder.js.map +1 -1
- package/dist/types/InheritableType.d.ts +0 -1
- package/dist/types/InheritableType.js +12 -11
- package/dist/types/InheritableType.js.map +1 -1
- package/dist/types/InterfaceType.js +6 -0
- package/dist/types/InterfaceType.js.map +1 -1
- package/dist/types/IntersectionType.d.ts +1 -1
- package/dist/types/IntersectionType.js +7 -7
- package/dist/types/IntersectionType.js.map +1 -1
- package/dist/types/ReferenceType.js +1 -1
- package/dist/types/ReferenceType.js.map +1 -1
- package/dist/types/helpers.d.ts +2 -2
- package/dist/types/helpers.js +8 -5
- package/dist/types/helpers.js.map +1 -1
- package/dist/util.d.ts +38 -4
- package/dist/util.js +296 -29
- package/dist/util.js.map +1 -1
- package/package.json +14 -19
|
@@ -1115,7 +1115,85 @@ exports.DiagnosticMessages = {
|
|
|
1115
1115
|
severity: vscode_languageserver_1.DiagnosticSeverity.Error,
|
|
1116
1116
|
code: 'mismatched-ending-token'
|
|
1117
1117
|
};
|
|
1118
|
-
}
|
|
1118
|
+
},
|
|
1119
|
+
/**
|
|
1120
|
+
* Callable was marked removed in `availability.os` or `availability.rsg`, and the project's
|
|
1121
|
+
* effective firmware/rsg_version meets that threshold. The call is a hard error on device.
|
|
1122
|
+
*/
|
|
1123
|
+
globalCallableRemoved: (name = '', axis = 'os', threshold = '', current = '') => ({
|
|
1124
|
+
message: `'${name}' is removed in ${formatAvailabilityAxis(axis, threshold)} or higher (current target is ${current})`,
|
|
1125
|
+
legacyCode: 1149,
|
|
1126
|
+
data: { name: name, axis: axis, threshold: threshold, current: current },
|
|
1127
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Error,
|
|
1128
|
+
code: 'global-callable-removed'
|
|
1129
|
+
}),
|
|
1130
|
+
/**
|
|
1131
|
+
* Callable was marked deprecated in `availability.os` or `availability.rsg`, and the project's
|
|
1132
|
+
* effective firmware/rsg_version meets that threshold. The call still works but should
|
|
1133
|
+
* be migrated.
|
|
1134
|
+
*/
|
|
1135
|
+
globalCallableDeprecated: (name = '', axis = 'os', threshold = '', current = '') => ({
|
|
1136
|
+
message: `'${name}' is deprecated as of ${formatAvailabilityAxis(axis, threshold)} (current target is ${current})`,
|
|
1137
|
+
legacyCode: 1150,
|
|
1138
|
+
data: { name: name, axis: axis, threshold: threshold, current: current },
|
|
1139
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Warning,
|
|
1140
|
+
code: 'global-callable-deprecated'
|
|
1141
|
+
}),
|
|
1142
|
+
rsgVersionRequiresMinFirmware: (rsgVersion, requiredFirmware, configuredFirmware) => ({
|
|
1143
|
+
message: `rsg_version=${rsgVersion} requires Roku firmware version ${requiredFirmware} or higher (current target is ${configuredFirmware})`,
|
|
1144
|
+
legacyCode: 1151,
|
|
1145
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Error,
|
|
1146
|
+
code: 'rsg-version-requires-min-firmware'
|
|
1147
|
+
}),
|
|
1148
|
+
invalidRsgVersionFormat: (value) => ({
|
|
1149
|
+
message: `'${value}' is not a valid rsg_version (expected value like '1.2' or '1.3')`,
|
|
1150
|
+
legacyCode: 1152,
|
|
1151
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Warning,
|
|
1152
|
+
code: 'invalid-rsg-version-format'
|
|
1153
|
+
}),
|
|
1154
|
+
rsgVersionDeprecated: (rsgVersion, suggestedReplacement) => ({
|
|
1155
|
+
message: `rsg_version=${rsgVersion} is deprecated; consider upgrading to rsg_version=${suggestedReplacement}`,
|
|
1156
|
+
legacyCode: 1153,
|
|
1157
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Warning,
|
|
1158
|
+
code: 'rsg-version-deprecated'
|
|
1159
|
+
}),
|
|
1160
|
+
rsgVersionRemoved: (rsgVersion, removedAt, replacement) => ({
|
|
1161
|
+
message: `rsg_version=${rsgVersion} was removed in firmware ${removedAt}; use rsg_version=${replacement}`,
|
|
1162
|
+
legacyCode: 1154,
|
|
1163
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Error,
|
|
1164
|
+
code: 'rsg-version-removed'
|
|
1165
|
+
}),
|
|
1166
|
+
deprecatedBsConfigOption: (optionName) => ({
|
|
1167
|
+
message: `'${optionName}' is deprecated at the top level of bsconfig.json. Move it into 'compilerOptions.${optionName}' instead`,
|
|
1168
|
+
legacyCode: 1155,
|
|
1169
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Warning,
|
|
1170
|
+
code: 'deprecated-bsconfig-option'
|
|
1171
|
+
}),
|
|
1172
|
+
diagnosticFilterLooksLikeFilePath: (value) => ({
|
|
1173
|
+
message: `Diagnostic filter "${value}" looks like a file path or glob, not a diagnostic code. To filter diagnostics by file, use the "files" property instead: { "files": ["${value}"] }`,
|
|
1174
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Warning,
|
|
1175
|
+
code: 'diagnostic-filter-looks-like-file-path'
|
|
1176
|
+
}),
|
|
1177
|
+
xmlTagMismatch: (openingTag, closingTag) => ({
|
|
1178
|
+
message: `Mismatched closing tag: expected '</${openingTag}>' but found '</${closingTag}>'`,
|
|
1179
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Error,
|
|
1180
|
+
code: 'xml-tag-mismatch'
|
|
1181
|
+
}),
|
|
1182
|
+
/**
|
|
1183
|
+
* @param name the full name of the function, including namespace
|
|
1184
|
+
* @param length the actual length of `name`
|
|
1185
|
+
* @param maxLength the maximum length a function name may be before it gets truncated by the device at runtime
|
|
1186
|
+
*/
|
|
1187
|
+
functionNameTooLong: (name, length, maxLength) => ({
|
|
1188
|
+
message: `Function name '${name}' is ${length} characters long, which exceeds the maximum of ${maxLength}. It will be truncated when converted with ToStr()`,
|
|
1189
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Warning,
|
|
1190
|
+
code: 'function-name-too-long'
|
|
1191
|
+
}),
|
|
1192
|
+
xmlTagWrongCase: (actualTag, expectedTag) => ({
|
|
1193
|
+
message: `Tag '${actualTag}' must be all lower case. Use '${expectedTag}' instead`,
|
|
1194
|
+
severity: vscode_languageserver_1.DiagnosticSeverity.Error,
|
|
1195
|
+
code: 'xml-tag-wrong-case'
|
|
1196
|
+
})
|
|
1119
1197
|
};
|
|
1120
1198
|
exports.defaultMaximumTruncationLength = 160;
|
|
1121
1199
|
function typeCompatibilityMessage(actualTypeString, expectedTypeString, data) {
|
|
@@ -1214,14 +1292,22 @@ function incompatibleSymbolMessage(symbolName, options) {
|
|
|
1214
1292
|
return message;
|
|
1215
1293
|
}
|
|
1216
1294
|
exports.incompatibleSymbolMessage = incompatibleSymbolMessage;
|
|
1295
|
+
function formatAvailabilityAxis(axis, version) {
|
|
1296
|
+
return axis === 'os' ? `Roku OS ${version}` : `rsg_version=${version}`;
|
|
1297
|
+
}
|
|
1217
1298
|
exports.DiagnosticCodeMap = {};
|
|
1218
1299
|
exports.DiagnosticLegacyCodeMap = {};
|
|
1219
1300
|
exports.diagnosticCodes = [];
|
|
1220
1301
|
for (let key in exports.DiagnosticMessages) {
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1302
|
+
const typedKey = key;
|
|
1303
|
+
//every factory returns an object with `code`/`legacyCode` properties regardless of its specific (possibly required)
|
|
1304
|
+
//arguments, so it's safe to call each one with no arguments purely to read those codes off the result
|
|
1305
|
+
const getCodes = exports.DiagnosticMessages[typedKey];
|
|
1306
|
+
const codes = getCodes();
|
|
1307
|
+
exports.diagnosticCodes.push(codes.code);
|
|
1308
|
+
exports.diagnosticCodes.push(codes.legacyCode);
|
|
1309
|
+
exports.DiagnosticCodeMap[typedKey] = codes.code;
|
|
1310
|
+
exports.DiagnosticLegacyCodeMap[typedKey] = codes.legacyCode;
|
|
1225
1311
|
}
|
|
1226
1312
|
/**
|
|
1227
1313
|
* Refines a diagnostic to its concrete `DiagnosticMessageType<K>` shape (including the typed `data`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiagnosticMessages.js","sourceRoot":"","sources":["../src/DiagnosticMessages.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DiagnosticMessages.js","sourceRoot":"","sources":["../src/DiagnosticMessages.ts"],"names":[],"mappings":"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"}
|
package/dist/LanguageServer.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import '
|
|
2
|
-
import type { CompletionItem, DidChangeWatchedFilesParams, InitializeParams, TextDocumentPositionParams, ExecuteCommandParams, WorkspaceSymbolParams, DocumentSymbolParams, ReferenceParams, SignatureHelpParams, CodeActionParams, HandlerResult, InitializeError, InitializeResult, CompletionParams, ResultProgressReporter, WorkDoneProgressReporter, CompletionList, CancellationToken, DidChangeConfigurationParams, SelectionRangeParams, RenameFilesParams, WorkspaceEdit } from 'vscode-languageserver/node';
|
|
1
|
+
import type { CompletionItem, DidChangeWatchedFilesParams, InitializeParams, TextDocumentPositionParams, ExecuteCommandParams, WorkspaceSymbolParams, DocumentSymbolParams, ReferenceParams, SignatureHelpParams, CodeActionParams, HandlerResult, InitializeError, InitializeResult, CompletionParams, ResultProgressReporter, WorkDoneProgressReporter, CompletionList, CancellationToken, DidChangeConfigurationParams, SelectionRangeParams, RenameFilesParams, WorkspaceEdit, InlayHint, InlayHintParams } from 'vscode-languageserver/node';
|
|
3
2
|
import { LogLevel } from './logging';
|
|
4
3
|
export declare class LanguageServer {
|
|
5
4
|
/**
|
|
@@ -14,6 +13,12 @@ export declare class LanguageServer {
|
|
|
14
13
|
* The default number of projects that are permitted to activate concurrently.
|
|
15
14
|
*/
|
|
16
15
|
private static projectActivationConcurrencyLimitDefault;
|
|
16
|
+
/**
|
|
17
|
+
* The default maximum number of worker threads to use for running LSP projects. Can be overridden by
|
|
18
|
+
* per-workspace settings. Once this limit is reached, additional projects are spread evenly across the
|
|
19
|
+
* existing worker threads instead of each getting a dedicated one.
|
|
20
|
+
*/
|
|
21
|
+
static maxWorkerThreadsDefault: number;
|
|
17
22
|
/**
|
|
18
23
|
* The language server protocol connection, used to send and receive all requests and responses
|
|
19
24
|
*/
|
|
@@ -38,7 +43,7 @@ export declare class LanguageServer {
|
|
|
38
43
|
* This is used to prevent the language server from being overwhelmed by files we don't actually want to handle
|
|
39
44
|
*/
|
|
40
45
|
private pathFilterer;
|
|
41
|
-
logger: import("@rokucommunity/logger
|
|
46
|
+
logger: import("@rokucommunity/logger").Logger;
|
|
42
47
|
constructor();
|
|
43
48
|
run(): void;
|
|
44
49
|
/**
|
|
@@ -59,6 +64,12 @@ export declare class LanguageServer {
|
|
|
59
64
|
* we respect the most restrictive limit to avoid overwhelming the user's machine.
|
|
60
65
|
*/
|
|
61
66
|
private syncProjectActivationConcurrencyLimit;
|
|
67
|
+
/**
|
|
68
|
+
* Get the max worker threads setting from all workspaces and set the worker pool's cap to the lowest value found.
|
|
69
|
+
* This ensures that if the user has multiple workspaces open with different limits,
|
|
70
|
+
* we respect the most restrictive limit to avoid overwhelming the user's machine.
|
|
71
|
+
*/
|
|
72
|
+
private syncMaxWorkerThreads;
|
|
62
73
|
private onTextDocumentDidChangeContent;
|
|
63
74
|
/**
|
|
64
75
|
* Pending file changes waiting to be flushed after the debounce period
|
|
@@ -110,8 +121,9 @@ export declare class LanguageServer {
|
|
|
110
121
|
onHover(params: TextDocumentPositionParams): Promise<import("vscode-languageserver-types").Hover>;
|
|
111
122
|
onWorkspaceSymbol(params: WorkspaceSymbolParams): Promise<import("vscode-languageserver-types").WorkspaceSymbol[]>;
|
|
112
123
|
onSelectionRanges(params: SelectionRangeParams): Promise<import("vscode-languageserver-types").SelectionRange[]>;
|
|
124
|
+
onInlayHint(params: InlayHintParams): Promise<InlayHint[]>;
|
|
113
125
|
onDocumentSymbol(params: DocumentSymbolParams): Promise<import("vscode-languageserver-types").DocumentSymbol[]>;
|
|
114
|
-
onDefinition(params: TextDocumentPositionParams): Promise<import("vscode-languageserver-types").Location[]>;
|
|
126
|
+
onDefinition(params: TextDocumentPositionParams): Promise<(import("vscode-languageserver-types").Location | import("vscode-languageserver-types").LocationLink)[]>;
|
|
115
127
|
onSignatureHelp(params: SignatureHelpParams): Promise<import("vscode-languageserver-types").SignatureHelp>;
|
|
116
128
|
onReferences(params: ReferenceParams): Promise<import("vscode-languageserver-types").Location[]>;
|
|
117
129
|
onWillRenameFiles(params: RenameFilesParams): Promise<WorkspaceEdit | null>;
|
|
@@ -186,6 +198,7 @@ export interface BrightScriptClientConfiguration {
|
|
|
186
198
|
logLevel: LogLevel | string;
|
|
187
199
|
projectDiscoveryMaxDepth?: number;
|
|
188
200
|
projectActivationConcurrencyLimit?: number;
|
|
201
|
+
maxWorkerThreads?: number;
|
|
189
202
|
};
|
|
190
203
|
}
|
|
191
204
|
export {};
|
package/dist/LanguageServer.js
CHANGED
|
@@ -8,7 +8,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.NotificationName = exports.CustomCommands = exports.LanguageServer = void 0;
|
|
10
10
|
const path = require("path");
|
|
11
|
-
require("array-flat-polyfill");
|
|
12
11
|
const node_1 = require("vscode-languageserver/node");
|
|
13
12
|
const vscode_uri_1 = require("vscode-uri");
|
|
14
13
|
const vscode_languageserver_textdocument_1 = require("vscode-languageserver-textdocument");
|
|
@@ -23,6 +22,7 @@ const ProjectManager_1 = require("./lsp/ProjectManager");
|
|
|
23
22
|
const fsExtra = require("fs-extra");
|
|
24
23
|
const deferred_1 = require("./deferred");
|
|
25
24
|
const WorkerThreadProject_1 = require("./lsp/worker/WorkerThreadProject");
|
|
25
|
+
const WorkerPool_1 = require("./lsp/worker/WorkerPool");
|
|
26
26
|
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
27
27
|
const isEqual = require("lodash.isequal");
|
|
28
28
|
class LanguageServer {
|
|
@@ -70,6 +70,12 @@ class LanguageServer {
|
|
|
70
70
|
this.logger.debug(`Received ${event.diagnostics.length} diagnostics from project ${event.project.projectNumber}`);
|
|
71
71
|
this.sendDiagnostics(event).catch(logAndIgnoreError);
|
|
72
72
|
});
|
|
73
|
+
//notify the client if a project's worker thread crashes unexpectedly
|
|
74
|
+
this.projectManager.on('critical-failure', (event) => {
|
|
75
|
+
const message = `[${util_1.util.getProjectLogName(event.project)}] ${event.message}`;
|
|
76
|
+
this.logger.error(message);
|
|
77
|
+
this.sendCriticalFailure(message);
|
|
78
|
+
});
|
|
73
79
|
// Send all open document changes whenever a project is activated. This is necessary because at project startup, the project loads files from disk
|
|
74
80
|
// and may not have the latest unsaved file changes. Any existing projects that already use these files will just ignore the changes
|
|
75
81
|
// because the file contents haven't changed.
|
|
@@ -110,6 +116,8 @@ class LanguageServer {
|
|
|
110
116
|
}
|
|
111
117
|
//Register semantic token requests. TODO switch to a more specific connection function call once they actually add it
|
|
112
118
|
this.connection.onRequest(node_1.SemanticTokensRequest.method, this.onFullSemanticTokens.bind(this));
|
|
119
|
+
//Register inlay hint requests. Inlay hints live under connection.languages and aren't picked up by the on* auto-bind loop above
|
|
120
|
+
this.connection.languages.inlayHint.on(this.onInlayHint.bind(this));
|
|
113
121
|
//file-operation requests live under connection.workspace, so they aren't picked up by the on* auto-bind loop above
|
|
114
122
|
this.connection.workspace.onWillRenameFiles(this.onWillRenameFiles.bind(this));
|
|
115
123
|
// The content of a text document has changed. This event is emitted
|
|
@@ -140,8 +148,8 @@ class LanguageServer {
|
|
|
140
148
|
// Tell the client that the server supports code completion
|
|
141
149
|
completionProvider: {
|
|
142
150
|
resolveProvider: false,
|
|
143
|
-
|
|
144
|
-
triggerCharacters: ['.'],
|
|
151
|
+
//`.` auto-shows brightscript completions; `<` auto-shows xml element completions
|
|
152
|
+
triggerCharacters: ['.', '<'],
|
|
145
153
|
allCommitCharacters: ['.', '@']
|
|
146
154
|
},
|
|
147
155
|
documentSymbolProvider: true,
|
|
@@ -164,6 +172,7 @@ class LanguageServer {
|
|
|
164
172
|
definitionProvider: true,
|
|
165
173
|
hoverProvider: true,
|
|
166
174
|
selectionRangeProvider: true,
|
|
175
|
+
inlayHintProvider: true,
|
|
167
176
|
executeCommandProvider: {
|
|
168
177
|
commands: [
|
|
169
178
|
CustomCommands.TranspileFile
|
|
@@ -194,6 +203,7 @@ class LanguageServer {
|
|
|
194
203
|
//set our logger to the most verbose logLevel found across any project
|
|
195
204
|
await this.syncLogLevel();
|
|
196
205
|
this.syncProjectActivationConcurrencyLimit();
|
|
206
|
+
this.syncMaxWorkerThreads();
|
|
197
207
|
try {
|
|
198
208
|
if (this.hasConfigurationCapability) {
|
|
199
209
|
// register for when the user changes workspace or user settings
|
|
@@ -293,6 +303,29 @@ class LanguageServer {
|
|
|
293
303
|
concurrencyLimit = 1;
|
|
294
304
|
}
|
|
295
305
|
this.projectManager.projectActivationConcurrencyLimit = concurrencyLimit;
|
|
306
|
+
this.logger.info(`projectActivationConcurrencyLimit set to ${concurrencyLimit}`);
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Get the max worker threads setting from all workspaces and set the worker pool's cap to the lowest value found.
|
|
310
|
+
* This ensures that if the user has multiple workspaces open with different limits,
|
|
311
|
+
* we respect the most restrictive limit to avoid overwhelming the user's machine.
|
|
312
|
+
*/
|
|
313
|
+
syncMaxWorkerThreads() {
|
|
314
|
+
const limits = [...this.workspaceConfigsCache]
|
|
315
|
+
.map(x => { var _a, _b; return (_b = (_a = x === null || x === void 0 ? void 0 : x[1]) === null || _a === void 0 ? void 0 : _a.languageServer) === null || _b === void 0 ? void 0 : _b.maxWorkerThreads; })
|
|
316
|
+
.filter(x => typeof x === 'number');
|
|
317
|
+
//if we don't have any limits defined, use our default value
|
|
318
|
+
if (limits.length === 0) {
|
|
319
|
+
limits.push(LanguageServer.maxWorkerThreadsDefault);
|
|
320
|
+
}
|
|
321
|
+
let maxWorkerThreads = Math.min(...limits);
|
|
322
|
+
//we must always support at least 1 worker, otherwise no threaded projects could ever activate
|
|
323
|
+
if (!(maxWorkerThreads >= 1)) {
|
|
324
|
+
this.logger.log(`maxWorkerThreads was set to ${maxWorkerThreads}, which is not a valid value. Defaulting to 1.`);
|
|
325
|
+
maxWorkerThreads = 1;
|
|
326
|
+
}
|
|
327
|
+
WorkerThreadProject_1.workerPool.maxWorkers = maxWorkerThreads;
|
|
328
|
+
this.logger.info(`maxWorkerThreads set to ${maxWorkerThreads}`);
|
|
296
329
|
}
|
|
297
330
|
async onTextDocumentDidChangeContent(event) {
|
|
298
331
|
this.logger.debug('onTextDocumentDidChangeContent', event.document.uri);
|
|
@@ -372,8 +405,17 @@ class LanguageServer {
|
|
|
372
405
|
* Provide a list of completion items based on the current cursor position
|
|
373
406
|
*/
|
|
374
407
|
async onCompletion(params, cancellationToken, workDoneProgress, resultProgress) {
|
|
408
|
+
var _a;
|
|
375
409
|
this.logger.debug('onCompletion', params, cancellationToken);
|
|
376
410
|
const srcPath = util_1.util.uriToPath(params.textDocument.uri);
|
|
411
|
+
//`<` is registered as a trigger character for xml element completions, but it's the less-than
|
|
412
|
+
//operator everywhere else, so ignore it for non-xml files
|
|
413
|
+
if (((_a = params.context) === null || _a === void 0 ? void 0 : _a.triggerCharacter) === '<' && !srcPath.toLowerCase().endsWith('.xml')) {
|
|
414
|
+
return {
|
|
415
|
+
items: [],
|
|
416
|
+
isIncomplete: false
|
|
417
|
+
};
|
|
418
|
+
}
|
|
377
419
|
const completions = await this.projectManager.getCompletions({
|
|
378
420
|
srcPath: srcPath,
|
|
379
421
|
position: params.position,
|
|
@@ -389,7 +431,7 @@ class LanguageServer {
|
|
|
389
431
|
var _a;
|
|
390
432
|
//get all workspace folders (we'll use these to get settings)
|
|
391
433
|
let workspaces = await Promise.all(((_a = await this.connection.workspace.getWorkspaceFolders()) !== null && _a !== void 0 ? _a : []).map(async (x) => {
|
|
392
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
434
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
393
435
|
const workspaceFolder = util_1.util.uriToPath(x.uri);
|
|
394
436
|
const brightscriptConfig = await this.getClientConfiguration(x.uri, 'brightscript');
|
|
395
437
|
return {
|
|
@@ -402,7 +444,8 @@ class LanguageServer {
|
|
|
402
444
|
projectDiscoveryMaxDepth: (_f = (_e = brightscriptConfig === null || brightscriptConfig === void 0 ? void 0 : brightscriptConfig.languageServer) === null || _e === void 0 ? void 0 : _e.projectDiscoveryMaxDepth) !== null && _f !== void 0 ? _f : 15,
|
|
403
445
|
projectDiscoveryExclude: (_g = brightscriptConfig === null || brightscriptConfig === void 0 ? void 0 : brightscriptConfig.languageServer) === null || _g === void 0 ? void 0 : _g.projectDiscoveryExclude,
|
|
404
446
|
logLevel: (_h = brightscriptConfig === null || brightscriptConfig === void 0 ? void 0 : brightscriptConfig.languageServer) === null || _h === void 0 ? void 0 : _h.logLevel,
|
|
405
|
-
projectActivationConcurrencyLimit: (_j = brightscriptConfig === null || brightscriptConfig === void 0 ? void 0 : brightscriptConfig.languageServer) === null || _j === void 0 ? void 0 : _j.projectActivationConcurrencyLimit
|
|
447
|
+
projectActivationConcurrencyLimit: (_j = brightscriptConfig === null || brightscriptConfig === void 0 ? void 0 : brightscriptConfig.languageServer) === null || _j === void 0 ? void 0 : _j.projectActivationConcurrencyLimit,
|
|
448
|
+
maxWorkerThreads: (_k = brightscriptConfig === null || brightscriptConfig === void 0 ? void 0 : brightscriptConfig.languageServer) === null || _k === void 0 ? void 0 : _k.maxWorkerThreads
|
|
406
449
|
}
|
|
407
450
|
};
|
|
408
451
|
}));
|
|
@@ -433,6 +476,7 @@ class LanguageServer {
|
|
|
433
476
|
//now that we've processed any config diffs, update the cached copy of them
|
|
434
477
|
this.workspaceConfigsCache = configs;
|
|
435
478
|
this.syncProjectActivationConcurrencyLimit();
|
|
479
|
+
this.syncMaxWorkerThreads();
|
|
436
480
|
//if configuration changed, rebuild the path filterer
|
|
437
481
|
await this.rebuildPathFilterer();
|
|
438
482
|
//if the user changes any user/workspace config settings, just mass-reload all projects
|
|
@@ -455,6 +499,12 @@ class LanguageServer {
|
|
|
455
499
|
const srcPath = util_1.util.uriToPath(params.textDocument.uri);
|
|
456
500
|
return this.projectManager.getSelectionRanges({ srcPath: srcPath, positions: params.positions });
|
|
457
501
|
}
|
|
502
|
+
async onInlayHint(params) {
|
|
503
|
+
this.logger.debug('onInlayHint', params);
|
|
504
|
+
const srcPath = util_1.util.uriToPath(params.textDocument.uri);
|
|
505
|
+
const result = await this.projectManager.getInlayHints({ srcPath: srcPath, range: params.range });
|
|
506
|
+
return result !== null && result !== void 0 ? result : [];
|
|
507
|
+
}
|
|
458
508
|
async onDocumentSymbol(params) {
|
|
459
509
|
this.logger.debug('onDocumentSymbol', params);
|
|
460
510
|
const srcPath = util_1.util.uriToPath(params.textDocument.uri);
|
|
@@ -464,7 +514,7 @@ class LanguageServer {
|
|
|
464
514
|
async onDefinition(params) {
|
|
465
515
|
this.logger.debug('onDefinition', params);
|
|
466
516
|
const srcPath = util_1.util.uriToPath(params.textDocument.uri);
|
|
467
|
-
const result = this.projectManager.getDefinition({ srcPath: srcPath, position: params.position });
|
|
517
|
+
const result = await this.projectManager.getDefinition({ srcPath: srcPath, position: params.position });
|
|
468
518
|
return result;
|
|
469
519
|
}
|
|
470
520
|
async onSignatureHelp(params) {
|
|
@@ -728,6 +778,12 @@ LanguageServer.enableProjectDiscoveryDefault = true;
|
|
|
728
778
|
* The default number of projects that are permitted to activate concurrently.
|
|
729
779
|
*/
|
|
730
780
|
LanguageServer.projectActivationConcurrencyLimitDefault = 3;
|
|
781
|
+
/**
|
|
782
|
+
* The default maximum number of worker threads to use for running LSP projects. Can be overridden by
|
|
783
|
+
* per-workspace settings. Once this limit is reached, additional projects are spread evenly across the
|
|
784
|
+
* existing worker threads instead of each getting a dedicated one.
|
|
785
|
+
*/
|
|
786
|
+
LanguageServer.maxWorkerThreadsDefault = (0, WorkerPool_1.getDefaultMaxWorkerThreads)();
|
|
731
787
|
__decorate([
|
|
732
788
|
AddStackToErrorMessage
|
|
733
789
|
], LanguageServer.prototype, "onInitialize", null);
|
|
@@ -758,6 +814,9 @@ __decorate([
|
|
|
758
814
|
__decorate([
|
|
759
815
|
AddStackToErrorMessage
|
|
760
816
|
], LanguageServer.prototype, "onSelectionRanges", null);
|
|
817
|
+
__decorate([
|
|
818
|
+
AddStackToErrorMessage
|
|
819
|
+
], LanguageServer.prototype, "onInlayHint", null);
|
|
761
820
|
__decorate([
|
|
762
821
|
AddStackToErrorMessage
|
|
763
822
|
], LanguageServer.prototype, "onDocumentSymbol", null);
|