typescript-language-server 1.2.0 → 2.0.0
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/CHANGELOG.md +19 -0
- package/README.md +28 -2
- package/lib/cli.js +6 -6
- package/lib/cli.js.map +1 -1
- package/lib/completion.d.ts +1 -2
- package/lib/completion.d.ts.map +1 -1
- package/lib/completion.js +38 -26
- package/lib/completion.js.map +1 -1
- package/lib/configuration-manager.js +1 -1
- package/lib/configuration-manager.js.map +1 -1
- package/lib/diagnostic-queue.d.ts +1 -1
- package/lib/diagnostic-queue.d.ts.map +1 -1
- package/lib/lsp-connection.d.ts +5 -5
- package/lib/lsp-connection.d.ts.map +1 -1
- package/lib/lsp-connection.js +2 -3
- package/lib/lsp-connection.js.map +1 -1
- package/lib/lsp-server.d.ts +5 -6
- package/lib/lsp-server.d.ts.map +1 -1
- package/lib/lsp-server.js +16 -31
- package/lib/lsp-server.js.map +1 -1
- package/lib/lsp-server.spec.js +319 -96
- package/lib/lsp-server.spec.js.map +1 -1
- package/lib/test-utils.d.ts +3 -1
- package/lib/test-utils.d.ts.map +1 -1
- package/lib/test-utils.js +19 -8
- package/lib/test-utils.js.map +1 -1
- package/lib/ts-protocol.d.ts +27 -7
- package/lib/ts-protocol.d.ts.map +1 -1
- package/lib/ts-protocol.js +7 -1
- package/lib/ts-protocol.js.map +1 -1
- package/lib/tsServer/cancellation.d.ts +7 -4
- package/lib/tsServer/cancellation.d.ts.map +1 -1
- package/lib/tsServer/cancellation.js +7 -8
- package/lib/tsServer/cancellation.js.map +1 -1
- package/lib/tsServer/logDirectoryProvider.d.ts +13 -0
- package/lib/tsServer/logDirectoryProvider.d.ts.map +1 -0
- package/lib/tsServer/logDirectoryProvider.js +49 -0
- package/lib/tsServer/logDirectoryProvider.js.map +1 -0
- package/lib/tsServer/server.d.ts +3 -1
- package/lib/tsServer/server.d.ts.map +1 -1
- package/lib/tsServer/server.js +8 -7
- package/lib/tsServer/server.js.map +1 -1
- package/lib/tsServer/spawner.d.ts +7 -2
- package/lib/tsServer/spawner.d.ts.map +1 -1
- package/lib/tsServer/spawner.js +27 -19
- package/lib/tsServer/spawner.js.map +1 -1
- package/lib/tsServer/tracer.d.ts +26 -0
- package/lib/tsServer/tracer.d.ts.map +1 -0
- package/lib/tsServer/tracer.js +80 -0
- package/lib/tsServer/tracer.js.map +1 -0
- package/lib/tsServer/versionProvider.d.ts +7 -7
- package/lib/tsServer/versionProvider.d.ts.map +1 -1
- package/lib/tsServer/versionProvider.js +26 -20
- package/lib/tsServer/versionProvider.js.map +1 -1
- package/lib/tsp-client.d.ts +8 -3
- package/lib/tsp-client.d.ts.map +1 -1
- package/lib/tsp-client.js +4 -5
- package/lib/tsp-client.js.map +1 -1
- package/lib/tsp-client.spec.js +15 -5
- package/lib/tsp-client.spec.js.map +1 -1
- package/lib/utils/configuration.d.ts +17 -8
- package/lib/utils/configuration.d.ts.map +1 -1
- package/lib/utils/configuration.js +43 -1
- package/lib/utils/configuration.js.map +1 -1
- package/lib/utils/logger.d.ts +65 -0
- package/lib/utils/logger.d.ts.map +1 -0
- package/lib/utils/logger.js +189 -0
- package/lib/utils/logger.js.map +1 -0
- package/package.json +11 -11
- package/lib/logger.d.ts +0 -48
- package/lib/logger.d.ts.map +0 -1
- package/lib/logger.js +0 -106
- package/lib/logger.js.map +0 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/*
|
|
6
|
+
* Copyright (C) 2022 TypeFox and others.
|
|
7
|
+
*
|
|
8
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
|
|
9
|
+
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*/
|
|
11
|
+
import fs from 'node:fs';
|
|
12
|
+
import path from 'node:path';
|
|
13
|
+
export class LogDirectoryProvider {
|
|
14
|
+
constructor(rootPath) {
|
|
15
|
+
this.rootPath = rootPath;
|
|
16
|
+
}
|
|
17
|
+
getNewLogDirectory() {
|
|
18
|
+
const root = this.logDirectory();
|
|
19
|
+
if (root) {
|
|
20
|
+
try {
|
|
21
|
+
return fs.mkdtempSync(path.join(root, 'tsserver-log-'));
|
|
22
|
+
}
|
|
23
|
+
catch (e) {
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
logDirectory() {
|
|
30
|
+
if (!this.rootPath) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
try {
|
|
34
|
+
if (!fs.existsSync(this.rootPath)) {
|
|
35
|
+
fs.mkdirSync(this.rootPath);
|
|
36
|
+
}
|
|
37
|
+
return this.rootPath;
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export const noopLogDirectoryProvider = new class {
|
|
45
|
+
getNewLogDirectory() {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=logDirectoryProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logDirectoryProvider.js","sourceRoot":"","sources":["../../src/tsServer/logDirectoryProvider.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,MAAM,OAAO,oBAAoB;IAC7B,YACqB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;IAClC,CAAC;IAEE,kBAAkB;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACjC,IAAI,IAAI,EAAE;YACN,IAAI;gBACA,OAAO,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;aAC3D;YAAC,OAAO,CAAC,EAAE;gBACR,OAAO,SAAS,CAAC;aACpB;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,OAAO,SAAS,CAAC;SACpB;QACD,IAAI;YACA,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC/B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC/B;YACD,OAAO,IAAI,CAAC,QAAQ,CAAC;SACxB;QAAC,MAAM;YACJ,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI;IACjC,kBAAkB;QACrB,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ,CAAC"}
|
package/lib/tsServer/server.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { CancellationToken } from 'vscode-jsonrpc';
|
|
|
4
4
|
import { ServerResponse, ServerType, TypeScriptRequestTypes } from './requests.js';
|
|
5
5
|
import type { TspClientOptions } from '../tsp-client.js';
|
|
6
6
|
import { OngoingRequestCanceller } from './cancellation.js';
|
|
7
|
+
import type Tracer from './tracer.js';
|
|
7
8
|
import type { TypeScriptVersion } from './versionProvider.js';
|
|
8
9
|
export declare enum ExecutionTarget {
|
|
9
10
|
Semantic = 0,
|
|
@@ -58,13 +59,14 @@ export declare class ProcessBasedTsServer implements ITypeScriptServer {
|
|
|
58
59
|
private readonly _tsServerLogFile;
|
|
59
60
|
private readonly _requestCanceller;
|
|
60
61
|
private readonly _version;
|
|
62
|
+
private readonly _tracer;
|
|
61
63
|
private readonly _requestQueue;
|
|
62
64
|
private readonly _callbacks;
|
|
63
65
|
private readonly _pendingResponses;
|
|
64
66
|
private readonly _eventHandlers;
|
|
65
67
|
private readonly _exitHandlers;
|
|
66
68
|
private readonly _errorHandlers;
|
|
67
|
-
constructor(_serverId: string, _serverSource: ServerType, _process: TsServerProcess, _tsServerLogFile: string | undefined, _requestCanceller: OngoingRequestCanceller, _version: TypeScriptVersion);
|
|
69
|
+
constructor(_serverId: string, _serverSource: ServerType, _process: TsServerProcess, _tsServerLogFile: string | undefined, _requestCanceller: OngoingRequestCanceller, _version: TypeScriptVersion, _tracer: Tracer);
|
|
68
70
|
onEvent(handler: OnEventHandler): void;
|
|
69
71
|
onExit(handler: OnExitHandler): void;
|
|
70
72
|
onError(handler: OnErrorHandler): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/tsServer/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/tsServer/server.ts"],"names":[],"mappings":"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"}
|
package/lib/tsServer/server.js
CHANGED
|
@@ -18,13 +18,14 @@ export var ExecutionTarget;
|
|
|
18
18
|
ExecutionTarget[ExecutionTarget["Syntax"] = 1] = "Syntax";
|
|
19
19
|
})(ExecutionTarget = ExecutionTarget || (ExecutionTarget = {}));
|
|
20
20
|
export class ProcessBasedTsServer {
|
|
21
|
-
constructor(_serverId, _serverSource, _process, _tsServerLogFile, _requestCanceller, _version) {
|
|
21
|
+
constructor(_serverId, _serverSource, _process, _tsServerLogFile, _requestCanceller, _version, _tracer) {
|
|
22
22
|
this._serverId = _serverId;
|
|
23
23
|
this._serverSource = _serverSource;
|
|
24
24
|
this._process = _process;
|
|
25
25
|
this._tsServerLogFile = _tsServerLogFile;
|
|
26
26
|
this._requestCanceller = _requestCanceller;
|
|
27
27
|
this._version = _version;
|
|
28
|
+
this._tracer = _tracer;
|
|
28
29
|
this._requestQueue = new RequestQueue();
|
|
29
30
|
this._callbacks = new CallbackMap();
|
|
30
31
|
this._pendingResponses = new Set();
|
|
@@ -88,12 +89,12 @@ export class ProcessBasedTsServer {
|
|
|
88
89
|
const seq = event.body.request_seq;
|
|
89
90
|
const callback = this._callbacks.fetch(seq);
|
|
90
91
|
if (callback) {
|
|
91
|
-
|
|
92
|
+
this._tracer.traceRequestCompleted(this._serverId, 'requestCompleted', seq, callback);
|
|
92
93
|
callback.onSuccess(undefined);
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
96
|
else {
|
|
96
|
-
|
|
97
|
+
this._tracer.traceEvent(this._serverId, event);
|
|
97
98
|
this._eventHandlers.forEach(handler => handler(event));
|
|
98
99
|
}
|
|
99
100
|
break;
|
|
@@ -128,7 +129,7 @@ export class ProcessBasedTsServer {
|
|
|
128
129
|
if (!callback) {
|
|
129
130
|
return;
|
|
130
131
|
}
|
|
131
|
-
|
|
132
|
+
this._tracer.traceResponse(this._serverId, response, callback);
|
|
132
133
|
if (response.success) {
|
|
133
134
|
callback.onSuccess(response);
|
|
134
135
|
}
|
|
@@ -174,7 +175,7 @@ export class ProcessBasedTsServer {
|
|
|
174
175
|
}
|
|
175
176
|
sendRequest(requestItem) {
|
|
176
177
|
const serverRequest = requestItem.request;
|
|
177
|
-
|
|
178
|
+
this._tracer.traceRequest(this._serverId, serverRequest, requestItem.expectsResponse, this._requestQueue.length);
|
|
178
179
|
if (requestItem.expectsResponse && !requestItem.isAsync) {
|
|
179
180
|
this._pendingResponses.add(requestItem.request.seq);
|
|
180
181
|
}
|
|
@@ -194,8 +195,8 @@ export class ProcessBasedTsServer {
|
|
|
194
195
|
this._pendingResponses.delete(seq);
|
|
195
196
|
return callback;
|
|
196
197
|
}
|
|
197
|
-
logTrace(
|
|
198
|
-
|
|
198
|
+
logTrace(message) {
|
|
199
|
+
this._tracer.logTrace(this._serverId, message);
|
|
199
200
|
}
|
|
200
201
|
static getQueueingType(command, lowPriority) {
|
|
201
202
|
if (ProcessBasedTsServer.fenceCommands.has(command)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/tsServer/server.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;;;;GAKG;AAIH,OAAO,EAAe,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,cAAc,EAAsC,MAAM,eAAe,CAAC;AAGnF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/tsServer/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import API from '../utils/api.js';
|
|
2
|
-
import { Logger } from '../logger.js';
|
|
2
|
+
import { Logger } from '../utils/logger.js';
|
|
3
3
|
import type { TspClientOptions } from '../tsp-client.js';
|
|
4
|
+
import type { ILogDirectoryProvider } from './logDirectoryProvider.js';
|
|
4
5
|
import { ITypeScriptServer } from './server.js';
|
|
6
|
+
import type Tracer from './tracer.js';
|
|
5
7
|
import type { TypeScriptVersion } from './versionProvider.js';
|
|
6
8
|
export declare class TypeScriptServerSpawner {
|
|
7
9
|
private readonly _apiVersion;
|
|
10
|
+
private readonly _logDirectoryProvider;
|
|
8
11
|
private readonly _logger;
|
|
9
|
-
|
|
12
|
+
private readonly _tracer;
|
|
13
|
+
constructor(_apiVersion: API, _logDirectoryProvider: ILogDirectoryProvider, _logger: Logger, _tracer: Tracer);
|
|
10
14
|
spawn(version: TypeScriptVersion, configuration: TspClientOptions): ITypeScriptServer;
|
|
11
15
|
private kindToServerType;
|
|
12
16
|
private getTsServerArgs;
|
|
17
|
+
private isLoggingEnabled;
|
|
13
18
|
}
|
|
14
19
|
//# sourceMappingURL=spawner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawner.d.ts","sourceRoot":"","sources":["../../src/tsServer/spawner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"spawner.d.ts","sourceRoot":"","sources":["../../src/tsServer/spawner.ts"],"names":[],"mappings":"AAYA,OAAO,GAAG,MAAM,iBAAiB,CAAC;AAElC,OAAO,EAAE,MAAM,EAAY,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAA6C,MAAM,aAAa,CAAC;AAE3F,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,qBAAa,uBAAuB;IAE5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAHP,WAAW,EAAE,GAAG,EAChB,qBAAqB,EAAE,qBAAqB,EAC5C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM;IAG7B,KAAK,CACR,OAAO,EAAE,iBAAiB,EAC1B,aAAa,EAAE,gBAAgB,GAChC,iBAAiB;IA0BpB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,eAAe;IA8EvB,OAAO,CAAC,gBAAgB;CAG3B"}
|
package/lib/tsServer/spawner.js
CHANGED
|
@@ -8,26 +8,37 @@
|
|
|
8
8
|
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
|
|
9
9
|
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
10
10
|
*/
|
|
11
|
+
import path from 'node:path';
|
|
11
12
|
import API from '../utils/api.js';
|
|
12
13
|
import { ServerType } from './requests.js';
|
|
14
|
+
import { LogLevel } from '../utils/logger.js';
|
|
13
15
|
import { nodeRequestCancellerFactory } from './cancellation.js';
|
|
14
16
|
import { ProcessBasedTsServer } from './server.js';
|
|
15
17
|
import { NodeTsServerProcessFactory } from './serverProcess.js';
|
|
18
|
+
import { TsServerLogLevel } from '../utils/configuration.js';
|
|
16
19
|
export class TypeScriptServerSpawner {
|
|
17
|
-
constructor(_apiVersion,
|
|
18
|
-
// private readonly _logDirectoryProvider: ILogDirectoryProvider,
|
|
19
|
-
_logger) {
|
|
20
|
+
constructor(_apiVersion, _logDirectoryProvider, _logger, _tracer) {
|
|
20
21
|
this._apiVersion = _apiVersion;
|
|
22
|
+
this._logDirectoryProvider = _logDirectoryProvider;
|
|
21
23
|
this._logger = _logger;
|
|
24
|
+
this._tracer = _tracer;
|
|
22
25
|
}
|
|
23
26
|
spawn(version, configuration) {
|
|
24
27
|
const kind = "main" /* TsServerProcessKind.Main */;
|
|
25
28
|
const processFactory = new NodeTsServerProcessFactory();
|
|
26
|
-
const canceller = nodeRequestCancellerFactory.create(
|
|
29
|
+
const canceller = nodeRequestCancellerFactory.create(kind, this._tracer);
|
|
27
30
|
const { args, tsServerLogFile } = this.getTsServerArgs("main" /* TsServerProcessKind.Main */, configuration, this._apiVersion, canceller.cancellationPipeName);
|
|
31
|
+
if (this.isLoggingEnabled(configuration)) {
|
|
32
|
+
if (tsServerLogFile) {
|
|
33
|
+
this._logger.logIgnoringVerbosity(LogLevel.Info, `<${kind}> Log file: ${tsServerLogFile}`);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
this._logger.logIgnoringVerbosity(LogLevel.Error, `<${kind}> Could not create log directory`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
28
39
|
const process = processFactory.fork(version, args, "main" /* TsServerProcessKind.Main */, configuration);
|
|
29
40
|
this._logger.log('Starting tsserver');
|
|
30
|
-
return new ProcessBasedTsServer(kind, this.kindToServerType(kind), process, tsServerLogFile, canceller, version);
|
|
41
|
+
return new ProcessBasedTsServer(kind, this.kindToServerType(kind), process, tsServerLogFile, canceller, version, this._tracer);
|
|
31
42
|
}
|
|
32
43
|
kindToServerType(kind) {
|
|
33
44
|
switch (kind) {
|
|
@@ -60,7 +71,7 @@ export class TypeScriptServerSpawner {
|
|
|
60
71
|
else {
|
|
61
72
|
args.push('--useSingleInferredProject');
|
|
62
73
|
}
|
|
63
|
-
const { disableAutomaticTypingAcquisition, globalPlugins, locale,
|
|
74
|
+
const { disableAutomaticTypingAcquisition, globalPlugins, locale, npmLocation, pluginProbeLocations } = configuration;
|
|
64
75
|
if (disableAutomaticTypingAcquisition || kind === "syntax" /* TsServerProcessKind.Syntax */ || kind === "diagnostics" /* TsServerProcessKind.Diagnostics */) {
|
|
65
76
|
args.push('--disableAutomaticTypingAcquisition');
|
|
66
77
|
}
|
|
@@ -70,19 +81,13 @@ export class TypeScriptServerSpawner {
|
|
|
70
81
|
if (cancellationPipeName) {
|
|
71
82
|
args.push('--cancellationPipeName', cancellationPipeName + '*');
|
|
72
83
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
// }
|
|
81
|
-
if (logFile) {
|
|
82
|
-
args.push('--logFile', logFile);
|
|
83
|
-
}
|
|
84
|
-
if (logVerbosity) {
|
|
85
|
-
args.push('--logVerbosity', logVerbosity);
|
|
84
|
+
if (this.isLoggingEnabled(configuration)) {
|
|
85
|
+
const logDir = this._logDirectoryProvider.getNewLogDirectory();
|
|
86
|
+
if (logDir) {
|
|
87
|
+
tsServerLogFile = path.join(logDir, 'tsserver.log');
|
|
88
|
+
args.push('--logVerbosity', TsServerLogLevel.toString(configuration.logVerbosity));
|
|
89
|
+
args.push('--logFile', tsServerLogFile);
|
|
90
|
+
}
|
|
86
91
|
}
|
|
87
92
|
// if (configuration.enableTsServerTracing) {
|
|
88
93
|
// tsServerTraceDirectory = this._logDirectoryProvider.getNewLogDirectory();
|
|
@@ -118,5 +123,8 @@ export class TypeScriptServerSpawner {
|
|
|
118
123
|
args.push('--validateDefaultNpmLocation');
|
|
119
124
|
return { args, tsServerLogFile, tsServerTraceDirectory };
|
|
120
125
|
}
|
|
126
|
+
isLoggingEnabled(configuration) {
|
|
127
|
+
return configuration.logVerbosity !== TsServerLogLevel.Off;
|
|
128
|
+
}
|
|
121
129
|
}
|
|
122
130
|
//# sourceMappingURL=spawner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawner.js","sourceRoot":"","sources":["../../src/tsServer/spawner.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;;;;GAKG;AAEH,OAAO,GAAG,MAAM,iBAAiB,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"spawner.js","sourceRoot":"","sources":["../../src/tsServer/spawner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type tsp from 'typescript/lib/protocol.d.js';
|
|
2
|
+
import { Logger } from '../utils/logger.js';
|
|
3
|
+
export declare enum Trace {
|
|
4
|
+
Off = 0,
|
|
5
|
+
Messages = 1,
|
|
6
|
+
Verbose = 2
|
|
7
|
+
}
|
|
8
|
+
export declare type TraceValue = 'off' | 'messages' | 'verbose';
|
|
9
|
+
export declare namespace Trace {
|
|
10
|
+
function fromString(value: string): Trace;
|
|
11
|
+
}
|
|
12
|
+
interface RequestExecutionMetadata {
|
|
13
|
+
readonly queuingStartTime: number;
|
|
14
|
+
}
|
|
15
|
+
export default class Tracer {
|
|
16
|
+
private readonly logger;
|
|
17
|
+
private readonly trace;
|
|
18
|
+
constructor(logger: Logger, trace: Trace);
|
|
19
|
+
traceRequest(serverId: string, request: tsp.Request, responseExpected: boolean, queueLength: number): void;
|
|
20
|
+
traceResponse(serverId: string, response: tsp.Response, meta: RequestExecutionMetadata): void;
|
|
21
|
+
traceRequestCompleted(serverId: string, command: string, request_seq: number, meta: RequestExecutionMetadata): any;
|
|
22
|
+
traceEvent(serverId: string, event: tsp.Event): void;
|
|
23
|
+
logTrace(serverId: string, message: string, data?: any): void;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=tracer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/tsServer/tracer.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,GAAG,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,oBAAY,KAAK;IACb,GAAG,IAAA;IACH,QAAQ,IAAA;IACR,OAAO,IAAA;CACV;AAED,oBAAY,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;AAExD,yBAAiB,KAAK,CAAC;IACnB,SAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAY/C;CACJ;AAED,UAAU,wBAAwB;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;IAEnB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBADL,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK;IAI1B,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAW1G,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,wBAAwB,GAAG,IAAI;IAW7F,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,GAAG,GAAG;IAOlH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI;IAWpD,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;CAKvE"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/*
|
|
6
|
+
* Copyright (C) 2022 TypeFox and others.
|
|
7
|
+
*
|
|
8
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
|
|
9
|
+
* You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*/
|
|
11
|
+
export var Trace;
|
|
12
|
+
(function (Trace) {
|
|
13
|
+
Trace[Trace["Off"] = 0] = "Off";
|
|
14
|
+
Trace[Trace["Messages"] = 1] = "Messages";
|
|
15
|
+
Trace[Trace["Verbose"] = 2] = "Verbose";
|
|
16
|
+
})(Trace = Trace || (Trace = {}));
|
|
17
|
+
(function (Trace) {
|
|
18
|
+
function fromString(value) {
|
|
19
|
+
value = value.toLowerCase();
|
|
20
|
+
switch (value) {
|
|
21
|
+
case 'off':
|
|
22
|
+
return Trace.Off;
|
|
23
|
+
case 'messages':
|
|
24
|
+
return Trace.Messages;
|
|
25
|
+
case 'verbose':
|
|
26
|
+
return Trace.Verbose;
|
|
27
|
+
default:
|
|
28
|
+
return Trace.Off;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
Trace.fromString = fromString;
|
|
32
|
+
})(Trace = Trace || (Trace = {}));
|
|
33
|
+
export default class Tracer {
|
|
34
|
+
constructor(logger, trace) {
|
|
35
|
+
this.logger = logger;
|
|
36
|
+
this.trace = trace;
|
|
37
|
+
}
|
|
38
|
+
traceRequest(serverId, request, responseExpected, queueLength) {
|
|
39
|
+
if (this.trace === Trace.Off) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
let data = undefined;
|
|
43
|
+
if (this.trace === Trace.Verbose && request.arguments) {
|
|
44
|
+
data = `Arguments: ${JSON.stringify(request.arguments, null, 4)}`;
|
|
45
|
+
}
|
|
46
|
+
this.logTrace(serverId, `Sending request: ${request.command} (${request.seq}). Response expected: ${responseExpected ? 'yes' : 'no'}. Current queue length: ${queueLength}`, data);
|
|
47
|
+
}
|
|
48
|
+
traceResponse(serverId, response, meta) {
|
|
49
|
+
if (this.trace === Trace.Off) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
let data = undefined;
|
|
53
|
+
if (this.trace === Trace.Verbose && response.body) {
|
|
54
|
+
data = `Result: ${JSON.stringify(response.body, null, 4)}`;
|
|
55
|
+
}
|
|
56
|
+
this.logTrace(serverId, `Response received: ${response.command} (${response.request_seq}). Request took ${Date.now() - meta.queuingStartTime} ms. Success: ${response.success} ${!response.success ? `. Message: ${response.message}` : ''}`, data);
|
|
57
|
+
}
|
|
58
|
+
traceRequestCompleted(serverId, command, request_seq, meta) {
|
|
59
|
+
if (this.trace === Trace.Off) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
this.logTrace(serverId, `Async response received: ${command} (${request_seq}). Request took ${Date.now() - meta.queuingStartTime} ms.`);
|
|
63
|
+
}
|
|
64
|
+
traceEvent(serverId, event) {
|
|
65
|
+
if (this.trace === Trace.Off) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
let data = undefined;
|
|
69
|
+
if (this.trace === Trace.Verbose && event.body) {
|
|
70
|
+
data = `Data: ${JSON.stringify(event.body, null, 4)}`;
|
|
71
|
+
}
|
|
72
|
+
this.logTrace(serverId, `Event received: ${event.event} (${event.seq}).`, data);
|
|
73
|
+
}
|
|
74
|
+
logTrace(serverId, message, data) {
|
|
75
|
+
if (this.trace !== Trace.Off) {
|
|
76
|
+
this.logger.trace('Trace', `<${serverId}> ${message}`, data);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=tracer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/tsServer/tracer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import API from '../utils/api.js';
|
|
2
|
-
import type {
|
|
3
|
-
import type { Logger } from '../logger.js';
|
|
2
|
+
import type { TypeScriptServiceConfiguration } from '../utils/configuration.js';
|
|
3
|
+
import type { Logger } from '../utils/logger.js';
|
|
4
4
|
export declare const enum TypeScriptVersionSource {
|
|
5
5
|
Bundled = "bundled",
|
|
6
6
|
UserSetting = "user-setting",
|
|
@@ -9,10 +9,10 @@ export declare const enum TypeScriptVersionSource {
|
|
|
9
9
|
export declare class TypeScriptVersion {
|
|
10
10
|
readonly source: TypeScriptVersionSource;
|
|
11
11
|
readonly path: string;
|
|
12
|
+
private readonly logger;
|
|
12
13
|
private readonly _pathLabel?;
|
|
13
|
-
private readonly logger?;
|
|
14
14
|
private _api;
|
|
15
|
-
constructor(source: TypeScriptVersionSource, path: string,
|
|
15
|
+
constructor(source: TypeScriptVersionSource, path: string, logger: Logger, _pathLabel?: string | undefined);
|
|
16
16
|
get tscPath(): string;
|
|
17
17
|
get tsServerPath(): string;
|
|
18
18
|
get pathLabel(): string;
|
|
@@ -23,9 +23,9 @@ export declare class TypeScriptVersion {
|
|
|
23
23
|
}
|
|
24
24
|
export declare const MODULE_FOLDERS: string[];
|
|
25
25
|
export declare class TypeScriptVersionProvider {
|
|
26
|
-
private configuration
|
|
27
|
-
private logger
|
|
28
|
-
constructor(configuration
|
|
26
|
+
private configuration;
|
|
27
|
+
private logger;
|
|
28
|
+
constructor(configuration: TypeScriptServiceConfiguration, logger: Logger);
|
|
29
29
|
getUserSettingVersion(): TypeScriptVersion | null;
|
|
30
30
|
getWorkspaceVersion(workspaceFolders: string[]): TypeScriptVersion | null;
|
|
31
31
|
bundledVersion(): TypeScriptVersion | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versionProvider.d.ts","sourceRoot":"","sources":["../../src/tsServer/versionProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"versionProvider.d.ts","sourceRoot":"","sources":["../../src/tsServer/versionProvider.ts"],"names":[],"mappings":"AAgBA,OAAO,GAAG,MAAM,iBAAiB,CAAC;AAClC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAEhF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,0BAAkB,uBAAuB;IACrC,OAAO,YAAY;IACnB,WAAW,iBAAiB;IAC5B,SAAS,cAAc;CAC1B;AAED,qBAAa,iBAAiB;aAGN,MAAM,EAAE,uBAAuB;aAC/B,IAAI,EAAE,MAAM;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IALhC,OAAO,CAAC,IAAI,CAAyB;gBAEjB,MAAM,EAAE,uBAAuB,EAC/B,IAAI,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,oBAAQ;IAKxC,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,IAAI,GAAG,GAAG,IAAI,CAM/B;IAED,IAAW,aAAa,IAAI,MAAM,GAAG,IAAI,CAGxC;IAED,OAAO,CAAC,oBAAoB;CA0C/B;AAED,eAAO,MAAM,cAAc,UAAgG,CAAC;AAE5H,qBAAa,yBAAyB;IACf,OAAO,CAAC,aAAa;IAAkC,OAAO,CAAC,MAAM;gBAA7D,aAAa,EAAE,8BAA8B,EAAU,MAAM,EAAE,MAAM;IAEzF,qBAAqB,IAAI,iBAAiB,GAAG,IAAI;IAyCjD,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,iBAAiB,GAAG,IAAI;IAazE,cAAc,IAAI,iBAAiB,GAAG,IAAI;CAWpD"}
|