Skip to content

Commit eefdb5f

Browse files
committed
fix: pin latest runtime patch (CVE-2025-30399), enable NuGet audit + lock files + package source mapping
1 parent 8dea54b commit eefdb5f

7 files changed

Lines changed: 570 additions & 1 deletion

File tree

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
dotnet-version: '8.0.x'
2222

2323
- name: Restore
24-
run: dotnet restore DeepPurge.sln
24+
run: dotnet restore DeepPurge.sln --locked-mode
2525

2626
- name: Build
2727
run: dotnet build DeepPurge.sln -c Release --no-restore

Directory.Build.props

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<Project>
2+
<PropertyGroup>
3+
<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
4+
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
5+
<NuGetAudit>true</NuGetAudit>
6+
<NuGetAuditLevel>moderate</NuGetAuditLevel>
7+
<NuGetAuditMode>all</NuGetAuditMode>
8+
</PropertyGroup>
9+
</Project>

NuGet.Config

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,12 @@
44
<clear />
55
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
66
</packageSources>
7+
<packageSourceMapping>
8+
<packageSource key="nuget.org">
9+
<package pattern="CommunityToolkit.*" />
10+
<package pattern="Microsoft.*" />
11+
<package pattern="System.*" />
12+
<package pattern="xunit.*" />
13+
</packageSource>
14+
</packageSourceMapping>
715
</configuration>
Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
{
2+
"version": 1,
3+
"dependencies": {
4+
"net8.0-windows10.0.17763": {
5+
"CommunityToolkit.Mvvm": {
6+
"type": "Direct",
7+
"requested": "[8.2.2, )",
8+
"resolved": "8.2.2",
9+
"contentHash": "r0g0k9tGYdrnz8R7T3x5UiokDffeevzK/2P/9SBL6fqLgN8B157MIi/bVUWI1KAz6ZorZrK9AdABCWUeXZZsvA=="
10+
},
11+
"Microsoft.NETCore.Platforms": {
12+
"type": "Transitive",
13+
"resolved": "3.1.0",
14+
"contentHash": "z7aeg8oHln2CuNulfhiLYxCVMPEwBl3rzicjvIX+4sUuCwvXw5oXQEtbiU2c0z4qYL5L3Kmx0mMA/+t/SbY67w=="
15+
},
16+
"Microsoft.Toolkit.Uwp.Notifications": {
17+
"type": "Transitive",
18+
"resolved": "7.1.3",
19+
"contentHash": "A1dglAzb24gjehmb7DwGd07mfyZ1gacAK7ObE0KwDlRc3mayH2QW7cSOy3TkkyELjLg19OQBuhPOj4SpXET9lg==",
20+
"dependencies": {
21+
"Microsoft.Win32.Registry": "4.7.0",
22+
"System.Drawing.Common": "4.7.0",
23+
"System.Reflection.Emit": "4.7.0",
24+
"System.ValueTuple": "4.5.0"
25+
}
26+
},
27+
"Microsoft.Win32.Registry": {
28+
"type": "Transitive",
29+
"resolved": "4.7.0",
30+
"contentHash": "KSrRMb5vNi0CWSGG1++id2ZOs/1QhRqROt+qgbEAdQuGjGrFcl4AOl4/exGPUYz2wUnU42nvJqon1T3U0kPXLA==",
31+
"dependencies": {
32+
"System.Security.AccessControl": "4.7.0",
33+
"System.Security.Principal.Windows": "4.7.0"
34+
}
35+
},
36+
"Microsoft.Win32.SystemEvents": {
37+
"type": "Transitive",
38+
"resolved": "4.7.0",
39+
"contentHash": "mtVirZr++rq+XCDITMUdnETD59XoeMxSpLRIII7JRI6Yj0LEDiO1pPn0ktlnIj12Ix8bfvQqQDMMIF9wC98oCA==",
40+
"dependencies": {
41+
"Microsoft.NETCore.Platforms": "3.1.0"
42+
}
43+
},
44+
"System.CodeDom": {
45+
"type": "Transitive",
46+
"resolved": "8.0.0",
47+
"contentHash": "WTlRjL6KWIMr/pAaq3rYqh0TJlzpouaQ/W1eelssHgtlwHAH25jXTkUphTYx9HaIIf7XA6qs/0+YhtLEQRkJ+Q=="
48+
},
49+
"System.Diagnostics.EventLog": {
50+
"type": "Transitive",
51+
"resolved": "8.0.1",
52+
"contentHash": "n1ZP7NM2Gkn/MgD8+eOT5MulMj6wfeQMNS2Pizvq5GHCZfjlFMXV2irQlQmJhwA2VABC57M0auudO89Iu2uRLg=="
53+
},
54+
"System.Drawing.Common": {
55+
"type": "Transitive",
56+
"resolved": "4.7.0",
57+
"contentHash": "v+XbyYHaZjDfn0ENmJEV1VYLgGgCTx1gnfOBcppowbpOAriglYgGCvFCPr2EEZyBvXlpxbEsTwkOlInl107ahA==",
58+
"dependencies": {
59+
"Microsoft.NETCore.Platforms": "3.1.0",
60+
"Microsoft.Win32.SystemEvents": "4.7.0"
61+
}
62+
},
63+
"System.IO.Hashing": {
64+
"type": "Transitive",
65+
"resolved": "8.0.0",
66+
"contentHash": "ne1843evDugl0md7Fjzy6QjJrzsjh46ZKbhf8GwBXb5f/gw97J4bxMs0NQKifDuThh/f0bZ0e62NPl1jzTuRqA=="
67+
},
68+
"System.Management": {
69+
"type": "Transitive",
70+
"resolved": "8.0.0",
71+
"contentHash": "jrK22i5LRzxZCfGb+tGmke2VH7oE0DvcDlJ1HAKYU8cPmD8XnpUT0bYn2Gy98GEhGjtfbR/sxKTVb+dE770pfA==",
72+
"dependencies": {
73+
"System.CodeDom": "8.0.0"
74+
}
75+
},
76+
"System.Reflection.Emit": {
77+
"type": "Transitive",
78+
"resolved": "4.7.0",
79+
"contentHash": "VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ=="
80+
},
81+
"System.Security.AccessControl": {
82+
"type": "Transitive",
83+
"resolved": "4.7.0",
84+
"contentHash": "JECvTt5aFF3WT3gHpfofL2MNNP6v84sxtXxpqhLBCcDRzqsPBmHhQ6shv4DwwN2tRlzsUxtb3G9M3763rbXKDg==",
85+
"dependencies": {
86+
"Microsoft.NETCore.Platforms": "3.1.0",
87+
"System.Security.Principal.Windows": "4.7.0"
88+
}
89+
},
90+
"System.Security.Principal.Windows": {
91+
"type": "Transitive",
92+
"resolved": "4.7.0",
93+
"contentHash": "ojD0PX0XhneCsUbAZVKdb7h/70vyYMDYs85lwEI+LngEONe/17A0cFaRFqZU+sOEidcVswYWikYOQ9PPfjlbtQ=="
94+
},
95+
"System.ServiceProcess.ServiceController": {
96+
"type": "Transitive",
97+
"resolved": "8.0.1",
98+
"contentHash": "02I0BXo1kmMBgw03E8Hu4K6nTqur4wpQdcDZrndczPzY2fEoGvlinE35AWbyzLZ2h2IksEZ6an4tVt3hi9j1oA==",
99+
"dependencies": {
100+
"System.Diagnostics.EventLog": "8.0.1"
101+
}
102+
},
103+
"System.ValueTuple": {
104+
"type": "Transitive",
105+
"resolved": "4.5.0",
106+
"contentHash": "okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ=="
107+
},
108+
"deeppurge.core": {
109+
"type": "Project",
110+
"dependencies": {
111+
"Microsoft.Toolkit.Uwp.Notifications": "[7.1.3, )",
112+
"System.IO.Hashing": "[8.0.0, )",
113+
"System.Management": "[8.0.0, )",
114+
"System.ServiceProcess.ServiceController": "[8.0.1, )"
115+
}
116+
}
117+
}
118+
}
119+
}
Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
{
2+
"version": 1,
3+
"dependencies": {
4+
"net8.0-windows10.0.17763": {
5+
"Microsoft.NETCore.Platforms": {
6+
"type": "Transitive",
7+
"resolved": "3.1.0",
8+
"contentHash": "z7aeg8oHln2CuNulfhiLYxCVMPEwBl3rzicjvIX+4sUuCwvXw5oXQEtbiU2c0z4qYL5L3Kmx0mMA/+t/SbY67w=="
9+
},
10+
"Microsoft.Toolkit.Uwp.Notifications": {
11+
"type": "Transitive",
12+
"resolved": "7.1.3",
13+
"contentHash": "A1dglAzb24gjehmb7DwGd07mfyZ1gacAK7ObE0KwDlRc3mayH2QW7cSOy3TkkyELjLg19OQBuhPOj4SpXET9lg==",
14+
"dependencies": {
15+
"Microsoft.Win32.Registry": "4.7.0",
16+
"System.Drawing.Common": "4.7.0",
17+
"System.Reflection.Emit": "4.7.0",
18+
"System.ValueTuple": "4.5.0"
19+
}
20+
},
21+
"Microsoft.Win32.Registry": {
22+
"type": "Transitive",
23+
"resolved": "4.7.0",
24+
"contentHash": "KSrRMb5vNi0CWSGG1++id2ZOs/1QhRqROt+qgbEAdQuGjGrFcl4AOl4/exGPUYz2wUnU42nvJqon1T3U0kPXLA==",
25+
"dependencies": {
26+
"System.Security.AccessControl": "4.7.0",
27+
"System.Security.Principal.Windows": "4.7.0"
28+
}
29+
},
30+
"Microsoft.Win32.SystemEvents": {
31+
"type": "Transitive",
32+
"resolved": "4.7.0",
33+
"contentHash": "mtVirZr++rq+XCDITMUdnETD59XoeMxSpLRIII7JRI6Yj0LEDiO1pPn0ktlnIj12Ix8bfvQqQDMMIF9wC98oCA==",
34+
"dependencies": {
35+
"Microsoft.NETCore.Platforms": "3.1.0"
36+
}
37+
},
38+
"System.CodeDom": {
39+
"type": "Transitive",
40+
"resolved": "8.0.0",
41+
"contentHash": "WTlRjL6KWIMr/pAaq3rYqh0TJlzpouaQ/W1eelssHgtlwHAH25jXTkUphTYx9HaIIf7XA6qs/0+YhtLEQRkJ+Q=="
42+
},
43+
"System.Diagnostics.EventLog": {
44+
"type": "Transitive",
45+
"resolved": "8.0.1",
46+
"contentHash": "n1ZP7NM2Gkn/MgD8+eOT5MulMj6wfeQMNS2Pizvq5GHCZfjlFMXV2irQlQmJhwA2VABC57M0auudO89Iu2uRLg=="
47+
},
48+
"System.Drawing.Common": {
49+
"type": "Transitive",
50+
"resolved": "4.7.0",
51+
"contentHash": "v+XbyYHaZjDfn0ENmJEV1VYLgGgCTx1gnfOBcppowbpOAriglYgGCvFCPr2EEZyBvXlpxbEsTwkOlInl107ahA==",
52+
"dependencies": {
53+
"Microsoft.NETCore.Platforms": "3.1.0",
54+
"Microsoft.Win32.SystemEvents": "4.7.0"
55+
}
56+
},
57+
"System.IO.Hashing": {
58+
"type": "Transitive",
59+
"resolved": "8.0.0",
60+
"contentHash": "ne1843evDugl0md7Fjzy6QjJrzsjh46ZKbhf8GwBXb5f/gw97J4bxMs0NQKifDuThh/f0bZ0e62NPl1jzTuRqA=="
61+
},
62+
"System.Management": {
63+
"type": "Transitive",
64+
"resolved": "8.0.0",
65+
"contentHash": "jrK22i5LRzxZCfGb+tGmke2VH7oE0DvcDlJ1HAKYU8cPmD8XnpUT0bYn2Gy98GEhGjtfbR/sxKTVb+dE770pfA==",
66+
"dependencies": {
67+
"System.CodeDom": "8.0.0"
68+
}
69+
},
70+
"System.Reflection.Emit": {
71+
"type": "Transitive",
72+
"resolved": "4.7.0",
73+
"contentHash": "VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ=="
74+
},
75+
"System.Security.AccessControl": {
76+
"type": "Transitive",
77+
"resolved": "4.7.0",
78+
"contentHash": "JECvTt5aFF3WT3gHpfofL2MNNP6v84sxtXxpqhLBCcDRzqsPBmHhQ6shv4DwwN2tRlzsUxtb3G9M3763rbXKDg==",
79+
"dependencies": {
80+
"Microsoft.NETCore.Platforms": "3.1.0",
81+
"System.Security.Principal.Windows": "4.7.0"
82+
}
83+
},
84+
"System.Security.Principal.Windows": {
85+
"type": "Transitive",
86+
"resolved": "4.7.0",
87+
"contentHash": "ojD0PX0XhneCsUbAZVKdb7h/70vyYMDYs85lwEI+LngEONe/17A0cFaRFqZU+sOEidcVswYWikYOQ9PPfjlbtQ=="
88+
},
89+
"System.ServiceProcess.ServiceController": {
90+
"type": "Transitive",
91+
"resolved": "8.0.1",
92+
"contentHash": "02I0BXo1kmMBgw03E8Hu4K6nTqur4wpQdcDZrndczPzY2fEoGvlinE35AWbyzLZ2h2IksEZ6an4tVt3hi9j1oA==",
93+
"dependencies": {
94+
"System.Diagnostics.EventLog": "8.0.1"
95+
}
96+
},
97+
"System.ValueTuple": {
98+
"type": "Transitive",
99+
"resolved": "4.5.0",
100+
"contentHash": "okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ=="
101+
},
102+
"deeppurge.core": {
103+
"type": "Project",
104+
"dependencies": {
105+
"Microsoft.Toolkit.Uwp.Notifications": "[7.1.3, )",
106+
"System.IO.Hashing": "[8.0.0, )",
107+
"System.Management": "[8.0.0, )",
108+
"System.ServiceProcess.ServiceController": "[8.0.1, )"
109+
}
110+
}
111+
}
112+
}
113+
}
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
{
2+
"version": 1,
3+
"dependencies": {
4+
"net8.0-windows10.0.17763": {
5+
"Microsoft.Toolkit.Uwp.Notifications": {
6+
"type": "Direct",
7+
"requested": "[7.1.3, )",
8+
"resolved": "7.1.3",
9+
"contentHash": "A1dglAzb24gjehmb7DwGd07mfyZ1gacAK7ObE0KwDlRc3mayH2QW7cSOy3TkkyELjLg19OQBuhPOj4SpXET9lg==",
10+
"dependencies": {
11+
"Microsoft.Win32.Registry": "4.7.0",
12+
"System.Drawing.Common": "4.7.0",
13+
"System.Reflection.Emit": "4.7.0",
14+
"System.ValueTuple": "4.5.0"
15+
}
16+
},
17+
"System.IO.Hashing": {
18+
"type": "Direct",
19+
"requested": "[8.0.0, )",
20+
"resolved": "8.0.0",
21+
"contentHash": "ne1843evDugl0md7Fjzy6QjJrzsjh46ZKbhf8GwBXb5f/gw97J4bxMs0NQKifDuThh/f0bZ0e62NPl1jzTuRqA=="
22+
},
23+
"System.Management": {
24+
"type": "Direct",
25+
"requested": "[8.0.0, )",
26+
"resolved": "8.0.0",
27+
"contentHash": "jrK22i5LRzxZCfGb+tGmke2VH7oE0DvcDlJ1HAKYU8cPmD8XnpUT0bYn2Gy98GEhGjtfbR/sxKTVb+dE770pfA==",
28+
"dependencies": {
29+
"System.CodeDom": "8.0.0"
30+
}
31+
},
32+
"System.ServiceProcess.ServiceController": {
33+
"type": "Direct",
34+
"requested": "[8.0.1, )",
35+
"resolved": "8.0.1",
36+
"contentHash": "02I0BXo1kmMBgw03E8Hu4K6nTqur4wpQdcDZrndczPzY2fEoGvlinE35AWbyzLZ2h2IksEZ6an4tVt3hi9j1oA==",
37+
"dependencies": {
38+
"System.Diagnostics.EventLog": "8.0.1"
39+
}
40+
},
41+
"Microsoft.NETCore.Platforms": {
42+
"type": "Transitive",
43+
"resolved": "3.1.0",
44+
"contentHash": "z7aeg8oHln2CuNulfhiLYxCVMPEwBl3rzicjvIX+4sUuCwvXw5oXQEtbiU2c0z4qYL5L3Kmx0mMA/+t/SbY67w=="
45+
},
46+
"Microsoft.Win32.Registry": {
47+
"type": "Transitive",
48+
"resolved": "4.7.0",
49+
"contentHash": "KSrRMb5vNi0CWSGG1++id2ZOs/1QhRqROt+qgbEAdQuGjGrFcl4AOl4/exGPUYz2wUnU42nvJqon1T3U0kPXLA==",
50+
"dependencies": {
51+
"System.Security.AccessControl": "4.7.0",
52+
"System.Security.Principal.Windows": "4.7.0"
53+
}
54+
},
55+
"Microsoft.Win32.SystemEvents": {
56+
"type": "Transitive",
57+
"resolved": "4.7.0",
58+
"contentHash": "mtVirZr++rq+XCDITMUdnETD59XoeMxSpLRIII7JRI6Yj0LEDiO1pPn0ktlnIj12Ix8bfvQqQDMMIF9wC98oCA==",
59+
"dependencies": {
60+
"Microsoft.NETCore.Platforms": "3.1.0"
61+
}
62+
},
63+
"System.CodeDom": {
64+
"type": "Transitive",
65+
"resolved": "8.0.0",
66+
"contentHash": "WTlRjL6KWIMr/pAaq3rYqh0TJlzpouaQ/W1eelssHgtlwHAH25jXTkUphTYx9HaIIf7XA6qs/0+YhtLEQRkJ+Q=="
67+
},
68+
"System.Diagnostics.EventLog": {
69+
"type": "Transitive",
70+
"resolved": "8.0.1",
71+
"contentHash": "n1ZP7NM2Gkn/MgD8+eOT5MulMj6wfeQMNS2Pizvq5GHCZfjlFMXV2irQlQmJhwA2VABC57M0auudO89Iu2uRLg=="
72+
},
73+
"System.Drawing.Common": {
74+
"type": "Transitive",
75+
"resolved": "4.7.0",
76+
"contentHash": "v+XbyYHaZjDfn0ENmJEV1VYLgGgCTx1gnfOBcppowbpOAriglYgGCvFCPr2EEZyBvXlpxbEsTwkOlInl107ahA==",
77+
"dependencies": {
78+
"Microsoft.NETCore.Platforms": "3.1.0",
79+
"Microsoft.Win32.SystemEvents": "4.7.0"
80+
}
81+
},
82+
"System.Reflection.Emit": {
83+
"type": "Transitive",
84+
"resolved": "4.7.0",
85+
"contentHash": "VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ=="
86+
},
87+
"System.Security.AccessControl": {
88+
"type": "Transitive",
89+
"resolved": "4.7.0",
90+
"contentHash": "JECvTt5aFF3WT3gHpfofL2MNNP6v84sxtXxpqhLBCcDRzqsPBmHhQ6shv4DwwN2tRlzsUxtb3G9M3763rbXKDg==",
91+
"dependencies": {
92+
"Microsoft.NETCore.Platforms": "3.1.0",
93+
"System.Security.Principal.Windows": "4.7.0"
94+
}
95+
},
96+
"System.Security.Principal.Windows": {
97+
"type": "Transitive",
98+
"resolved": "4.7.0",
99+
"contentHash": "ojD0PX0XhneCsUbAZVKdb7h/70vyYMDYs85lwEI+LngEONe/17A0cFaRFqZU+sOEidcVswYWikYOQ9PPfjlbtQ=="
100+
},
101+
"System.ValueTuple": {
102+
"type": "Transitive",
103+
"resolved": "4.5.0",
104+
"contentHash": "okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ=="
105+
}
106+
}
107+
}
108+
}

0 commit comments

Comments
 (0)