Skip to content

Commit 034390f

Browse files
authored
Merge pull request #7608 from microsoft/seanmcm/1_4_0_release
1.4.0-release
2 parents 1246f5a + 6d85f9c commit 034390f

File tree

142 files changed

+3382
-1871
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

142 files changed

+3382
-1871
lines changed

.github/actions/package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Enhancement Closer (no milestone)
2+
on:
3+
schedule:
4+
- cron: 50 11 * * * # Run at 11:50 AM UTC (3:50 AM PST, 4:50 AM PDT)
5+
workflow_dispatch:
6+
inputs:
7+
readonly:
8+
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
9+
default: false
10+
11+
jobs:
12+
main:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout Actions
16+
uses: actions/checkout@v2
17+
- name: Install Actions
18+
run: cd ./.github/actions && npm install --production && cd ../..
19+
- name: Stale Closer
20+
uses: ./.github/actions/StaleCloser
21+
with:
22+
readonly: ${{ github.event.inputs.readonly }}
23+
labels: enhancement
24+
ignoreLabels: debugger,internal,Feature Request
25+
addLabels: more votes needed
26+
closeDays: 60
27+
maximumVotes: 2
28+
closeComment: "This feature request is being closed due to insufficient upvotes. When enough upvotes are received, this issue will be eligible for our backlog."
29+
setMilestoneId: 30
30+
ignoreMilestoneNames: "*"
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Enhancement Closer (Triage)
2+
on:
3+
schedule:
4+
- cron: 40 11 * * * # Run at 11:40 AM UTC (3:40 AM PST, 4:40 AM PDT)
5+
workflow_dispatch:
6+
inputs:
7+
readonly:
8+
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
9+
default: false
10+
11+
jobs:
12+
main:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout Actions
16+
uses: actions/checkout@v2
17+
- name: Install Actions
18+
run: cd ./.github/actions && npm install --production && cd ../..
19+
- name: Stale Closer
20+
uses: ./.github/actions/StaleCloser
21+
with:
22+
readonly: ${{ github.event.inputs.readonly }}
23+
labels: enhancement
24+
ignoreLabels: debugger,internal,Feature Request
25+
addLabels: more votes needed
26+
closeDays: 60
27+
maximumVotes: 2
28+
closeComment: "This feature request is being closed due to insufficient upvotes. When enough upvotes are received, this issue will be eligible for our backlog."
29+
milestoneName: Triage
30+
milestoneId: 30
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Enhancement Reopener
2+
on:
3+
schedule:
4+
- cron: 20 12 * * * # Run at 12:20 PM UTC (4:20 AM PST, 5:20 AM PDT)
5+
workflow_dispatch:
6+
inputs:
7+
readonly:
8+
description: "readonly: Specify true or 1 to prevent changes from being commited to GitHub"
9+
default: false
10+
11+
jobs:
12+
main:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout Actions
16+
uses: actions/checkout@v2
17+
- name: Install Actions
18+
run: cd ./.github/actions && npm install --production && cd ../..
19+
- name: Run Reopener
20+
uses: ./.github/actions/Reopener
21+
with:
22+
readonly: ${{ github.event.inputs.readonly }}
23+
alsoApplyToOpenIssues: true
24+
reopenComment: This feature request has received enough votes to be added to our backlog.
25+
labels: enhancement
26+
minimumVotes: 3
27+
ignoreLabels: debugger,internal,Feature Request
28+
milestoneId: 30
29+
milestoneName: Triage
30+
setMilestoneId: 28
31+
removeLabels: more votes needed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ browse*.db*
66
*.exe
77
*.ilk
88

9-
# ignore exported localization xlf directory
9+
# ignore exported localization xlf and LCL directories
10+
Build/loc/LCL
1011
vscode-extensions-localization-export
1112

1213
# ignore imported localization xlf directory

Build/loc/LocProject.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"Projects": [
3+
{
4+
"LanguangeSet": "VS_Main_Languages",
5+
"LocItems": [
6+
{
7+
"SourceFile": "vscode-extensions-localization-export\\vscode-extensions\\vscode-cpptools.xlf",
8+
"Languages": "cs;de;es;fr;it;ja;ko;pl;pt-BR;ru;tr;zh-Hans;zh-Hant",
9+
"LclFile": "Build\\loc\\LCL\\{Lang}\\vscode-cpptools.xlf.lcl"
10+
}
11+
]
12+
}
13+
]
14+
}
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# ==================================================================================
2+
# Pipeline for VsCodeExtension-Localization build definition
3+
# Runs OneLocBuild task to localize xlf file
4+
# ==================================================================================
5+
6+
resources:
7+
repositories:
8+
- repository: self
9+
clean: true
10+
11+
trigger: none
12+
pr: none
13+
schedules:
14+
- cron: "0 7 * * *"
15+
displayName: Daily 7 AM
16+
branches:
17+
include:
18+
- main
19+
always: true
20+
21+
pool:
22+
vmImage: 'windows-latest'
23+
24+
steps:
25+
- task: CmdLine@2
26+
inputs:
27+
script: 'cd Extension && yarn install'
28+
29+
- task: CmdLine@2
30+
inputs:
31+
script: 'cd ./Extension && yarn run translations-export && cd ..'
32+
33+
- task: OneLocBuild@2
34+
env:
35+
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
36+
inputs:
37+
locProj: 'Build/loc/LocProject.json'
38+
outDir: '$(Build.ArtifactStagingDirectory)'
39+
isCreatePrSelected: false
40+
prSourceBranchPrefix: 'locfiles'
41+
packageSourceAuth: 'patAuth'
42+
patVariable: '$(OneLocBuildPat)'
43+
LclSource: lclFilesfromPackage
44+
LclPackageId: 'LCL-JUNO-PROD-VCPP'
45+
lsBuildXLocPackageVersion: '7.0.30510'
46+
47+
- task: CmdLine@2
48+
inputs:
49+
script: 'cd Extension && node ./translations_auto_pr.js microsoft vscode-cpptools csigs $(csigsPat) csigs [email protected] "$(Build.ArtifactStagingDirectory)/loc" vscode-extensions-localization-export/vscode-extensions && cd ..'
50+
51+
- task: PublishBuildArtifacts@1
52+
inputs:
53+
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
54+
ArtifactName: 'drop'
55+
publishLocation: 'Container'
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Exception Settings
2+
3+
The Microsoft Windows C/C++ debugger (cppvsdbg) supports configuration options for if the debugger stops when exceptions are thrown. This is done with the 'All Exceptions' check box in the BREAKPOINTS section of the 'Run and Debug' view.
4+
5+
Note that the BREAKPOINTS section will be missing this entry until the first time that the folder has been debugged with the 'cppvsdbg' debugger.
6+
7+
Checking 'All Exceptions' will configure the debugger to stop when an exception is thrown.
8+
9+
##### Exception Conditions
10+
11+
The 'All Exceptions' checkbox support conditions to break on only selected exception types (C++ exceptions) or codes (Win32 exceptions). To edit the condition, click on the pencil icon or right click on the entry and invoke 'Edit Condition'. The condition is a comma-separated list of exception types and codes to break on, or if the list starts with '!', a list of exception types and codes to ignore.
12+
13+
Examples conditions:
14+
15+
| Example condition value | Result |
16+
|-------------------------|--------|
17+
| 0xC0000005, 0xC0000094 | Break on Win32 Access Violation exceptions and integer division by zero exceptions |
18+
| std::out_of_range, 0xC0000005 | This will break on out-of-range exceptions, and access violation exceptions |
19+
| !MyExceptionClass | This will break on all exceptions except C++ `MyExceptionClass` exceptions |
20+
| !MyExceptionClass, 0x6831C815 | This will break on all exceptions except C++ `MyExceptionClass` exceptions and Win32 exceptions with custom code 0x6831C815 |

Extension/.eslintrc.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,14 @@ module.exports = {
1919
"rules": {
2020
"@typescript-eslint/adjacent-overload-signatures": "error",
2121
"@typescript-eslint/array-type": "error",
22-
"@typescript-eslint/class-name-casing": "error",
22+
"camelcase": "off",
23+
"@typescript-eslint/naming-convention": [
24+
"error",
25+
{
26+
"selector": "typeLike",
27+
"format": ["PascalCase"]
28+
}
29+
],
2330
"@typescript-eslint/indent": "error",
2431
"@typescript-eslint/member-delimiter-style": [
2532
"error",
@@ -71,7 +78,7 @@ module.exports = {
7178
"no-fallthrough": "error",
7279
"no-invalid-this": "error",
7380
"no-irregular-whitespace": "error",
74-
"no-multiple-empty-lines": ["error", { "max": 1, "maxEOF": 1, "maxBOF": 0}],
81+
"no-multiple-empty-lines": ["error", { "max": 1, "maxEOF": 1, "maxBOF": 0 }],
7582
"no-new-wrappers": "error",
7683
"no-redeclare": "error",
7784
"no-return-await": "error",

Extension/CHANGELOG.md

Lines changed: 58 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,57 @@
11
# C/C++ for Visual Studio Code Change Log
22

3+
## Version 1.4.0: May 27, 2021
4+
### New Features
5+
* Add a C++ walkthrough to the "Getting Started" page. [#7273](https://github.com/microsoft/vscode-cpptools/issues/7273)
6+
* Note: VS Code may only make this available to a subset of users while they continue working on the feature.
7+
8+
### Enhancements
9+
* Update to clang-format 12. [#6434](https://github.com/microsoft/vscode-cpptools/issues/6434)
10+
* Add `private` or `protected` scope labels to class symbols. [#7120](https://github.com/microsoft/vscode-cpptools/issues/7120)
11+
* Fix file:line path for $FILEPOS [#7193](https://github.com/microsoft/vscode-cpptools/issues/7193)
12+
* [#1124](https://github.com/microsoft/MIEngine/pull/1124)
13+
* Add `stopAtConnect` and `hardwareBreakpoints` launch options [PR #7449](https://github.com/microsoft/vscode-cpptools/pull/7449)
14+
* `stopAtConnect` stops the debugger on connection to a remote target [PR MIEngine#1109](https://github.com/microsoft/MIEngine/pull/1109)
15+
* `hardwareBreakpoints` controls usage and number of remote hardware breakpoints [PR MIEngine#1128](https://github.com/microsoft/MIEngine/pull/1128)
16+
* Add support for loading Concord extensions to the cppvsdbg debug adapter (see [documentation](https://github.com/microsoft/ConcordExtensibilitySamples/wiki/Support-for-VS-Code-cppvsdbg-Scenarios) for more information)
17+
* Add support for exception conditions to cppvsdbg (see [documentation](https://aka.ms/VSCode-Cpp-ExceptionSettings) for more information)
18+
19+
### Bug Fixes
20+
* Fix an incorrect IntelliSense error with object initialization. [#3212](https://github.com/microsoft/vscode-cpptools/issues/3212)
21+
* Fix IntelliSense errors with designated initializers. [#3491](https://github.com/microsoft/vscode-cpptools/issues/3491), [#5500](https://github.com/microsoft/vscode-cpptools/issues/5550)
22+
* Fix IntelliSense configuration with cl.exe compiler args `/external:I`, `/Zc:preprocessor`, and others. [#4980](https://github.com/microsoft/vscode-cpptools/issues/4980), [#6531](https://github.com/microsoft/vscode-cpptools/issues/6531), [#7259](https://github.com/microsoft/vscode-cpptools/issues/7259)
23+
* Switch to showing no document symbols instead of random symbols for `files.exclude`'d documents. [#5142](https://github.com/microsoft/vscode-cpptools/issues/5142)
24+
* Fix macros getting undefined when duplicate `#include` are used. [#5182](https://github.com/microsoft/vscode-cpptools/issues/5182), [#7270](https://github.com/microsoft/vscode-cpptools/issues/7270)
25+
* Fix provider failed error logging. [#5487](https://github.com/microsoft/vscode-cpptools/issues/5487)
26+
* Fix an IntelliSense crash with `#pragma GCC target`. [#6698](https://github.com/microsoft/vscode-cpptools/issues/6698), [#7377](https://github.com/microsoft/vscode-cpptools/issues/7377)
27+
* Fix bitness detection for compilers targeting esp32. [#7034](https://github.com/microsoft/vscode-cpptools/issues/7034)
28+
* Fix -idirafter directories being included too early. [#7129](https://github.com/microsoft/vscode-cpptools/issues/7129)
29+
* Fix issue with the cpptools process lingering when no longer needed. [#7262](https://github.com/microsoft/vscode-cpptools/issues/7262)
30+
* Filter out C++ std when querying the compiler as C (and vice versa). [#7269](https://github.com/microsoft/vscode-cpptools/issues/7269)
31+
* Fix `files.exclude` ending with `/folder/**` not excluding `/folder`. [#7331](https://github.com/microsoft/vscode-cpptools/issues/7331)
32+
* Fix VS Code UI freezing when hovering over very large literals. [#7334](https://github.com/microsoft/vscode-cpptools/issues/7334), [#7577](https://github.com/microsoft/vscode-cpptools/issues/7577)
33+
* Fix clang-format formatting bug when new lines are removed. [#7360](https://github.com/microsoft/vscode-cpptools/issues/7360)
34+
* Change default cwd in launch.json to `${fileDirname}`. [#7362](https://github.com/microsoft/vscode-cpptools/issues/7362)
35+
* Syed Ahmad (@HackintoshwithUbuntu) [PR #7363](https://github.com/microsoft/vscode-cpptools/pull/7363)
36+
* Fix the compile commands entry not being used when -Werror is used. [#7388](https://github.com/microsoft/vscode-cpptools/issues/7388)
37+
* Fix some potential race conditions during vsix installation. [#7405](https://github.com/microsoft/vscode-cpptools/issues/7405)
38+
* Fix completion at the end of a file. [#7472](https://github.com/microsoft/vscode-cpptools/issues/7472)
39+
* Fix completion of constructors. [#7505](https://github.com/microsoft/vscode-cpptools/issues/7505)
40+
* Fix typos.
41+
* jogo- (@jogo-) [PR #7509](https://github.com/microsoft/vscode-cpptools/pull/7509), [PR #7568](https://github.com/microsoft/vscode-cpptools/pull/7568), [PR #7573](https://github.com/microsoft/vscode-cpptools/pull/7573)
42+
* Fix an IntelliSense crash with the arrow library. [#7518](https://github.com/microsoft/vscode-cpptools/issues/7518)
43+
* Fix the configuration UI randomly being blank (more frequently when remote). [#7523](https://github.com/microsoft/vscode-cpptools/issues/7523)
44+
* Fix IntelliSense mode switching from `linux` to `macos` if `__unix__` is defined but `__linux__` is not. [#7525](https://github.com/microsoft/vscode-cpptools/issues/7525)
45+
* Fix enabling of the `ms_extensions` flag for clang on Windows. [#7529](https://github.com/microsoft/vscode-cpptools/issues/7529)
46+
* Fix `autocompleteAddParentheses` with no argument const/non-const overloads and deduction guides. [#7540](https://github.com/microsoft/vscode-cpptools/issues/7540), [#7541](https://github.com/microsoft/vscode-cpptools/issues/7541)
47+
* Fix the browse configuration not being preserved when the configuration provider is auto-detected. [#7542](https://github.com/microsoft/vscode-cpptools/issues/7542)
48+
* Fix clang-format failure on macOS 10.13 or older. [#7561](https://github.com/microsoft/vscode-cpptools/issues/7561)
49+
* Fix an IntelliSense crash with std::ranges::unique. [#7576](https://github.com/microsoft/vscode-cpptools/issues/7576)
50+
* Prevent 'Configuration Warnings' output when a custom configuration provider omits optional fields.
51+
* Prevent 'Configuration Warnings' caused by corrections to auto-detected default configuration values.
52+
* Reduce IntelliSense memory and CPU usage in certain scenarios (e.g. large files).
53+
* Fix a crash on Linux with a `/**` includePath.
54+
355
## Version 1.3.1: April 19, 2021
456
### Bug Fixes
557
* Fix extension not activating when `/.vscode/c_cpp_properties.json` exists but no C/C++ file is open. [#7344](https://github.com/microsoft/vscode-cpptools/issues/7344)
@@ -464,7 +516,7 @@
464516
* Fix `compile_commands.json` prompt appearing when a configuration provider is used. [#3972](https://github.com/microsoft/vscode-cpptools/issues/3972)
465517
* Improve IntelliSense performance with range-v3. [#4414](https://github.com/microsoft/vscode-cpptools/issues/4414)
466518
* Fix template members not being nested under the template type in the Outline view. [#4466](https://github.com/microsoft/vscode-cpptools/issues/4466)
467-
* Fix an issue in which failure to invoke a compiler could result in a hang on Linux and Mac. [#4627](https://github.com/microsoft/vscode-cpptools/issues/4627)
519+
* Fix an issue in which failure to invoke a compiler could result in a loss of functionality on Linux and Mac. [#4627](https://github.com/microsoft/vscode-cpptools/issues/4627)
468520
* Fix custom configurations sometimes not being applied to headers. [#4649](https://github.com/microsoft/vscode-cpptools/issues/4649)
469521
* Fix headers opening into header-only TU's instead of TU's for candidate source files. [#4696](https://github.com/microsoft/vscode-cpptools/issues/4696)
470522
* Fix the missing description of `C_Cpp.clang_format_style`.
@@ -495,7 +547,7 @@
495547
* Fix child process creation when the Windows code page is set to a language with non-ASCII characters and there are non-ASCII characters in the extension's install path. [#1560](https://github.com/microsoft/vscode-cpptools/issues/1560)
496548
* Fix path canonicalization of UNC paths to avoid duplicate files opening with different casing. [#2528](https://github.com/microsoft/vscode-cpptools/issues/2528), [#3980](https://github.com/microsoft/vscode-cpptools/issues/3980)
497549
* Fix header opening without IntelliSense due to creation of a TU from a source file that includes the header in an inactive region. [#4320](https://github.com/microsoft/vscode-cpptools/issues/4320)
498-
* Fix a hang in the extension process that can occur when using a scope named 'interface'. [#4470](https://github.com/microsoft/vscode-cpptools/issues/4470)
550+
* Fix an infinite loop in the extension process that can occur when using a scope named 'interface'. [#4470](https://github.com/microsoft/vscode-cpptools/issues/4470)
499551
* Fix an issue with the Rename UI that could cause the rename to not be applied. [#4504](https://github.com/microsoft/vscode-cpptools/issues/4504)
500552
* Show an error message when a Rename fails due to the symbol not being found. [#4510](https://github.com/microsoft/vscode-cpptools/issues/4510)
501553
* Fix `launch.json` creation due to localized strings containing quotes. [#4526](https://github.com/microsoft/vscode-cpptools/issues/4526)
@@ -512,7 +564,7 @@
512564
### Bug Fixes
513565
* Fix `launch.json` creation when using non-English display languages. [#4464](https://github.com/microsoft/vscode-cpptools/issues/4464)
514566
* Fix CHS translation. [#4422](https://github.com/microsoft/vscode-cpptools/issues/4422)
515-
* Fix debugging hang when Windows 10 Beta Unicode (UTF-8) support is enabled. [#1527](https://github.com/microsoft/vscode-cpptools/issues/1527)
567+
* Fix debugging not working when Windows 10 Beta Unicode (UTF-8) support is enabled. [#1527](https://github.com/microsoft/vscode-cpptools/issues/1527)
516568

517569
## Version 0.26.0: October 15, 2019
518570
### New Features
@@ -918,7 +970,7 @@
918970
* Fix `Go to Definition` bug (missing symbols outside the workspace). [#2281](https://github.com/Microsoft/vscode-cpptools/issues/2281)
919971
* Fix incorrect hover in enum definitions. [#2286](https://github.com/Microsoft/vscode-cpptools/issues/2286)
920972
* Add a setting to silence configuration provider warnings. [#2292](https://github.com/Microsoft/vscode-cpptools/issues/2292)
921-
* Fix debugging async Visual C++ causing debugger to hang.
973+
* Fix debugging async Visual C++ causing the debugger to stop responding.
922974
* Fix `main` snippet.
923975

924976
## Version 0.17.6: July 2, 2018
@@ -1186,8 +1238,8 @@
11861238
* Add `Edit Configurations...` command to the `Select a Configuration...` dropdown.
11871239
* Update Microsoft Visual C++ debugger to Visual Studio 2017 released components.
11881240
* Fix issue with showing wrong thread. [#550](https://github.com/Microsoft/vscode-cpptools/issues/550)
1189-
* Fix issue with binaries compiled with /FASTLINK causing debugger to hang. [#484](https://github.com/Microsoft/vscode-cpptools/issues/484)
1190-
* Fix issue in MinGW/Cygwin debugging where stop debugging causes VS Code to hang. [PR Microsoft/MIEngine#636](https://github.com/Microsoft/MIEngine/pull/636)
1241+
* Fix issue with binaries compiled with /FASTLINK causing the debugger to stop responding. [#484](https://github.com/Microsoft/vscode-cpptools/issues/484)
1242+
* Fix issue in MinGW/Cygwin debugging where stop debugging causes VS Code to stop responding. [PR Microsoft/MIEngine#636](https://github.com/Microsoft/MIEngine/pull/636)
11911243

11921244
## Version 0.12.0: June 26, 2017
11931245
* The default IntelliSense engine now provides semantic-aware autocomplete suggestions for `.`, `->`, and `::` operators. [#13](https://github.com/Microsoft/vscode-cpptools/issues/13)

0 commit comments

Comments
 (0)