Releases: microsoft/vscode-cpptools
0.28.0-insiders2
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.43.0 or later.
- 32-bit Linux is no longer supported. #5346
Changes
New Features
- Add GNU (and C18) language standard options. #2782
Bug Fixes
- Fix some cpptools and cpptools-srv crash regressions.
- Fix an issue with squiggle updates not occurring when a dependent file is created, deleted, or renamed. #3670
- Avoid
<…>truncation on hover. #5291 - Fix
compilerPathset to""not working. #5392 - Fix IntelliSense sometimes not working on a header file if an existing TU is chosen that doesn't actually contain the header file. #5376
Known Issues
- None so far.
0.28.0-insiders
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.43.0 or later.
- 32-bit Linux is no longer supported. #5346
Changes
New Features
Enhancements
- Change the
gccproblem matcher to useautoDetectforfileLocation. #1915 - Add support for IntelliSense-based
Go to Definitionon#includestatements. #2564 - Support relative paths with
forcedInclude. #2780 - Make the
Visual Studioformatting style respect the C++ standard (e.g.> >for C++03 or earlier). #3578 - Add support for more C++20 features, such as concepts. #4195
- Process the "std" and bitness (-m64/-m32) compiler args. #4726
- Switch from our custom Rename UI to VS Code's Refactor Preview. #4990
Bug Fixes
- Process "$CPATH" on non-Windows OS's. #3940
- Fix compiler querying for compilers that output non-English strings. #4542
- Fix compiler querying when the '-include' argument is used. #4655
- Fix the "Unable to load schema" error for
c_cpp_properties.json. #4841 - Change "Visual Studio"
clang_format_fallback_stylesetting to use NamespaceIndentation All. #5124 - Fix "C++98" and "C++0x" modes. #5157, #5225
- Improve the error message for multiroot projects using
compile_commands.json. #5160 - Fix some cpptools process crashes. #5280
- Fix incorrect translations. PR #5300
- Fix cpptools auto-restarting after a crash. #5303
- Fix incorrect
c_cpp_properties.jsonsquiggles. #5314, #5322
Known Issues
- There are some cpptools and cpptools-srv crash regressions we're working on fixing for 0.28.0-insiders2.
0.27.1
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Changes
Bug Fix
- Disable Insiders
updateChannelfor 32-bit Linux and VS Code older than 1.43.0.
Known Issues
- None so far.
0.27.0
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Changes
Enhancements
- Improved multi-root implementation with a single language server process and database for the entire workspace (shared between workspace folders). Fixes most multi-root bugs.
- Update to clang-format 9.0.1 (and without shared library dependencies). #2887, #3174
- Add new setting
C_Cpp.debugger.useBacktickCommandSubstitutionto fix debugging when CShell is the remote default shell. #4015 - Rename language server processes to
cpptoolsandcpptools-srv(IntelliSense process). #4364 - Add support for
-iframeworkincompile_commands.json. #4819 - Add
cpptools.setActiveConfigNamecommand. #4870 - Default to the bundled
clang-formatif its version is newer. #4963 - Add URI's to the debug logging for messages (e.g.
fileChanged). #5062 - Use
lldb-mifor macOS Mojave or newer. - Support '`' in addition to '-exec' for sending gdb commands PR MIEngine#967
Bug Fixes
- Fix issue in which the user is not again prompted to use a custom configuration provider if settings files have been deleted. #2346
- Fix "Unrecognized format of field "msg" in result" on macOS. #2492
- Fix IntelliSense using too much CPU when switching branches. #2806
- Fix for timeout on slow terminals while debugging. #2889
- Fix non-localized text. #4481, #4879
- Fix issues with paths containing certain Unicode sequences on Mac. #4712
- Fix IntelliSense parsing bugs and crashes. #4717, #4798
- Fix configuration UI disabling
compilerPathif no default compiler is found. #4727 - Fix issue with providing custom configurations for files specified using URIs schemes we do not recognize. #4889
- Fix Outline view not updating fast enough after switching branches. #4894
- Fix failure to detect CL.exe if VS Installer files are stored on a drive other than the system drive. #4929
- Fix extension randomly getting stuck while communicating with the IntelliSense process on Mac. #4989
- Fix completion results appearing after numeric literals. #5019
- Fix issue with cancellation of a
Renameoperation causing subsequentFind All ReferencesandRenameoperations to fail. #5022 - Fix some settings not being editable in the UI. PR #5126
- Fix
cpp_properties.jsonerror squiggles not appearing. #5131 - Fix
search.excludenot applying if there are > 1 symbols matching in the excluded file. #5152 - Fix tag parsing not working on Windows 7 without SP1. #5155
- Fix
updateChannelbeing settable per-workspace. PR #5185 - Fix opened files external to the workspace folder being removed from the database during loading. #5190
- Fix invalid
c_cpp_properties.jsonand configuration UI warningCompiler path with spaces and arguments is missing double quotes. #5215 - Fix environment variables used for the RunInTerminal Request. MIEngine#979
- Fix a race condition that could cause the Outline,
Find All References, etc. to stop working.
Known Issues
- None so far.
0.27.0-insiders5
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Bug Fixes
- Fix the configuration UI showing errors when an older version of
cl.exeis set in thecompilerPath. #5151 - Fix tag parsing not working on Windows 7 without SP1. #5155
- Fix debugger not working until the extension is reinstalled after macOS High Sierra or older is upgraded to a newer OS. #5171
- Fix the
Open File…scenario without a workspace showing "Tag Parser initializing" (all symbol operations fail). #5176 - Fix
updateChannelbeing settable per-workspace. PR #5185 - Fix opened files external to the workspace folder being removed from the database during loading. #5190
- Fix crash for workspaces with no workspace folders. #5192
- Fix environment variables used for the RunInTerminal Request. MIEngine#979
Known Issues
- None so far.
0.27.0-insiders4
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Bug Fixes
- Fix
Go to Symbol in Workspacenot applyingsearch.excludesettings. #5099 - Fix some settings not being editable in the UI. PR #5126
- Fix
cpp_properties.jsonerror squiggles not appearing. #5131 - Fix the wrong workspace folder settings being used. #5134
- Fix the "Open File…" scenario without a workspace folder (again). #5136
- Fix changes to
files.excludehaving no effect if they're identical to the previous workspace folder's. #5138 - Fix the debugger not working for macOS High Sierra or older. #5146
- Fix
search.excludenot applying if there are > 1 symbols matching in the excluded file. #5152 - Fix tag parsing (workspace symbol searching) not working on Windows 7. #5155
- Fix a race condition that could cause the Outline,
Find All References, etc. to stop working. - Fix
Rescan Workspacerunning an extra time per workspace folder. - Fix a random crash after settings change.
Known Issues
- The configuration UI and json shows errors when an older version of
cl.exeis set in thecompilerPath. #5151 - The "Open File..." scenarios (without a workspace) shows "Tag Parser initializing" (all symbol operations fail). #5176
- The debugger doesn't work until the extension is reinstalled after macOS High Sierra or older is upgraded to a newer OS. #5171
- The Outline view may sometimes be incorrect for files outside the workspace. #3949
0.27.0-insiders3
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Bug Fixes
- Fix update to clang-format 9.0.1 (and without shared library dependencies). #2887, #3174
- Add new setting
C_Cpp.debugger.useBacktickCommandSubstitutionto fix debugging when CShell is the remote default shell. #4015 - Fix Outline view not updating fast enough after switching branches. #4894
- Fix extension randomly getting stuck while communicating with the IntelliSense process on Mac. #4989
- Fix completion results appearing after numeric literals. #5019
- Fix crashes that sometimes occur after adding multiple workspace folders. #5059
- Add URI's to the debug logging for messages (e.g.
fileChanged). #5062 - Fix crashes that sometimes occurs after switching color themes. #5063
- Fix
clang_format_sortIncludessetting not getting used. #5068 - Fix error after updating a document too soon after startup. #5076
- Fix IntelliSense process crashing on macOS 10.12 or older after a settings change. #5090
- Fix Pause (break all) not working on Mac with Attach debugging.
- Other language server crash fixes.
Known Issues
- When a workspace is used, all the folders get the wrong workspace folder settings. #5134
- The open file scenario doesn't work as expected. #5136
- The debugger doesn't work for macOS High Sierra or older. #5146
- Pause (break all) doesn't work (in certain scenarios) when debugging on Mac. Workaround: use
kill -2 <pid>to trigger the break.
0.27.0-insiders2
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Bug Fixes
- Fix the
Open File...scenario (without a workspace folder). #5049 - Fix
browsePathnull reference that can occur with some configuration providers. PR #5055
Known Issues (that we plan to fix in next release)
- Extension sometimes crashes after adding multiple folders at the same time. #5059
- Extension sometimes crashes after changing color themes with a multiroot workspace. #5063
- We're investigating several other known crashes...
- Pause (break all) doesn't work when debugging on Mac. Workaround: use
kill -2 <pid>to trigger the break. - The extension can randomly get stuck while doing IntelliSense operations on Mac (not a regression compared to 0.26.3). #4989
0.27.0-insiders
Instructions
Set the "C_Cpp.updateChannel" setting to "Insiders" to auto-install the latest Insiders vsix. Or if that doesn't work (such as in the remote scenario with a version older than 0.26.3-insiders2), manually download the vsix that matches the target OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Changes
Enhancements
- Improved multi-root implementation with a single language server process and database for the entire workspace (shared between workspace folders). Fixes most multi-root bugs.
- Update to clang-format 9.0.1 (and without shared library dependencies). #2887, #3174
- Rename language server processes to
cpptoolsandcpptools-srv(IntelliSense process). #4364 - Add support for
-iframeworkincompile_commands.json. #4819 - Add
cpptools.setActiveConfigNamecommand. #4870 - Default to the bundled
clang-formatif its version is newer. #4963 - Include only
lldb-mifor macOS.
Bug Fixes
- Fix issue in which the user is not again prompted to use a custom configuration provider if settings files have been deleted. #2346
- Fix "Unrecognized format of field "msg" in result" on macOS. #2492
- Fix IntelliSense using too much CPU when switching branches. #2806
- Fix for timeout on slow terminals while debugging. #2889
- Fix non-localized text. #4481, #4879
- Fix issues with paths containing certain Unicode sequences on Mac. #4712
- Fix IntelliSense parsing bugs and crashes. #4717, #4798
- Fix configuration UI disabling
compilerPathif no default compiler is found. #4727 - Fix issue with providing custom configurations for files specified using URIs schemes we do not recognize. #4889
- Fix failure to detect CL.exe if VS Installer files are stored on a drive other than the system drive. #4929
- Fix issue with cancellation of a
Renameoperation causing subsequentFind All ReferencesandRenameoperations to fail. #5022
Known Issues (that we plan to fix in next release)
- The
Open File...scenario is broken (without a workspace folder). #5049 - Pause (break all) doesn't work when debugging on Mac. Workaround: use
kill -2 <pid>to trigger the break. - The extension can randomly get stuck while doing IntelliSense operations on Mac (not a regression compared to 0.26.3). #4989
0.26.3
Instructions
To use the "offline" .vsix (that doesn't download OS-based dependencies on extension activation), download the .vsix that matches your OS and run the "Install from VSIX" command in VS Code.
Requirements
- VS Code 1.30.0 or later.
Changes
Bug Fixes
- IntelliSense bug fixes. #2774
- Improve memory usage in projects with a large number of files. #4714
- Fix a crash when failing to launch external executables on Linux and Mac. #3607
- Update output of
C/C++: Log Diagnosticsto include the correct set of defines when custom configurations or compile commands are used. #3631 #4270 - Fix Insiders channel not working on remote targets. #3874
- Fix
compile_commands.jsonprompt appearing when a configuration provider is used. #3972 - Improve IntelliSense performance with range-v3. #4414
- Fix template members not being nested under the template type in the Outline view. #4466
- Fix an issue in which failure to invoke a compiler could result in a hang on Linux and Mac. #4627
- Fix custom configurations sometimes not being applied to headers. #4649
- Fix headers opening into header-only TU's instead of TU's for candidate source files. #4696, #3985
- Fix the missing description of
C_Cpp.clang_format_style. - Fix Insiders channel not auto-downgrading after an Insiders vsix is unpublished. #4760
- Fix compiler querying with more than 40
compilerArgs. #4791 - Fix an issue in which files may be unnecessarily removed from the tag parser database on startup, if using a custom configuration provider, resulting in a large number of files being reparsed. #4802
- Fix an issue in which
Build and Debug Active Filewould fail to detect a compiler, without a compiler present incompilerPath. #4834 - Add a version check for
-break-insertso later versions oflldb-mican be used as amidebugger. MIEngine#946 - Fix clang-cl detection for system includes and defines. #4000
- Fix a bug that could cause the browse database threads to get stuck.
Enhancements
- If clang-format is found in the environment path, that version will take precedence over the copy of clang-format bundled with the extension. #3569
- When tag parsing is complete, and includer/includee relationships become available, header-only TU's will be replaced with TU's for candidate source files, if available. #4969
Known Issues
- None so far.