Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0940fb709c | ||
|
|
9d79f0ff2b | ||
|
|
c23d218403 | ||
|
|
8dacea0cd5 | ||
|
|
04e93a9bb4 | ||
|
|
a17c8e6dd4 | ||
|
|
4508c95dac | ||
|
|
bcc45e5d60 | ||
|
|
df83a38c61 |
@@ -1,5 +1,12 @@
|
||||
# C/C++ for Visual Studio Code Change Log
|
||||
|
||||
## Version 1.0.1: September 21, 2020
|
||||
### Bug Fixes
|
||||
* Fix "No IL available" IntelliSense error on Linux/macOS when `#error` directives are present in the source code. [#6009](https://github.com/microsoft/vscode-cpptools/issues/6009), [#6114](https://github.com/microsoft/vscode-cpptools/issues/6114)
|
||||
* Fix issue on Windows with the language server not shutting down properly which causes the IntelliSense database to become corrupted. [PR #6141](https://github.com/microsoft/vscode-cpptools/issues/6141)
|
||||
* Fix "No IL available" IntelliSense error when predefined macros are undefined. [#6147](https://github.com/microsoft/vscode-cpptools/issues/6147)
|
||||
* Fix infinite loop IntelliSense regression. [#6166](https://github.com/microsoft/vscode-cpptools/issues/6166)
|
||||
|
||||
## Version 1.0.0: September 14, 2020
|
||||
### New Features
|
||||
* Support non-UTF-8 file encodings (GBK, UTF-16, etc.), excluding `files.autoGuessEncoding` support. [#414](https://github.com/microsoft/vscode-cpptools/issues/414)
|
||||
|
||||
+11
-11
@@ -2,7 +2,7 @@
|
||||
"name": "cpptools",
|
||||
"displayName": "C/C++",
|
||||
"description": "C/C++ IntelliSense, debugging, and code browsing.",
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.1",
|
||||
"publisher": "ms-vscode",
|
||||
"icon": "LanguageCCPP_color_128x.png",
|
||||
"readme": "README.md",
|
||||
@@ -2290,7 +2290,7 @@
|
||||
"runtimeDependencies": [
|
||||
{
|
||||
"description": "C/C++ language components (Linux / x86_64)",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2135548",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2143240",
|
||||
"platforms": [
|
||||
"linux"
|
||||
],
|
||||
@@ -2301,11 +2301,11 @@
|
||||
"./bin/cpptools",
|
||||
"./bin/cpptools-srv"
|
||||
],
|
||||
"integrity": "1C38F099F1A0B7998AA3C96715D1E3122AF3B14E15F6F0DABFBC7EC189D6A9C3"
|
||||
"integrity": "EE9F56D1F6499B606BAC390505C88C0B5CC749A00B410C67E20269A9F60FA9E4"
|
||||
},
|
||||
{
|
||||
"description": "C/C++ language components (Linux / armhf)",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2135628",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2143241",
|
||||
"platforms": [
|
||||
"linux"
|
||||
],
|
||||
@@ -2316,11 +2316,11 @@
|
||||
"./bin/cpptools",
|
||||
"./bin/cpptools-srv"
|
||||
],
|
||||
"integrity": "3888B34E283BD466B1BD967A4AEE3FFA7AF7DF800598B99DEAB524134A8F8DD3"
|
||||
"integrity": "3C37FD864ED5F7CECED0D9487DA3EEEC30A3BA973C9B943A5B93B11960B18761"
|
||||
},
|
||||
{
|
||||
"description": "C/C++ language components (Linux / aarch64)",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2143106",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2143080",
|
||||
"platforms": [
|
||||
"linux"
|
||||
],
|
||||
@@ -2331,11 +2331,11 @@
|
||||
"./bin/cpptools",
|
||||
"./bin/cpptools-srv"
|
||||
],
|
||||
"integrity": "E42742E4E9963BF945C61AA60ED62D4A953174CDD1865E1496F8588A53A7C3DF"
|
||||
"integrity": "E83B2522E2EC9EE14E0A0E8E95DE1DE1C816A1BED128189C6F4DD8B99D4E4AC9"
|
||||
},
|
||||
{
|
||||
"description": "C/C++ language components (OS X)",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2135549",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2143079",
|
||||
"platforms": [
|
||||
"darwin"
|
||||
],
|
||||
@@ -2343,11 +2343,11 @@
|
||||
"./bin/cpptools",
|
||||
"./bin/cpptools-srv"
|
||||
],
|
||||
"integrity": "2213A48C1C53763B4EA548D702171C8C0DDB33C684433F2707F23B9A4AEA6F72"
|
||||
"integrity": "5FE3F5D8FB3B05246104BCC76659EA4B1E7F585D6147FB583BAFF561F4907193"
|
||||
},
|
||||
{
|
||||
"description": "C/C++ language components (Windows)",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2135298",
|
||||
"url": "https://go.microsoft.com/fwlink/?linkid=2143078",
|
||||
"platforms": [
|
||||
"win32"
|
||||
],
|
||||
@@ -2355,7 +2355,7 @@
|
||||
"./bin/cpptools.exe",
|
||||
"./bin/cpptools-srv.exe"
|
||||
],
|
||||
"integrity": "1C86575AD572B8EE1787F168BD7002B77091CA0079DEE054EB4E015B3CBBDC56"
|
||||
"integrity": "BA67FC5F787552BE73F6613E08D1374FE3E3C3501417CF03E1D871A46DE4224A"
|
||||
},
|
||||
{
|
||||
"description": "ClangFormat (Linux / x86_64)",
|
||||
|
||||
@@ -559,7 +559,7 @@ export interface Client {
|
||||
handleConfigurationEditUICommand(): void;
|
||||
handleAddToIncludePathCommand(path: string): void;
|
||||
onInterval(): void;
|
||||
dispose(): Thenable<void>;
|
||||
dispose(): void;
|
||||
addFileAssociations(fileAssociations: string, is_c: boolean): void;
|
||||
sendDidChangeSettings(settings: any): void;
|
||||
}
|
||||
@@ -3102,33 +3102,34 @@ export class DefaultClient implements Client {
|
||||
}
|
||||
}
|
||||
|
||||
public dispose(): Thenable<void> {
|
||||
const promise: Thenable<void> = (this.languageClient && clientCollection.Count === 0) ? this.languageClient.stop() : Promise.resolve();
|
||||
return promise.then(() => {
|
||||
this.disposables.forEach((d) => d.dispose());
|
||||
this.disposables = [];
|
||||
if (this.documentFormattingProviderDisposable) {
|
||||
this.documentFormattingProviderDisposable.dispose();
|
||||
this.documentFormattingProviderDisposable = undefined;
|
||||
}
|
||||
if (this.formattingRangeProviderDisposable) {
|
||||
this.formattingRangeProviderDisposable.dispose();
|
||||
this.formattingRangeProviderDisposable = undefined;
|
||||
}
|
||||
if (this.onTypeFormattingProviderDisposable) {
|
||||
this.onTypeFormattingProviderDisposable.dispose();
|
||||
this.onTypeFormattingProviderDisposable = undefined;
|
||||
}
|
||||
if (this.codeFoldingProviderDisposable) {
|
||||
this.codeFoldingProviderDisposable.dispose();
|
||||
this.codeFoldingProviderDisposable = undefined;
|
||||
}
|
||||
if (this.semanticTokensProviderDisposable) {
|
||||
this.semanticTokensProviderDisposable.dispose();
|
||||
this.semanticTokensProviderDisposable = undefined;
|
||||
}
|
||||
this.model.dispose();
|
||||
});
|
||||
public dispose(): void {
|
||||
this.disposables.forEach((d) => d.dispose());
|
||||
this.disposables = [];
|
||||
if (this.documentFormattingProviderDisposable) {
|
||||
this.documentFormattingProviderDisposable.dispose();
|
||||
this.documentFormattingProviderDisposable = undefined;
|
||||
}
|
||||
if (this.formattingRangeProviderDisposable) {
|
||||
this.formattingRangeProviderDisposable.dispose();
|
||||
this.formattingRangeProviderDisposable = undefined;
|
||||
}
|
||||
if (this.onTypeFormattingProviderDisposable) {
|
||||
this.onTypeFormattingProviderDisposable.dispose();
|
||||
this.onTypeFormattingProviderDisposable = undefined;
|
||||
}
|
||||
if (this.codeFoldingProviderDisposable) {
|
||||
this.codeFoldingProviderDisposable.dispose();
|
||||
this.codeFoldingProviderDisposable = undefined;
|
||||
}
|
||||
if (this.semanticTokensProviderDisposable) {
|
||||
this.semanticTokensProviderDisposable.dispose();
|
||||
this.semanticTokensProviderDisposable = undefined;
|
||||
}
|
||||
this.model.dispose();
|
||||
}
|
||||
|
||||
public static stopLanguageClient(): Thenable<void> {
|
||||
return languageClient ? languageClient.stop() : Promise.resolve();
|
||||
}
|
||||
|
||||
public handleReferencesIcon(): void {
|
||||
@@ -3254,10 +3255,9 @@ class NullClient implements Client {
|
||||
handleConfigurationEditUICommand(): void {}
|
||||
handleAddToIncludePathCommand(path: string): void {}
|
||||
onInterval(): void {}
|
||||
dispose(): Thenable<void> {
|
||||
dispose(): void {
|
||||
this.booleanEvent.dispose();
|
||||
this.stringEvent.dispose();
|
||||
return Promise.resolve();
|
||||
}
|
||||
addFileAssociations(fileAssociations: string, is_c: boolean): void {}
|
||||
sendDidChangeSettings(settings: any): void {}
|
||||
|
||||
@@ -206,14 +206,12 @@ export class ClientCollection {
|
||||
}
|
||||
|
||||
public dispose(): Thenable<void> {
|
||||
const promises: Thenable<void>[] = [];
|
||||
this.disposables.forEach((d: vscode.Disposable) => d.dispose());
|
||||
|
||||
// this.defaultClient is already in this.languageClients, so do not call dispose() on it.
|
||||
|
||||
this.languageClients.forEach(client => promises.push(client.dispose()));
|
||||
this.languageClients.forEach(client => client.dispose());
|
||||
this.languageClients.clear();
|
||||
cpptools.disposeWorkspaceData();
|
||||
return Promise.all(promises).then(() => undefined);
|
||||
return cpptools.DefaultClient.stopLanguageClient();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user