@@ -22,6 +22,7 @@ static class Updater
2222 const string USER_AGENT = "PenguLoader-Updater/1.0" ;
2323
2424 static bool _checking ;
25+ internal static string BuildChannel => ReadBuildInfo ( ) . Channel ;
2526
2627 class Update
2728 {
@@ -167,7 +168,9 @@ static async Task<Update> FetchUpdate()
167168 if ( channel == "dev" )
168169 {
169170 var releases = serializer . Deserialize < GitHubRelease [ ] > ( await DownloadString ( ReleasesApiUrl ) ) ;
170- release = releases . FirstOrDefault ( item => item . prerelease && ! item . draft ) ;
171+ release = releases . FirstOrDefault ( item => item . prerelease && ! item . draft
172+ && item . assets != null
173+ && item . assets . Any ( candidate => candidate . name . EndsWith ( "-dev-windows.zip" , StringComparison . OrdinalIgnoreCase ) ) ) ;
171174 }
172175 else
173176 {
@@ -228,6 +231,11 @@ static BuildInfo ReadBuildInfo()
228231 if ( File . Exists ( path ) )
229232 value = File . ReadAllText ( path ) . Trim ( ) ;
230233
234+ return ParseBuildInfo ( value ) ;
235+ }
236+
237+ static BuildInfo ParseBuildInfo ( string value )
238+ {
231239 var parts = value . Split ( '+' ) ;
232240 Version version ;
233241
@@ -277,14 +285,13 @@ internal static bool SelfTest()
277285 Commit = "abcdef12" ,
278286 Channel = "stable"
279287 } ;
280- var dev = new BuildInfo
281- {
282- Version = new Version ( 1 , 3 , 0 ) ,
283- Commit = "12345678" ,
284- Channel = "dev"
285- } ;
288+ var dev = ParseBuildInfo ( "1.3.0+12345678+dev" ) ;
286289
287290 return ParseVersion ( "v1.2.3-dev.42" ) == new Version ( 1 , 2 , 3 )
291+ && dev . Version == new Version ( 1 , 3 , 0 )
292+ && dev . Channel == "dev"
293+ && Config . ResolveUpdateChannel ( "" , dev . Channel ) == "dev"
294+ && Config . ResolveUpdateChannel ( "stable" , dev . Channel ) == "stable"
288295 && ! ShouldUpdate ( stable , new Version ( 1 , 2 , 3 ) , "abcdef1234567890" , "stable" )
289296 && ShouldUpdate ( stable , new Version ( 1 , 2 , 3 ) , "1234567890abcdef" , "stable" )
290297 && ShouldUpdate ( stable , new Version ( 1 , 1 , 0 ) , "1234567890abcdef" , "dev" )
0 commit comments