Skip to content

Commit 321a722

Browse files
Bug report tool (microsoft#8633)
* added diagnostic tool project * Add copy to a temp folder, escape private info and zip it * Added diagnostic tool to installer * zip folder path as cmd argument * renamed project to BugReportTool * do not use precompile headers for release * Added zip lib * Added license * Delete old zip source files * Use fork version while PR is not merged * fix spelling * exclude deps folder from spell checking * exclude only zip * removed redundant configuration from zip project * fix spelling * Add error handling to implementation * Added build of BugReportTool.sln to pipeline * Delete redundant info from BugReportTool.vcxproj * Deleted submodule * Added submodule * fix build * Restore nuget packages for BugReportTool.sln on CI * spelling fix * Use SettingsAPI * changed git submodule * added new sensitive info * Removed zip project * use json.h, add date to zipfolder, handle zip is not created * fix spelling * delete bad_alloc catch * add new sensative info * report monitor info * report windows version * fix spelling * delete platform specific configuration * fix output
1 parent 063e704 commit 321a722

File tree

17 files changed

+624
-88
lines changed

17 files changed

+624
-88
lines changed

.github/actions/spell-check/expect.txt

+34-15
Original file line numberDiff line numberDiff line change
@@ -222,8 +222,8 @@ CDeclaration
222222
cdpx
223223
cdpxwin
224224
CENTERALIGN
225-
Cfg
226225
cfg
226+
Cfg
227227
changecursor
228228
Changemove
229229
charset
@@ -317,8 +317,8 @@ constexpr
317317
contentdialog
318318
contentfiles
319319
CONTEXTHELP
320-
CONTEXTMENU
321320
contextmenu
321+
CONTEXTMENU
322322
CONTEXTMENUHANDLER
323323
CONTROLL
324324
CONTROLPARENT
@@ -362,6 +362,7 @@ crutkas
362362
CSearch
363363
CSettings
364364
csharp
365+
CSIDL
365366
csignal
366367
cso
367368
csproj
@@ -397,6 +398,7 @@ cxxopts
397398
CYMK
398399
CYSMICON
399400
cz
401+
cziplib
400402
Dac
401403
dacl
402404
DARKBLUE
@@ -407,12 +409,13 @@ DARKRED
407409
DARKTEAL
408410
DARKYELLOW
409411
Dataflows
412+
Datavalue
410413
DATAW
411414
davidegiacometti
412415
Dayof
413416
Dbg
414-
DBLEPSILON
415417
DBLCLKS
418+
DBLEPSILON
416419
DCOM
417420
dcomp
418421
DComposition
@@ -653,14 +656,14 @@ ENU
653656
enum
654657
ENUMITEMS
655658
EOAC
656-
EOL
657659
eol
660+
EOL
658661
epicgames
659662
ERASEBKGND
660663
EREOF
661664
EResize
662-
ERRORLEVEL
663665
errorlevel
666+
ERRORLEVEL
664667
ERRORMESSAGE
665668
ERRORTITLE
666669
esize
@@ -710,6 +713,7 @@ fancyzones
710713
FANCYZONESDRAWLAYOUTTEST
711714
FANCYZONESEDITOR
712715
Farbraum
716+
FARPROC
713717
Favicon
714718
fbdc
715719
fcharset
@@ -767,6 +771,7 @@ FULLNAME
767771
fullscreen
768772
func
769773
fwlink
774+
fwrite
770775
fx
771776
fxcop
772777
gabime
@@ -860,8 +865,8 @@ HLSL
860865
hmenu
861866
hmodule
862867
hmon
863-
HMONITOR
864868
hmonitor
869+
HMONITOR
865870
HOLDENTER
866871
HOLDESC
867872
homljgmgpmcbpjbnjpfijnhipfkiclkd
@@ -975,6 +980,7 @@ IInput
975980
IInspectable
976981
IIO
977982
IItem
983+
IJson
978984
IList
979985
ILogon
980986
IMAGEHLP
@@ -1239,6 +1245,7 @@ LPNMHDR
12391245
LPNMHEADER
12401246
LPNMLISTVIEW
12411247
LPOLESTR
1248+
LPOSVERSIONINFOEXW
12421249
LPPOINT
12431250
lprc
12441251
LPRECT
@@ -1298,6 +1305,7 @@ MBUTTON
12981305
MBUTTONDBLCLK
12991306
MBUTTONDOWN
13001307
MBUTTONUP
1308+
mday
13011309
Mdb
13021310
MDICHILD
13031311
MDL
@@ -1325,6 +1333,7 @@ millis
13251333
mimetype
13261334
Minimizeallwindows
13271335
MINIMIZEBOX
1336+
miniz
13281337
MINMAXINFO
13291338
Miracast
13301339
mixin
@@ -1384,6 +1393,7 @@ msrc
13841393
mst
13851394
msvc
13861395
msvcp
1396+
msvs
13871397
MTND
13881398
Mul
13891399
multiline
@@ -1499,7 +1509,9 @@ npm
14991509
npmjs
15001510
npos
15011511
NResize
1512+
ntdll
15021513
NTFS
1514+
NTSTATUS
15031515
nuget
15041516
nullopt
15051517
nullptr
@@ -1552,6 +1564,7 @@ oss
15521564
ostr
15531565
ostream
15541566
ostringstream
1567+
OSVERSIONINFOEXW
15551568
osx
15561569
otating
15571570
ouicompat
@@ -1692,8 +1705,8 @@ propkey
16921705
propvarutil
16931706
Prt
16941707
prui
1695-
PRVPANE
16961708
prvpane
1709+
PRVPANE
16971710
psapi
16981711
PSECURITY
16991712
psfgao
@@ -1827,8 +1840,8 @@ roslyn
18271840
royvou
18281841
rpc
18291842
RRF
1830-
RSHIFT
18311843
rshift
1844+
RSHIFT
18321845
Rsp
18331846
rst
18341847
Rstrtmgr
@@ -1885,13 +1898,14 @@ Sekan
18851898
SENDCHANGE
18861899
sendinput
18871900
sendvirtualinput
1901+
sensative
18881902
serializationexception
18891903
serializer
18901904
serizalization
18911905
serverside
18921906
SETCONTEXT
1893-
SETCURSOR
18941907
setcursor
1908+
SETCURSOR
18951909
SETFOCUS
18961910
SETFOREGROUND
18971911
SETICON
@@ -1922,8 +1936,8 @@ SHELLDLL
19221936
shellex
19231937
SHELLEXECUTEINFO
19241938
SHELLEXECUTEINFOW
1925-
Shellscalingapi
19261939
shellscalingapi
1940+
Shellscalingapi
19271941
Shelveset
19281942
SHFILEINFO
19291943
SHGFI
@@ -1977,8 +1991,8 @@ sketchapp
19771991
SKIPDOTNETINSTALL
19781992
SKIPOWNPROCESS
19791993
sku
1980-
Skype
19811994
SKYBLUE
1995+
Skype
19821996
SLGP
19831997
Slideshow
19841998
sln
@@ -2101,8 +2115,8 @@ SYSDEADCHAR
21012115
SYSICONINDEX
21022116
SYSKEY
21032117
syskeydown
2104-
SYSKEYUP
21052118
syskeyup
2119+
SYSKEYUP
21062120
syslog
21072121
SYSMENU
21082122
systemd
@@ -2250,12 +2264,13 @@ uninstalling
22502264
uninstantiated
22512265
Uniq
22522266
uniquifier
2253-
Uniquifies
22542267
uniquifies
2268+
Uniquifies
22552269
unittests
22562270
unk
22572271
unknwn
22582272
UNLEN
2273+
unlicense
22592274
Unmap
22602275
UNORM
22612276
Unpublish
@@ -2361,8 +2376,8 @@ wcslen
23612376
wcsncmp
23622377
wcsnicmp
23632378
wdp
2364-
WDS
23652379
wds
2380+
WDS
23662381
wdupenv
23672382
weakme
23682383
webapp
@@ -2379,13 +2394,14 @@ Whichdoes
23792394
whitespaces
23802395
WIC
23812396
Wifi
2397+
wifstream
23822398
wih
23832399
wiki
23842400
wikipedia
23852401
wil
23862402
wildcards
2387-
WINAPI
23882403
winapi
2404+
WINAPI
23892405
winauto
23902406
wincolor
23912407
windef
@@ -2430,6 +2446,7 @@ wixproj
24302446
wixtoolset
24312447
WIXUI
24322448
WKSG
2449+
wmain
24332450
wmi
24342451
WMKEYDOWN
24352452
WMKEYUP
@@ -2454,6 +2471,7 @@ wox
24542471
wparam
24552472
wpf
24562473
wpr
2474+
wprintf
24572475
wprp
24582476
wregex
24592477
WResize
@@ -2522,6 +2540,7 @@ Zc
25222540
ZEROINIT
25232541
zh
25242542
ZIndex
2543+
zipfolder
25252544
zm
25262545
zom
25272546
zonable

.gitmodules

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
[submodule "deps/spdlog"]
22
path = deps/spdlog
33
url = https://github.com/gabime/spdlog.git
4-
54
[submodule "deps/cxxopts"]
65
path = deps/cxxopts
76
url = https://github.com/jarro2783/cxxopts.git
8-
97
[submodule "deps/expected-lite"]
108
path = deps/expected-lite
119
url = https://github.com/martinmoene/expected-lite.git
10+
[submodule "deps/cziplib"]
11+
path = deps/cziplib
12+
url = https://github.com/kuba--/zip.git

.pipelines/ci/templates/build-powertoys-steps.yml

+19
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,25 @@ steps:
3636
msbuildArgs: ${{ parameters.additionalBuildArguments }}
3737
maximumCpuCount: true
3838

39+
- task: NuGetCommand@2
40+
displayName: Restore NuGet packages for BugReportTool.sln
41+
inputs:
42+
command: restore
43+
feedsToUse: config
44+
configPath: NuGet.config
45+
restoreSolution: src\bug-report\BugReportTool\BugReportTool.sln
46+
restoreDirectory: '$(Build.SourcesDirectory)\src\bug-report\BugReportTool\packages'
47+
48+
- task: VSBuild@1
49+
displayName: 'Build BugReportTool.sln'
50+
inputs:
51+
solution: '**\BugReportTool.sln'
52+
vsVersion: 16.0
53+
platform: '$(BuildPlatform)'
54+
configuration: '$(BuildConfiguration)'
55+
msbuildArgs: ${{ parameters.additionalBuildArguments }}
56+
maximumCpuCount: true
57+
3958
- task: NuGetCommand@2
4059
displayName: Restore NuGet packages for PowerToysSetup.sln
4160
inputs:

NOTICE.md

+27
Original file line numberDiff line numberDiff line change
@@ -236,4 +236,31 @@ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
236236
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
237237
DEALINGS IN THE SOFTWARE.
238238

239+
### zip
240+
**Source**: https://github.com/kuba--/zip
241+
242+
This is free and unencumbered software released into the public domain.
243+
244+
Anyone is free to copy, modify, publish, use, compile, sell, or
245+
distribute this software, either in source code form or as a compiled
246+
binary, for any purpose, commercial or non-commercial, and by any
247+
means.
248+
249+
In jurisdictions that recognize copyright laws, the author or authors
250+
of this software dedicate any and all copyright interest in the
251+
software to the public domain. We make this dedication for the benefit
252+
of the public at large and to the detriment of our heirs and
253+
successors. We intend this dedication to be an overt act of
254+
relinquishment in perpetuity of all present and future rights to this
255+
software under copyright law.
256+
257+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
258+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
259+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
260+
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
261+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
262+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
263+
OTHER DEALINGS IN THE SOFTWARE.
264+
265+
For more information, please refer to <http://unlicense.org/>
239266

deps/cziplib

Submodule cziplib added at f9e0959

installer/PowerToysSetup/Product.wxs

+10-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212

1313
<?define RepoDir="$(var.ProjectDir)..\..\" ?>
1414
<?define BinX64Dir="$(var.RepoDir)x64\$(var.Configuration)\" ?>
15-
<Product Id="*"
15+
<?define BugReportToolDir="$(var.RepoDir)src\bug-report\BugReportTool\x64\$(var.Configuration)\" ?>
16+
17+
<Product Id="*"
1618
Name="PowerToys (Preview)"
1719
Language="1033"
1820
Version="$(var.Version)"
@@ -46,6 +48,7 @@
4648
<ComponentGroupRef Id="CoreComponents" />
4749
<ComponentGroupRef Id="ResourcesComponents" />
4850
<ComponentGroupRef Id="LauncherComponents" />
51+
<ComponentRef Id="BugReportTool"/>
4952
</Feature>
5053
<SetProperty Id="ARPINSTALLLOCATION" Value="[INSTALLFOLDER]" After="CostFinalize" />
5154

@@ -205,6 +208,7 @@
205208
<Directory Id="ProgramFiles64Folder">
206209
<Directory Id="INSTALLFOLDER" Name="PowerToys">
207210
<Directory Id="SvgsInstallFolder" Name="svgs"/>
211+
<Directory Id="BugReportToolFolder" Name="BugReportTool"/>
208212
<Directory Id="ModulesInstallFolder" Name="modules">
209213
<Directory Id="ImageResizerInstallFolder" Name="$(var.ImageResizerProjectName)" />
210214
<Directory Id="PowerRenameInstallFolder" Name="$(var.PowerRenameProjectName)"/>
@@ -336,6 +340,11 @@
336340
<?endforeach?>
337341
</Component>
338342
</DirectoryRef>
343+
<DirectoryRef Id="BugReportToolFolder" FileSource="$(var.BugReportToolDir)">
344+
<Component Id="BugReportTool" Guid="0F8E3E9F-2E86-4660-A3BF-AE4DD431B93C" Win64="yes">
345+
<File Source="$(var.BugReportToolDir)BugReportTool.exe" />
346+
</Component>
347+
</DirectoryRef>
339348
<DirectoryRef Id="SvgsInstallFolder" FileSource="$(var.BinX64Dir)svgs\">
340349
<Component Id="PowerToysSvgs" Guid="7C4D4EED-9338-423D-992C-DCE02F3E2D35" Win64="yes">
341350
<File Source="$(var.BinX64Dir)svgs\0.svg" />

0 commit comments

Comments
 (0)