Skip to content

Releases: microsoft/vscode-cpptools

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.

1.19.1

22 Nov 01:27
30de9bc
Compare
Choose a tag to compare
1.19.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 Mac frameworks. #11579
  • Fix snippet and include completion. #11715, #11720

1.19.0

17 Nov 10:25
100e2e0
Compare
Choose a tag to compare
1.19.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

Bug Fixes

  • Fix IntelliSense bug with type deduction using concepts. #8132
  • Fix clang-format error messages not being logged. #8944
  • Fix insert mode sometimes doing a replace for completion. #10613
  • Fix indentation missing in markdown fenced code blocks. #11379
  • 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

1.18.5

17 Nov 02:44
e7cb0a7
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 ~/vscode-cpptools being used as the cache folder instead of ~/.cache/vscode-cpptools on Linux. #11693
  • The Windows x86 vsix is published on the marketplace (it was not for 1.18.4).

1.18.4

15 Nov 02:33
4ba260c
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 'Extract to function' not scrolling to and selecting the added header declaration. #11676
  • Fix the extension sometimes failing to activate with VS Code versions less than 1.85. #11680

1.18.3

14 Nov 03:02
e896231
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

New Features

  • Add an 'Extract to function' (or member function) code action after selecting code. #1162
  • Compiler acquisition improvements. #10525
  • Provide Add '#include' code action suggestions for IntelliSense errors related to symbols not being found. #10791

Enhancements

  • Add keyboard support for 'Inline Macro'. #11260
  • Add setting C_Cpp.refactoring.includeHeader to customize whether or not to add an include header when doing a refactoring code action. #11271
  • Improve the walkthrough wording. #11320
  • Update clang-format and clang-tidy to 17. PR #11491
  • Add a pre-release available notification. PR #11569

Bug Fixes

  • Fix the debugger truncating long strings when inspecting values. #1786
  • Switch to using XDG_CACHE_HOME on Linux for the default database path. #10191
  • Fix an IntelliSense error with std::is_trivially_copyable_v. #10712
  • Fix incorrect status and commands with the tag parsing language status UI. #10749
  • Fix an empty ("") compilerPath in a base configuration overriding the compiler specified by a custom configuration provider or a compile_commands.json. #11373
  • Fix a startup crash when reading values from JSON (settings) that are not the type expected. #11375
  • Fix a crash detected by crash telemetry. #11401
  • Fix handling of an undefined env variable on Linux and macOS. #11447
  • Fix multiple issues with querying nvcc (CUDA) as a compiler. #11454
  • Fix an IntelliSense crash when hovering over an invalid array index expression. #11510
  • Fix an issue that could cause a C language standard to be applied to a C++ file, or vice versa.
  • Remove cpp and clang-cpp preprocessors from the list of detectable compilers.
  • Fix an autocomplete crash bug (primarily on Mac).

Known Issue

  • The extension sometimes failing to activate with VS Code versions less than 1.18. #11680

1.18.2 (release candidate)

09 Nov 03:09
e3b4177
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

Enhancement

  • 'Extract to function' is enabled without C_Cpp.experimentalFeatures being set to "enabled".

Bug Fixes

  • Fix 'Extract to function' for functions in a header file . #11466
  • Fix 'Extract to function' for functions in an anonymous namespace. #11474
  • Fix 'Extract to function' for C code with typedefs or structs. #11475
  • Fix an IntelliSense crash when hovering over an invalid array index expression. #11510
  • Fix 'Add #include' code actions not appearing for "is not a template" errors. #11543
  • Fix 'Extract to function' bugs with formatting and selection. #11614, #11619
  • Fix 'Add #include' code actions being available for system headers that are already included. #11618
  • Fix an IntelliSense crash when selecting code.

Known Issue

  • 'Extract to function' may not work if there's a UTF-8 > 1-byte character in the file. #11640