@zzzen/pyright-internal 1.2.0-dev.20240421 → 1.2.0-dev.20240505
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/dist/analyzer/analyzerNodeInfo.d.ts +1 -4
- package/dist/analyzer/analyzerNodeInfo.js +1 -11
- package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
- package/dist/analyzer/binder.d.ts +0 -2
- package/dist/analyzer/binder.js +42 -66
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.js +98 -45
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/constructors.js +31 -13
- package/dist/analyzer/constructors.js.map +1 -1
- package/dist/analyzer/dataClasses.d.ts +1 -1
- package/dist/analyzer/dataClasses.js +23 -11
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/deprecatedSymbols.js +2 -4
- package/dist/analyzer/deprecatedSymbols.js.map +1 -1
- package/dist/analyzer/namedTuples.js +0 -8
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/operations.js +3 -2
- package/dist/analyzer/operations.js.map +1 -1
- package/dist/analyzer/packageTypeVerifier.js +10 -10
- package/dist/analyzer/parseTreeUtils.d.ts +6 -3
- package/dist/analyzer/parseTreeUtils.js +75 -46
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +19 -13
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/protocols.js +32 -13
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/scope.d.ts +14 -7
- package/dist/analyzer/scope.js +28 -17
- package/dist/analyzer/scope.js.map +1 -1
- package/dist/analyzer/scopeUtils.js +3 -3
- package/dist/analyzer/scopeUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +252 -207
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +5 -1
- package/dist/analyzer/typeGuards.js +35 -110
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typeUtils.js +6 -8
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typedDicts.js +4 -6
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.js +13 -0
- package/dist/analyzer/types.js.map +1 -1
- package/dist/common/console.d.ts +12 -1
- package/dist/common/console.js +22 -3
- package/dist/common/console.js.map +1 -1
- package/dist/common/diagnostic.d.ts +4 -0
- package/dist/common/diagnostic.js +10 -4
- package/dist/common/diagnostic.js.map +1 -1
- package/dist/common/envVarUtils.d.ts +2 -2
- package/dist/common/envVarUtils.js +1 -2
- package/dist/common/envVarUtils.js.map +1 -1
- package/dist/common/languageServerInterface.d.ts +6 -3
- package/dist/common/languageServerInterface.js +11 -0
- package/dist/common/languageServerInterface.js.map +1 -1
- package/dist/common/uri/uri.d.ts +2 -0
- package/dist/common/uri/uri.js +3 -1
- package/dist/common/uri/uri.js.map +1 -1
- package/dist/languageServerBase.d.ts +3 -2
- package/dist/languageServerBase.js +13 -35
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.js +5 -2
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/completionProvider.js +12 -8
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.js +1 -1
- package/dist/languageService/dynamicFeature.d.ts +18 -0
- package/dist/languageService/dynamicFeature.js +54 -0
- package/dist/languageService/dynamicFeature.js.map +1 -0
- package/dist/languageService/fileWatcherDynamicFeature.d.ts +12 -0
- package/dist/languageService/fileWatcherDynamicFeature.js +49 -0
- package/dist/languageService/fileWatcherDynamicFeature.js.map +1 -0
- package/dist/languageService/referencesProvider.js +3 -2
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/localization/package.nls.cs.json +28 -26
- package/dist/localization/package.nls.de.json +28 -26
- package/dist/localization/package.nls.en-us.json +1 -1
- package/dist/localization/package.nls.es.json +27 -25
- package/dist/localization/package.nls.fr.json +28 -26
- package/dist/localization/package.nls.it.json +28 -26
- package/dist/localization/package.nls.ja.json +28 -26
- package/dist/localization/package.nls.ko.json +28 -26
- package/dist/localization/package.nls.pl.json +27 -25
- package/dist/localization/package.nls.pt-br.json +28 -26
- package/dist/localization/package.nls.qps-ploc.json +25 -23
- package/dist/localization/package.nls.ru.json +28 -26
- package/dist/localization/package.nls.tr.json +28 -26
- package/dist/localization/package.nls.zh-cn.json +28 -26
- package/dist/localization/package.nls.zh-tw.json +28 -26
- package/dist/parser/parseNodes.d.ts +2 -2
- package/dist/parser/tokenizer.js +7 -1
- package/dist/parser/tokenizer.js.map +1 -1
- package/dist/tests/checker.test.js +8 -0
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/envVarUtils.test.js +20 -0
- package/dist/tests/envVarUtils.test.js.map +1 -1
- package/dist/tests/fourslash/{completions.importDunderNames.fourslash.js → completions.import.dunderNames.fourslash.js} +1 -1
- package/dist/tests/fourslash/completions.import.dunderNames.fourslash.js.map +1 -0
- package/dist/tests/fourslash/{completions.importsDuplicates.fourslash.js → completions.import.duplicates.fourslash.js} +1 -1
- package/dist/tests/fourslash/{completions.importsDuplicates.fourslash.js.map → completions.import.duplicates.fourslash.js.map} +1 -1
- package/dist/tests/fourslash/completions.import.exactMatch.fourslash.js +29 -0
- package/dist/tests/fourslash/completions.import.exactMatch.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.import.excludeAlreadyImported.fourslash.js +14 -0
- package/dist/tests/fourslash/completions.import.excludeAlreadyImported.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.import.interimFile.fourslash.disabled.d.ts +1 -0
- package/dist/tests/fourslash/{completions.importInterimFile.fourslash.disabled.js → completions.import.interimFile.fourslash.disabled.js} +1 -1
- package/dist/tests/fourslash/completions.import.interimFile.fourslash.disabled.js.map +1 -0
- package/dist/tests/fourslash/{completions.importPrivateNoPytyped.fourslash.js → completions.import.privateNoPytyped.fourslash.js} +1 -1
- package/dist/tests/fourslash/completions.import.privateNoPytyped.fourslash.js.map +1 -0
- package/dist/tests/fourslash/{completions.importPytyped.fourslash.js → completions.import.pytyped.fourslash.js} +1 -1
- package/dist/tests/fourslash/completions.import.pytyped.fourslash.js.map +1 -0
- package/dist/tests/fourslash/{completions.importPytypedLocal.fourslash.js → completions.import.pytypedLocal.fourslash.js} +1 -1
- package/dist/tests/fourslash/completions.import.pytypedLocal.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.import.submodule.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/{completions.importSubmodule.fourslash.js → completions.import.submodule.fourslash.js} +1 -1
- package/dist/tests/fourslash/completions.import.submodule.fourslash.js.map +1 -0
- package/dist/tests/harness/fourslash/testState.js +1 -1
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/harness/vfs/pathValidation.js +2 -1
- package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
- package/dist/tests/parser.test.js +7 -2
- package/dist/tests/parser.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +60 -480
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +0 -482
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +0 -604
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +5 -423
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator5.test.js +2 -2
- package/dist/tests/typeEvaluator5.test.js.map +1 -1
- package/dist/tests/typeEvaluator6.test.d.ts +1 -0
- package/dist/tests/typeEvaluator6.test.js +712 -0
- package/dist/tests/typeEvaluator6.test.js.map +1 -0
- package/dist/tests/typeEvaluator7.test.d.ts +1 -0
- package/dist/tests/typeEvaluator7.test.js +677 -0
- package/dist/tests/typeEvaluator7.test.js.map +1 -0
- package/dist/tests/typeEvaluator8.test.d.ts +1 -0
- package/dist/tests/typeEvaluator8.test.js +660 -0
- package/dist/tests/typeEvaluator8.test.js.map +1 -0
- package/dist/workspaceFactory.d.ts +3 -1
- package/dist/workspaceFactory.js.map +1 -1
- package/package.json +1 -1
- package/dist/tests/fourslash/completions.importDunderNames.fourslash.js.map +0 -1
- package/dist/tests/fourslash/completions.importInterimFile.fourslash.disabled.js.map +0 -1
- package/dist/tests/fourslash/completions.importPrivateNoPytyped.fourslash.js.map +0 -1
- package/dist/tests/fourslash/completions.importPytyped.fourslash.js.map +0 -1
- package/dist/tests/fourslash/completions.importPytypedLocal.fourslash.js.map +0 -1
- package/dist/tests/fourslash/completions.importSubmodule.fourslash.js.map +0 -1
- /package/dist/tests/fourslash/{completions.importDunderNames.fourslash.d.ts → completions.import.dunderNames.fourslash.d.ts} +0 -0
- /package/dist/tests/fourslash/{completions.importPrivateNoPytyped.fourslash.d.ts → completions.import.duplicates.fourslash.d.ts} +0 -0
- /package/dist/tests/fourslash/{completions.importInterimFile.fourslash.disabled.d.ts → completions.import.exactMatch.fourslash.d.ts} +0 -0
- /package/dist/tests/fourslash/{completions.importSubmodule.fourslash.d.ts → completions.import.excludeAlreadyImported.fourslash.d.ts} +0 -0
- /package/dist/tests/fourslash/{completions.importPytyped.fourslash.d.ts → completions.import.privateNoPytyped.fourslash.d.ts} +0 -0
- /package/dist/tests/fourslash/{completions.importPytypedLocal.fourslash.d.ts → completions.import.pytyped.fourslash.d.ts} +0 -0
- /package/dist/tests/fourslash/{completions.importsDuplicates.fourslash.d.ts → completions.import.pytypedLocal.fourslash.d.ts} +0 -0
package/dist/common/console.d.ts
CHANGED
@@ -43,9 +43,17 @@ export declare class StderrConsole implements ConsoleInterface {
|
|
43
43
|
warn(message: string): void;
|
44
44
|
error(message: string): void;
|
45
45
|
}
|
46
|
-
export
|
46
|
+
export interface Chainable {
|
47
|
+
addChain(console: ConsoleInterface): void;
|
48
|
+
removeChain(console: ConsoleInterface): void;
|
49
|
+
}
|
50
|
+
export declare namespace Chainable {
|
51
|
+
function is(value: any): value is Chainable;
|
52
|
+
}
|
53
|
+
export declare class ConsoleWithLogLevel implements ConsoleInterface, Chainable, Disposable {
|
47
54
|
private _console;
|
48
55
|
private _name;
|
56
|
+
private readonly _chains;
|
49
57
|
private _maxLevel;
|
50
58
|
private _disposed;
|
51
59
|
constructor(_console: ConsoleInterface, _name?: string);
|
@@ -56,9 +64,12 @@ export declare class ConsoleWithLogLevel implements ConsoleInterface, Disposable
|
|
56
64
|
warn(message: string): void;
|
57
65
|
info(message: string): void;
|
58
66
|
log(message: string): void;
|
67
|
+
addChain(console: ConsoleInterface): void;
|
68
|
+
removeChain(console: ConsoleInterface): void;
|
59
69
|
private get _prefix();
|
60
70
|
private _log;
|
61
71
|
private _getNumericalLevel;
|
72
|
+
private _processChains;
|
62
73
|
}
|
63
74
|
export declare function log(console: ConsoleInterface, logType: LogLevel, msg: string): void;
|
64
75
|
export declare function convertLogLevel(logLevelValue?: string): LogLevel;
|
package/dist/common/console.js
CHANGED
@@ -32,8 +32,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
32
32
|
return result;
|
33
33
|
};
|
34
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
35
|
-
exports.convertLogLevel = exports.log = exports.ConsoleWithLogLevel = exports.StderrConsole = exports.StandardConsole = exports.NullConsole = exports.getLevelNumber = exports.ConsoleInterface = exports.LogLevel = void 0;
|
35
|
+
exports.convertLogLevel = exports.log = exports.ConsoleWithLogLevel = exports.Chainable = exports.StderrConsole = exports.StandardConsole = exports.NullConsole = exports.getLevelNumber = exports.ConsoleInterface = exports.LogLevel = void 0;
|
36
36
|
const debug = __importStar(require("./debug"));
|
37
|
+
const collectionUtils_1 = require("./collectionUtils");
|
37
38
|
var LogLevel;
|
38
39
|
(function (LogLevel) {
|
39
40
|
LogLevel["Error"] = "error";
|
@@ -141,10 +142,18 @@ class StderrConsole {
|
|
141
142
|
}
|
142
143
|
}
|
143
144
|
exports.StderrConsole = StderrConsole;
|
145
|
+
var Chainable;
|
146
|
+
(function (Chainable) {
|
147
|
+
function is(value) {
|
148
|
+
return value && value.addChain && value.removeChain;
|
149
|
+
}
|
150
|
+
Chainable.is = is;
|
151
|
+
})(Chainable || (exports.Chainable = Chainable = {}));
|
144
152
|
class ConsoleWithLogLevel {
|
145
153
|
constructor(_console, _name = '') {
|
146
154
|
this._console = _console;
|
147
155
|
this._name = _name;
|
156
|
+
this._chains = [];
|
148
157
|
this._maxLevel = 2;
|
149
158
|
this._disposed = false;
|
150
159
|
}
|
@@ -181,14 +190,21 @@ class ConsoleWithLogLevel {
|
|
181
190
|
log(message) {
|
182
191
|
this._log(LogLevel.Log, `${this._prefix}${message}`);
|
183
192
|
}
|
193
|
+
addChain(console) {
|
194
|
+
(0, collectionUtils_1.addIfUnique)(this._chains, console);
|
195
|
+
}
|
196
|
+
removeChain(console) {
|
197
|
+
(0, collectionUtils_1.removeArrayElements)(this._chains, (i) => i === console);
|
198
|
+
}
|
184
199
|
get _prefix() {
|
185
200
|
return this._name ? `(${this._name}) ` : '';
|
186
201
|
}
|
187
202
|
_log(level, message) {
|
188
|
-
if (this.
|
203
|
+
if (this._disposed) {
|
189
204
|
return;
|
190
205
|
}
|
191
|
-
|
206
|
+
this._processChains(level, message);
|
207
|
+
if (this._getNumericalLevel(level) > this._maxLevel) {
|
192
208
|
return;
|
193
209
|
}
|
194
210
|
log(this._console, level, message);
|
@@ -198,6 +214,9 @@ class ConsoleWithLogLevel {
|
|
198
214
|
debug.assert(numericLevel !== undefined, 'Logger: unknown log level.');
|
199
215
|
return numericLevel !== undefined ? numericLevel : 2;
|
200
216
|
}
|
217
|
+
_processChains(level, message) {
|
218
|
+
this._chains.forEach((c) => log(c, level, message));
|
219
|
+
}
|
201
220
|
}
|
202
221
|
exports.ConsoleWithLogLevel = ConsoleWithLogLevel;
|
203
222
|
function log(console, logType, msg) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../../../../src/common/console.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;AAGH,+CAAiC;
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../../../../src/common/console.ts"],"names":[],"mappings":"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"}
|
@@ -2,6 +2,8 @@ import { Commands } from '../commands/commands';
|
|
2
2
|
import { DiagnosticLevel } from './configOptions';
|
3
3
|
import { Range, TextRange } from './textRange';
|
4
4
|
import { Uri } from './uri/uri';
|
5
|
+
export declare const defaultMaxDiagnosticDepth = 5;
|
6
|
+
export declare const defaultMaxDiagnosticLineCount = 8;
|
5
7
|
export declare enum TaskListPriority {
|
6
8
|
High = "High",
|
7
9
|
Normal = "Normal",
|
@@ -66,6 +68,7 @@ export declare function compareDiagnostics(d1: Diagnostic, d2: Diagnostic): 0 |
|
|
66
68
|
export declare class DiagnosticAddendum {
|
67
69
|
private _messages;
|
68
70
|
private _childAddenda;
|
71
|
+
private _nestLevel;
|
69
72
|
private _range;
|
70
73
|
addMessage(message: string): void;
|
71
74
|
addTextRange(range: TextRange): void;
|
@@ -75,6 +78,7 @@ export declare class DiagnosticAddendum {
|
|
75
78
|
addAddendum(addendum: DiagnosticAddendum): void;
|
76
79
|
getChildren(): DiagnosticAddendum[];
|
77
80
|
getMessages(): string[];
|
81
|
+
getNestLevel(): number;
|
78
82
|
getEffectiveTextRange(): TextRange | undefined;
|
79
83
|
private _getTextRangeRecursive;
|
80
84
|
private _getMessageCount;
|
@@ -8,10 +8,10 @@
|
|
8
8
|
* Class that represents errors and warnings.
|
9
9
|
*/
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
11
|
-
exports.DiagnosticAddendum = exports.compareDiagnostics = exports.Diagnostic = exports.convertLevelToCategory = exports.DiagnosticCategory = exports.ActionKind = exports.TaskListPriority = void 0;
|
11
|
+
exports.DiagnosticAddendum = exports.compareDiagnostics = exports.Diagnostic = exports.convertLevelToCategory = exports.DiagnosticCategory = exports.ActionKind = exports.TaskListPriority = exports.defaultMaxDiagnosticLineCount = exports.defaultMaxDiagnosticDepth = void 0;
|
12
12
|
const collectionUtils_1 = require("./collectionUtils");
|
13
|
-
|
14
|
-
|
13
|
+
exports.defaultMaxDiagnosticDepth = 5;
|
14
|
+
exports.defaultMaxDiagnosticLineCount = 8;
|
15
15
|
const maxRecursionCount = 64;
|
16
16
|
// Corresponds to the CommentTaskPriority enum at https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_git/VS?path=src/env/shell/PackageFramework/Framework/CommentTaskPriority.cs
|
17
17
|
var TaskListPriority;
|
@@ -113,11 +113,13 @@ class DiagnosticAddendum {
|
|
113
113
|
}
|
114
114
|
// Create a new (nested) addendum to which messages can be added.
|
115
115
|
createAddendum() {
|
116
|
+
var _a;
|
116
117
|
const newAddendum = new DiagnosticAddendum();
|
118
|
+
newAddendum._nestLevel = ((_a = this._nestLevel) !== null && _a !== void 0 ? _a : 0) + 1;
|
117
119
|
this.addAddendum(newAddendum);
|
118
120
|
return newAddendum;
|
119
121
|
}
|
120
|
-
getString(maxDepth =
|
122
|
+
getString(maxDepth = exports.defaultMaxDiagnosticDepth, maxLineCount = exports.defaultMaxDiagnosticLineCount) {
|
121
123
|
let lines = this._getLinesRecursive(maxDepth, maxLineCount);
|
122
124
|
if (lines.length > maxLineCount) {
|
123
125
|
lines = lines.slice(0, maxLineCount);
|
@@ -141,6 +143,10 @@ class DiagnosticAddendum {
|
|
141
143
|
getMessages() {
|
142
144
|
return this._messages;
|
143
145
|
}
|
146
|
+
getNestLevel() {
|
147
|
+
var _a;
|
148
|
+
return (_a = this._nestLevel) !== null && _a !== void 0 ? _a : 0;
|
149
|
+
}
|
144
150
|
// Returns undefined if no range is associated with this addendum
|
145
151
|
// or its children. Returns a non-empty range if there is a single range
|
146
152
|
// associated.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"diagnostic.js","sourceRoot":"","sources":["../../../../../src/common/diagnostic.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAGH,uDAAgD;
|
1
|
+
{"version":3,"file":"diagnostic.js","sourceRoot":"","sources":["../../../../../src/common/diagnostic.ts"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Workspace } from '../workspaceFactory';
|
1
|
+
import { Workspace, WorkspaceFolder } from '../workspaceFactory';
|
2
2
|
import { Uri } from './uri/uri';
|
3
3
|
export declare function resolvePathWithEnvVariables(workspace: Workspace, path: string, workspaces: Workspace[]): Uri | undefined;
|
4
|
-
export declare function expandPathVariables(path: string, rootPath: Uri, workspaces:
|
4
|
+
export declare function expandPathVariables(path: string, rootPath: Uri, workspaces: WorkspaceFolder[]): string;
|
@@ -88,8 +88,7 @@ function expandPathVariables(path, rootPath, workspaces) {
|
|
88
88
|
replace(/\$\{env:VIRTUAL_ENV\}/g, process.env.VIRTUAL_ENV || '');
|
89
89
|
}
|
90
90
|
if (os.homedir) {
|
91
|
-
replace(
|
92
|
-
replace(/^~/g, os.homedir() || process.env.HOME || process.env.USERPROFILE || '~');
|
91
|
+
replace(/(?:^|\/)~(?=\/)/g, os.homedir() || process.env.HOME || process.env.USERPROFILE || '~');
|
93
92
|
}
|
94
93
|
return path;
|
95
94
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"envVarUtils.js","sourceRoot":"","sources":["../../../../../src/common/envVarUtils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AAGzB,mCAAgC;AAChC,2CAAiE;AACjE,+CAA4C;AAE5C,SAAgB,2BAA2B,CACvC,SAAoB,EACpB,IAAY,EACZ,UAAuB;IAEvB,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IAElC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,SAAG,CAAC,KAAK,EAAE,EAAE,UAAU,CAAC,CAAC;IAC/E,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,yBAAW,CAAC,uBAAuB,CAAC,CAAC;IAChG,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACpB,gFAAgF;QAChF,OAAO,SAAG,CAAC,KAAK,CAAC,IAAA,4BAAgB,EAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;KACnE;IAED,IAAI,OAAO,EAAE;QACT,wDAAwD;QACxD,OAAO,OAAO,CAAC,YAAY,CAAC,IAAA,4BAAgB,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;KAChE;IAED,0FAA0F;IAC1F,IAAI,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;QACpC,OAAO,SAAS,CAAC;KACpB;IAED,+DAA+D;IAC/D,IAAI,CAAC,IAAA,4BAAgB,EAAC,IAAA,4BAAgB,EAAC,QAAQ,CAAC,CAAC,EAAE;QAC/C,OAAO,SAAS,CAAC;KACpB;IAED,8BAA8B;IAC9B,OAAO,SAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;AAC5C,CAAC;AA/BD,kEA+BC;AAED,0EAA0E;AAC1E,sEAAsE;AACtE,4EAA4E;AAC5E,SAAgB,mBAAmB,CAAC,IAAY,EAAE,QAAa,EAAE,
|
1
|
+
{"version":3,"file":"envVarUtils.js","sourceRoot":"","sources":["../../../../../src/common/envVarUtils.ts"],"names":[],"mappings":"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"}
|
@@ -36,7 +36,7 @@ export interface ServerSettings {
|
|
36
36
|
}
|
37
37
|
export interface MessageAction {
|
38
38
|
title: string;
|
39
|
-
|
39
|
+
[key: string]: string | boolean | number | object;
|
40
40
|
}
|
41
41
|
export interface WindowInterface {
|
42
42
|
showErrorMessage(message: string): void;
|
@@ -46,17 +46,20 @@ export interface WindowInterface {
|
|
46
46
|
showInformationMessage(message: string): void;
|
47
47
|
showInformationMessage(message: string, ...actions: MessageAction[]): Promise<MessageAction | undefined>;
|
48
48
|
}
|
49
|
+
export declare namespace WindowInterface {
|
50
|
+
function is(obj: any): obj is WindowInterface;
|
51
|
+
}
|
49
52
|
export interface LanguageServerBaseInterface {
|
50
53
|
readonly console: ConsoleInterface;
|
51
54
|
readonly window: WindowInterface;
|
52
55
|
readonly supportAdvancedEdits: boolean;
|
53
56
|
readonly serviceProvider: ext.ServiceProvider;
|
54
|
-
getWorkspaces(): Promise<Workspace[]>;
|
55
57
|
createBackgroundAnalysis(serviceId: string): BackgroundAnalysisBase | undefined;
|
56
58
|
reanalyze(): void;
|
57
59
|
restart(): void;
|
60
|
+
getWorkspaces(): Promise<Workspace[]>;
|
61
|
+
getSettings(workspace: Workspace): Promise<ServerSettings>;
|
58
62
|
}
|
59
63
|
export interface LanguageServerInterface extends LanguageServerBaseInterface {
|
60
64
|
getWorkspaceForFile(fileUri: Uri): Promise<Workspace>;
|
61
|
-
getSettings(workspace: Workspace): Promise<ServerSettings>;
|
62
65
|
}
|
@@ -7,4 +7,15 @@
|
|
7
7
|
* Interface for language server
|
8
8
|
*/
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
10
|
+
exports.WindowInterface = void 0;
|
11
|
+
var WindowInterface;
|
12
|
+
(function (WindowInterface) {
|
13
|
+
function is(obj) {
|
14
|
+
return (!!obj &&
|
15
|
+
obj.showErrorMessage !== undefined &&
|
16
|
+
obj.showWarningMessage !== undefined &&
|
17
|
+
obj.showInformationMessage !== undefined);
|
18
|
+
}
|
19
|
+
WindowInterface.is = is;
|
20
|
+
})(WindowInterface || (exports.WindowInterface = WindowInterface = {}));
|
10
21
|
//# sourceMappingURL=languageServerInterface.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"languageServerInterface.js","sourceRoot":"","sources":["../../../../../src/common/languageServerInterface.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
|
1
|
+
{"version":3,"file":"languageServerInterface.js","sourceRoot":"","sources":["../../../../../src/common/languageServerInterface.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAwDH,IAAiB,eAAe,CAS/B;AATD,WAAiB,eAAe;IAC5B,SAAgB,EAAE,CAAC,GAAQ;QACvB,OAAO,CACH,CAAC,CAAC,GAAG;YACL,GAAG,CAAC,gBAAgB,KAAK,SAAS;YAClC,GAAG,CAAC,kBAAkB,KAAK,SAAS;YACpC,GAAG,CAAC,sBAAsB,KAAK,SAAS,CAC3C,CAAC;IACN,CAAC;IAPe,kBAAE,KAOjB,CAAA;AACL,CAAC,EATgB,eAAe,+BAAf,eAAe,QAS/B"}
|
package/dist/common/uri/uri.d.ts
CHANGED
@@ -68,6 +68,8 @@ export declare namespace Uri {
|
|
68
68
|
function parse(value: string | undefined, caseSensitivityDetector: CaseSensitivityDetector): Uri;
|
69
69
|
function constant(markerName: string): Uri;
|
70
70
|
function empty(): Uri;
|
71
|
+
const DefaultWorkspaceRootComponent = "<default workspace root>";
|
72
|
+
const DefaultWorkspaceRootPath = "/<default workspace root>";
|
71
73
|
function defaultWorkspace(serviceProvider: IServiceProvider): Uri;
|
72
74
|
function defaultWorkspace(caseSensitivityDetector: CaseSensitivityDetector): Uri;
|
73
75
|
function fromJsonObj(jsonObj: JsonObjType): any;
|
package/dist/common/uri/uri.js
CHANGED
@@ -99,9 +99,11 @@ var Uri;
|
|
99
99
|
return emptyUri_1.EmptyUri.instance;
|
100
100
|
}
|
101
101
|
Uri.empty = empty;
|
102
|
+
Uri.DefaultWorkspaceRootComponent = '<default workspace root>';
|
103
|
+
Uri.DefaultWorkspaceRootPath = `/${Uri.DefaultWorkspaceRootComponent}`;
|
102
104
|
function defaultWorkspace(arg) {
|
103
105
|
arg = caseSensitivityDetector_1.CaseSensitivityDetector.is(arg) ? arg : arg.get(serviceKeys_1.ServiceKeys.caseSensitivityDetector);
|
104
|
-
return Uri.file(
|
106
|
+
return Uri.file(Uri.DefaultWorkspaceRootPath, arg);
|
105
107
|
}
|
106
108
|
Uri.defaultWorkspace = defaultWorkspace;
|
107
109
|
function fromJsonObj(jsonObj) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"uri.js","sourceRoot":"","sources":["../../../../../../src/common/uri/uri.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,2CAAwC;AACxC,wEAAqE;AACrE,kCAAkC;AAClC,4CAAgF;AAChF,gDAA6C;AAG7C,+CAA4C;AAC5C,yCAAsC;AACtC,uCAAmD;AACnD,qCAAkC;AAElC,IAAkB,QAIjB;AAJD,WAAkB,QAAQ;IACtB,uCAAI,CAAA;IACJ,qCAAG,CAAA;IACH,yCAAK,CAAA;AACT,CAAC,EAJiB,QAAQ,wBAAR,QAAQ,QAIzB;AAkGD,wDAAwD;AACxD,SAAS,WAAW,CAAC,GAAQ;IACzB,IAAI,QAA4B,CAAC;IAEjC,gEAAgE;IAChE,qDAAqD;IACrD,wGAAwG;IACxG,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/D,QAAQ,GAAG,KAAK,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;KAC9C;SAAM;QACH,uCAAuC;QACvC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC;KACzB;IAED,0DAA0D;IAC1D,qBAAqB;IACrB,IAAI,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;QAClC,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAChC;IAED,qEAAqE;IACrE,0BAA0B;IAC1B,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,MAAK,OAAO,EAAE;QAC/B,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KAC5C;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,sFAAsF;AACtF,kDAAkD;AAClD,wEAAwE;AACxE,SAAS,YAAY,CAAC,GAAiB;IACnC,iDAAiD;IACjD,iDAAiD;IACjD,MAAM,MAAM,GAAG,gBAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAErD,+EAA+E;IAC/E,mEAAmE;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7E,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACxC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;AAC/C,CAAC;AAED,IAAiB,GAAG,
|
1
|
+
{"version":3,"file":"uri.js","sourceRoot":"","sources":["../../../../../../src/common/uri/uri.ts"],"names":[],"mappings":"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"}
|
@@ -29,6 +29,7 @@ import { DefinitionFilter } from './languageService/definitionProvider';
|
|
29
29
|
import { CollectionResult } from './languageService/documentSymbolCollector';
|
30
30
|
import { ParseFileResults } from './parser/parser';
|
31
31
|
import { InitStatus, Workspace, WorkspaceFactory } from './workspaceFactory';
|
32
|
+
import { DynamicFeature } from './languageService/dynamicFeature';
|
32
33
|
export interface ServerOptions {
|
33
34
|
productName: string;
|
34
35
|
rootDirectory: Uri;
|
@@ -124,7 +125,6 @@ export declare abstract class LanguageServerBase implements LanguageServerInterf
|
|
124
125
|
private _pendingCommandCancellationSource;
|
125
126
|
private _progressReporter;
|
126
127
|
private _lastTriggerKind;
|
127
|
-
private _lastFileWatcherRegistration;
|
128
128
|
private _initialized;
|
129
129
|
private _workspaceFoldersChangedDisposable;
|
130
130
|
protected client: ClientCapabilities;
|
@@ -134,6 +134,7 @@ export declare abstract class LanguageServerBase implements LanguageServerInterf
|
|
134
134
|
protected readonly fs: FileSystem;
|
135
135
|
protected readonly caseSensitiveDetector: CaseSensitivityDetector;
|
136
136
|
protected readonly documentsWithDiagnostics: Set<string>;
|
137
|
+
private readonly _dynamicFeatures;
|
137
138
|
constructor(serverOptions: ServerOptions, connection: Connection);
|
138
139
|
get console(): ConsoleInterface;
|
139
140
|
get window(): RemoteWindow;
|
@@ -210,7 +211,7 @@ export declare abstract class LanguageServerBase implements LanguageServerInterf
|
|
210
211
|
}>;
|
211
212
|
protected sendDiagnostics(params: PublishDiagnosticsParams[]): void;
|
212
213
|
protected decodeUri(uri: string): Uri;
|
213
|
-
|
214
|
+
protected addDynamicFeature(feature: DynamicFeature): void;
|
214
215
|
private _getCompatibleMarkupKind;
|
215
216
|
private _convertDiagnostics;
|
216
217
|
}
|
@@ -44,6 +44,8 @@ const signatureHelpProvider_1 = require("./languageService/signatureHelpProvider
|
|
44
44
|
const workspaceSymbolProvider_1 = require("./languageService/workspaceSymbolProvider");
|
45
45
|
const localize_1 = require("./localization/localize");
|
46
46
|
const workspaceFactory_1 = require("./workspaceFactory");
|
47
|
+
const dynamicFeature_1 = require("./languageService/dynamicFeature");
|
48
|
+
const fileWatcherDynamicFeature_1 = require("./languageService/fileWatcherDynamicFeature");
|
47
49
|
const nullProgressReporter = (0, progress_1.attachWorkDone)(undefined, /* params */ undefined);
|
48
50
|
/*
|
49
51
|
* Additional DiagnosticTag values that are specific to Visual Studio.
|
@@ -136,6 +138,7 @@ class LanguageServerBase {
|
|
136
138
|
this.openFileMap = new Map();
|
137
139
|
// The URIs for which diagnostics are reported
|
138
140
|
this.documentsWithDiagnostics = new Set();
|
141
|
+
this._dynamicFeatures = new dynamicFeature_1.DynamicFeatures();
|
139
142
|
// Stash the base directory into a global variable.
|
140
143
|
// This must happen before fs.getModulePath().
|
141
144
|
global.__rootDirectory = serverOptions.rootDirectory.getFilePath();
|
@@ -175,6 +178,7 @@ class LanguageServerBase {
|
|
175
178
|
var _a;
|
176
179
|
this.workspaceFactory.clear();
|
177
180
|
this.openFileMap.clear();
|
181
|
+
this._dynamicFeatures.unregister();
|
178
182
|
(_a = this._workspaceFoldersChangedDisposable) === null || _a === void 0 ? void 0 : _a.dispose();
|
179
183
|
}
|
180
184
|
// Creates a service instance that's used for analyzing a
|
@@ -232,7 +236,7 @@ class LanguageServerBase {
|
|
232
236
|
tasks.push(this.updateSettingsForWorkspace(workspace, workspace.isInitialized));
|
233
237
|
});
|
234
238
|
Promise.all(tasks).then(() => {
|
235
|
-
this.
|
239
|
+
this._dynamicFeatures.register();
|
236
240
|
});
|
237
241
|
}
|
238
242
|
async updateSettingsForWorkspace(workspace, status, serverSettings) {
|
@@ -243,6 +247,7 @@ class LanguageServerBase {
|
|
243
247
|
this.console.level = (_a = serverSettings.logLevel) !== null && _a !== void 0 ? _a : console_1.LogLevel.Info;
|
244
248
|
// Apply the new path to the workspace (before restarting the service).
|
245
249
|
serverSettings.pythonPath = this.workspaceFactory.applyPythonPath(workspace, serverSettings.pythonPath ? serverSettings.pythonPath : undefined);
|
250
|
+
this._dynamicFeatures.update(serverSettings);
|
246
251
|
// Then use the updated settings to restart the service.
|
247
252
|
this.updateOptionsAndRestartService(workspace, serverSettings);
|
248
253
|
workspace.disableLanguageServices = !!serverSettings.disableLanguageServices;
|
@@ -375,6 +380,9 @@ class LanguageServerBase {
|
|
375
380
|
!!((_19 = (_18 = (_17 = (_16 = capabilities.textDocument) === null || _16 === void 0 ? void 0 : _16.completion) === null || _17 === void 0 ? void 0 : _17.completionItem) === null || _18 === void 0 ? void 0 : _18.resolveSupport) === null || _19 === void 0 ? void 0 : _19.properties.some((p) => p === 'additionalTextEdits'));
|
376
381
|
// Create a service instance for each of the workspace folders.
|
377
382
|
this.workspaceFactory.handleInitialize(params);
|
383
|
+
if (this.client.hasWatchFileCapability) {
|
384
|
+
this.addDynamicFeature(new fileWatcherDynamicFeature_1.FileWatcherDynamicFeature(this.connection, this.client.hasWatchFileRelativePathCapability, this.fs, this.workspaceFactory));
|
385
|
+
}
|
378
386
|
const result = {
|
379
387
|
capabilities: {
|
380
388
|
textDocumentSync: vscode_languageserver_1.TextDocumentSyncKind.Incremental,
|
@@ -431,9 +439,9 @@ class LanguageServerBase {
|
|
431
439
|
}
|
432
440
|
this._workspaceFoldersChangedDisposable = this.connection.workspace.onDidChangeWorkspaceFolders((event) => {
|
433
441
|
this.workspaceFactory.handleWorkspaceFoldersChanged(event);
|
434
|
-
this.
|
442
|
+
this._dynamicFeatures.register();
|
435
443
|
});
|
436
|
-
this.
|
444
|
+
this._dynamicFeatures.register();
|
437
445
|
}
|
438
446
|
onDidChangeConfiguration(params) {
|
439
447
|
this.console.log(`Received updated settings`);
|
@@ -874,38 +882,8 @@ class LanguageServerBase {
|
|
874
882
|
decodeUri(uri) {
|
875
883
|
return uri_1.Uri.parse(uri, this.serverOptions.serviceProvider);
|
876
884
|
}
|
877
|
-
|
878
|
-
|
879
|
-
return;
|
880
|
-
}
|
881
|
-
const watchKind = vscode_languageserver_1.WatchKind.Create | vscode_languageserver_1.WatchKind.Change | vscode_languageserver_1.WatchKind.Delete;
|
882
|
-
// Set default (config files and all workspace files) first.
|
883
|
-
const watchers = [
|
884
|
-
...service_1.configFileNames.map((fileName) => ({ globPattern: `**/${fileName}`, kind: watchKind })),
|
885
|
-
{ globPattern: '**', kind: watchKind },
|
886
|
-
];
|
887
|
-
// Add all python search paths to watch list
|
888
|
-
if (this.client.hasWatchFileRelativePathCapability) {
|
889
|
-
// Dedup search paths from all workspaces.
|
890
|
-
// Get rid of any search path under workspace root since it is already watched by
|
891
|
-
// "**" above.
|
892
|
-
const foldersToWatch = (0, uriUtils_1.deduplicateFolders)(this.workspaceFactory
|
893
|
-
.getNonDefaultWorkspaces()
|
894
|
-
.map((w) => w.searchPathsToWatch.filter((p) => !p.startsWith(w.rootUri))));
|
895
|
-
foldersToWatch.forEach((p) => {
|
896
|
-
const globPattern = (0, uriUtils_1.isFile)(this.fs, p, /* treatZipDirectoryAsFile */ true)
|
897
|
-
? { baseUri: p.getDirectory().toString(), pattern: p.fileName }
|
898
|
-
: { baseUri: p.toString(), pattern: '**' };
|
899
|
-
watchers.push({ globPattern, kind: watchKind });
|
900
|
-
});
|
901
|
-
}
|
902
|
-
// Dispose all existing file watchers and create new ones.
|
903
|
-
this.connection.client.register(vscode_languageserver_1.DidChangeWatchedFilesNotification.type, { watchers }).then((d) => {
|
904
|
-
if (this._lastFileWatcherRegistration) {
|
905
|
-
this._lastFileWatcherRegistration.dispose();
|
906
|
-
}
|
907
|
-
this._lastFileWatcherRegistration = d;
|
908
|
-
});
|
885
|
+
addDynamicFeature(feature) {
|
886
|
+
this._dynamicFeatures.add(feature);
|
909
887
|
}
|
910
888
|
_getCompatibleMarkupKind(clientSupportedFormats) {
|
911
889
|
const serverSupportedFormats = [vscode_languageserver_1.MarkupKind.PlainText, vscode_languageserver_1.MarkupKind.Markdown];
|