github mamoe/mirai v2.13.0-RC
2.13.0-RC

latest releases: v2.16.0, v2.16.0-RC, v2.15.0...
pre-release23 months ago

2.13.0-RC 包含:

  • 支持使用短信验证码进行设备锁验证
  • 支持查看和修改好友分组
  • 支持查询和修改群员头衔等活跃数据
  • Core 模拟测试框架
  • Console 下载进度条
  • 一些问题修复

mirai-core

不兼容变更

  • mirai-core-api 去除了对 kotlinx-coroutines-jdk8 的依赖.

新特性

  • 支持使用短信验证码进行设备锁验证 (#717, #2109, #2216)
  • nextEventnextEventOrNull 新增 intercept 参数, 可在满足条件时拦截事件 (#1668, #2177 by @Nambers)
  • 支持查看和修改好友分组 (#1390, #1243, #2113 by @Nambers)

    好友分组定名为 FriendGroup.

    • 新增 Friend.friendGroup 获取该好友所属分组.
    • 新增 Bot.friendGroups 获取好友分组列表并操作分组.
  • 支持查询和修改群员头衔等活跃数据 (#2204, #2086, #2115 by @cssxsh)
    • 新增 Group.active 获取群的活跃数据.
    • 新增 Member.active 获取该成员的活跃数据.
  • 新增 AbstractExternalResource.input 的默认实现

    在实现自定义 ExternalResource 时可能有帮助

优化和修复

  • 更新 ANDROID_WATCHMACOS 的协议信息 (#2228 by @cssxsh)
  • 修复网络层的异常处理流程, 优化重连逻辑
    • 修复断线重连时, 日志快速不断输出同一个异常, 之后无法恢复连接的问题 (#2148)
    • 修复离线时大量打印 HeartbeatFailedException 的问题 (#2175)
  • 优化由网络层抛出的异常的堆栈信息

    现在不再有循环引用, 而且更简洁
    CancellationException 将会被替换为真实原因

  • 修复在 Android 上遇到 'Duplicate class' 的问题 (#2248)
  • 修复合并转发内容中用户昵称错误的问题 (#2187)

    此修复也包含在 2.12.3

  • 优化各平台的 ECDH 实现 (#2161 by @AdoptOSS)
  • 修复使用静态序列化器时无法编译的问题 (#2230)

    自 2.13.0-M1

  • 在发送群公告失败时抛出有正确信息的异常而不是序列化错误 (#2069)
  • 修复日志中无法获得调试信息的问题 (#2097)
  • 提升一些已弃用的 API 的弃用等级 (#2213)

mirai-console

新特性

  • 在下载时展示进度条 (#2133, #2140)

    也公开了进度条 API 供插件使用. 见 MiraiConsole.newProcessProgress().

  • /login 登录时使用可用的自动登录配置 (#2209 by @cssxsh)
  • 增加了 Console 前端实现的基础模块 mirai-console-frontend-base

优化和修复

  • 优化文档细节 (#2207)
  • 优化日志系统 (#2196)
    • Console 现在总是使用 core 的 MiraiLogger.Factory API 创建日志
    • 禁止插件修改日志系统
    • 允许通过 classpath 修改日志系统
    • 在保存日志到文件时不包含颜色符号 (#2218)
  • 在欢迎时打印 Mirai Console 字符画

    以帮助区分 mirai-console 和 mirai-console-loader

mirai-core-mock

新增 Core 模拟测试框架 mirai-core-mock. 版本号与 mirai-core 相同. 相关文档 (#1304, #1521)

使用模拟测试框架可以构造虚拟 Bot, 模拟收到各种事件.

IDEA

  • 在创建插件项目时自动从 Maven Central 获取 mirai 使用的 Kotlin 版本 (#2240, #2244 by @MrXiaoM)

Don't miss a new mirai release

NewReleases is sending notifications on new releases.