mirai/ci-release-helper/changelogs/2.11.0-RC.md
2022-07-31 15:01:18 +08:00

3.3 KiB

mirai-core

不兼容变更

  • 弃用 IMirai.Http
  • 弃用 BotConfiguration.json

新特性

  • 在达到 AtAll 每日使用上限后以新的 reason AT_ALL_LIMITED 抛出 SendMessageFailedException (#1948)

    在 2.10 说明了该行为, 但实际上并没有支持

  • 在首次登录遇到任何错误时终止登录而不会重试, 修复日志提示 NettyChannelException 且长时间不结束的问题 (#1963)
  • 新增获取多种规格的群和用户头像, 修复群成员头像为 GIF 时获取的头像链接错误的问题 (#1557, #1721 by @cssxsh)

优化和修复

  • 修复因网络波动原因, 出现反复掉线重连或产生大量日志的问题 (#1907)
  • 修复收到 IllegalStateException: returnCode = -10106 导致停止工作的问题 (#1840, #1957)
  • 修复登录时遇到 'Timeout waiting for ConfigPush' 等 ConfigPush 有关问题 (#1899, #1991)
  • 修复 Image.size 文档错别字 (#1978 by @zj713300)
  • 提升在以前版本弃用的 API 的弃用等级 (#1837)
  • 修复运行时产生大量错误日志的问题 (正确处理在心跳过程中遇到的错误) ( #1893)
  • 在心跳任务协程名称中包括 Bot ID
  • 更新依赖:
    • Kotlin: 1.6.21
    • kotlinx.serialization: 1.3.2
    • kotlinx.coroutines: 1.6.1
    • ktor: 1.6.7
    • log4j: 2.17.2 (#1969)

mirai-console

不兼容变更

  • 弃用 JAutoSavePluginDataJAutoSavePluginConfig (替换见下文) ( #1988)

新特性

  • PluginData: 支持 serializersModule (PluginData.serializersModule) (#1796, #1987)
  • PluginData: 在定义 value 时使用精确的返回值, 解决一些需要手动定义类型的情况 (#1987)
  • PluginData: 支持 MessageChain 等所有 mirai 内置消息数据类型 ( #1922)
  • PluginData: 支持原生数组类型和引用数组类型 (#1801)
  • 新增 JavaAutoSavePluginDataJavaAutoSavePluginConfig 作为 PluginData 等的 Java 支持 (#1747, #1803, #1988)

优化和修复

  • 修复 AbstractPluginData.findBackingFieldValueNode
  • 修复依赖 isOptional=true 的插件时无法正确处理依赖的问题 (自 2.0) ( #1949, #1968)
  • 修复取消权限时的错误信息 (#1918 by @cssxh)
  • 修复新版插件依赖在 init 块内调用依赖时会导致找不到的问题 (自 2.11) ( #1965)
  • 修复在下载依赖时试图下载并不存在的 JAR 的问题 (自 2.11) (#1975)
  • 修复指令文档的 Java 示例 (#1970 by @hundun000)
  • 补全 Java 示例文档 (#1970 by @hundun000)
  • 修复 PluginDescription.isOptional 的文档 (#1869)
  • 修复文档拼写错误 (#)

mirai-console-gradle

优化和修复

  • 在配置项目时优先使用 optIn 而不是 useExperimentalAnnotation ( #1986)
  • buildPlugin 打包的插件将会输出到 build/mirai, 与 2.11 以前保持一致 (自 2.11)
  • 修复 buildPlugin 会把子项目依赖也打包的问题 (自 2.11) (#1973)

mirai-console-intellij

新特性

新的插件项目生成器 (查看图片) ( #1976, #1979)

  • 新增 Run Configuration: RunTerminal, 默认使用项目目录下 debug-sandbox 作为运行目录
  • 支持中文和英文

由于新项目生成器是 2022.1 的新功能, 新版本 v221-2.11.0-162-1 仅支持 IntelliJ IDEA 2022.1 (和 Android Studio 等同版本).