@@ -69,6 +69,7 @@ public class BuildProcessor
69
69
70
70
private const string DOCKER_IMAGE = "mcr.microsoft.com/dotnet/sdk" ;
71
71
private const string DOCKER_TAG = "8.0" ;
72
+
72
73
// This field specifies which dependency package is to be fetched depending on the .net target framework.
73
74
// The values to use in turn depend on the used SDK (see DOCKER_TAG) and what gets resolved at compile time.
74
75
// If a plugin breaks with a missing runtime package you might want to add the package here.
@@ -91,6 +92,17 @@ public class BuildProcessor
91
92
}
92
93
} ;
93
94
95
+ // This field specifies a list of packages that must be present in the package cache, no matter
96
+ // whether they are present in the lockfile. This is necessary for SDK packages, as they are not
97
+ // added to lockfiles.
98
+ private readonly Dictionary < string , string [ ] > FORCE_PACKAGES = new ( )
99
+ {
100
+ { "Dalamud.NET.Sdk" , new [ ]
101
+ // This should have all of the SDK packages we still support.
102
+ { "9.0.1" }
103
+ } ,
104
+ } ;
105
+
94
106
private const string EXTENDED_IMAGE_HASH = "fba5ce59717fba4371149b8ae39d222a29a7f402c10e0941c85a27e8d1bb6ce4" ;
95
107
96
108
private const string S3_BUCKET_NAME = "dalamud-plugin-archive" ;
@@ -388,6 +400,11 @@ await Task.WhenAll(
388
400
{
389
401
Log . Warning ( e , "Failed to fetch runtime dependency" ) ;
390
402
}
403
+
404
+ foreach ( var ( name , versions ) in this . FORCE_PACKAGES )
405
+ {
406
+ await Task . WhenAll ( versions . Select ( version => GetDependency ( name , new ( ) { Resolved = version } , pkgFolder , client ) ) ) ;
407
+ }
391
408
}
392
409
393
410
async Task GetNeeds ( BuildTask task , DirectoryInfo needs )
0 commit comments