1111package io.github.gnuf0rce.mirai.github
1212
1313import io.github.gnuf0rce.github.*
14+ import io.github.gnuf0rce.github.exception.*
1415import io.ktor.client.request.*
1516import io.ktor.client.statement.*
17+ import io.ktor.http.*
1618import io.ktor.util.cio.*
1719import io.ktor.utils.io.*
1820import kotlinx.coroutines.*
@@ -50,31 +52,35 @@ public object GitHubReleasePluginUpdater {
5052 " io.github.samarium150.mirai.plugin.mirai-console-loafers-calendar" to " Samarium150/mirai-console-loafers-calendar" ,
5153 " io.github.samarium150.mirai.plugin.mirai-console-lolicon" to " Samarium150/mirai-console-lolicon" ,
5254
55+ " indi.eiriksgata.rulateday-dice" to " Eiriksgata/mirai-rulateday-dice" ,
56+
5357 " me.jie65535.mirai-console-jnr-plugin" to " jie65535/mirai-console-jnr-plugin" ,
5458
55- " me.stageguard.obms.OsuMapSuggester" to " StageGuard/OsuMapSuggester" ,
59+ " me.sagiri.mirai.plugin.QShell" to " EroSagiri/QShell" ,
60+
61+ // "me.stageguard.obms.OsuMapSuggester" to "StageGuard/OsuMapSuggester",
5662 " me.stageguard.sctimetable" to " StageGuard/SuperCourseTimetableBot" ,
5763
58- " org.laolittle.plugin.SkikoMirai" to " LaoLittle/SkikoMirai" ,
5964 " org.laolittle.plugin.draw.DrawMeme" to " LaoLittle/DrawMeme" ,
65+ " org.laolittle.plugin.SkikoMirai" to " LaoLittle/SkikoMirai" ,
6066
6167 " top.colter.bilibili-dynamic-mirai-plugin" to " Colter23/bilibili-dynamic-mirai-plugin" ,
6268 " top.colter.genshin-sign" to " Colter23/genshin-sign-mirai-plugin" ,
6369
6470 " top.cutestar.antiRecall" to " Pmaru-top/AntiRecall" ,
6571
72+ " top.jie65535.jcf" to " jie65535/mirai-console-jcf-plugin" ,
73+ " top.jie65535.j24" to " jie65535/mirai-console-j24-plugin" ,
74+ " top.jie65535.mail-notify" to " jie65535/JMailNotify" ,
75+ " top.jie65535.mirai.grasscutter-command" to " jie65535/JGrasscutterCommand" ,
76+ " top.jie65535.mirai-console-jcc-plugin" to " jie65535/mirai-console-jcc-plugin" ,
77+ " top.jie65535.mirai-console-jcr-plugin" to " jie65535/mirai-console-jcr-plugin" ,
78+ " top.jie65535.mirai-console-jms-plugin" to " jie65535/mirai-console-jms-plugin" ,
79+
6680 " top.limbang.mcmod" to " limbang/mirai-console-mcmod-plugin" ,
6781 " top.limbang.mcsm" to " limbang/mirai-console-mcsm-plugin" ,
6882 " top.limbang.minecraft" to " limbang/mirai-console-minecraft-plugin" ,
6983
70- " top.jie65535.mirai.grasscutter-command" to " jie65535/JGrasscutterCommand" ,
71- " top.jie65535.mail-notify" to " jie65535/JMailNotify" ,
72- " top.jie65535.mirai-console-jms-plugin" to " jie65535/mirai-console-jms-plugin" ,
73- " top.jie65535.jcf" to " jie65535/mirai-console-jcf-plugin" ,
74- " top.jie65535.mirai-console-jcr-plugin" to " jie65535/mirai-console-jcr-plugin" ,
75- " top.jie65535.mirai-console-jhr-plugin" to " jie65535/mirai-console-jhr-plugin" ,
76- " top.jie65535.mirai-console-jcab-arg-plugin" to " jie65535/mirai-console-jcab-arg-plugin" ,
77-
7884 " xmmt.dituon.petpet" to " Dituon/petpet" ,
7985
8086 " xyz.cssxsh.mirai.plugin.novelai-helper" to " cssxsh/novelai-helper" ,
@@ -87,14 +93,6 @@ public object GitHubReleasePluginUpdater {
8793 dict.putAll(GitHubJson .decodeFromString(file.readText()))
8894 } else {
8995 file.writeText(GitHubJson .encodeToString(dict))
90- val last = file.lastModified()
91- runBlocking {
92- ConsoleInput .requestInput(hint = " update.dict.json 已生成,你可以打开浏览一下 (输入回车结束等待)" )
93- }
94- if (last < file.lastModified()) {
95- dict.clear()
96- dict.putAll(GitHubJson .decodeFromString(file.readText()))
97- }
9896 }
9997 }
10098
@@ -113,7 +111,16 @@ public object GitHubReleasePluginUpdater {
113111 var target = PluginManager .pluginsFolder.resolve(plugin.description.id)
114112
115113 plugin.launch {
116- val latest = github.repo(id).releases.latest()
114+ val latest = try {
115+ github.repo(id).releases.latest()
116+ } catch (exception: GitHubApiException ) {
117+ if (exception.cause.response.status == HttpStatusCode .NotFound ) {
118+ plugin.logger.warning(" 项目未设置 Release Latest!" )
119+ } else {
120+ plugin.logger.warning(" GitHub API 异常" , exception)
121+ }
122+ return @launch
123+ }
117124 val jar = latest.assets.find { it.name.endsWith(" .mirai2.jar" ) }
118125 ? : latest.assets.find { it.name.endsWith(" .mirai.jar" ) }
119126 ? : latest.assets.find { it.name.endsWith(" .jar" ) }
0 commit comments