Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
190 commits
Select commit Hold shift + click to select a range
574631e
Remove version: IObit.MalwareFighter version 13.3.0.1652 (#402220)
KarbitsCode Jul 14, 2026
4da2fea
New version: Nextmv.CLI version 1.9.6 (#401714)
merschformann Jul 14, 2026
744281b
New version: TJSmith.Anodizer version 0.19.0 (#401974)
tj-smith47 Jul 14, 2026
f4964ed
Update: KDE.Chessament version 0.1 (740) (#402135)
spectopo Jul 14, 2026
c77b4da
New version: Mozilla.Firefox.af version 152.0.6 (#402141)
spectopo Jul 14, 2026
8619fda
New version: Postman.Postman version 12.19.2 (#402144)
spectopo Jul 14, 2026
d285ee6
New version: Mozilla.Firefox.az version 152.0.6 (#402149)
spectopo Jul 14, 2026
4bf7107
New version: Mozilla.Firefox.be version 152.0.6 (#402151)
spectopo Jul 14, 2026
df74c30
New version: Mozilla.Firefox.bg version 152.0.6 (#402153)
spectopo Jul 14, 2026
ac685d9
New version: Mozilla.Firefox.br version 152.0.6 (#402156)
spectopo Jul 14, 2026
9c476fd
New version: Mozilla.Firefox.bs version 152.0.6 (#402157)
spectopo Jul 14, 2026
704f513
New version: yetone.Alma version 0.0.874 (#402158)
spectopo Jul 14, 2026
623a5b9
New version: Mozilla.Firefox.ca-valencia version 152.0.6 (#402159)
spectopo Jul 14, 2026
1671fcf
New version: Mozilla.Firefox.ca version 152.0.6 (#402161)
spectopo Jul 14, 2026
cde8e7a
New version: Mozilla.Firefox.cak version 152.0.6 (#402162)
spectopo Jul 14, 2026
fc67980
New version: Mozilla.Firefox.cs version 152.0.6 (#402163)
spectopo Jul 14, 2026
9325e4d
New version: Mozilla.Firefox.da version 152.0.6 (#402165)
spectopo Jul 14, 2026
7c4b185
New version: alagrede.znote version 4.2.2 (#402169)
kris6673 Jul 14, 2026
da60151
New version: Mozilla.Firefox.el version 152.0.6 (#402170)
spectopo Jul 14, 2026
63e64ac
New version: TragicCode.BuslyCLI version 0.64.18 (#402174)
TraGicCode Jul 14, 2026
9a5413e
Modify: IObit.MalwareFighter version 13.4.0.1669 (#402218)
KarbitsCode Jul 14, 2026
b162999
New version: Notepad++.Notepad++ version 8.9.7 (#402108)
spectopo Jul 14, 2026
68e2f43
Fix: BenthicSoftware.GoldSqall.2 version 2.4.0.244 (#402119)
SpecterShell Jul 14, 2026
3440123
New version: Mozilla.Firefox.en-GB version 152.0.6 (#402172)
spectopo Jul 14, 2026
24d0001
New version: Mozilla.Firefox.eo version 152.0.6 (#402173)
spectopo Jul 14, 2026
9627942
New version: Byron.dua-cli version 2.38.0 (#402186)
UnownBot Jul 14, 2026
fe3e75f
New version: Mozilla.Firefox.es-CL version 152.0.6 (#402178)
spectopo Jul 14, 2026
d3a2f94
New version: Mozilla.Firefox.es-ES version 152.0.6 (#402183)
spectopo Jul 14, 2026
d6844eb
New version: Mozilla.Firefox.es-MX version 152.0.6 (#402184)
spectopo Jul 14, 2026
2ef7dac
New version: Mozilla.Firefox.ff version 152.0.6 (#402189)
spectopo Jul 14, 2026
05296f9
Add ARM64 installer for AmanThanvi.winghostty 1.3.118 (#401532)
amanthanvi Jul 14, 2026
ef272e9
New version: SST.opencode version 1.17.20 (#401873)
spectopo Jul 14, 2026
ea4d3f7
New version: Dyad.Dyad version 1.7.0 (#401948)
jo-chemla Jul 14, 2026
ff2a13b
New version: Mozilla.Firefox.ga-IE version 152.0.6 (#402194)
spectopo Jul 14, 2026
e3700be
New version: Mozilla.Firefox.hr version 152.0.6 (#402204)
spectopo Jul 14, 2026
d102de9
NirSoft.HashMyFiles version 2.51 (#402216)
KarbitsCode Jul 14, 2026
56b723e
New version: Mozilla.Firefox.ms version 152.0.6 (#402230)
spectopo Jul 14, 2026
1b1ffb4
New version: Mozilla.Firefox.ne-NP version 152.0.6 (#402234)
spectopo Jul 14, 2026
92be13e
New version: Mozilla.Firefox.hi-IN version 152.0.6 (#402202)
spectopo Jul 14, 2026
69b2dde
New version: Mozilla.Firefox.hu version 152.0.6 (#402207)
spectopo Jul 14, 2026
06cbbe2
New version: Mozilla.Firefox.kn version 152.0.6 (#402223)
spectopo Jul 14, 2026
c9f908a
New version: Mozilla.Firefox.mr version 152.0.6 (#402229)
spectopo Jul 14, 2026
c9c6db7
New version: Mozilla.Firefox.nl version 152.0.6 (#402235)
spectopo Jul 14, 2026
8a58c09
New version: Mozilla.Firefox.my version 152.0.6 (#402232)
spectopo Jul 14, 2026
49fdb6f
New version: Mozilla.Firefox.si version 152.0.6 (#402250)
spectopo Jul 14, 2026
666faa4
Update: MattWhitwam.Wahlberg version 1.57.0 (#400892)
matt-dx Jul 14, 2026
18bfb22
New version: Gologin.Gologin version 4.3.10 (#402231)
UnownBot Jul 14, 2026
d50e45b
New package: FireBlade.ClipboardEdit version 1.0 (#395760)
FireBlade211 Jul 14, 2026
44caa9e
New package: PawelSalawa.Letos version 4.0.0 (#396320)
SpecterShell Jul 14, 2026
38f8505
New package: Code-iX.QTiles version 1.0.0 (#395531)
Matt-17 Jul 14, 2026
db43221
Flint.Fip-C version 0.3.2 (#394622)
zweiler1 Jul 14, 2026
3f03a1c
New version: utkuozdemir.nvidia_gpu_exporter 1.6.0 (#394494)
utkuozdemir Jul 14, 2026
df8d0b4
New version: JRSoftware.InnoSetup.7 version 7.0.2 (#401604)
martijnlaan Jul 14, 2026
1161957
New version: Google.AndroidStudio version 2026.1.2.10 (#402167)
UnownBot Jul 14, 2026
3aaed03
New version: Mozilla.Firefox.he version 152.0.6 (#402201)
spectopo Jul 14, 2026
012f9aa
New version: Mozilla.Firefox.is version 152.0.6 (#402212)
spectopo Jul 14, 2026
d36a366
New version: Mozilla.Firefox.mk version 152.0.6 (#402228)
spectopo Jul 14, 2026
7a895aa
New version: Mozilla.Firefox.rm version 152.0.6 (#402243)
spectopo Jul 14, 2026
aacc37f
New version: Mozilla.Firefox.ro version 152.0.6 (#402245)
spectopo Jul 14, 2026
60bdf5b
New version: Mozilla.Firefox.ru version 152.0.6 (#402246)
spectopo Jul 14, 2026
1750273
New version: TenacityTeam.Tenacity version 1.3.5 (#402247)
SpecterShell Jul 14, 2026
4895b7b
New version: Mozilla.Firefox.sl version 152.0.6 (#402252)
spectopo Jul 14, 2026
17fabed
New version: Ubiquiti.IdentityDesktop.Endpoint version 3.7.4 (#402254)
UnownBot Jul 14, 2026
5f36720
New version: Mozilla.Firefox.szl version 152.0.6 (#402258)
spectopo Jul 14, 2026
e030596
New version: Mozilla.Firefox.ta version 152.0.6 (#402259)
spectopo Jul 14, 2026
d77acc7
New package: arviceblot.eso-addon-manager version 0.4.22 (#392631)
arviceblot Jul 14, 2026
c26c9d1
SerZhyAle.DocHtmlTranslate version 26.0714.1658 (#402267)
SerZhyAle Jul 14, 2026
24e3268
New version: yetone.NextAITranslator version 0.6.22 (#402288)
spectopo Jul 14, 2026
18d473e
New package: a2aproject.a2acli version 0.1.6 (#393432)
muscariello Jul 14, 2026
a602e23
Update installer URLs for OfficeToolPlus 11.5.7.0 (#387356)
YerongAI Jul 14, 2026
73094b5
New version: Microsoft.DotNet.HostingBundle.10 version 10.0.6 (#399990)
esrp-winget-prod[bot] Jul 14, 2026
2e73e41
New version: Microsoft.DotNet.DesktopRuntime.10 version 10.0.6 (#399994)
esrp-winget-prod[bot] Jul 14, 2026
ed3ed1d
New version: Microsoft.DotNet.AspNetCore.10 version 10.0.6 (#399992)
esrp-winget-prod[bot] Jul 14, 2026
10f301d
New version: Microsoft.DotNet.SDK.10 version 10.0.106 (#399996)
esrp-winget-prod[bot] Jul 14, 2026
6844e9a
New version: Microsoft.DotNet.SDK.10 version 10.0.202 (#399998)
esrp-winget-prod[bot] Jul 14, 2026
477a2ca
New package: AFAS.ProfitCommunicationCenter.8 version 2.9.1400.800 (8…
SpecterShell Jul 14, 2026
ff90235
New package: HishamMedhat.PortPeek version 1.0.0 (#396360)
HishamM1 Jul 14, 2026
bebd32c
New version: Mozilla.Firefox.te version 152.0.6 (#402260)
spectopo Jul 14, 2026
d434b1a
Add Devolutions UniGetUI version 2026.2.3 (#402282)
devolutionsbot Jul 14, 2026
aae979f
New version: DigiDNA.iMazingProfileEditor version 2.0.4.0 (2.0.4) (#4…
spectopo Jul 14, 2026
053d3b7
New version: RyensX.OpenCodex version 2.0.2 (#402286)
spectopo Jul 14, 2026
4ac1834
Remove Huawei.Cangjie 1.0.3 to Huawei.Cangjie.LTS 1.0.3 (#402304)
SpecterShell Jul 14, 2026
c7d1ce7
New version: zhukunpenglinyutong.CCGUI version 0.7.2 (#402289)
spectopo Jul 14, 2026
db90734
Remove Huawei.Cangjie 1.0.4 to Huawei.Cangjie.LTS 1.0.4 (#402306)
SpecterShell Jul 14, 2026
f8b9cac
Remove: GaoyangZhang.EasyClaw version 1.7.1 (#402195)
SpecterShell Jul 14, 2026
a5ff81d
New package: PranshulSoni.OmniSearch version 1.0.0 (#396432)
PranshulSoni Jul 14, 2026
2100033
New package: chuccp.win-sshpass version 0.6.2 (#392356)
chuccp Jul 14, 2026
33a6a59
New Package: RaijuMounun.intqual version 1.0.1 (#392286)
RaijuMounun Jul 14, 2026
e3aa7fb
New version: HaiYing.AionUi version 2.1.35 (#402280)
spectopo Jul 14, 2026
e342197
New version: iFlytek.iFlyRecSI version 5.1.5 (#402281)
spectopo Jul 14, 2026
e17a9d3
gg.ai.ggcode-cli version 1.3.152 (#402290)
topcheer Jul 14, 2026
b69129f
gg.ai.ggcode-desktop version 1.3.152 (#402291)
topcheer Jul 14, 2026
8bcaaa0
New version: Microsoft.SafetyScanner version 1.455.141.0 (#402292)
UnownBot Jul 14, 2026
f688721
New version: Intel.IntelDriverAndSupportAssistant version 26.2.0.7 (#…
UnownBot Jul 14, 2026
0a91851
New version: DiskInternals.LinuxReader version 5.1 (#402298)
davidruda Jul 14, 2026
9bdaa09
New package: AbdulazizJHK.ZoomToolkit version 2.0.0 (#392296)
AbdulazizJHK Jul 14, 2026
eaf64cb
Register esrp-winget-prod[bot] as owner for Microsoft.Azd (#402371)
msftrubengu Jul 14, 2026
ba603ee
Add drkbugs.rusticker version 1.1.5 (#392709)
drkblog Jul 14, 2026
10e52a1
rchase999.scratchtext version 1.0.0 (#396438)
rchase999 Jul 14, 2026
5a3e2e6
Update LetsConnect.Client download URL (#402087)
rozmansi Jul 14, 2026
2e71057
New version: Google.CloudSDK version 576.0.0 (#402300)
UnownBot Jul 14, 2026
c1fb97e
New package: limboprog.TaseDeck version 0.1.0-alpha (#392819)
limboprog Jul 14, 2026
b786cf2
New package: Cority.RSIGuard.CallCenterEdition version 6.2.16.2026061…
SpecterShell Jul 14, 2026
bfb09bb
New version: Mozilla.Firefox.uk version 152.0.6 (#402311)
spectopo Jul 14, 2026
c05dd26
New version: Mozilla.Firefox.vi version 152.0.6 (#402314)
spectopo Jul 14, 2026
2d470ec
New version: Mozilla.Firefox.xh version 152.0.6 (#402315)
spectopo Jul 14, 2026
b2be48e
New package: Cority.RSIGuard.StretchEdition version 6.2.16.20260615 (…
SpecterShell Jul 14, 2026
b7b2898
New version: LieberLieber.LemonTree.Connect.Codebeamer version 4.0.1 …
aschoelzhorn Jul 14, 2026
35f66f5
Update eduVPNClient download URL (#402068)
rozmansi Jul 14, 2026
a60ec93
New version: Gruntwork.Terragrunt version 1.1.1 (#402326)
damn-good-b0t Jul 14, 2026
0464dd8
[Tools] Manual Validation - Fix Credential Manager native memory hand…
Madhusudhan-MSFT Jul 14, 2026
4d052df
Microsoft.DotNet.HostingBundle.Preview version 11.0.0-preview.6.26359…
dotnet-winget-bot Jul 14, 2026
178876c
New package: autobrr.upbrr.gui version 0.2.2 (#396464)
landkatze Jul 14, 2026
e90fb3f
Microsoft.DotNet.HostingBundle.8 version 8.0.29 (#402350)
dotnet-winget-bot Jul 14, 2026
a7952d7
Microsoft.DotNet.HostingBundle.9 version 9.0.18 (#402347)
dotnet-winget-bot Jul 14, 2026
2b5ecde
Microsoft.DotNet.AspNetCore.Preview version 11.0.0-preview.6.26359.11…
dotnet-winget-bot Jul 14, 2026
a7c1954
New version: EarendilWorks.pi version 0.80.7 (#402331)
spectopo Jul 14, 2026
b6b54ac
New version: Loom.Loom version 0.361.0 (#402338)
spectopo Jul 14, 2026
67ee10f
New version: LuisPater.CLIProxyAPI version 7.2.75 (#402339)
spectopo Jul 14, 2026
6e5ecbd
New version: TragicCode.BuslyCLI version 0.64.19 (#402340)
TraGicCode Jul 14, 2026
61c4bbe
New version: Microsoft.RemoteDesktopClient version 1.2.7279.0 (#402341)
spectopo Jul 14, 2026
54645aa
New version: Microsoft.WindowsApp version 2.0.1247.0 (#402342)
spectopo Jul 14, 2026
8c5b1b8
Update: Readdle.Spark version 3.30.1 (3.30.1.139922) (#402356)
spectopo Jul 14, 2026
c326ded
New version: Snowflake.SnowflakeCLI version 3.22.1.0 (#402357)
spectopo Jul 14, 2026
dbe3398
New version: Sourcegraph.Amp version 0.0.1784046309-g5bdc66 (#402358)
spectopo Jul 14, 2026
e1a7c4e
Automatic Waiver Addition for PR 387356 (#402413)
wingetbot Jul 14, 2026
2851db1
New package: goldjg.cARL version 0.4.2 (#396526)
goldjg Jul 14, 2026
bd8b471
Microsoft.DotNet.DesktopRuntime.10 version 10.0.10 (#402364)
dotnet-winget-bot Jul 14, 2026
1210187
Microsoft.DotNet.AspNetCore.8 version 8.0.29 (#402348)
dotnet-winget-bot Jul 14, 2026
7ed4a0e
Microsoft.DotNet.AspNetCore.10 version 10.0.10 (#402360)
dotnet-winget-bot Jul 14, 2026
a45ac85
Microsoft.DotNet.HostingBundle.10 version 10.0.10 (#402361)
dotnet-winget-bot Jul 14, 2026
1f6b546
Microsoft.DotNet.Runtime.8 version 8.0.29 (#402346)
dotnet-winget-bot Jul 14, 2026
06deda4
Microsoft.DotNet.SDK.10 version 10.0.302 (#402365)
dotnet-winget-bot Jul 14, 2026
88a5e3e
Microsoft.DotNet.AspNetCore.9 version 9.0.18 (#402345)
dotnet-winget-bot Jul 14, 2026
3131829
Microsoft.DotNet.SDK.Preview version 11.0.100-preview.6.26359.118 (#4…
dotnet-winget-bot Jul 14, 2026
7345bc2
New package: hidecode365.WinLauncher version 0.1.0 (#392917)
hidecode365 Jul 14, 2026
1289472
New version: polrivero.GitHubDesktopPlus version 3.6.2-r1 (#397792)
pol-rivero Jul 14, 2026
227c349
Update: KDE.Chessament version 0.1 (741) (#402336)
spectopo Jul 14, 2026
9a589ae
New version: WXRIW.Lyricify version 4.3.52 (#402362)
spectopo Jul 14, 2026
a7e9afe
New version: WXRIW.Lyricify.Lite version 1.2.5 (#402363)
spectopo Jul 14, 2026
1d46695
New version: XinTaoFei.Codeg version 0.20.3 (#402366)
spectopo Jul 14, 2026
ebbd9e2
GitHub.Copilot.Prerelease version v1.0.71-1 (#402368)
copilot-cli-winget-bot Jul 14, 2026
6a522d2
New version: SmokeTurner.Vouch version 2026.7.2 (#402369)
vouch-bot Jul 14, 2026
8224cfb
New version: Chromium.ChromeDriver version 150.0.7871.124 (#402374)
UnownBot Jul 14, 2026
eece5a8
New package: BenjaminLarsson.Rtl_433.MSVC version 25.02 (#396529)
rc-chuah Jul 14, 2026
b3a18e9
New package: martona.clipp version 1.2.1.123 (#392933)
martona Jul 14, 2026
ad211dd
Bump version: OCBase.OCCT.Personal version 17.0.9.0 (#402244)
Dragon1573 Jul 14, 2026
ef299bb
Add Laker.EasyPostman version 6.0.11 (#396755)
lakernote Jul 14, 2026
a3d92b0
Remove version: Google.Chrome.EXE version 139.0.7258.155 (#402406)
UnownBot Jul 14, 2026
320619b
Remove version: Google.Chrome.EXE version 138.0.7204.169 (#402410)
UnownBot Jul 14, 2026
3ac4dfe
New package: b7s.Plume version 0.1.0 (#393211)
b7s Jul 14, 2026
2290f7a
New package: martona.WM_NIGHT version 0.1.1.2 (#393605)
martona Jul 14, 2026
b1b90d5
Microsoft.DotNet.SDK.10 version 10.0.110 (#402367)
dotnet-winget-bot Jul 14, 2026
f79077f
Microsoft.DotNet.SDK.8 version 8.0.423 (#402354)
dotnet-winget-bot Jul 14, 2026
1be0289
New version: Mozilla.Firefox.sk version 152.0.6 (#402251)
spectopo Jul 14, 2026
3008d48
Microsoft.DotNet.SDK.9 version 9.0.119 (#402353)
dotnet-winget-bot Jul 14, 2026
311d750
Microsoft.DotNet.SDK.8 version 8.0.129 (#402355)
dotnet-winget-bot Jul 14, 2026
a707e6b
Microsoft.DotNet.SDK.9 version 9.0.316 (#402351)
dotnet-winget-bot Jul 14, 2026
fb93ce0
New version: Matteo842.SaveState version 2.9 (#402327)
Matteo842 Jul 14, 2026
694e244
New version: RafalZG.ClaudeSessionsSidekick version 1.0.5 (#402295)
RafalZG Jul 14, 2026
352f9c6
New version: voidtools.Everything.Beta version 1.5.0.1416b (#402375)
krystofkrticka Jul 14, 2026
377cc1f
New version: blacktop.ipsw 3.1.703 (#402376)
blacktop Jul 14, 2026
13b8f77
New version: TJSmith.Anodizer version 0.20.0 (#402380)
tj-smith47 Jul 14, 2026
1b31ecc
New version: obot-platform.obot version v0.23.4 (#402381)
acorn-io-bot Jul 14, 2026
bda45dc
New version: ReadAI.ReadAI version 1.28.0 (#402392)
spectopo Jul 14, 2026
780f3e8
Add SciScope.SciScopeTUI version 0.1.2 (#393345)
Timcai06 Jul 14, 2026
bcac1e5
Add version: DeskRipple.DeskRipple version 0.1.2 (#393272)
mmiscs5 Jul 14, 2026
03418f5
New version: Mozilla.Firefox.pt-PT version 152.0.6 (#402242)
spectopo Jul 14, 2026
cffe78a
New version: Mozilla.Firefox.th version 152.0.6 (#402262)
spectopo Jul 14, 2026
7de9050
New version: GodotEngine.GodotEngine.Mono version 4.7.1 (#402390)
UnownBot Jul 14, 2026
0b31c35
RClone-Manager.rclone-manager version v0.3.0 (#402393)
Hakanbaban53 Jul 14, 2026
ff3cae8
New version: icsharpcode.ILSpy version 10.1.1.8388 (#402394)
UnownBot Jul 14, 2026
448ab72
New package: MotionLabSystems.C3Dserver version 1.204.8.1 (#389658)
PckgrMitch Jul 14, 2026
a32b164
MiguelAngelRamirez.MyAgents version 0.1.0 (#396812)
miguelangelxramirez Jul 14, 2026
c6c7e24
New package: kulkamKakarot.DriveLens version 1.0.0 (#396779)
kulkamKakarot Jul 14, 2026
699f555
New version: can1357.oh-my-pi version 16.5.1 (#402382)
spectopo Jul 14, 2026
b0d227d
Microsoft.VisualStudio.2019.Enterprise version 16.11.58 (#402397)
jlee671 Jul 14, 2026
2b028f0
Microsoft.VisualStudio.2019.Professional version 16.11.58 (#402398)
jlee671 Jul 14, 2026
af7c811
New version: QuotationFactory.QFC version 0.0.1-alpha (#396961)
GersonDias Jul 14, 2026
30f2459
New package: KristianKiel.BILLEVO version 3.7.4 (#396830)
KristianApp Jul 14, 2026
21f36ef
Add words that are failing spelling (#398835)
Trenly Jul 14, 2026
20e7d27
Remove `Validation-Guide` on `Validation-Completed` (#401362)
mdanish-kh Jul 14, 2026
a677122
Fix inconsistent ids in some policy files (#383922)
KarbitsCode Jul 14, 2026
936ffd2
Move GitHub and File Operation functionality to Modules (#380522)
Trenly Jul 14, 2026
1fcffc8
New version: GitHub.GitHubDesktop version 3.6.3 (#402386)
spectopo Jul 14, 2026
8089261
Microsoft.VisualStudio.Enterprise version 18.8.0 (#402401)
jlee671 Jul 14, 2026
72f821c
Microsoft.VisualStudio.Professional version 18.8.0 (#402403)
jlee671 Jul 14, 2026
ac19c24
Microsoft.VisualStudio.Community version 18.8.0 (#402404)
jlee671 Jul 14, 2026
d92572d
New version: Microsoft.SafetyScanner version 1.455.143.0 (#402417)
UnownBot Jul 14, 2026
368fade
New version: JanDeDobbeleer.OhMyPosh version 29.28.0 (#402028)
JanDeDobbeleer Jul 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .github/actions/spelling/allow.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@ bcdboot
checkboxes
cla
clonemedium
Cloudflight
codeowner
codeowners
Contoso
diffs
DISM
dism
distro
dsc
Entra
Esco
ESRP
Expand All @@ -27,6 +29,7 @@ fnt
ftp
github
GPT
HKLM
Homeserver
homeservers
https
Expand Down Expand Up @@ -68,6 +71,8 @@ ranhpa
ranpha
redirector
Redistributables
restsource
rewinged
Runtimes
russellbanks
screenshots
Expand All @@ -81,6 +86,7 @@ Testplan
toolset
Trenly
ttc
UAC
ubuntu
UEFI
unassign
Expand Down
5 changes: 4 additions & 1 deletion .github/policies/labelAdded.validationCompleted.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
id: labelAdded.validationHttpError
id: labelAdded.validationCompleted
name: GitOps.PullRequestIssueManagement
description: Handlers when "Validation-Completed" label is added
owner:
Expand All @@ -11,6 +11,7 @@ configuration:
- description: >-
When the label "Validation-Completed" is added to a pull request and the "Moderator-Approved" label is not present
* Add a reply notifying the issue author
* Remove the Validation-Guide label
if:
- payloadType: Pull_Request
- labelAdded:
Expand All @@ -26,6 +27,8 @@ configuration:
label: Publisher-Verified
- isOpen
then:
- removeLabel:
label: Validation-Guide
- addReply:
reply: >-
The check-in policies require a moderator to approve PRs from the community.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
id: labelAdded.assignIcmUsersAndModerators
id: labelManagement.assignIcmUsersAndModerators
name: GitOps.PullRequestIssueManagement
description: When these labels are added, the ICM Primary and secondary user should be assigned
owner:
Expand Down
37 changes: 20 additions & 17 deletions Tools/ManualValidation/ManualValidationPipeline.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3979,24 +3979,24 @@ public void AddValidationData(string PackageIdentifier,string gitHubUserName = "
//Extend/reference CredWriteW as CredWrite.

[DllImport("Advapi32.dll", SetLastError = true, EntryPoint = "CredFree", CharSet = CharSet.Unicode)]
private static extern bool CredRelease([In] IntPtr credentialPtr);
//Extend/reference CredFree as CredWrite.
private static extern void CredRelease([In] IntPtr credentialPtr);
//Extend/reference CredFree as CredRelease.

public static Credential GetUserCredential(string target) {
CredentialMem credMem;
IntPtr credPtr;
if (CredRead(target, 1, 0, out credPtr)) { //If found, returns true and adds to credPtr, else false and error.
credMem = Marshal.PtrToStructure<CredentialMem>(credPtr);
//"Marshals data from an unmanaged block of memory to a newly allocated managed object of the type specified by a generic type parameter."
byte[] passwordBytes = new byte[credMem.credentialBlobSize]; //Make a new byte array passwordBytes of size credentialBlobSize.
Marshal.Copy(credMem.credentialBlob, passwordBytes, 0, credMem.credentialBlobSize);
//Copies data from an unmanaged memory pointer to a managed 8-bit unsigned integer array.
//
Credential cred = new Credential(credMem.targetName, credMem.userName, Encoding.Unicode.GetString(passwordBytes)); //Make a new Credential object cred.
//Original example doesn't include these:
CredRelease(credPtr);
CredRelease(credMem.credentialBlob);
return cred;
try {
credMem = Marshal.PtrToStructure<CredentialMem>(credPtr);
//"Marshals data from an unmanaged block of memory to a newly allocated managed object of the type specified by a generic type parameter."
byte[] passwordBytes = new byte[credMem.credentialBlobSize]; //Make a new byte array passwordBytes of size credentialBlobSize.
Marshal.Copy(credMem.credentialBlob, passwordBytes, 0, credMem.credentialBlobSize);
//Copies data from an unmanaged memory pointer to a managed 8-bit unsigned integer array.
return new Credential(credMem.targetName, credMem.userName, Encoding.Unicode.GetString(passwordBytes)); //Make a new Credential object cred.
} finally {
//credentialBlob is an interior pointer into credPtr; free the buffer once via CredFree.
if (credPtr != IntPtr.Zero) { CredRelease(credPtr); }
}
} else {
throw new Exception("Failed to retrieve credentials");
}
Expand All @@ -4014,11 +4014,14 @@ public static void SetUserCredential(string target, string userName, string pass
userCredential.credentialBlobSize = (int)bpassword.Length;
userCredential.credentialBlob = Marshal.StringToCoTaskMemUni(password);
//If write fails, emit last error.
if (!CredWrite(ref userCredential, 0)) {
throw new System.ComponentModel.Win32Exception(Marshal.GetLastWin32Error());
try {
if (!CredWrite(ref userCredential, 0)) {
throw new System.ComponentModel.Win32Exception(Marshal.GetLastWin32Error());
}
} finally {
//Match StringToCoTaskMemUni allocation with FreeCoTaskMem.
Marshal.FreeCoTaskMem(userCredential.credentialBlob);
}
//Original example doesn't include this. Was going to use FreeCoTaskMem as recommended, but this gave an error.
Marshal.FreeCoTaskMem(userCredential.credentialBlob);
}

[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
Expand Down
37 changes: 22 additions & 15 deletions Tools/ManualValidation/ManualValidationPipeline.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -7431,21 +7431,25 @@ namespace CredManager {
private static extern bool CredRead(string target, int type, int reservedFlag, out IntPtr credentialPtr);
//Extend/reference CredReadW as CredRead.
[DllImport("Advapi32.dll", SetLastError = true, EntryPoint = "CredFree", CharSet = CharSet.Unicode)]
private static extern void CredRelease([In] IntPtr credentialPtr);
//Extend/reference CredFree as CredRelease.
public static Credential GetUserCredential(string target) {
CredentialMem credMem;
IntPtr credPtr;
if (CredRead(target, 1, 0, out credPtr)) { //If found, returns true and adds to credPtr, else false and error.
credMem = Marshal.PtrToStructure<CredentialMem>(credPtr);
//"Marshals data from an unmanaged block of memory to a newly allocated managed object of the type specified by a generic type parameter."
byte[] passwordBytes = new byte[credMem.credentialBlobSize]; //Make a new byte array passwordBytes of size credentialBlobSize.
Marshal.Copy(credMem.credentialBlob, passwordBytes, 0, credMem.credentialBlobSize);
//Copies data from an unmanaged memory pointer to a managed 8-bit unsigned integer array.
//
Credential cred = new Credential(credMem.targetName, credMem.userName, Encoding.Unicode.GetString(passwordBytes)); //Make a new Credential object cred.
//Original example doesn't include these:
Marshal.FreeHGlobal(credPtr);
Marshal.FreeHGlobal(credMem.credentialBlob);
return cred;
try {
credMem = Marshal.PtrToStructure<CredentialMem>(credPtr);
//"Marshals data from an unmanaged block of memory to a newly allocated managed object of the type specified by a generic type parameter."
byte[] passwordBytes = new byte[credMem.credentialBlobSize]; //Make a new byte array passwordBytes of size credentialBlobSize.
Marshal.Copy(credMem.credentialBlob, passwordBytes, 0, credMem.credentialBlobSize);
//Copies data from an unmanaged memory pointer to a managed 8-bit unsigned integer array.
return new Credential(credMem.targetName, credMem.userName, Encoding.Unicode.GetString(passwordBytes)); //Make a new Credential object cred.
} finally {
//credentialBlob is an interior pointer into credPtr; free the buffer once via CredFree.
if (credPtr != IntPtr.Zero) { CredRelease(credPtr); }
}
} else {
throw new Exception("Failed to retrieve credentials");
}
Expand All @@ -7467,11 +7471,14 @@ namespace CredManager {
userCredential.credentialBlobSize = (int)bpassword.Length;
userCredential.credentialBlob = Marshal.StringToCoTaskMemUni(password);
//If write fails, emit last error.
if (!CredWrite(ref userCredential, 0)) {
throw new System.ComponentModel.Win32Exception(Marshal.GetLastWin32Error());
try {
if (!CredWrite(ref userCredential, 0)) {
throw new System.ComponentModel.Win32Exception(Marshal.GetLastWin32Error());
}
} finally {
//Match StringToCoTaskMemUni allocation with FreeCoTaskMem.
Marshal.FreeCoTaskMem(userCredential.credentialBlob);
}
//Original example doesn't include this. Was going to use FreeCoTaskMem as recommended, but this gave an error.
Marshal.FreeHGlobal(userCredential.credentialBlob);
}
}
}
Expand Down
107 changes: 107 additions & 0 deletions Tools/Modules/FileOperations/FileOperations.Tests.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
Describe 'FileOperations Module' {
BeforeAll {
$ModulePath = Split-Path -Parent $PSCommandPath
Import-Module (Join-Path $ModulePath 'FileOperations.psd1') -Force
}

Context 'Module Import' {
It 'Should import the module successfully' {
Get-Module 'FileOperations' | Should -Not -BeNullOrEmpty
}

It 'Should export all expected functions' {
$ExportedFunctions = (Get-Module 'FileOperations').ExportedFunctions.Keys
'Initialize-Folder' -in $ExportedFunctions | Should -Be $true
'Invoke-FileCleanup' -in $ExportedFunctions | Should -Be $true
'Request-RemoveItem' -in $ExportedFunctions | Should -Be $true
}
}
}

Describe 'Initialize-Folder' {
It 'Should create a folder and return true when it does not exist' {
$tempRoot = Join-Path -Path ([System.IO.Path]::GetTempPath()) -ChildPath ([System.Guid]::NewGuid().ToString())
$targetFolder = Join-Path -Path $tempRoot -ChildPath 'created'

try {
$result = Initialize-Folder -FolderPath $targetFolder
$result | Should -Be $true
(Test-Path -Path $targetFolder -PathType Container) | Should -Be $true
} finally {
if (Test-Path -Path $tempRoot) { Remove-Item -Path $tempRoot -Recurse -Force -ErrorAction SilentlyContinue }
}
}

It 'Should return true for an existing folder' {
$tempRoot = Join-Path -Path ([System.IO.Path]::GetTempPath()) -ChildPath ([System.Guid]::NewGuid().ToString())
New-Item -Path $tempRoot -ItemType Directory -Force | Out-Null

try {
$result = Initialize-Folder -FolderPath $tempRoot
$result | Should -Be $true
} finally {
if (Test-Path -Path $tempRoot) { Remove-Item -Path $tempRoot -Recurse -Force -ErrorAction SilentlyContinue }
}
}

It 'Should return false when a file exists at the folder path' {
$tempFile = New-TemporaryFile

try {
$result = Initialize-Folder -FolderPath $tempFile.FullName
$result | Should -Be $false
} finally {
if (Test-Path -Path $tempFile.FullName) { Remove-Item -Path $tempFile.FullName -Force -ErrorAction SilentlyContinue }
}
}
}

Describe 'Request-RemoveItem' {
It 'Should remove a file path' {
$tempFile = New-TemporaryFile
Request-RemoveItem -Path $tempFile.FullName
(Test-Path -Path $tempFile.FullName) | Should -Be $false
}

It 'Should remove a directory path recursively' {
$tempRoot = Join-Path -Path ([System.IO.Path]::GetTempPath()) -ChildPath ([System.Guid]::NewGuid().ToString())
$nestedFolder = Join-Path -Path $tempRoot -ChildPath 'nested'
$nestedFile = Join-Path -Path $nestedFolder -ChildPath 'payload.txt'
New-Item -Path $nestedFolder -ItemType Directory -Force | Out-Null
Set-Content -Path $nestedFile -Value 'payload'

Request-RemoveItem -Path $tempRoot
(Test-Path -Path $tempRoot) | Should -Be $false
}

It 'Should be a no-op when path does not exist' {
$missingPath = Join-Path -Path ([System.IO.Path]::GetTempPath()) -ChildPath ([System.Guid]::NewGuid().ToString())
{ Request-RemoveItem -Path $missingPath } | Should -Not -Throw
}
}

Describe 'Invoke-FileCleanup' {
It 'Should remove files and folders in the provided list' {
$tempRoot = Join-Path -Path ([System.IO.Path]::GetTempPath()) -ChildPath ([System.Guid]::NewGuid().ToString())
$tempFolder = Join-Path -Path $tempRoot -ChildPath 'cleanup'
$tempFile = Join-Path -Path $tempRoot -ChildPath 'file.txt'
New-Item -Path $tempFolder -ItemType Directory -Force | Out-Null
New-Item -Path $tempFile -ItemType File -Force | Out-Null

Invoke-FileCleanup -FilePaths @($tempFolder, $tempFile)

(Test-Path -Path $tempFolder) | Should -Be $false
(Test-Path -Path $tempFile) | Should -Be $false

if (Test-Path -Path $tempRoot) { Remove-Item -Path $tempRoot -Recurse -Force -ErrorAction SilentlyContinue }
}

It 'Should not throw when file list is empty' {
{ Invoke-FileCleanup -FilePaths @() } | Should -Not -Throw
}

It 'Should not throw when file list contains missing paths' {
$missingPath = Join-Path -Path ([System.IO.Path]::GetTempPath()) -ChildPath ([System.Guid]::NewGuid().ToString())
{ Invoke-FileCleanup -FilePaths @($missingPath) } | Should -Not -Throw
}
}
54 changes: 54 additions & 0 deletions Tools/Modules/FileOperations/FileOperations.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#
# Module manifest for module 'FileOperations'
#
# Generated by: Trenly
#
# Generated on: 5/27/2026
#

@{

# Script module or binary module file associated with this manifest.
RootModule = 'FileOperations.psm1'

# Version number of this module.
ModuleVersion = '0.0.1'

# ID used to uniquely identify this module
GUID = '37c15420-b760-4f80-8c52-a154225b867c'

# Author of this module
Author = 'Microsoft Open Source Community'

# Company or vendor of this module
CompanyName = 'Microsoft Corporation'

# Copyright statement for this module
Copyright = 'Copyright (c) Microsoft Corporation. All rights reserved.'

# Description of the functionality provided by this module
Description = 'Shared folder and file operations for winget-pkgs tooling scripts and modules.'

# Functions to export from this module
FunctionsToExport = @(
'Initialize-Folder'
'Request-RemoveItem'
'Invoke-FileCleanup'
)

# Cmdlets to export from this module
CmdletsToExport = @()

# Variables to export from this module
VariablesToExport = '*'

# Aliases to export from this module
AliasesToExport = @()

PrivateData = @{
PSData = @{
LicenseUri = 'https://github.com/microsoft/winget-pkgs/blob/master/LICENSE'
ProjectUri = 'https://github.com/microsoft/winget-pkgs'
}
}
}
Loading
Loading