Releases: microsoft/vscode-cpptools
0.14.6
Bug fixes and workspace parsing performance improvements:
https://blogs.msdn.microsoft.com/vcblog/2018/01/17/visual-studio-code-cc-extension-jan-2018-update/
Fix tag parser failing (and continuing to fail after edits) when it shouldn't. #1367
Fix tag parser taking too long due to redundant processing. #1288
Fix debugging silently failing the 1st time if a C/C++ file isn't opened. #1366
Skip automatically adding to files.associations if it matches an existing glob pattern or if C_Cpp.autoAddFileAssociations is false. #722
The debugger no longer requires an extra reload. #1362
Fix incorrect "Warning: Expected file ... is missing" message after installing on Linux. #1334
Fix "Include file not found" messages not re-appearing after settings changes. #1363
Performance improvements with browse.path parsing, and stop showing "Parsing files" when there's no actual parsing. #1393
Fix crash when settings with the wrong type are used. #1396
Allow semicolons in browse.path. #1415
Fix to handle relative pathing in source file paths properly when normalizing. #1228
Fix delay in language service activation caused by cpptools.json downloading. #1429
Add C_Cpp.workspaceParsingPriority setting to enable using less than 100% CPU during parsing of workspace files.
Add C_Cpp.exclusionPolicy default to checkFolders to avoid expensive files.exclude checking on every file.
January 2018 - Insiders release
Add setting to throttle workspace parsing. (#1389) Add workspaceParsingPriority and exclusionPolicy settings.
0.14.5
- Fix for stackwalk
NullReferenceException
. #1339 - Fix for
-isystem
(or-I
) not being used incompile_commands.json
if there's a space after it. #1343 - Fix for header switching from
.cc
to.hpp
files (and other cases). #1341 - Fix reload prompts not appearing in debugging scenarios (after the initial installation). #1344
- Add a "wait" message when commands are invoked during download/installation. #1344
- Prevent blank "C/C++ Configuration" from appearing when debugging is started but the language service is not. #1353
v0.14.5-insiders
Merge pull request #1336 from Microsoft/ronglu-edit updated links
0.14.4
December 2017 Update
We added support for offline installation, 32-bit Linux, and Linux distros without glibc 2.18 (e.g. CentOS, RHEL, Scientific Linux). The list of issues fixed is:
- Enable the language service processes to run without glibc 2.18. #19
- Enable the language service processes to run on 32-bit Linux. #424
- Fix extension process not working on Windows with non-ASCII usernames. #1319
- Fix IntelliSense on single processor VMs. #1321
- Enable offline installation of the extension. #298
- Add support for
-isystem
incompile_commands.json
. #1156 - Remember the selected configuration across launches of VS Code. #1273
- Fix 'Add Configuration...` entries not appearing if the extension wasn't previously activated. #1287
- Add
(declaration)
to declarations in the navigation list. #1311 - Fix function definition body not being visible after navigation. #1311
- Improve performance for fetching call stacks with large arguments. #363
0.14.3
This release addresses multiple community-reported issues
- Fix for disappearing parameter hints tooltip. #1165
- Fix for parameter hints only showing up after the opening parenthesis. #902, #819
- Fix for customer reported crashes in the TypeScript extension code. #1240, #1245
- Fix .browse.VC-#.db files being unnecessarily created when an shm file exists. #1234
- Fix High CPU load on unsupported Linux distros. #1249
- Fix language service to only activate after a C/C++ file is opened or a C/Cpp command is used (not onDebug).
- Fix database resetting if shutdown was blocked by an IntelliSense operation.
- Fix deadlock that can occur when switching configurations.
- Fix browse.databaseFilename changing not taking effect until a reload.
0.14.2
Shortly after releasing 0.14.1 we noticed a spike in our extension activation telemetry. It turned out that a few users were attempting to activate the extension on a Linux platform that we don't support yet and VS Code was repeatedly trying to activate our extension after it crashed. We pushed a patch for the telemetry bug to reduce the amount of network traffic those users would see.
0.14.1
Support for multiple root folders (#1070)
VS Code is releasing support for opening multiple folders in the same window starting with the 1.18 stable build (Insiders had access to this feature sooner). In version 0.14.1 we have support for this feature working, but the following issues may be encountered:
- Opening parent/child folders may not produce correct results. For example, if folder
B
is a subfolder ofA
and bothA
andB
have been opened in VS Code, incorrect behavior may be noticed when files under folderB
are opened since the extension must pick one of the two folders to "own" the files underB
. We currently pick the folder that was opened first, so keep that in mind if you set up your multi-root workspace this way. - When a multi-root workspace is open (e.g. 2 or more folders have been opened), the default storage location for the code browsing database changes. VS Code has not yet provided an API to allow us to reuse the folder's previous storage location so you will notice that the extension will re-index your folders if you did not supply a
browse.databaseFilename
in your c_cpp_properties.json file. However, we will only index one folder at a time so as not to consume all of your CPU resources. The "active" folder (the owner of the currently focused file) will be given permission to index and the others will be paused until they become active. - Multi-root workspaces have a new layer to which settings can be applied. The settings should apply to all folders opened in the workspace, but we are still investigating an issue related to this. For the time being, the extension only respects "User" and "per-folder" settings when a multi-root workspace is open.
Other notable changes/bug fixes
We have fixed our issues with the extension holding a lock on file handles preventing users from saving their edited files. microsoft/vscode#27329, #1040
We have added commands that allow users to pause and resume the thread that indexes all of your folder's files (for code browsing/navigation). They are available in VS Code's command palette or by clicking on the database icon in the lower right corner of the status bar. #1141
You should no longer get a second "reload window" prompt when installing/updating the extension unless you have a launch.json file active.
0.14.0
Support for compile_commands.json (#156)
In this release we added support for specifying includes and defines via compile_commands.json
. In your c_cpp_properties.json file, add "compileCommands": "/path/to/compile_commands.json"
to your configuration and the extension will use the include paths and defines listed in the compile commands database rather than the "includePath"
and "defines"
in c_cpp_properties.json
If you open a file in your workspace that does not have an entry in the compile commands database, the extension will notify you and use the "includePath"
and "defines"
in your c_cpp_properties.json instead.
Indexing improvements (#1106)
- The extension now only scans directories once even if duplicate or overlapping paths are specified in the
"browse.path"
setting. - A new icon for indexing has been created that will show the current status of indexing when the mouse cursor hovers over it. The flame icon is now only used when the "Default" IntelliSense engine is doing an expensive operation.
Logging to the Output window
We added logging to the Output window. This replaces the need to set environment variables and log to a file as documented here. To change the verbosity, edit the "C_Cpp.loggingLevel"
setting. The default behavior is to only display errors encountered by the extension.
Other notable additions/fixes
We fixed the highest hitting crashes in the extension that caused IntelliSense features to appear to be hung. #1076
We fixed an issue where the indexer was parsing all header files discovered on the system (heavy CPU usage)when a workspace folder was not open. #1109