Skip to content

Releases: microsoft/vscode-cpptools

1.20.2 (release candidate)

22 Apr 21:16
efdc8e9
Compare
Choose a tag to compare
Pre-release

Instructions

Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or download a vsix that matches your OS from the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Bug Fixes

  • Fix non-existent relative path variables not showing a warning in c_cpp_properties.json (and other related issues). #12089
  • Fix duplicate URIs in calls to provideConfigurations. #12177
  • Fix a crash and deadlock with a high C_Cpp.loggingLevel. #12194
  • Fix handling of -iquote for code analysis and #include completions. #12198

1.20.1

10 Apr 01:19
a1487e5
Compare
Choose a tag to compare
1.20.1 Pre-release
Pre-release

Instructions

Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or download a vsix that matches your OS from the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Bug Fixes

  • Fix 'Add #include' code actions for code scoped by a namespace or class. #11541
  • Fix the IntelliSense server not starting when a completion, signature help, or document highlight occurs from external commands. #12143
  • Fix the IntelliSense configuration not falling back to the c_cpp_properties.json configuration for a file not handled by a configuration provider. #12144

1.20.0

26 Mar 22:40
6f19496
Compare
Choose a tag to compare
1.20.0 Pre-release
Pre-release

Instructions

Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or download a vsix that matches your OS from the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Enhancements

  • Add support for C++ modules IFC version 0.43. #10843
  • Add support for ${userHome} in c_cpp_properties.json. #11756
  • Reduce the default max workspace symbol search results and add C_Cpp.maxSymbolSearchResults. PR #12131
  • Update to clang-format/clang-tidy 18.1.2. PR #12135
  • Update IntelliSense engine.

Bug Fixes

  • Fix IntelliSense parsing issues. #6183
  • Fix 'Copy Declaration / Definition' code not being formatted. #10956
  • Fix 'Create Declaration / Definition' not working if the cursor isn't on the function name. #11834
  • Fix duplicate 'Add #include' code actions. #11989
  • Fix forcedInclude resolution for relative paths. PR #12035
  • Fix 'Add Configuration...' in launch.json when editor.suggest.showSnippets is false. #12059
  • Fix c_cpp_properties.json warnings for includePaths with ** wildcard glob patterns. #12070
  • Fix call stacks for cpptools and cpptools-srv not being available on Linux. #12091
  • Fix IntelliSense processes shutting down immediately if not enough memory is detected. #12126
  • Fix code analysis aborting after encountering an excluded file (instead of just skipping it). #12127
  • Fix "Cannot open source" errors on missing includes not appearing if C_Cpp.errorSquiggles is enabled. #12134
  • Fix a cpptools process crash and deadlock during shutdown.

1.19.9

20 Mar 18:46
ad5d6de
Compare
Choose a tag to compare

Instructions

Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Bug Fixes

  • Fix an issue with Cygwin system headers not being properly detected. #12113
  • Fix a crash in cpptools-srv when low on memory. #12121
  • Fix an issue preventing cpptools-srv from being relaunched after a crash.

1.19.8

14 Mar 03:33
9269192
Compare
Choose a tag to compare

Instructions

Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Bug Fixes

  • Fix an issue with applying the proper working directory from a compile_commands.json when a compilePath is also set. #12024
  • Fix a deadlock. #12051
  • Fix a crash that could occur when failing to query clang-cl.
  • Fix an issue with handling of winsysroot args for clang-cl.
  • Fix an issue with processing relative include paths returned by clang-cl.

1.19.6

07 Mar 00:31
2344655
Compare
Choose a tag to compare

Instructions

Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Enhancement

  • Performance improvement.

1.19.5

04 Mar 23:57
e12c7c2
Compare
Choose a tag to compare

Instructions

Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Enhancements

  • Change how args and command fields are handled in cppbuild tasks, to match the behavior of VS Code shell build tasks, including explicit quoting support. #12001
  • Enable C23 IntelliSense support, and add support for clatest std value for MSVC. #12020

Bug Fixes

  • Fix the IntelliSense cache not being pruned. #11925
  • Fix an issue with duplicate Add #include code actions appearing if the same header name exists in multiple locations. #11989
  • Fix compiler querying with a -index-store-path argument. #12012
  • Fix an issue with changes to C_Cpp.inlayHints settings not taking effect immediately. #12013
  • Fix an issue with how Doxygen brief and param are displayed on hover. #12015
  • Fix an issue preventing the extension from functioning if installed via snap on Linux. #12021
  • Fix compiler querying with a -Xclang -mllvm argument. #12024
  • Fix the include graph lookup not occurring for source files. #12036
  • Fix exclusions not applying to dependent headers with recursive includes. #12042
  • Fix a potential cpptools process hang on shutdown.

1.19.4

22 Feb 03:24
1868f99
Compare
Choose a tag to compare

Instructions

Install it via using the Extensions view in VS Code or download a vsix that matches your OS from Assets section below (or the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Enhancements

  • Enable support for fuzzy symbol searches. #2751
    • This may not be enabled for all users unless C_Cpp.experimentalFeatures is enabled.
  • Implement progressive population of IntelliSense results. #7759
  • Improve performance of symbol searches. #7908, #7914, #11557
    • This may not be enabled for all users unless C_Cpp.experimentalFeatures is enabled.
  • Support insert mode for auto-complete. #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
  • Change the default setting value for C_Cpp.intelliSenseUpdateDelay from 2s to 1s. PR #11932
  • Improve the types supported for the 'Add #include' code action.
  • Various performance improvements.

Bug Fixes

  • Fix IntelliSense bug with type deduction using concepts. #8132
  • Fix clang-format error messages not being logged. #8944
  • Fix indentation missing in markdown fenced code blocks. #11379
  • Fix shell escaping for cppbuild task command line arguments. #11422
  • Fix IntelliSense not updating when a #include is added from a refactor command. #11549
  • Fix 'Add '#include' code actions for Mac frameworks. #11579
  • Fix the parent path of the source file in compile_commands.json not being added to the browse.path. #11631
  • Fix the database not getting updated in certain cases when switching configurations. #11649
  • Fix a cpptools crash with certain projects. #11674
  • Fix snippet and include completion. #11715, #11720
  • Fix formatting not working in headers after using 'Extract to Function'. #11729
  • Fix document symbol requests not checking for cancellation. #11750
  • Fix the default editor.wordBasedSuggestions setting for VS Code versions 1.85 or newer. PR #11773
  • Fix code analysis results getting cleared after there's a configuration update. #11790
  • Fix an exception getting thrown if IntelliSense is disabled but a configuration provider is registered. #11795
  • Fix an EACCES error when using include wildcards with system includes. #11833
  • Fix German code analysis translations. PR #11845
  • Trim trailing spaces from include paths in the configuration UI. #11862
  • Fix comma delimited lists in @param Doxygen parameters. #11868
  • Fix incorrect errors for compilerPath in the configuration UI for compilers that can be found in PATH. #11903
  • Fix an issue with include sorting when formatting with clang-format. #11914
  • Fix the -include arg of -Xarg_<arg1> getting filtered out, leading to a failed compiler query. #11965
  • Fix the -arch flag overwriting the -target flag's value when it shouldn't. #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.

1.19.3

13 Feb 21:17
76ccb79
Compare
Choose a tag to compare
1.19.3 Pre-release
Pre-release

Instructions

Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or download a vsix that matches your OS from the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Enhancements

  • Enable support for fuzzy symbol searches. #2751
    • This may not be enabled for all users unless C_Cpp.experimentalFeatures is "enabled".
  • Improve performance of symbol searches. #7908, #7914, #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

Bug Fixes

  • Trim trailing spaces from include paths in the configuration UI. #11862
  • Fix comma delimited lists in @param Doxygen parameters. #11868
  • Fix incorrect errors for compilerPath in the configuration UI for compilers that can be found in PATH. #11903
  • Fix an issue with include sorting when formatting with clang-format. #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.

1.19.2

22 Jan 21:41
5077edf
Compare
Choose a tag to compare
1.19.2 Pre-release
Pre-release

Instructions

Install it via using the Extensions view in VS Code and choosing the option "Switch to Pre-Release Version" or download a vsix that matches your OS from the "Download" dropdown in the "Version History" tab section on the Marketplace website) and then use the Extensions: Install from VSIX... command in VS Code (don't double-click the vsix or another app like VS might try to open it incorrectly).

Requirements

  • VS Code 1.67.0 or later.

Changes

Enhancements

  • Implement progressive population of IntelliSense results. #7759
  • Improve memory efficiency by using token parsing in the 'Add #include' feature. #11515
  • 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
  • Fix IntelliSense not updating when a #include is added from a refactor command. #11549
  • Fix formatting not working in headers after using 'Extract to Function'. #11729
  • Fix document symbol requests not checking for cancellation. #11750
  • Fix code analysis results getting cleared after there's a configuration update. #11790
  • Fix an exception getting thrown if IntelliSense is disabled but a configuration provider is registered. #11795
  • Fix German code analysis translations. PR #11845
  • Fix an EACCES error when using include wildcards with system includes. #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.