Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
95d4724
Update launch.md with miDebuggerArgs (#2270)
pieandcakes Jul 13, 2018
458b2be
Update changelog for 0.17.7. (#2288)
sean-mcmanus Jul 18, 2018
5289053
Update changelog. (#2289)
sean-mcmanus Jul 19, 2018
a0e0254
Add a setting to silence configuration provider warnings (#2293)
bobbrow Jul 19, 2018
052f4e7
update version
bobbrow Jul 20, 2018
25a29d0
update fwlinks
bobbrow Jul 20, 2018
2cbc90d
Fix empty windowsSDKVersion. (#2301)
sean-mcmanus Jul 21, 2018
913f740
adds settings for inactive region font & bg color (#2308)
john-patterson Jul 23, 2018
7947dd8
Add multi-pass environment variable resolution (#2322)
john-patterson Jul 24, 2018
c8e30c7
Allow telemetry to detect failed downloads (#2332)
WardenGnaw Jul 26, 2018
2292e7d
Improve description in Extension/README.md (#2336)
Xeonacid Jul 27, 2018
84ff661
adds CHANGELOG entry for PR 2322 (#2325)
john-patterson Jul 27, 2018
1009b76
minor tweaks to config provider experience (#2302)
bobbrow Jul 27, 2018
8b704f5
allow users to use ~ for ${userprofile} on Windows (#2333)
bobbrow Jul 27, 2018
ad46d38
Only allow one configuration popup at a time (#2337)
bobbrow Jul 30, 2018
c36eb8e
Using sh instead of bash (#2340)
andyneff Jul 30, 2018
2b4b5d3
add a setting to modify the behavior of go to symbol in workspace (#2…
bobbrow Aug 2, 2018
3a46f10
Add gcc-x64 intelliSenseMode. (#2315)
sean-mcmanus Aug 2, 2018
3381cde
Update changelog for 0.17.8-insiders. (#2353)
sean-mcmanus Aug 4, 2018
610a395
Merge for 0.17.8-insiders.
sean-mcmanus Aug 4, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Extension/.vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
"runtimeExecutable": "${execPath}",
"args": [
"--extensionDevelopmentPath=${workspaceFolder}",
"--extensionTestsPath=${workspaceFolder}/out/test"
"--extensionTestsPath=${workspaceFolder}/out/test/unitTests"
],
"stopOnEntry": false,
"sourceMaps": true,
Expand Down
32 changes: 29 additions & 3 deletions Extension/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,31 @@
# C/C++ for Visual Studio Code Change Log

## Version 0.17.7: July 16, 2018
## Version 0.17.8-insiders: August 6, 2018
* Fix attach to process for systems without `bash` by using `sh` instead. [#569](https://github.com/Microsoft/vscode-cpptools/issues/569)
* Andy Neff (@andyneff) [PR 2340](https://github.com/Microsoft/vscode-cpptools/pull/2340)
* Fix IntelliSense crash after hover or completion with `_Complex` types. [#689](https://github.com/Microsoft/vscode-cpptools/issues/689), [#1112](https://github.com/Microsoft/vscode-cpptools/issues/1112)
* Add `C_Cpp.workspaceSymbols` setting with default `Just My Code` to filter out system header symbols. [#1119](https://github.com/Microsoft/vscode-cpptools/issues/1119), [#2320](https://github.com/Microsoft/vscode-cpptools/issues/2320)
* Add `C_Cpp.inactiveRegionForegroundColor` and `C_Cpp.inactiveRegionBackgroundColor` settings. [#1620](https://github.com/Microsoft/vscode-cpptools/issues/1620), [#2212](https://github.com/Microsoft/vscode-cpptools/issues/2212)
* John Patterson (@john-patterson) [PR 2308](https://github.com/Microsoft/vscode-cpptools/pull/2308)
* Fix Mac framework dependencies not being discovered. [#1913](https://github.com/Microsoft/vscode-cpptools/issues/1913)
* Fix red flame getting stuck after modifying `c_cpp_properties.json`. [#2077](https://github.com/Microsoft/vscode-cpptools/issues/2077)
* Add `gcc-x64` `intelliSenseMode` and send the correct clang or gcc version to our parser, fixing various IntelliSense errors. [#2175](https://github.com/Microsoft/vscode-cpptools/issues/2175), [#2299](https://github.com/Microsoft/vscode-cpptools/issues/2299), [#2317](https://github.com/Microsoft/vscode-cpptools/issues/2317)
* Make `Go to Definition` on the definition go to the declaration instead. [#2298](https://github.com/Microsoft/vscode-cpptools/issues/2298)
* Don't add empty `windowsSDKVersion` if none exists. [#2300](https://github.com/Microsoft/vscode-cpptools/issues/2300)
* Add multi-pass environment variable resolution allowing variables defined in terms of other variables. [#2322](https://github.com/Microsoft/vscode-cpptools/pull/2322)
* John Patterson (@john-patterson) [PR 2322](https://github.com/Microsoft/vscode-cpptools/pull/2322)
* Fix IntelliSense crash when the gcc-8 type_traits header is used. [#2323](https://github.com/Microsoft/vscode-cpptools/issues/2323), [#2328](https://github.com/Microsoft/vscode-cpptools/issues/2328)
* Limit configuration popups to one at a time. [#2324](https://github.com/Microsoft/vscode-cpptools/issues/2324)
* Allow users to use `~` for `${userProfile}` on Windows. [PR 2333](https://github.com/Microsoft/vscode-cpptools/pull/2333)
* Filter out buggy IntelliSense error `"= delete" can only appear on the first declaration of a function`. [#2352](https://github.com/Microsoft/vscode-cpptools/issues/2352)

## Version 0.17.7: July 22, 2018
* Fix `Go to Definition` for code scoped with an aliased namespace. [#387](https://github.com/Microsoft/vscode-cpptools/issues/387)
* Fix incorrect IntelliSense errors with template template-arguments. [#1014](https://github.com/Microsoft/vscode-cpptools/issues/1014)
* Fix crash when using designated initializer lists. [#1440](https://github.com/Microsoft/vscode-cpptools/issues/1440)
* Add `windowsSdkVersion` to `c_cpp_properties.json`. [#1585](https://github.com/Microsoft/vscode-cpptools/issues/1585)
* Add `${vcpkgRoot}` variable. [#1817](https://github.com/Microsoft/vscode-cpptools/issues/1817)
* Fix dangling IntelliSense processes and stuck red flame. [#2075](https://github.com/Microsoft/vscode-cpptools/issues/2075), [#2077](https://github.com/Microsoft/vscode-cpptools/issues/2077), [#2169](https://github.com/Microsoft/vscode-cpptools/issues/2169)
* Fix dangling IntelliSense processes. [#2075](https://github.com/Microsoft/vscode-cpptools/issues/2075), [#2169](https://github.com/Microsoft/vscode-cpptools/issues/2169)
* Fix incorrect IntelliSense errors when class template argument deduction is used. [#2101](https://github.com/Microsoft/vscode-cpptools/issues/2101)
* Skip automatic parsing of source files in Mac system framework paths. [#2156](https://github.com/Microsoft/vscode-cpptools/issues/2156)
* Fix `Edit Configurations...` not working after `c_cpp_properties.json` is deleted. [#2214](https://github.com/Microsoft/vscode-cpptools/issues/2214)
Expand All @@ -15,8 +34,15 @@
* Add `Change Configuration Provider...` command. [#2224](https://github.com/Microsoft/vscode-cpptools/issues/2224)
* Fix out-of-memory crash with `#include` code actions when no folder is open. [#2225](https://github.com/Microsoft/vscode-cpptools/issues/2225)
* Fix `intelliSenseMode` with custom config providers on Windows. [#2228](https://github.com/Microsoft/vscode-cpptools/issues/2228)
* Fix formatting not working on Windows if the VC++ 2015 redist isn't installed. [#2232](https://github.com/Microsoft/vscode-cpptools/issues/2232)
* Fix variables not resolving in `macFrameworkPath`. [#2234](https://github.com/Microsoft/vscode-cpptools/issues/2234)
* Fix `Go to Definition` not working for macros followed by `.` or `->`. [#2245](https://github.com/Microsoft/vscode-cpptools/issues/2245)
* Fix `#include` autocomplete with Mac framework headers. [#2251](https://github.com/Microsoft/vscode-cpptools/issues/2251)
* Fix for debugging to support empty arguments for debuggee. [#2258](https://github.com/Microsoft/vscode-cpptools/issues/2258)
* Fix `Go to Definition` bug (missing symbols outside the workspace). [#2281](https://github.com/Microsoft/vscode-cpptools/issues/2281)
* Add a setting to silence configuration provider warnings. [#2292](https://github.com/Microsoft/vscode-cpptools/issues/2292)
* Fix for debugging async Visual C++ causing debugger to hang.
* Fix `main` snippet.

## Version 0.17.6: July 2, 2018
* Fix the database icon getting stuck with recursive includes. [#2104](https://github.com/Microsoft/vscode-cpptools/issues/2104)
Expand Down Expand Up @@ -234,7 +260,7 @@
## Version 0.13.0: September 25, 2017
* Reference highlighting is now provided by the extension for both IntelliSense engines.
* Parameter help is now provided by both IntelliSense engines.
* Light bulbs (code actions) for #include errors now suggest potential paths to add to the `includePath` based on a recursive search of the `browse.path`. [#846](https://github.com/Microsoft/vscode-cpptools/issues/846)
* Light bulbs (code actions) for `#include` errors now suggest potential paths to add to the `includePath` based on a recursive search of the `browse.path`. [#846](https://github.com/Microsoft/vscode-cpptools/issues/846)
* Browse database now removes old symbols when `browse.path` changes. [#262](https://github.com/Microsoft/vscode-cpptools/issues/262)
* Add `*` on new lines after a multiline comment with `/**` is started. [#579](https://github.com/Microsoft/vscode-cpptools/issues/579)
* Fix `Go to Definition`, completion, and parameter hints for partially scoped members. [#635](https://github.com/Microsoft/vscode-cpptools/issues/635)
Expand Down
2 changes: 1 addition & 1 deletion Extension/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ This preview release of the extension adds language support for C/C++ to Visual
* Quick Info (Hover)
* Error Squiggles
* Debugging
* Support for debugging Windows (PDB, Mingw/Cygwin), Linux and OS X applications
* Support for debugging Windows (PDB, MinGW/Cygwin), Linux and macOS applications
* Line by line code stepping
* Breakpoints (including conditional and function breakpoints)
* Variable inspection
Expand Down
1 change: 0 additions & 1 deletion Extension/bin/msvc.64.darwin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"defaults": [
"--clang",
"--pack_alignment",
"8"
],
Expand Down
1 change: 0 additions & 1 deletion Extension/bin/msvc.64.intel.clang.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"defaults": [
"--clang",
"--pack_alignment",
"8"
],
Expand Down
1 change: 0 additions & 1 deletion Extension/bin/msvc.64.linux.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"defaults": [
"--clang",
"--pack_alignment",
"8"
],
Expand Down
3 changes: 2 additions & 1 deletion Extension/c_cpp_properties.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,11 @@
}
},
"intelliSenseMode": {
"description": "If set, it overrides the default mode used by the IntelliSense engine. Windows defaults to msvc-x64 and Linux/Mac default to clang-x64.",
"description": "If set, it overrides the default mode used by the IntelliSense engine. Windows defaults to msvc-x64, Linux defaults to gcc-x64, and Mac default to clang-x64.",
"type": "string",
"enum": [
"msvc-x64",
"gcc-x64",
"clang-x64",
"${default}"
]
Expand Down
2 changes: 1 addition & 1 deletion Extension/cpp_snippets.json
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
},
"main": {
"prefix": "main",
"body": "\nint main(int argc, char const *argv[])\n{\n\t${1:/* code */}\n\treturn 0;\n}\n",
"body": "main(int argc, char const *argv[])\n{\n\t${1:/* code */}\n\treturn 0;\n}\n",
"description": "Code snippet for main()",
"scope": "source.c, source.objc, source.c++, source.objc++"
},
Expand Down
46 changes: 17 additions & 29 deletions Extension/gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,43 +12,31 @@ const mocha = require('gulp-mocha');
const fs = require('fs');
const optionsSchemaGenerator = require('./out/tools/GenerateOptionsSchema');

gulp.task('allTests', () => {
gulp.start('unitTests');
gulp.start('integrationTests');
});

gulp.task('unitTests', () => {
gulp.src('./out/test/unitTests', {read: false}).pipe(
mocha({
ui: "tdd"
})
).once('error', err => {
process.exit(1);
})
.once('end', () => {
process.exit();
})
env.set({
CODE_TESTS_PATH: "./out/test/unitTests",
});

gulp.src('./test/runVsCodeTestsWithAbsolutePaths.js', {read: false})
.pipe(mocha({ ui: "tdd" }))
.once('error', err => process.exit(1))
.once('end', () => process.exit())
});

gulp.task('integrationTests', () => {
env.set({
CODE_TESTS_PATH: "./out/test/integrationTests",
CODE_TESTS_WORKSPACE: "./test/integrationTests/testAssets/SimpleCppProject"
}
);
gulp.src('./test/runVsCodeTestsWithAbsolutePaths.js', {read: false}).pipe(
mocha({
ui: "tdd",
delay: true
})
).once('error', err => {
process.exit(1);
})
.once('end', () => {
process.exit();
})
});

gulp.src('./test/runVsCodeTestsWithAbsolutePaths.js', {read: false})
.pipe(mocha({ ui: "tdd" }))
.once('error', err => process.exit(1))
.once('end', () => process.exit())
});

gulp.task('allTests', ['unitTests', 'integrationTests']);

/// Misc Tasks
const allTypeScript = [
'src/**/*.ts',
Expand Down Expand Up @@ -80,7 +68,7 @@ gulp.task('tslint', () => {

gulp.task('pr-check', () => {
const packageJson = JSON.parse(fs.readFileSync('./package.json').toString());
if (packageJson.activationEvents.length !== 1 && packageJson.activationEvents[0] !== '*') {
if (packageJson.activationEvents.length !== 1 && packageJson.activationEvents[0] !== '*') {
console.log('Please make sure to not check in package.json that has been rewritten by the extension activation. If you intended to have changes in package.json, please only check-in your changes. If you did not, please run `git checkout -- package.json`.');
process.exit(1);
}
Expand Down
2 changes: 1 addition & 1 deletion Extension/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

51 changes: 45 additions & 6 deletions Extension/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "cpptools",
"displayName": "C/C++",
"description": "C/C++ IntelliSense, debugging, and code browsing.",
"version": "0.17.7-insiders",
"version": "0.17.8-insiders",
"publisher": "ms-vscode",
"preview": true,
"icon": "LanguageCCPP_color_128x.png",
Expand Down Expand Up @@ -154,6 +154,24 @@
"minimum": 0.1,
"maximum": 1
},
"C_Cpp.inactiveRegionForegroundColor": {
"type": [
"string",
"null"
],
"default": null,
"description": "Controls the font coloring of inactive preprocessor blocks. Input is in the form a hexadecimal color code or a valid Theme Color. If not set, this defaults to the syntax coloring scheme of the editor. This setting only applies when inactive region dimming is enabled.",
"scope": "resource"
},
"C_Cpp.inactiveRegionBackgroundColor": {
"type": [
"string",
"null"
],
"default": null,
"description": "Controls the background coloring of inactive preprocessor blocks. Input is in the form a hexadecimal color code or a valid Theme Color. If not set, this defaults to transparent. This setting only applies when inactive region dimming is enabled.",
"scope": "resource"
},
"C_Cpp.formatting": {
"type": "string",
"enum": [
Expand Down Expand Up @@ -201,6 +219,16 @@
"description": "Controls whether parsing of the non-active workspace files uses sleeps to avoid using 100% CPU. The values highest/high/medium/low correspond to approximately 100/75/50/25% CPU usage.",
"scope": "resource"
},
"C_Cpp.workspaceSymbols": {
"type": "string",
"enum": [
"All",
"Just My Code"
],
"default": "Just My Code",
"description": "The symbols to include in the query results when 'Go to Symbol in Workspace' is invoked",
"scope": "resource"
},
"C_Cpp.exclusionPolicy": {
"type": "string",
"enum": [
Expand Down Expand Up @@ -250,6 +278,16 @@
"description": "Defines the editor behavior for when the Enter key is pressed inside a multiline or single line comment block.",
"scope": "resource"
},
"C_Cpp.configurationWarnings": {
"type": "string",
"enum": [
"Enabled",
"Disabled"
],
"default": "Enabled",
"description": "Determines whether pop up notifications will be shown when a configuration provider extension is unable to provide a configuration for a source file.",
"scope": "resource"
},
"C_Cpp.default.includePath": {
"type": [
"array",
Expand Down Expand Up @@ -324,6 +362,7 @@
],
"enum": [
"msvc-x64",
"gcc-x64",
"clang-x64"
],
"default": null,
Expand Down Expand Up @@ -1366,7 +1405,7 @@
"runtimeDependencies": [
{
"description": "C/C++ language components (Linux / x86_64)",
"url": "https://go.microsoft.com/fwlink/?linkid=2004596",
"url": "https://go.microsoft.com/fwlink/?linkid=2006256",
"platforms": [
"linux"
],
Expand All @@ -1380,7 +1419,7 @@
},
{
"description": "C/C++ language components (Linux / x86)",
"url": "https://go.microsoft.com/fwlink/?linkid=2004498",
"url": "https://go.microsoft.com/fwlink/?linkid=2006255",
"platforms": [
"linux"
],
Expand All @@ -1396,7 +1435,7 @@
},
{
"description": "C/C++ language components (OS X)",
"url": "https://go.microsoft.com/fwlink/?linkid=2004597",
"url": "https://go.microsoft.com/fwlink/?linkid=2006254",
"platforms": [
"darwin"
],
Expand All @@ -1407,7 +1446,7 @@
},
{
"description": "C/C++ language components (Windows)",
"url": "https://go.microsoft.com/fwlink/?linkid=2004598",
"url": "https://go.microsoft.com/fwlink/?linkid=2006362",
"platforms": [
"win32"
],
Expand Down Expand Up @@ -1528,4 +1567,4 @@
"binaries": []
}
]
}
}
2 changes: 1 addition & 1 deletion Extension/src/Debugger/attachToProcess.ts
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ export class RemoteAttachPicker {

private getRemoteOSAndProcesses(pipeCmd: string): Promise<AttachItem[]> {
// Commands to get OS and processes
const command: string = `bash -c 'uname && if [ $(uname) == "Linux" ] ; then ${PsProcessParser.psLinuxCommand} ; elif [ $(uname) == "Darwin" ] ; ` +
const command: string = `sh -c 'uname && if [ $(uname) == "Linux" ] ; then ${PsProcessParser.psLinuxCommand} ; elif [ $(uname) == "Darwin" ] ; ` +
`then ${PsProcessParser.psDarwinCommand}; fi'`;

return execChildProcess(`${pipeCmd} "${command}"`, null, this._channel).then(output => {
Expand Down
Loading