-
Notifications
You must be signed in to change notification settings - Fork 42
Expand file tree
/
Copy pathultimate-diagnostic.cmd
More file actions
312 lines (246 loc) · 11 KB
/
ultimate-diagnostic.cmd
File metadata and controls
312 lines (246 loc) · 11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
@echo off
:: Ultimate Package Diagnostic Tool
title Ultimate Package Diagnostic Tool
cls
echo ========================================================================
echo Ultimate Package Diagnostic Tool
echo ========================================================================
echo:
:mainmenu
echo 1. Check Ultimate project references
echo 2. Verify package contents
echo 3. Test package creation
echo 4. Show package dependencies
echo 5. Clean and rebuild Ultimate packages
echo 6. Compare package sizes
echo 7. Return to main menu
echo:
set /p choice="Enter your choice (1-7): "
if "%choice%"=="1" goto checkreferences
if "%choice%"=="2" goto verifycontents
if "%choice%"=="3" goto testcreation
if "%choice%"=="4" goto showdependencies
if "%choice%"=="5" goto cleanrebuild
if "%choice%"=="6" goto comparesizes
if "%choice%"=="7" goto exit
echo Invalid choice. Please try again.
pause
cls
goto mainmenu
:: ===================================================================================================
:checkreferences
cls
echo ========================================================================
echo Checking Ultimate Project References
echo ========================================================================
echo:
echo Checking Ultimate project references...
echo:
echo Project References in Ultimate:
findstr /C:"ProjectReference" "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" | find /C "ProjectReference"
echo:
echo Project References in Ultimate.Lite:
findstr /C:"ProjectReference" "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" | find /C "ProjectReference"
echo:
echo Package References in Ultimate:
findstr /C:"PackageReference" "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" | find /C "PackageReference"
echo:
echo Package References in Ultimate.Lite:
findstr /C:"PackageReference" "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" | find /C "PackageReference"
echo:
pause
cls
goto mainmenu
:: ===================================================================================================
:verifycontents
cls
echo ========================================================================
echo Verify Package Contents
echo ========================================================================
echo:
echo Checking for existing packages...
echo:
if exist "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg" (
echo ✅ Ultimate Release packages found
for %%f in ("Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg") do (
echo - %%~nxf
)
) else (
echo ❌ No Ultimate Release packages found
)
echo:
if exist "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate.Lite*.nupkg" (
echo ✅ Ultimate.Lite Release packages found
for %%f in ("Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate.Lite*.nupkg") do (
echo - %%~nxf
)
) else (
echo ❌ No Ultimate.Lite Release packages found
)
echo:
if exist "Bin\NuGet Packages\Nightly\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg" (
echo ✅ Ultimate Nightly packages found
for %%f in ("Bin\NuGet Packages\Nightly\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg") do (
echo - %%~nxf
)
) else (
echo ❌ No Ultimate Nightly packages found
)
echo:
if exist "Bin\NuGet Packages\Canary\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg" (
echo ✅ Ultimate Canary packages found
for %%f in ("Bin\NuGet Packages\Canary\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg") do (
echo - %%~nxf
)
) else (
echo ❌ No Ultimate Canary packages found
)
echo:
pause
cls
goto mainmenu
:: ===================================================================================================
:testcreation
cls
echo ========================================================================
echo Test Package Creation
echo ========================================================================
echo:
echo Testing Ultimate package creation...
echo:
echo Step 1: Clean Ultimate projects
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\bin" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\bin"
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\obj" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\obj"
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\bin" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\bin"
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\obj" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\obj"
echo Step 2: Build Ultimate project
dotnet build "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" --configuration Release --verbosity minimal
if %ERRORLEVEL% == 0 (
echo ✅ Ultimate build successful
) else (
echo ❌ Ultimate build failed
pause
cls
goto mainmenu
)
echo:
echo Step 3: Pack Ultimate project
dotnet pack "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" --configuration Release --output "Bin\NuGet Packages\Release" --no-build --verbosity minimal
if %ERRORLEVEL% == 0 (
echo ✅ Ultimate pack successful
) else (
echo ❌ Ultimate pack failed
)
echo:
echo Step 4: Build Ultimate.Lite project
dotnet build "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" --configuration Release --verbosity minimal
if %ERRORLEVEL% == 0 (
echo ✅ Ultimate.Lite build successful
) else (
echo ❌ Ultimate.Lite build failed
pause
cls
goto mainmenu
)
echo:
echo Step 5: Pack Ultimate.Lite project
dotnet pack "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" --configuration Release --output "Bin\NuGet Packages\Release" --no-build --verbosity minimal
if %ERRORLEVEL% == 0 (
echo ✅ Ultimate.Lite pack successful
) else (
echo ❌ Ultimate.Lite pack failed
)
echo:
echo Test completed!
echo:
pause
cls
goto mainmenu
:: ===================================================================================================
:showdependencies
cls
echo ========================================================================
echo Show Package Dependencies
echo ========================================================================
echo:
echo Analyzing Ultimate package dependencies...
echo:
echo Ultimate Package Dependencies:
dotnet list "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" package
echo:
echo Ultimate.Lite Package Dependencies:
dotnet list "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" package
echo:
pause
cls
goto mainmenu
:: ===================================================================================================
:cleanrebuild
cls
echo ========================================================================
echo Clean and Rebuild Ultimate Packages
echo ========================================================================
echo:
echo This will clean and rebuild both Ultimate packages...
echo:
echo Step 1: Clean all Ultimate projects
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\bin" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\bin"
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\obj" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\obj"
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\bin" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\bin"
if exist "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\obj" rmdir /s /q "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\obj"
echo Step 2: Clean package output directories
if exist "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg" del "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg"
if exist "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate.Lite*.nupkg" del "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate.Lite*.nupkg"
echo Step 3: Restore packages
dotnet restore "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj"
dotnet restore "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj"
echo Step 4: Build Ultimate
dotnet build "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" --configuration Release
echo Step 5: Build Ultimate.Lite
dotnet build "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" --configuration Release
echo Step 6: Pack Ultimate
dotnet pack "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate\Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj" --configuration Release --output "Bin\NuGet Packages\Release" --no-build
echo Step 7: Pack Ultimate.Lite
dotnet pack "Source\Krypton Toolkit\Krypton.Toolkit.Suite.Extended.Ultimate.Lite\Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj" --configuration Release --output "Bin\NuGet Packages\Release" --no-build
echo:
echo ✅ Clean and rebuild completed!
echo:
pause
cls
goto mainmenu
:: ===================================================================================================
:comparesizes
cls
echo ========================================================================
echo Compare Package Sizes
echo ========================================================================
echo:
echo Package size comparison:
echo:
if exist "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg" (
for %%f in ("Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate*.nupkg") do (
echo Ultimate: %%~nxf
for %%s in ("%%f") do echo Size: %%~zs bytes
)
) else (
echo ❌ No Ultimate packages found
)
echo:
if exist "Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate.Lite*.nupkg" (
for %%f in ("Bin\NuGet Packages\Release\Krypton.Toolkit.Suite.Extended.Ultimate.Lite*.nupkg") do (
echo Ultimate.Lite: %%~nxf
for %%s in ("%%f") do echo Size: %%~zs bytes
)
) else (
echo ❌ No Ultimate.Lite packages found
)
echo:
pause
cls
goto mainmenu
:: ===================================================================================================
:exit
echo:
echo Returning to main build system...
echo:
exit /b 0