mirai

高效率 QQ 机器人支持库

AGPL-3.0 License

Stars
14K
Committers
131

Bot releases are visible (Hide)

mirai - 2.9.0-RC

Published by Him188 almost 3 years ago

mirai-core

解决安全隐患

  • 默认使用更高版本的 Log4J2 以避免其安全问题 (#1724 by @Nambers)

该修复用于使用了 mirai-logging-log4j2 的情况. 如果没有使用, 则不受影响.

不兼容变更

  • 为因群限制每分钟发言次数导致的发送失败抛出特定异常 (#1220, #1701)
  • 为因移出群员操作频率过快导致的错误抛出特定异常 (#1503, #1701)
  • 为因发送 AtAll 次数达到上限导致的错误抛出特定异常 (#1201, #1701)

2.9.0-RC 以前这些情况都会抛出 IllegalStateException,而现在会抛出 SendMessageFailedException,因此可能不兼容

新特性

  • 为设备信息增加版本号, 新版本以字符串方式存储数据, 使设备信息更易读 (#1295, #1704)
  • 支持通过目录 ID 获取子目录: AbsoluteFolder.resolveById (#1712)
  • 部署 KDoc 到 https://kdoc.mirai.mamoe.net/ (#1482, #1708)

优化和修复

  • 更新实现自定义事件的文档 (#1688 by @MrXiaoM)

mirai-console

新特性

  • 使用插件 ID 作为插件数据目录名, 自动完成迁移 (mamoe/mirai-console#276,
    mamoe/mirai-console#418 by @Nambers)
  • 新增登出 Bot 的指令: /logout <id> (mamoe/mirai-console#417)
  • 新增 AbstractJvmPlugin.saveAbstractJvmPlugin.savePluginData
    用于立即保存 PluginData (mamoe/mirai-console#408, mamoe/mirai-console#420)

mirai-bom

优化和修复

  • 修复 mirai-bom 没有发布到 Maven Central 的问题
mirai - 2.8.3

Published by Him188 almost 3 years ago

  • 撤销 '阻止用户发送 FileMessage' (#1646) 的修改, 改为日志警告, 并在未来版本再恢复禁止 (#1715, #1716)
mirai - 2.9.0-M1

Published by Karlatemp almost 3 years ago

mirai-core

新特性

  • 支持检查图片是否已上传 (#1401, #1671)
  • 支持发送嵌套的转发信息 (#1198, #1667)
  • AbstractExternalResource (#1637)
  • 支持构造指定 size 等参数的 Image (#1672, #1673)

优化和修复

  • 修复音乐分享没被解析的问题 (#1660)
  • 修复好友修改昵称时有正确广播事件但没有修改 Friend 的属性 (#1674, #1678 by @sandtechnology )
  • 修复 UserProfile.sign 总是为空的问题 (#1620, #1667)
  • 修复反序列化后的图片无法在 ForwardMessage 显示的问题 (#1507, #1667)
  • 修复在一条消息中的同一个反序列化后的 Image 会重复上传的问题 (#1636, #1667)
  • 修复嵌套的转发消息在 ANDROID_WATCH 下未解析的问题 (#1652, #1667)
  • 修复 MessageChain 还未完全 readonly 的问题 (#1676)
  • 修复撤回已退群的群成员的消息时会报错的问题 (#1661)
  • 在撤回消息前检查权限 (#1175, #1662 by @Nambers )
  • 处理发送消息时的服务不可用错误 (#1659 by @sandtechnology )
  • 日志系统使用系统时区 (#1639, #1658)
mirai - 2.8.2

Published by Karlatemp almost 3 years ago

mirai-core

  • 修复使用绝对路径执行 AbsoluteFolder.resolveXXX 时会报错的错误 (#1687, #1689)

mirai-console

  • 修复出现日志标识为 null 的情况 (#1691)
mirai - 2.8.1

Published by Him188 almost 3 years ago

  • MessageReceipt.source 去除内部元素 (如 MiraiInternalMessageFlag, 2.8.0 添加)
  • 修复 RemoteFile.upload 没有使用 callback 的问题
mirai - 2.8.0

Published by Him188 almost 3 years ago

本日志仅包含 2.8.0 相较于 2.8.0-RC 的变更. 2.8.0 对于 2.7.1 的变更还包括 2.8.0-M12.8.0-RC.

mirai-core

不兼容变更

  • 禁止重复发送 FileMessage (#1646, #1657)

优化和修复

  • 收到带引用信息的转发信息报错 (#1641)
  • 在文档主页添加对网络层调试以及接管日志系统的文档的导航 (#1504)

mirai-console

新特性

  • 在使用登录指令 /login 时支持自动从保存的自动登录配置 (AutoLogin.yml) 中读取密码数据 (现在密码参数可选) (mamoe/mirai-console#414)
mirai - 2.8.0-RC

Published by Karlatemp almost 3 years ago

mirai-core

不兼容变更

  • 弃用 RemoteFile (#1255, #1290), 以 RemoteFiles 以及 AbsoluteFileFolder 替代 (#1328, #1589)
  • 弃用 IMirai.calculateGroupUinByCode, 因为该转换结果可能不正确 (#1479)

新特性

  • 重新设计文件操作 API: RemoteFilesAbsoluteFileFolder (#1328, #1589)
  • 支持将 音乐分享(MusicShare) 发送给好友 (#1068, #1364, #1615)
  • toAutoCloseable 由扩展函数移动到 ExternalResource 成员函数 (#1588)
  • ExternalResource 增加 origin 属性表示其来源对象 (#1591)
  • 增加 AudioToSilkService, 支持将 MP3 等格式文件转换为 SILK 文件以便发送 (#1249, #1591)

    转换模块还处于实验性状态,见 https://github.com/project-mirai/mirai-silk-converter

  • 增加 mirai-bom 以优化依赖管理 (#1417 by @AdoptOSS)
  • 新增 IPADMACOS 协议 (BotConfiguration.MiraiProtocol) (#1523 by @lliioollcn)
  • 新增 Image.isEmoji 判断图片是否为表情 (#1476, #1596)
  • 支持群主授予群成员头衔的事件 MemberSpecialTitleChangeEvent (#1173, #1531 by @sandtechnology)
  • 支持修改匿名聊天开关 isAnonymousChatEnabled (#1431, #1522 by @sandtechnology)

优化和修复

  • 修复 FileMessage.toRemoteFile 在一些平台上返回 null 的问题 (以新 API toAbsoluteFile 替代) (#1453)
  • 修复 getRawGroupHonorListData, getRawGroupActiveData (#1425, #1616)
  • 修复联系人缓存过期后更新没有保存到文件的问题 (#1625, #1633 by @mcdoeswhat)
  • 修复接收的消息包含引用回复时只包含一个 At 时 At 也被过滤的问题 (#1211, #1607)
  • 修复发送一些 JPEG 文件出错的问题 (#1610)
  • 修复读取一些 JPEG 文件长宽信息时出错的问题 (#1611 by @sandtechnology)
  • 修复坦白说状态事件 (GroupAllowConfessTalkEvent) (#1622)
  • 修复序列化接收到的 ForwardMessageMessageSource 时报错 (#1532, #1568)
  • 修复 FriendNickChangedEvent 内容异常的问题 (#1356 with @sandtechnology)
  • 修复 BotJoinGroupEvent 触发多次的问题 (#1213)
  • 修复部分图片链接错误的问题 (#1600)
  • 删除多余的初始服务器列表, 修复登录超时的问题 (#1619, #1634 by @mcdoeswhat)
  • 优化合并转发消息长度检测 (#1590)

mirai-console

优化和修复

  • 优化自动登录指令的提示信息 (mamoe/mirai-console#344)
mirai - 2.8.0-M1

Published by Him188 about 3 years ago

注意: 版本号为 2.8.0-M1 而不是 2.8-M1

mirai-core

不兼容变更

  • 调整 MessageSource.time 为服务器时间 (#1519)

新特性

  • 新增 ExternalResource.toAutoClosable 创建在使用一次后就自动 close 的资源 (#1377, #1392)
  • 支持获取漫游消息记录 (#1184, #1520)
  • Image 添加 height, width, size, imageType 属性 (#1032, #1548 by @sandtechnology)
  • 支持群解散消息事件 (BotLeaveEvent.Disband) (#1518, #1525 by @sandtechnology)
  • 新增一些请求事件的构造方式 (RequestEventData) (#1145, #1309)

优化和修复

  • 重写了事件解析逻辑 (#1369) 并修复一系列同步问题:
    • 无法接收单向好友消息 (#610)
    • BotJoinGroupEvent 触发两次 (#1354)
    • 某些群的群临时会话无法接收 (#1410)
    • 解析 NewContact.SystemMsgNewGroup 时遇到了意料之中的问题 (#1467)
    • 这也有可能引入新的问题, 如有遇到请在 issues 反馈
  • 修复当机器人账号设置为允许任何人添加好友时, 新好友没有同步的问题 (#1546, #1549 by @sandtechnology)
  • 修复发送的 GIF 动图能在官方 PC 客户端显示而不能在官方手机客户端显示的问题 (#1204, #1543, #1548 by @sandtechnology)
  • 提升 2.6 及以前版本弃用的 API 的弃用等级 (涉及内容) (#1296)
  • 修复 MessageChainBuilder.clear() 无法完全清空的问题 (#1525)
  • 默认隐藏冗长的事件日志 (#1497)
  • 修复 SimpleListerHost.handleException 没有被调用的问题 (#1490)
  • 修复当处理数据包 (包括相关事件的广播过程) (因用户行为) 发生阻塞时导致网络层停止处理新数据包的问题 (#1500)
  • 修复以 pad 协议登录时, 无法获得来自私聊的音频的下载链接 (#1537, #1551)

mirai-console

  • JRawCommand 添加与 RawCommand.onCommand 类似的默认 onCommand 实现 (mamoe/mirai-console#395)
  • 在读取 PluginData 时处理 UTF8 BOM (mamoe/mirai-console#393 by @cssxsh)
mirai - 2.7.1

Published by Him188 about 3 years ago

mirai-core

  • 修复图片无法显示的问题 (#1536, fixed by @sandtechnology)
  • 修复 Bot is closed manually (#1509)
  • 修复无法下载 mirai-logging-log4j2 等模块的问题 (#1552)
mirai - 2.7.1-dev-1

Published by Karlatemp about 3 years ago

2.7.1-dev-1

mirai-core

  • 尝试修复图片无法显示的问题 (#1536)
  • 尝试修复 Bot is closed manually (#1466, #1509)

如何使用在MCL使用:

Way 1:
下载 (2选1)
https://repo1.maven.org/maven2/net/mamoe/mirai-core-all/2.7.1-dev-1/mirai-core-all-2.7.1-dev-1-all.jar
https://maven.aliyun.com/repository/central/net/mamoe/mirai-core-all/2.7.1-dev-1/mirai-core-all-2.7.1-dev-1-all.jar
并替换掉 libs 文件夹内的 mirai-core-all.jar

Way 2:
更新 mcl 至最新版本, 启动一次 mcl 后编辑 config.jsonnet.mamoe:mirai-core-all,net.mamoe:mirai-console,net.mamoe:mirai-console-terminal 的版本号改为 2.7.1-dev-1

Way 3: 将 mirai 相关组件的更新通道改为 beta

mirai - 2.7.0

Published by Him188 about 3 years ago

mirai-core

2.7.0 相较于 2.7-RC 的变更以斜体表示, 其他为基于 2.6.8 的变更.

不兼容变更

  • 弃用 GroupSettings.entranceAnnouncement, 以新加入的 Announcements 代替 (#1398, #1399)
  • 弃用语音 Voice, 以新增的 Audio 代替. 完全保留兼容性.
  • 现在移除群成员 (NormalMember.kick) 时默认不将目标群员加入黑名单 (#1457)
  • MessageSubscribersBuilderstartsWithendsWith 现在不再 trim 参数. (#1314)
    • 修复无法处理带首尾空格的消息的问题. (#1282)

    即如果参数有空格, 以前的代码会过滤空格, 但现在不会.

新特性

消息

  • 新语音 API Audio (#1452)
    • 支持好友语音, 提供类似于发送图片的多种发送语音的 API (#931, #1310)
    • 新增公共接口 VoiceSupported 接口, 由 GroupFriend 实现
    • 尽可能支持语音的转发, 直接转发协议数据结构
    • 支持语音的序列化 (#1368)
  • 支持最新的原生表情 (Face) (#1260)
  • 新增 Kotlin DSL subscribeUserMessages 监听 UserMessage
  • Image 实现 hashCodeequals, 仅判断 Image.imageId (#1302)
  • MusicShare 支持酷狗音乐和酷我音乐 (#1228)
  • 支持嵌套的合并转发并支持序列化 (#1183, #1267, #1195, #1196)

群操作

  • 新增群公告 API Group.announcements (#138, #140, #1141, #1389)
  • 支持在移除群成员 (NormalMember.kick) 时选择是否加入黑名单 (#1457)
  • 支持群主设置或取消群员的管理员权限 (#547, #1178)

其他

  • 重构网络层 (#1226, #1191)
  • 重新设计默认的登录解决器, 默认启用滑动验证码支持, 内嵌使用手机帮助解决滑块验证码的支持 (#1283, #1285)
  • 允许使用第三方日志库如 SLF4J, Log4J 接管 mirai 日志系统 (#1426, #1464)
  • 在 mirai-core 所有模块的 JAR META-INF/MANIFEST.MF 里存储版本信息 (#1351, #1355)
  • 在 GC 时释放泄露的资源 (#1383)
  • 添加内联的 BotFactory.newBot (#1233, #1234)

优化和修复

  • 更新到 Kotlin 1.5, 更新相关依赖 (#1245, #1246, mamoe/mirai-console#346)

    • 使 MessageChain 变为 sealed interface
    • 使 MessageEvent 变为 sealed interface
      依赖模块 原版本号 新版本号
      kotlin-compiler 1.4.30 1.5.10
      kotlin-stdlib 1.4.30 1.5.10
      kotlinx-coroutines-core 1.4.2 1.5.0
      atomicfu 0.15.1 0.16.1
      ktor 1.5.1 1.5.4
      kotlinx-serialization-core 1.1.0 1.2.1
  • 增加 @NotStableForInheritance 标注不应该被继承的接口 (#1385)

  • 删除意外添加的 kotlinx.serialization 编译器依赖 (#1197)

  • 文档更新 (#1291, #1248, ...)

网络层

  • 修复在接收到 ReqMSFOffline 时没有重连的问题
  • 修复某些情况下重连时遇到解析数据包错误的问题 (ExceptionInPacketCodecException) (#1405, #1408)
  • 修复被挤下线后反复重连失败的问题 (#1203)
  • 修复某些情况下无法识别群管理员权限的问题 (#1192)
  • 修复开启联系人缓存后无法接收好友消息的问题 (#1208)
  • 在同步好友消息记录 (序号) 失败时也继续登录 (#1222, #1253)
  • 修复 Bot 被挤下线后必须删除 account.secrets 才能登录的问题 (#1205)
  • 处理状态心跳的返回值, 解决可能的无法接收消息问题 (#1241)
  • 使用新版本登录加密算法 (#1237)
  • 绕过在 Android P 之后的版本无法使用 EC 的限制 (#1481)
  • 修复其他客户端消息同步事件的日志 (#1380)
  • 优化在遇到设备锁验证时的提示消息
  • 优化重连时的日志, 每种异常只打印一次
  • 解决潜在的内存泄露问题
  • 提升重连稳定性
  • 更好地支持单线程调度下的网络任务

Contact

Message

  • 去除合并转发消息卡片的多余的空格 (#1275)
  • 提升 MessageChain.get, MessageChain.contains 的性能
  • 修复协议内部消息类型被暴露给 MessageReceipt.source.originalMessage 的问题 (#1371)
  • Face.toString() 现在返回类似 [可怜], 而不是 [mirai:face:123] (#1382)
  • 修复转发消息 At 昵称错误的问题 (#1137)

Event

  • 修复 EventChannel.filter Java 版在执行阻塞调用时会阻塞协程调度的问题
  • 确保 BotOnlineEvent, BotOfflineEvent 以及 BotReloginEvent 广播的时机及顺序
  • 修复 EventChannelKotlinExtensions 的引用歧义
  • 修复 BotOnlineEvent 有可能在登录成功后好一会才会推送的问题 (#1051)
  • 修复群员首次在群内发言时会触发 MemberCardChangeEvent 的问题 (#1151, #1231)
  • 修复 MessageSubscribersBuilder.has 报错 ClassCastException 的问题 (#1223)

mirai-console

优化和修复

  • 在加载插件时打印其版本号 (mamoe/mirai-console#369)
  • 在阻塞环境中执行非 suspend 的指令方法 (mamoe/mirai-console#341)
  • Console 内置配置使用只读的 ReadOnlyPluginConfig (mamoe/mirai-console#375)
  • 更新依赖
    依赖模块 原版本号 新版本号
    yamlkt 0.9.0 0.10.0

mirai-console-gradle

新特性

  • 简化 JSimpleCommand 的构造器 (mamoe/mirai-console#349)

  • 允许用户覆盖 Kotlin 版本号 (而非与 mirai-console 编译时的版本号相同) (mamoe/mirai-console#367)

    因此可以使用较旧的版本, 但若使用更新版本可能会导致不兼容.

  • 在生成插件项目时:

    • 添加 test/kotlin/RunTerminal.kt 以帮助测试 (mamoe/mirai-console#362, mamoe/mirai-console#366)
    • 添加 .gitignore

不兼容变更

  • 删除默认添加的 mavenCentral 仓库 (mamoe/mirai-console#389)

    使用者可能需要额外添加如下内容:

    dependencies {
      mavenCentral()
    }
    

优化和修复

  • LoginCommand 登录完成后将结果同时发送给指令执行人和控制台 (mamoe/mirai-console#348)
  • 支持 Gradle 7.0 (mamoe/mirai-console#368)
  • 删除对 Bintray JCenter 的引用 (#387)

感谢外部贡献者:

  • @sandtechnology
  • @HoshinoTented
  • @AdoptOss
  • @wdvxdr1123
  • @493505110
  • @cssxsh
mirai - 2.6.8

Published by Him188 about 3 years ago

从 2.7-M1, 2.7-M2, 2.7-RC 提取了一些修复:

  • 修复当 QuoteReply 处于 MessageChain 队尾时, 手机端查看会有吞字符的问题 (#1451)
  • 修复当合并转发消息内容前 4 条存在 & 时手机端会无法查看的问题
  • 修复无法撤回好友消息的问题 (#1293)
  • 修复群临时私聊消息无触发的问题 (#1094, #1232)
mirai - 2.7-RC

Published by Him188 about 3 years ago

mirai-core

不兼容变更

  • 弃用 GroupSettings.entranceAnnouncement, 以 2.7-M2 加入的 Announcements 代替 (#1398, #1399)
  • 弃用语音 Voice, 以新增的 Audio 代替. 完全保留兼容性.
  • 现在移除群成员 (NormalMember.kick) 时默认不将目标群员加入黑名单 (#1457)

新特性

  • 新语音 API Audio, 支持好友和群语音并提供兼容性保障 (#1452)
  • 支持在移除群成员 (NormalMember.kick) 时选择是否加入黑名单 (#1457)
  • 新增 Kotlin DSL subscribeUserMessages 监听 UserMessage
  • 允许使用第三方日志库如 SLF4J, Log4J 接管 mirai 日志系统 (#1426, #1464)

优化和修复

网络层

  • 修复在 Android 平台登录时发生 OutOfMemoryError 的问题 (#1404)
  • 修复在 Android 平台断线一分钟后仍未重连的问题 (#1361)
  • 修复可能会无限重连的问题 (配置中重连尝试次数被忽略)
  • 修复在接收到 ReqMSFOffline 时没有重连的问题
  • 修复某些情况下网络层报错 CancellationException 的问题
  • 修复某些情况下重连时遇到解析数据包错误的问题 (ExceptionInPacketCodecException) (#1405, #1408)
  • 修复某些情况下无法识别群管理员权限的问题 (#1192)
  • 修复其他客户端消息同步事件的日志 (#1380)
  • 优化在遇到设备锁验证时的提示消息

群公告

  • 修复无法发送启用了 "发送给新成员" 的群公告的问题
  • 修复读取群公告时未解码某些 HTML 转义的问题

Message

  • 修复当 QuoteReply 处于 MessageChain 队尾时, 手机端查看会有吞字符的问题 (#1451)
  • 修复当合并转发消息内容前 4 条存在 & 时手机端会无法查看的问题

mirai-console

优化和修复

  • 在加载插件时打印其版本号 (mamoe/mirai-console#369)
  • 在阻塞环境中执行非 suspend 的指令方法 (mamoe/mirai-console#341)

mirai-console-gradle

新特性

  • 允许用户覆盖 Kotlin 版本号 (而非与 mirai-console 编译时的版本号相同) (mamoe/mirai-console#367)

    因此可以使用较旧的版本, 但若使用更新版本可能会导致不兼容.

不兼容变更

  • 删除默认添加的 mavenCentral 仓库 (#389)

    使用者可能需要额外添加如下内容:

    dependencies {
      mavenCentral()
    }
    

优化和修复

  • 删除对 Bintray JCenter 的引用 (#387)
mirai - 2.7-M2

Published by Him188 over 3 years ago

mirai-core

新特性

  • 新增群公告 API Group.announcements (#138, #140, #1141, #1389)
  • 支持好友语音, 提供类似于发送图片的多种发送语音的 API (#931, #1310)
    • 新增 Contact 的类似 FileSupported 的公共 VoiceSupported 接口, 由 GroupFriend 实现
    • 新增 ExternalResource, InputStream, File 等资源类型发送为语音的 API (ExternalResource 静态方法)
    • 尽可能支持语音的转发, 直接转发协议数据结构
  • 支持语音的序列化 (#1368)
  • 在 mirai-core 所有模块的 JAR META-INF/MANIFEST.MF 里存储版本信息 (#1351, #1355)
  • 支持最新的原生表情 (Face) (#1260 by @sandtechnology)
  • Image 实现 hashCodeequals, 仅判断 Image.imageId (#1302)
  • 在 GC 时释放泄露的资源 (#1383)
  • 默认启用滑动验证码支持

优化和修复

  • 更新依赖
    依赖模块 原版本号 新版本号
    kotlinx-serialization-core 1.1.0 1.2.1
  • 增加 @NotStableForInheritance 标注不应该被继承的接口 (#1385)

Bot

  • 在收到密码错误等失败返回后中断 Bot.login, 并记录到 bot.logger, 解决无限验证码的问题 (2.7-M1 regression). (#1352)
  • 使用新版本登录加密算法 (#1237 by @sandtechnology)
  • 处理状态心跳的返回值, 解决可能的无法接收消息问题 (#1241 by @sandtechnology)
  • 修复滑动验证码 UI 的链接
  • 优化网络层错误时的日志
  • 更好地支持单线程调度下的网络任务
  • 提升重连稳定性

Contact

  • 修复无法检测部分群的群管理员的问题 (#1192, #1257 by @sandtechnology)
  • 修复无法获取群公告的问题 (IMirai.getRawGroupAnnouncements) (#1322, #1372 by @sandtechnology)

Message

  • 去除合并转发消息卡片的多余的空格 (#1275 by @493505110)
  • 提升 MessageChain.get, MessageChain.contains 的性能
  • 修复协议内部消息类型被暴露给 MessageReceipt.source.originalMessage 的问题 (#1371)
  • 修复无法撤回好友消息的问题 (#1293)
  • Face.toString() 现在返回类似 [可怜], 而不是 [mirai:face:123] (#1382)

Event

  • 修复 EventChannel.filter Java 版在执行阻塞调用时会阻塞协程调度的问题
  • 确保 BotOnlineEvent, BotOfflineEvent 以及 BotReloginEvent 广播的时机及顺序

mirai-console

优化和修复

  • Console 内置配置使用只读的 ReadOnlyPluginConfig (mamoe/mirai-console#375 by @cssxsh)
  • 更新依赖
    依赖模块 原版本号 新版本号
    yamlkt 0.9.0 0.10.0
mirai - 2.7-M1

Published by Him188 over 3 years ago

mirai-core

不兼容变更

  • 重构网络层 (#1226, #1191)
    即使这可能还未稳定, 但也建议尝试 2.7-M1 并及时反馈问题
    • 模块化内部结构, 使未来开发更容易
    • 优化重连时的日志, 每种异常只打印一次
    • 解决潜在的内存泄露问题
    • 修复被挤下线后反复重连失败的问题 (#1203)
    • 修复开启联系人缓存后无法接收好友消息的问题 (#1208)
  • MessageSubscribersBuilderstartsWithendsWith 现在不再 trim 参数. (#1314 by @AdoptOSS)
    • 修复无法处理带首尾空格的消息的问题. (#1282)

    即如果参数有空格, 以前的代码会过滤空格, 但现在不会.

新特性

  • 支持群主设置或取消群员的管理员权限 (#547, #1178 by @HoshinoTented)
  • 支持嵌套的合并转发并支持序列化 (#1183, #1267, #1195, #1196)
  • MusicShare 支持酷狗音乐和酷我音乐 (#1228 by @wdvxdr1123)
  • 添加内联的 BotFactory.newBot (#1234)
  • 重新设计默认的登录解决器, 内嵌使用手机帮助解决滑块验证码的支持 (#1283, #1285)

优化和修复

  • 更新到 Kotlin 1.5, 更新相关依赖 (#1245, #1246, mamoe/mirai-console#346)
    • 使 MessageChain 变为 sealed interface
    • 依赖模块 原版本号 新版本号
      kotlin-compiler 1.4.30 1.5.10
      kotlin-stdlib 1.4.30 1.5.10
      kotlinx-coroutines-core 1.4.2 1.5.0
      atomicfu 0.15.1 0.16.1
      ktor 1.5.1 1.5.4
  • 修复 Bot 被挤下线后必须删除 account.secrets 才能登录的问题 (#1205)
  • 修复群临时私聊消息无触发的问题 (#1094, #1232 by @sandtechnology)
  • 修复转发消息 At 昵称错误的问题 (#1137)
  • 修复 MessageSubscribersBuilder.has 报错 ClassCastException 的问题 (#1223)
  • 修复 EventChannelKotlinExtensions 的引用歧义
  • 修复 BotFactory.newBot 无法调用 BotConfiguration.inheritCoroutineContext 的问题 (#1233, #1234)
  • 修复群员首次在群内发言时会触发 MemberCardChangeEvent 的问题 (#1151, #1231 by @sandtechnology)
  • 修复 BotOnlineEvent 有可能在登录成功后好一会才会推送的问题 (#1051)
  • 删除意外添加的 kotlinx.serialization 编译器依赖 (#1197 by @AdoptOSS)
  • 在同步好友消息记录 (序号) 失败时也继续登录 (#1222, #1253)
  • 文档更新 (#1291, #1248, ...)

mirai-console

新特性

  • 简化 JSimpleCommand 的构造器 (mamoe/mirai-console#349)

优化和修复

  • LoginCommand 登录完成后将结果同时发送给指令执行人和控制台 (mamoe/mirai-console#348)
  • 支持 Gradle 7.0 (mamoe/mirai-console#368)

IDE

新特性

  • 在生成插件项目时:
    • 添加 test/kotlin/RunTerminal.kt 以帮助测试 (mamoe/mirai-console#362, mamoe/mirai-console#366)
    • 添加 .gitignore

优化和修复

  • 兼容 Kotlin 1.5.0 (mamoe/mirai-console#363)

已知问题及解决方案

登录异常

问题表现

  • 登录时一直要求输入验证码 #1359
  • 登录没有反馈结果
  • 登录时一直刷 "AccountSecretsManager" 的日志

原因及解决方案

#1352, 已经在 2.7-M2-dev-1 修复. mirai-core 用户可以更换依赖为 2.7-M2-dev-1 . mirai-console 用户可以在登录无响应时在 "bots" 目录中找到日志文件获得错误信息

mirai - 2.6.7

Published by Karlatemp over 3 years ago

mirai-core

  • 修复好友图片在特定情况上传非常缓慢的问题 (#1334, #1335 by @sandtechnology )
mirai - 2.6.6

Published by Him188 over 3 years ago

mirai-core

  • 修复上传好友图片时出现内部错误的问题 (#1317)
mirai - 2.6.5

Published by Him188 over 3 years ago

mirai-core

  • 在初始化同步好友消息记录超时时也继续登录 (#1222)
  • 删除不稳定 API 的使用, 提升稳定性, 兼容 Kotlin 1.5, ktor 以及协程的未来的更高版本 (#1254, #1247, #1165)
mirai - 2.6.4

Published by Him188 over 3 years ago

mirai-core

  • 修复同一个 QQ 在本地和服务器来回切换提示下线通知时必须删除缓存才能重新登录的问题 (#1205)
  • 处理可能遗漏的情况, 提升连接稳定性 (#1242, #1214 by @sandtechnology)
  • 修复解析来自 iPhone 设备的纯文本长消息时会在开头加入 UnsupportedMessage 类型元素的问题 (#1210)
mirai - 2.6.3

Published by Him188 over 3 years ago

mirai-core

  • 修复部分情况下群消息时显示发送成功,但实际上并没有正常显示的问题 (#1209, #1230, #1214 by @sandtechnology)
  • 修复 BotConfiguration.copy() 没有复制 statHeartbeatPeriodMillis 的问题
  • 新增心跳策略, 可作为无法发送消息时的临时解决方案 (#1229)