diff --git a/ci-release-helper/changelogs/2.14.0.md b/ci-release-helper/changelogs/2.14.0.md new file mode 100644 index 00000000000..634b60cf878 --- /dev/null +++ b/ci-release-helper/changelogs/2.14.0.md @@ -0,0 +1,114 @@ +## mirai-core + +### 不兼容变更 + +- 删除 SwingLoginSolver (#2410) +> 它以前是设计给解决图形验证码, 而现在基本不会遇到图形验证码了。现在将默认使用命令行版本 LoginSolver。 +> 以前使用 "-Dno-desktop" 可以禁用 SwingLoginSolver,现在这个选项将没有效果,不会报错。 +- 现在使用 RemoteFile 将会得到编译错误 +> RemoteFile 早在 2.8 就弃用了, 使用时会得到警告. 现在起使用将会得到编译错误. + +### 新特性 + +- 群聊获取历史消息 (`Group` 实现 `RoamingSupported`) (#1866, #2332 by @StageGuard ) +> 可使用 `group.roamingMessages` / `group.getRoamingMessages()` +- 商城表情: 石头剪刀布 (#2220 by @cssxsh ) +> 类型名称为 `RockPaperScissors` +- 群打卡事件支持 (#1663, #2217 by @cssxsh ) +> 类型名称为 `SignEvent` +- `Announcement` 现在可以获取 已确认/未确认 的群成员 (#2255 by @cssxsh ) + +### 优化和修复 + +- 修复无法登录的问题 (#2433 by @sandtechnology ) +> 此修复也会在 2.13.4 包含 +- 修复群员列表缓存文件不完整时会导致 bot init 失败的错误 (#2399) +- 当设备信息等变更的时候清除缓存 (#2346, #2388) +> 不清除会导致登录失败等问题 +- 修复 iOS 无法查看私聊转发消息的问题 (#1575) +- 修复转发消息存在特殊字符时无法加载的问题 (#2241) +- 修正 `contentToString()` 注释不严谨处 (#2373, #2374 by @MrXiaoM ) +- 修正 PokeMessage.id (#2170) +- 修复 QuoteReply 无法引用 bot 发出的 ForwardMessage (#2342) +- 修改日志等级的颜色 (#2336) + > 现在 WARN 是金黄色,而不是红色 + + + +## mirai-core-mock + +### 优化和修复 + +- 避免 MockAbsoluteFile.md5/sha1 可能为空 (#2436 by @Nambers ) +- 修复部分信息撤回逻辑不正确的错误 (#2421 by @Nambers ) +- 修复 `MockNormalMember.modiyAdmin()` 逻辑错误 (#2420 by @Nambers ) +- 修复 uploadMockImage 上传相同文件时触发 java.nio.file.FileAlreadyExistsException (#2401) +- 引入 AvatarGenerator +- 修复联系人头像等信息更新同步的问题 + +## mirai-console + +### 新特性 + +- JvmPlugin 中现在可以调用 mirai console 所使用的针对 Kotlin object 优化后的 SPI Service Loader (#2247 by @cssxsh) + +### 优化和修复 + +- 修复 `JvmPlugin.onDisable` 被多次执行的错误 (#2015, #2397) +- 修复低版本 Android 系统报错 `java.lang.NoSuchMethodError: No virtual method getDeclaredAnnotation(Ljava/lang/Class;)L` (#2354 by @zhaodice) +- 在命令的报错中去除不必要的 `InvocationTargetException` 包装 (#2258 by @cssxsh ) +- 优化 MiraiLogger (在 mirai-console) 性能 (#2341) +- SLF4J 支持 (#2341) +- 修复 Plugin.onLoad 抛出错误时没有终止 console 的错误 + > 此错误在 2.14.0-RC 引入 + +## IDEA + +- 支持 2022.3 (#2372) + > - 新插件版本号为 `223-2.14.0-172-1` + > - 新版本只支持 2022.3 + Kotlin 1.7.20 (因为 2022.3 捆绑 1.7.20) + +--------------- + +## 关于 mirai-console SLF4J 支持 (#2341) + +### 配置文件修改 + +> 修改均为默认配置, 先前已经生成的配置不会进行修改 + +### `Logger.yml` + +```diff + # 默认日志输出等级 + # 可选值: ALL, VERBOSE, DEBUG, INFO, WARNING, ERROR, NONE + defaultPriority: INFO + # 特定日志记录器输出等级 + loggers: + example.logger: NONE + console.debug: NONE + Bot: ALL ++ org.eclipse.aether.internal: INFO ++ org.apache.http.wire: INFO + ++# 是否启动外部日志框架桥接 ++binding: ++ slf4j: true +``` + +### ABI 变更 + +> 注: 实际上 console 没有直接的 ABI 变更 + +依赖更新: `org.slf4j:slf4j-api:1.7.32` -> `2.0.3` + +此依赖的更新只会影响 `slf4j-api` 的对接, 并不会影响 `slf4j-api` 的单纯使用 + +> 即不会对插件有任何影响, 只会对部分对 console 进行高度自定义的会有少许影响 + +### 其他 API 变更 + +- mirai-logging-log4j2 现在使用 `org.apache.logging.log4j:log4j-slf4j2-impl` +- mirai-logging-slf4j-logback 现在使用 1.3.4 +- mirai-core-all 现在携带的是 slf4j 2.0.x + +