Compare commits

..
Author SHA1 Message Date
Colen Garoutte-Carson ad8b7ecb62 Merge branch 'main' into coleng/fix_trusted_compiler_path_update 2024-02-21 18:21:41 -08:00
Colen Garoutte-Carson 21923714fa Fix two bugs with trusted compiler paths 2024-02-21 17:32:08 -08:00
Colen Garoutte-Carson ef3472d8f5 Merge branch 'release' into main 2024-02-21 12:08:28 -08:00
Sean McManus 347a1fac67 Update changelog for 1.19.4 (#11976)
* Update changelog for 1.19.4
2024-02-21 19:47:55 +00:00
[email protected] 239d6a036b [Auto] Localization - Translated Strings (#11948) 2024-02-21 11:47:00 -08:00
dependabot[bot] d1da368537 Bump ip from 2.0.0 to 2.0.1 in /.github/actions (#11990)
Bumps [ip](https://github.com/indutny/node-ip) from 2.0.0 to 2.0.1.
- [Commits](https://github.com/indutny/node-ip/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-20 19:36:49 -08:00
browntarik 38c16a5888 Update shell quote E2E test (#11977)
* resolve e2e test
2024-02-20 16:04:46 -08:00
Trond Einar Snekvik 8b9960c603 Silence console.logs (#11973)
Removes the console.log messages that show up during normal execution.
Leaves console.logs in exception handlers the way they are.

Signed-off-by: Trond Einar Snekvik <[email protected]>
2024-02-16 18:05:33 -08:00
jogo- 0c937511c7 Fix typo in CHANGELOG.md (#11968) 2024-02-15 13:42:23 -08:00
browntarik 36ea516731 Fix E2E Shell Quoting Test (#11975)
* resolve e2e test

* Resolve prompt regression and tests

* Fix lint issue

* resolve e2e test

* add double quotes

* only escape baskslash

* resolve e2e test

* Add backslash
2024-02-15 11:40:42 -08:00
browntarik 54314feab5 Fix shell quoting e2e test (#11969)
* resolve e2e test

* Resolve prompt regression and tests

* Fix lint issue

* resolve e2e test

* add double quotes

* only escape baskslash
2024-02-14 15:27:10 -08:00
browntarik 286a5c590a Resolve prompt regression + fix e2e tests (#11964)
* resolve e2e test

* Resolve prompt regression and tests

* Fix lint issue
2024-02-13 15:01:59 -08:00
browntarik ce202f3549 resolve e2e test (#11961) 2024-02-13 12:08:42 -08:00
Sean McManus e7cb0a7c6a Merge pull request #11698 from microsoft/main
Merge for 1.18.5
2023-11-16 16:55:09 -08:00
Sean McManus 4ba260c486 Merge pull request #11687 from microsoft/main
Merge for 1.18.4
2023-11-14 17:25:29 -08:00
Sean McManus e896231d88 Merge pull request #11671 from microsoft/main
Merge for 1.18.3 (4th time)
2023-11-13 15:15:12 -08:00
Sean McManus 23fcef6dd8 Merge pull request #11661 from microsoft/main
Merger for 1.18.3 (3rd time)
2023-11-13 11:36:36 -08:00
Sean McManus df5c16bddf Merge pull request #11654 from microsoft/seanmcm/1_18_3_release
Merge for 1.18.3
2023-11-10 11:06:38 -08:00
Sean McManus 3a3a31b9b8 Merge branch 'main' into seanmcm/1_18_3_release 2023-11-09 18:03:16 -08:00
Michelle Matias ef04f022d2 Merge pull request #11366 from microsoft/dev/mimatias/r-17-5
1.17.5 merge
2023-08-25 13:53:11 -07:00
Michelle Matias 1efac2736a 1.17.5 changelog (#11363) 2023-08-25 13:50:58 -07:00
Colen Garoutte-Carson 9299e8df95 Disable AutoPCH early on platforms that don't support it (#11362) 2023-08-25 12:53:37 -07:00
Michelle Matias 97363a3e57 Reset FAR UI if no results returned (#11359) 2023-08-25 12:53:33 -07:00
Sean McManus 28d5715dd5 Merge pull request #11347 from microsoft/seanmcm/1_17_4_release
Three cherry-picks for 1.17.4
2023-08-21 11:29:08 -07:00
Sean McManus 8466888bc8 Update changelog and version for 1.17.4 (#11340)
* Update changelog and version for 1.17.4
* Add a missed entry.
2023-08-21 11:11:07 -07:00
Sean McManus 741e1ed78a Fix crash called by missing IntelliSense loc strings. (#11339) 2023-08-21 11:10:55 -07:00
Garrett Serack e02b0a33a6 Enqueue the call to sendDidOpen (#11337)
* enqueue the call to sendDidOpen
2023-08-21 11:10:42 -07:00
Colen Garoutte-Carson 47785c4f98 Merge pull request #11331 from microsoft/main 2023-08-16 18:16:18 -07:00
33 changed files with 46370 additions and 46354 deletions
+3 -3
View File
@@ -4200,9 +4200,9 @@
"dev": true
},
"node_modules/ip": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz",
"integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==",
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/ip/-/ip-2.0.1.tgz",
"integrity": "sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==",
"dev": true
},
"node_modules/is-binary-path": {
+52 -58
View File
@@ -1,68 +1,63 @@
# C/C++ for Visual Studio Code Changelog
## Version 1.19.3: February 12, 2024
## Version 1.19.4: February 21, 2024
### Enhancements
* Enable support for fuzzy symbol seaches. [#2751](https://github.com/microsoft/vscode-cpptools/issues/2751)
* Enable support for fuzzy symbol searches. [#2751](https://github.com/microsoft/vscode-cpptools/issues/2751)
* This may not be enabled for all users unless `C_Cpp.experimentalFeatures` is `enabled`.
* Implement progressive population of IntelliSense results. [#7759](https://github.com/microsoft/vscode-cpptools/issues/7759)
* Improve performance of symbol searches. [#7908](https://github.com/microsoft/vscode-cpptools/issues/7908), [#7914](https://github.com/microsoft/vscode-cpptools/issues/7914), [#11557](https://github.com/microsoft/vscode-cpptools/issues/11557)
* This may not be enabled for all users unless `C_Cpp.experimentalFeatures` is `enabled`.
* Change the default setting value for `C_Cpp.intelliSenseUpdateDelay` from 2s to 1s. [#11932](https://github.com/microsoft/vscode-cpptools/pull/11932)
### Bug Fixes
* Trim trailing spaces from include paths in the configuration UI. [#11862](https://github.com/microsoft/vscode-cpptools/issues/11862)
* Fix comma delimited lists in `@param` Doxygen parameters. [#11868](https://github.com/microsoft/vscode-cpptools/issues/11868)
* Fix incorrect errors for `compilerPath` in the configuration UI for compilers that can be found in PATH. [#11903](https://github.com/microsoft/vscode-cpptools/issues/11903)
* Fix an issue with include sorting when formatting with clang-format. [#11914](https://github.com/microsoft/vscode-cpptools/issues/11914)
* Fix issues related to support for C++ modules and parsing of related compiler arguments.
* Remove the requirement that a file be open in the editor from various LSP requests.
* Fix an issue that could result in the Outline pane not being populated.
* Fix an issue where use of an explicit `compilerPath` to override the compiler in a `compile_commands.json` with also throw out the compiler arguments.
* Fix some crashes reported by crash telemetry.
* Address multiple issues with compiler querying of clang-cl.
* Fix issues with the tag parsing status sometimes not being accurately reflected in the UI.
* Fix an issue with configuring IntelliSense for a header file after having chosen an associated source file in which inclusion of the header is disabled or removed.
* Fix a potential crash when using 'Find All References'.
* Fix an issue in which the directory specified in a `compile_commands.json` was not being used as the current directory when querying the specified compiler path.
* Fix document and workspace symbol requests being blocked by an IntelliSense request.
## Version 1.19.2: January 22, 2024
### Enhancements
* Implement progressive population of IntelliSense results. [#7759](https://github.com/microsoft/vscode-cpptools/issues/7759)
* Support insert mode for auto-complete. [#10613](https://github.com/microsoft/vscode-cpptools/issues/10613)
* Use the `"[cpp]": { "editor.suggest.insertMode": "insert" } ` and `"[c]": { "editor.suggest.insertMode": "insert" } ` settings to override the extension's defaults.
* Improve memory efficiency by using token parsing in the 'Add #include' feature. [#11515](https://github.com/microsoft/vscode-cpptools/issues/11515)
* Change the default setting value for `C_Cpp.intelliSenseUpdateDelay` from 2s to 1s. [PR #11932](https://github.com/microsoft/vscode-cpptools/pull/11932)
* Improve the types supported for the 'Add #include' code action.
* Various performance improvements.
### Bug Fixes
* Fix shell escaping for `cppbuild` task command line arguments. [#11422](https://github.com/microsoft/vscode-cpptools/issues/11422)
* Fix IntelliSense not updating when a `#include` is added from a refactor command. [#11549](https://github.com/microsoft/vscode-cpptools/issues/11549)
* Fix formatting not working in headers after using 'Extract to Function'. [#11729](https://github.com/microsoft/vscode-cpptools/issues/11729)
* Fix document symbol requests not checking for cancellation. [#11750](https://github.com/microsoft/vscode-cpptools/issues/11750)
* Fix code analysis results getting cleared after there's a configuration update. [#11790](https://github.com/microsoft/vscode-cpptools/issues/11790)
* Fix an exception getting thrown if IntelliSense is disabled but a configuration provider is registered. [#11795](https://github.com/microsoft/vscode-cpptools/issues/11795)
* Fix German code analysis translations. [PR #11845](https://github.com/microsoft/vscode-cpptools/pull/11845)
* Thank you for the contribution. [@Sir2B (Tobias Obermayer)](https://github.com/Sir2B)
* Fix an EACCES error when using include wildcards with system includes. [#11833](https://github.com/microsoft/vscode-cpptools/issues/11833)
* Fix IntelliSense passes occurring while a user is typing, not honoring the `C_Cpp.intelliSenseUpdateDelay` setting.
* Fix a call hierarchy bug leading to use of header-only TU's unnecessarily.
* Fix a bug that could lead to missing TU source file candidates.
* Fix a "random" IntelliSense crash during completion.
* Fix a crash if access to `/dev/urandom` is restricted.
* Lots of other minor fixes.
## Version 1.19.1: November 21, 2023
### Bug Fixes
* Fix `Add '#include'` code actions for Mac frameworks. [#11579](https://github.com/microsoft/vscode-cpptools/issues/11579)
* Fix snippet and include completion. [#11715](https://github.com/microsoft/vscode-cpptools/issues/11715), [#11720](https://github.com/microsoft/vscode-cpptools/issues/11720)
## Version 1.19.0: November 16, 2023
### Bug Fixes
* Fix IntelliSense bug with type deduction using concepts. [#8132](https://github.com/microsoft/vscode-cpptools/issues/8132)
* Fix clang-format error messages not being logged. [#8944](https://github.com/microsoft/vscode-cpptools/issues/8944)
* Fix insert mode sometimes doing a replace for completion. [#10613](https://github.com/microsoft/vscode-cpptools/issues/10613)
* Fix indentation missing in markdown fenced code blocks. [#11379](https://github.com/microsoft/vscode-cpptools/issues/11379)
* Fix the parent path of the source file in compile_commands.json not being added to the browse.path. [#11631](https://github.com/microsoft/vscode-cpptools/issues/11631)
* Fix shell escaping for `cppbuild` task command line arguments. [#11422](https://github.com/microsoft/vscode-cpptools/issues/11422)
* Fix IntelliSense not updating when a `#include` is added from a refactor command. [#11549](https://github.com/microsoft/vscode-cpptools/issues/11549)
* Fix 'Add '#include' code actions for Mac frameworks. [#11579](https://github.com/microsoft/vscode-cpptools/issues/11579)
* Fix the parent path of the source file in `compile_commands.json` not being added to the browse.path. [#11631](https://github.com/microsoft/vscode-cpptools/issues/11631)
* Fix the database not getting updated in certain cases when switching configurations. [#11649](https://github.com/microsoft/vscode-cpptools/issues/11649)
* Fix a cpptools crash with certain projects. [#11674](https://github.com/microsoft/vscode-cpptools/issues/11674)
* Fix snippet and include completion. [#11715](https://github.com/microsoft/vscode-cpptools/issues/11715), [#11720](https://github.com/microsoft/vscode-cpptools/issues/11720)
* Fix formatting not working in headers after using 'Extract to Function'. [#11729](https://github.com/microsoft/vscode-cpptools/issues/11729)
* Fix document symbol requests not checking for cancellation. [#11750](https://github.com/microsoft/vscode-cpptools/issues/11750)
* Fix the default `editor.wordBasedSuggestions` setting for VS Code versions 1.85 or newer. [PR #11773](https://github.com/microsoft/vscode-cpptools/pull/11773)
* This change doesn't work with VS Code versions 1.84 or older, due to [Microsoft/vscode#200685](https://github.com/microsoft/vscode/issues/200685)
* Fix code analysis results getting cleared after there's a configuration update. [#11790](https://github.com/microsoft/vscode-cpptools/issues/11790)
* Fix an exception getting thrown if IntelliSense is disabled but a configuration provider is registered. [#11795](https://github.com/microsoft/vscode-cpptools/issues/11795)
* Fix an EACCES error when using include wildcards with system includes. [#11833](https://github.com/microsoft/vscode-cpptools/issues/11833)
* Fix German code analysis translations. [PR #11845](https://github.com/microsoft/vscode-cpptools/pull/11845)
* Thank you for the contribution. [@Sir2B (Tobias Obermayer)](https://github.com/Sir2B)
* Trim trailing spaces from include paths in the configuration UI. [#11862](https://github.com/microsoft/vscode-cpptools/issues/11862)
* Fix comma delimited lists in `@param` Doxygen parameters. [#11868](https://github.com/microsoft/vscode-cpptools/issues/11868)
* Fix incorrect errors for `compilerPath` in the configuration UI for compilers that can be found in PATH. [#11903](https://github.com/microsoft/vscode-cpptools/issues/11903)
* Fix an issue with include sorting when formatting with clang-format. [#11914](https://github.com/microsoft/vscode-cpptools/issues/11914)
* Fix the `-include` arg of `-Xarg_<arg1>` getting filtered out, leading to a failed compiler query. [#11965](https://github.com/microsoft/vscode-cpptools/issues/11965)
* Fix the `-arch` flag overwriting the `-target` flag's value when it shouldn't. [#11971](https://github.com/microsoft/vscode-cpptools/issues/11971)
* Fix an issue in which the directory specified in a `compile_commands.json` was not being used as the current directory when querying the specified compiler path.
* Fix an issue with configuring IntelliSense for a header file after having chosen an associated source file in which inclusion of the header is disabled or removed.
* Fix an issue where use of an explicit `compilerPath` to override the compiler in a `compile_commands.json` will also throw out the compiler arguments.
* Fix IntelliSense passes occurring while a user is still typing, instead of honoring the `C_Cpp.intelliSenseUpdateDelay` setting.
* Fix issues related to support for C++ modules and parsing of related compiler arguments.
* Fix issues with the tag parsing status sometimes not being accurately reflected in the UI.
* Fix document and workspace symbol requests being blocked by an IntelliSense request.
* Remove the requirement that a file be open in the editor from various LSP requests.
* Fix a crash if `compile_commands.json` doesn't have an array at the root.
* Fix a call hierarchy bug leading to use of header-only TU's unnecessarily.
* Fix an issue that could result in the Outline pane not being populated.
* Fix a bug that could lead to missing TU source file candidates.
* Address multiple issues with compiler querying of clang-cl.
* Fix a potential crash when using 'Find All References'.
* Fix a "random" IntelliSense crash during completion.
* Fix a crash if access to `/dev/urandom` is restricted.
* Fix some crashes reported by crash telemetry.
* Lots of other minor fixes.
## Version 1.18.5: November 16, 2023
### Bug Fix
@@ -475,12 +470,12 @@
* Fix IntelliSense with gcc vector extension types. [#6890](https://github.com/microsoft/vscode-cpptools/issues/6890)
* Fix doc comments for macros and typedefs. [#8320](https://github.com/microsoft/vscode-cpptools/issues/8320)
* Fix issue with CUDA configuration when using a custom config provider and no config is available for the file. [#8483](https://github.com/microsoft/vscode-cpptools/issues/8483)
* Fix missing logging when `C_Cpp.intelliSenseEngine` is set to `"Disabled"`. [#9277](https://github.com/microsoft/vscode-cpptools/issues/9277)
* Fix missing logging when `C_Cpp.intelliSenseEngine` is set to `Disabled`. [#9277](https://github.com/microsoft/vscode-cpptools/issues/9277)
* Fix doxygen comments not being displayed for multiple adjacent `@brief` or `@return` tags. [#9316](https://github.com/microsoft/vscode-cpptools/issues/9316)
* Fix the code analysis "disable" option not automatically clearing the disabled diagnostics. [#9364](https://github.com/microsoft/vscode-cpptools/issues/9364)
* Fix `-isystem` not being used for system headers with code analysis. [#9366](https://github.com/microsoft/vscode-cpptools/issues/9366)
* Fix compiler querying for EDG-based compilers. [#9410](https://github.com/microsoft/vscode-cpptools/issues/9410)
* Fix hiding IntelliSense dependent commands when `C_Cpp.intelliSenseEngine` is `"Disabled"`. [#9451](https://github.com/microsoft/vscode-cpptools/issues/9451)
* Fix hiding IntelliSense dependent commands when `C_Cpp.intelliSenseEngine` is `Disabled`. [#9451](https://github.com/microsoft/vscode-cpptools/issues/9451)
* Fix cl.exe build tasks not showing for .c files and .c build tasks being cached for .cpp files (and vice versa). [PR #9544](https://github.com/microsoft/vscode-cpptools/pull/9544)
* Fix code analysis not detecting warnings with relative paths. [#9555](https://github.com/microsoft/vscode-cpptools/issues/9555)
* Fix `--header-filter` being used with clang-tidy when it shouldn't when a .clang-tidy file exists. [#9566](https://github.com/microsoft/vscode-cpptools/issues/9566)
@@ -507,7 +502,7 @@
## Version 1.10.6: June 14, 2022
### Bug Fixes
* Fix `@responseFile` in `compilerArgs` not being handled on Linux/Mac. [#9434](https://github.com/microsoft/vscode-cpptools/issues/9434)
* Fix debug preLaunchTask not working when `C_Cpp.intelliSenseEngine` is `"Disabled"`. [#9446](https://github.com/microsoft/vscode-cpptools/issues/9446)
* Fix debug preLaunchTask not working when `C_Cpp.intelliSenseEngine` is `Disabled`. [#9446](https://github.com/microsoft/vscode-cpptools/issues/9446)
* Make the `C_Cpp.legacyCompilerArgsBehavior` setting non-deprecated.
## Version 1.10.5: June 8, 2022
@@ -792,7 +787,7 @@
* Fix `Build and Debug Active File` for certain file extensions (.cu, .cp, etc.).
* jogo- (@jogo-) [PR #7726](https://github.com/microsoft/vscode-cpptools/pull/7726)
* Fix `browse.path` being incorrect if an invalid `compileCommands` is set. [#7737](https://github.com/microsoft/vscode-cpptools/issues/7737)
* Fix an incorrect error message when `C_Cpp.errorSquiggles` is `"Enabled"`. [#7744](https://github.com/microsoft/vscode-cpptools/issues/7744)
* Fix an incorrect error message when `C_Cpp.errorSquiggles` is `Enabled`. [#7744](https://github.com/microsoft/vscode-cpptools/issues/7744)
* Fix compiler querying sometimes not working with Cygwin. [#7751](https://github.com/microsoft/vscode-cpptools/issues/7751)
* Fix a duplicate IntelliSense update when a new C/C++ file is opened and after switching from a non-C/C++ file and back.
* Fix a potential IntelliSense process crash on shutdown.
@@ -1003,7 +998,7 @@
* Fix compiler querying with compilers that do not output `__STD_VERSION__` by default (gcc <= 4.8.x). [#6792](https://github.com/microsoft/vscode-cpptools/issues/6792)
* Fix document symbols when nested symbols have the same name as a parent. [#6830](https://github.com/microsoft/vscode-cpptools/issues/6830)
* Fix automatic adding of header files to `files.associations` after `Go to Definition` on a `#include`. [#6845](https://github.com/microsoft/vscode-cpptools/issues/6845)
* Fix `"Insiders"` `updateChannel` for VS Code - Exploration. [#6875](https://github.com/microsoft/vscode-cpptools/issues/6875)
* Fix `Insiders` `updateChannel` for VS Code - Exploration. [#6875](https://github.com/microsoft/vscode-cpptools/issues/6875)
* Fix "D" command line warnings not appearing with cl.exe cppbuild build tasks.
* Fix cl.exe cppbuild tasks when `/nologo` is used (and make /nologo a default arg).
* Fix a cpptools crash and multiple deadlocks.
@@ -1354,7 +1349,7 @@
* Fix `launch.json` creation due to localized strings containing quotes. [#4526](https://github.com/microsoft/vscode-cpptools/issues/4526)
* Fix configuration error squiggles not being applied unless the setting was set in both `c_cpp_properties.json` and `settings.json`. [PR #4538](https://github.com/microsoft/vscode-cpptools/pull/4538)
* Fix document symbol for Outline view and breadcrumbs on Windows 7. [#4536](https://github.com/microsoft/vscode-cpptools/issues/4536)
* Add support for `"ms-vscode.cmake-tools"` `configurationProvider` id. [#4586](https://github.com/microsoft/vscode-cpptools/issues/4586)
* Add support for `ms-vscode.cmake-tools` `configurationProvider` id. [#4586](https://github.com/microsoft/vscode-cpptools/issues/4586)
* Fix cancellation of Find All References sometimes resulting in an exception. [#2710](https://github.com/microsoft/vscode-cpptools/issues/2710)
* Fix the sort order of files in the Find All References and Rename UI's. [#4615](https://github.com/microsoft/vscode-cpptools/issues/4615)
* Fix localized Chinese strings not displaying on systems with case-sensitive file systems. [#4619](https://github.com/microsoft/vscode-cpptools/issues/4619)
@@ -1508,7 +1503,7 @@
## Version 0.23.1: May 13, 2019
### Bug Fixes
* Fix `launch.json` creation when `intelliSenseEngine` is `"Disabled"`. [#3583](https://github.com/microsoft/vscode-cpptools/issues/3583)
* Fix `launch.json` creation when `intelliSenseEngine` is `Disabled`. [#3583](https://github.com/microsoft/vscode-cpptools/issues/3583)
* Fix C/C++ commands not working if the language service isn't activated. [#3615](https://github.com/microsoft/vscode-cpptools/issues/3615)
* Fix missing extension `"Details"` page. [#3621](https://github.com/microsoft/vscode-cpptools/issues/3621)
* Fix some random crashes related to IntelliSense inactive region processing.
@@ -1646,7 +1641,7 @@
* Fix problem with empty recursive include paths. [#2855](https://github.com/Microsoft/vscode-cpptools/issues/2855)
* Fix `NullReferenceException` on debugger launch with VS Code Insiders. [#2858](https://github.com/Microsoft/vscode-cpptools/issues/2858), [PR Microsoft/MIEngine#810](https://github.com/Microsoft/MIEngine/pull/810)
* Fix IntelliSense errors with template argument deduction. [#2907](https://github.com/Microsoft/vscode-cpptools/issues/2907), [#2912](https://github.com/Microsoft/vscode-cpptools/issues/2912)
* Retry Insider VSIX downloading with `http.proxySupport` `"off"`. [#2927](https://github.com/Microsoft/vscode-cpptools/issues/2927)
* Retry Insider VSIX downloading with `http.proxySupport` `off`. [#2927](https://github.com/Microsoft/vscode-cpptools/issues/2927)
* Fix snippet completions being offered when they shouldn't be. [#2942](https://github.com/Microsoft/vscode-cpptools/issues/2942)
* Set the `editor.wordBasedSuggestions` to `false` by default to prevent incorrect completions. [#2943](https://github.com/Microsoft/vscode-cpptools/issues/2943)
* Fix IntelliSense-based `Go to Definition` for functions with function pointer parameters. [#2981](https://github.com/Microsoft/vscode-cpptools/issues/2981)
@@ -2202,4 +2197,3 @@
## Version 0.5.0: April 14, 2016
* Usability and correctness bug fixes.
* Simplify installation experience.
* Usability and correctness bug fixes.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -11,6 +11,8 @@
"use.compiler": "使用 {0}",
"configuration.providers": "配置提供程序",
"compilers": "编译器",
"selectIntelliSenseConfiguration.string": "选择 IntelliSense 配置...",
"setCompiler.message": "未配置编译器。除非设置自己的配置,否则 IntelliSense 可能无法正常工作。",
"use.provider": "使用 {0}",
"use.compileCommands": "使用 {0}",
"selectAnotherCompiler.string": "在我的计算机上选择另一个编译器...",
@@ -11,6 +11,8 @@
"use.compiler": "使用 {0}",
"configuration.providers": "設定提供者",
"compilers": "編譯器",
"selectIntelliSenseConfiguration.string": "選取 IntelliSense 設定...",
"setCompiler.message": "您尚未設定 IntelliSense。除非您自行加以設定,否則 IntelliSense 可能無法運作。",
"use.provider": "使用 {0}",
"use.compileCommands": "使用 {0}",
"selectAnotherCompiler.string": "在我的機器上選取另一個編譯器...",
@@ -11,6 +11,8 @@
"use.compiler": "Použít {0}",
"configuration.providers": "poskytovatelé konfigurace",
"compilers": "kompilátory",
"selectIntelliSenseConfiguration.string": "Vybrat konfiguraci IntelliSense...",
"setCompiler.message": "Nemáte nakonfigurovaný technologii IntelliSense. Pokud nenastavíte vlastní konfigurace, IntelliSense nemusí být funkční.",
"use.provider": "Použít {0}",
"use.compileCommands": "Použít {0}",
"selectAnotherCompiler.string": "Vybrat jiný kompilátor na mém počítači...",
@@ -11,6 +11,8 @@
"use.compiler": "{0} verwenden",
"configuration.providers": "Konfigurationsanbieter",
"compilers": "Compiler",
"selectIntelliSenseConfiguration.string": "IntelliSense-Konfiguration auswählen...",
"setCompiler.message": "IntelliSense ist nicht konfiguriert. Wenn Sie keine eigenen Konfigurationen festlegen, ist IntelliSense möglicherweise nicht funktionsfähig.",
"use.provider": "{0} verwenden",
"use.compileCommands": "{0} verwenden",
"selectAnotherCompiler.string": "Anderen Compiler auf meinem Computer auswählen...",
@@ -11,6 +11,8 @@
"use.compiler": "Uso {0}",
"configuration.providers": "proveedores de configuración",
"compilers": "Compiladores",
"selectIntelliSenseConfiguration.string": "Seleccionar configuración de IntelliSense...",
"setCompiler.message": "No tiene configurado IntelliSense. A menos que establezca sus propias configuraciones, puede que IntelliSense no funcione.",
"use.provider": "Uso {0}",
"use.compileCommands": "Uso {0}",
"selectAnotherCompiler.string": "Seleccionar otro compilador en mi máquina...",
@@ -11,6 +11,8 @@
"use.compiler": "Utiliser {0}",
"configuration.providers": "fournisseurs de configuration",
"compilers": "compilateurs",
"selectIntelliSenseConfiguration.string": "Sélectionner la configuration IntelliSense…",
"setCompiler.message": "Vous navez aucun IntelliSense configuré. À moins que vous ne définissiez vos propres configurations, IntelliSense risque de ne pas être fonctionnel.",
"use.provider": "Utiliser {0}",
"use.compileCommands": "Utiliser {0}",
"selectAnotherCompiler.string": "Sélectionner un autre compilateur sur ma machine…",
@@ -11,6 +11,8 @@
"use.compiler": "Usa {0}",
"configuration.providers": "Provider di configurazione",
"compilers": "compilatori",
"selectIntelliSenseConfiguration.string": "Seleziona configurazione IntelliSense...",
"setCompiler.message": "Compilatore IntelliSense non configurato. A meno che non si impostino configurazioni personalizzate, IntelliSense potrebbe non funzionare.",
"use.provider": "Usa {0}",
"use.compileCommands": "Usa {0}",
"selectAnotherCompiler.string": "Seleziona un altro compilatore nel computer...",
@@ -11,6 +11,8 @@
"use.compiler": "{0}を使用する",
"configuration.providers": "構成プロバイダー",
"compilers": "コンパイラ",
"selectIntelliSenseConfiguration.string": "IntelliSense 構成を選択...",
"setCompiler.message": "IntelliSense が構成されていません。独自の構成を設定しない限り、IntelliSense は機能しない可能性があります。",
"use.provider": "{0}を使用する",
"use.compileCommands": "{0}を使用する",
"selectAnotherCompiler.string": "コンピューター上の別のコンパイラを選択...",
@@ -11,6 +11,8 @@
"use.compiler": "{0} 사용",
"configuration.providers": "구성 공급자",
"compilers": "컴파일러",
"selectIntelliSenseConfiguration.string": "IntelliSense 구성 선택...",
"setCompiler.message": "IntelliSense를 구성하지 않았습니다. 고유한 구성을 설정하지 않으면 IntelliSense가 작동하지 않을 수 있습니다.",
"use.provider": "{0} 사용",
"use.compileCommands": "{0} 사용",
"selectAnotherCompiler.string": "내 컴퓨터에서 다른 컴파일러 선택...",
@@ -11,6 +11,8 @@
"use.compiler": "Użyj kompilatora {0}",
"configuration.providers": "dostawcy konfiguracji",
"compilers": "kompilatory",
"selectIntelliSenseConfiguration.string": "Wybierz konfigurację funkcji IntelliSense...",
"setCompiler.message": "Nie skonfigurowano funkcji IntelliSense. Jeśli nie ustawisz własnych konfiguracji, funkcja IntelliSense może nie działać.",
"use.provider": "Użyj kompilatora {0}",
"use.compileCommands": "Użyj kompilatora {0}",
"selectAnotherCompiler.string": "Wybierz inny kompilator na mojej maszynie...",
@@ -11,6 +11,8 @@
"use.compiler": "Usar {0}",
"configuration.providers": "provedores de configuração",
"compilers": "compiladores",
"selectIntelliSenseConfiguration.string": "Selecione Configuração do IntelliSense...",
"setCompiler.message": "Você não tem o IntelliSense configurado. A menos que você defina suas próprias configurações, o IntelliSense pode não funcionar.",
"use.provider": "Usar {0}",
"use.compileCommands": "Usar {0}",
"selectAnotherCompiler.string": "Selecione outro compilador na minha máquina...",
@@ -11,6 +11,8 @@
"use.compiler": "Использовать {0}",
"configuration.providers": "поставщики конфигурации",
"compilers": "компиляторы",
"selectIntelliSenseConfiguration.string": "Выбрать конфигурацию IntelliSense…",
"setCompiler.message": "Нет настроенных функций IntelliSense. Если не настроить собственные конфигурации, IntelliSense может не работать.",
"use.provider": "Использовать {0}",
"use.compileCommands": "Использовать {0}",
"selectAnotherCompiler.string": "Выбрать другой компилятор на моем компьютере…",
@@ -11,6 +11,8 @@
"use.compiler": "{0} kullan",
"configuration.providers": "yapılandırma sağlayıcıları",
"compilers": "derleyiciler",
"selectIntelliSenseConfiguration.string": "IntelliSense Yapılandırmasını Seç...",
"setCompiler.message": "Yapılandırılmış IntelliSenseniz yok. Kendi yapılandırmalarınızı ayarlamazsanız IntelliSense çalışmayabilir.",
"use.provider": "{0} kullan",
"use.compileCommands": "{0} kullan",
"selectAnotherCompiler.string": "Makinem üzerinde başka bir derleyici seç...",
+1 -1
View File
@@ -2,7 +2,7 @@
"name": "cpptools",
"displayName": "C/C++",
"description": "C/C++ IntelliSense, debugging, and code browsing.",
"version": "1.19.3-main",
"version": "1.19.4-main",
"publisher": "ms-vscode",
"icon": "LanguageCCPP_color_128x.png",
"readme": "README.md",
+19 -11
View File
@@ -961,6 +961,14 @@ export class DefaultClient implements Client {
return selection ? selection.index : -1;
}
public async showPrompt(sender?: any): Promise<void> {
const buttonMessage: string = localize("selectIntelliSenseConfiguration.string", "Select IntelliSense Configuration...");
const value: string | undefined = await vscode.window.showInformationMessage(localize("setCompiler.message", "You do not have IntelliSense configured. Unless you set your own configurations, IntelliSense may not be functional."), buttonMessage);
if (value === buttonMessage) {
return this.handleIntelliSenseConfigurationQuickPick(sender);
}
}
public async handleIntelliSenseConfigurationQuickPick(sender?: any, showCompilersOnly?: boolean): Promise<void> {
const settings: CppSettings = new CppSettings(showCompilersOnly ? undefined : this.RootUri);
const paths: string[] = [];
@@ -1025,6 +1033,7 @@ export class DefaultClient implements Client {
settings.defaultCompilerPath = "";
await this.configuration.updateCompilerPathIfSet(settings.defaultCompilerPath);
configurationSelected = true;
await this.showPrompt(sender);
return ui.ShowConfigureIntelliSenseButton(false, this, ConfigurationType.CompilerPath, "disablePrompt");
}
if (installShown && index === paths.length - 2) {
@@ -1827,7 +1836,7 @@ export class DefaultClient implements Client {
if (!this.configurationProvider) {
return;
}
console.log("updateCustomBrowseConfiguration");
const currentProvider: CustomConfigurationProvider1 | undefined = getCustomConfigProviders().get(this.configurationProvider);
if (!currentProvider || !currentProvider.isReady || (requestingProvider && requestingProvider.extensionId !== currentProvider.extensionId)) {
return;
@@ -1964,7 +1973,6 @@ export class DefaultClient implements Client {
DefaultClient.isStarted.reset();
const tokenSource: vscode.CancellationTokenSource = new vscode.CancellationTokenSource();
console.log("provideCustomConfiguration");
const params: QueryTranslationUnitSourceParams = {
uri: docUri.toString(),
@@ -2680,7 +2688,7 @@ export class DefaultClient implements Client {
const configurationNotSet: boolean = configProviderNotSetAndNoCache && compileCommandsNotSet && compilerPathNotSet;
showConfigStatus = showConfigStatus || (configurationNotSet &&
!!compilerDefaults && !compilerDefaults.trustedCompilerFound && trustedCompilerPaths && (trustedCompilerPaths.length !== 1 || trustedCompilerPaths[0] !== ""));
!!compilerDefaults && !compilerDefaults.trustedCompilerFound && (trustedCompilerPaths.length !== 1 || trustedCompilerPaths[0] !== ""));
const configProviderType: ConfigurationType = this.configuration.ConfigProviderAutoSelected ? ConfigurationType.AutoConfigProvider : ConfigurationType.ConfigProvider;
const compilerType: ConfigurationType = this.configuration.CurrentConfiguration?.compilerPathIsExplicit ? ConfigurationType.CompilerPath : ConfigurationType.AutoCompilerPath;
@@ -2897,6 +2905,11 @@ export class DefaultClient implements Client {
params.configurations.push(modifiedConfig);
});
const trusted_compiler_path: string | undefined = params.configurations[params.currentConfiguration].compilerPath;
if (trusted_compiler_path) {
void this.addTrustedCompiler(trusted_compiler_path).catch(logAndReturn.undefined);
}
await this.languageClient.sendRequest(ChangeCppPropertiesRequest, params);
if (!!this.lastCustomBrowseConfigurationProviderId && !!this.lastCustomBrowseConfiguration && !!this.lastCustomBrowseConfigurationProviderVersion) {
if (!this.doneInitialCustomBrowseConfigurationCheck) {
@@ -3071,10 +3084,8 @@ export class DefaultClient implements Client {
if (sanitized.browsePath.length === 0) {
sanitized.browsePath = ["${workspaceFolder}/**"];
}
console.log("Falling back to last received browse configuration: ", JSON.stringify(sanitized, null, 2));
break;
}
console.log("No browse configuration is available.");
return;
}
@@ -3088,7 +3099,6 @@ export class DefaultClient implements Client {
if (sanitized.browsePath.length === 0) {
sanitized.browsePath = ["${workspaceFolder}/**"];
}
console.log("Falling back to last received browse configuration: ", JSON.stringify(sanitized, null, 2));
break;
}
return;
@@ -3865,13 +3875,11 @@ export class DefaultClient implements Client {
if (path === null || path === undefined) {
return;
}
if (trustedCompilerPaths.includes(path)) {
DebugConfigurationProvider.ClearDetectedBuildTasks();
return;
if (!trustedCompilerPaths.includes(path)) {
trustedCompilerPaths.push(path);
}
trustedCompilerPaths.push(path);
compilerDefaults = await this.requestCompiler(path);
DebugConfigurationProvider.ClearDetectedBuildTasks();
compilerDefaults = await this.requestCompiler(path);
}
}
@@ -976,11 +976,6 @@ export class CppProperties {
configuration.macFrameworkPath = this.defaultFrameworks;
}
}
} else {
// add compiler to list of trusted compilers
if (i === this.CurrentConfigurationIndex) {
void this.client.addTrustedCompiler(configuration.compilerPath).catch(logAndReturn.undefined);
}
}
} else {
// However, if compileCommands are used and compilerPath is explicitly set, it's still necessary to resolve variables in it.
@@ -145,7 +145,6 @@ function sendActivationTelemetry(): void {
*/
export async function activate(): Promise<void> {
console.log("activating extension");
sendActivationTelemetry();
const checkForConflictingExtensions: PersistentState<boolean> = new PersistentState<boolean>("CPP." + util.packageJson.version + ".checkForConflictingExtensions", true);
if (checkForConflictingExtensions.Value) {
@@ -157,7 +156,6 @@ export async function activate(): Promise<void> {
}
}
console.log("starting language server");
clients = new ClientCollection();
ui = getUI();
@@ -1202,7 +1200,6 @@ async function handleCrashFileRead(crashDirectory: string, crashFile: string, er
export function deactivate(): Thenable<void> {
clients.timeTelemetryCollector.clear();
console.log("deactivating extension");
telemetry.logLanguageServerEvent("LanguageServerShutdown");
clearInterval(intervalTimer);
commandDisposables.forEach(d => d.dispose());
@@ -226,25 +226,21 @@ suite("resolveVariables", () => {
throw new Error(`quoteArgument failure: for \"${input}\", \"${result}\" !== \"${expectedOutput}\"`);
}
};
/*
this is how the args from tasks.json will be sent to the chilprocess.spawn:
"args":[
"-DTEST1=TEST1 TEST1", // "-DTEST1=TEST1 TEST1"
"-DTEST2=\"TEST2 TEST2\"", // -DTEST2="TEST2 TEST2"
"-DTEST3=\\\"TEST3 TEST3\\\"", // "-DTEST3=\"TEST3 TEST3\""
"-DTEST4=TEST4\\ TEST4", // "-DTEST4=TEST4 TEST4"
"-DTEST5='TEST5 TEST5'", // -DTEST5='TEST5 TEST5'
"-DTEST6=TEST6\\ TEST6 Test6", // "-DTEST6=TEST6 TEST6 Test6"
]
*/
testQuoteArgumentScenario("-DTEST1=TEST1 TEST1", "\"-DTEST1=TEST1 TEST1\"");
testQuoteArgumentScenario("-DTEST2=\"TEST2 TEST2\"", "\"-DTEST2=\"TEST2 TEST2\"\"");
testQuoteArgumentScenario("-DTEST3=\\\"TEST3 TEST3\\\"", "\"-DTEST3=\\\"TEST3 TEST3\\\"\"");
testQuoteArgumentScenario("-DTEST4=TEST4\\ TEST4", "\"-DTEST4=TEST4 TEST4\"");
testQuoteArgumentScenario("-DTEST5=\'TEST5 TEST5\'", "-DTEST5=\'TEST5 TEST5\'");
testQuoteArgumentScenario("-DTEST4=TEST4\\ TEST4", "-DTEST4=TEST4\\ TEST4");
testQuoteArgumentScenario("-DTEST5='TEST5 TEST5'", "-DTEST5='TEST5 TEST5'");
testQuoteArgumentScenario("-DTEST6=TEST6\\ TEST6 Test6", "\"-DTEST6=TEST6 TEST6 Test6\"");
if (os.platform() === 'win32') {
testQuoteArgumentScenario(`-DTEST1=TEST1 TEST1`, `"-DTEST1=TEST1 TEST1"`);
testQuoteArgumentScenario(`-DTEST2="TEST2 TEST2"`, `"-DTEST2=\\"TEST2 TEST2\\""`);
testQuoteArgumentScenario(`-DTEST3=\\"TEST3 TEST3\\"`, `"-DTEST3=\\\\\\"TEST3 TEST3\\\\\\""`);
testQuoteArgumentScenario(`-DTEST4=TEST4\\ TEST4`, `"-DTEST4=TEST4\\ TEST4"`);
testQuoteArgumentScenario(`-DTEST5='TEST5 TEST5'`, `"-DTEST5='TEST5 TEST5'"`);
testQuoteArgumentScenario(`-DTEST6=TEST6\\ TEST6 Test6`, `"-DTEST6=TEST6\\ TEST6 Test6"`);
} else {
testQuoteArgumentScenario(`-DTEST1=TEST1 TEST1`, `'-DTEST1=TEST1 TEST1'`);
testQuoteArgumentScenario(`-DTEST2="TEST2 TEST2"`, `'-DTEST2="TEST2 TEST2"'`);
testQuoteArgumentScenario(`-DTEST3=\\"TEST3 TEST3\\"`, `'-DTEST3=\\"TEST3 TEST3\\"'`);
testQuoteArgumentScenario(`-DTEST4=TEST4\\ TEST4`, `'-DTEST4=TEST4\\ TEST4'`);
testQuoteArgumentScenario(`-DTEST5='TEST5 TEST5'`, `'-DTEST5='\\''TEST5 TEST5'\\'''`);
testQuoteArgumentScenario(`-DTEST6=TEST6\\ TEST6 Test6`, `'-DTEST6=TEST6\\ TEST6 Test6'`);
}
});
interface ResolveTestFlowEnvironment {