v2.0.0-beta.4~v2.0.0a10
v2.0.0-beta.4
🚀 新功能
- Feature: 添加插件元信息定义 @yanyongyu (#1046)
- Feature: 日志记录自动检测终端是否支持彩色 @BlueGlassBlock (#1034)
- Feature: 优化插件加载内部逻辑 @yanyongyu (#1011)
🐛 Bug 修复
- Fix: 修复 MessageSegment 在有额外数据时报错 @yanyongyu (#1055)
- Fix: 修复环境变量无法覆盖 dotenv 内配置项值 @yanyongyu (#1052)
- Fix: 修复依赖注入 bot event 参数 union 校验失败 @yanyongyu (#1001)
📝 文档
- Docs:添加文档排版规范 @j1g5awi (#1005)
- Docs: 更新 require 样例 @yanyongyu (#996)
- Docs: 更新 README 中的 QQ 频道图标 @mnixry (#997)
- Docs: 调整跨插件访问文档 @AkiraXie (#993)
🍻 插件发布
- Plugin: 历史上的今天 @yanyongyu (#1049)
- Plugin: smart_reply @yanyongyu (#1054)
- Plugin: nonebot_plugin_setu4 @yanyongyu (#1051)
- Plugin: 命令重启机器人 @yanyongyu (#1038)
- Plugin: 青年大学习自动提交 @yanyongyu (#1036)
- Plugin: 疫情小助手 @yanyongyu (#1033)
- Plugin: 谁艾特我了 @yanyongyu (#1031)
- Plugin: Hikari-战舰世界水表查询 @yanyongyu (#1025)
- Plugin: Warframe 时间查询 @yanyongyu (#1023)
- Plugin: imagetools @yanyongyu (#1021)
- Plugin: 明日方舟工具箱 @yanyongyu (#1019)
- Plugin: B 站视频伪分享卡片 @yanyongyu (#1014)
- Plugin: TETRIS Stats @yanyongyu (#1009)
- Plugin: 签到插件 @yanyongyu (#1007)
- Plugin: 数据库连接插件 @yanyongyu (#995)
- Plugin: 百度翻译 @yanyongyu (#992)
- Plugin: MockingBird 语音 @yanyongyu (#989)
🍻 机器人发布
- Bot: nya_bot @yanyongyu (#1045)
- Bot: LiteyukiBot-轻雪机器人 @yanyongyu (#1003)
🍻 适配器发布
- Adapter: OneBot V12 @yanyongyu (#1027)
v2.0.0-beta.3
💥 破坏性变更
- Fix: 添加 export 方法 Deprecation 警告 @yanyongyu (#983)
- Feature: 支持 WebSocket 连接同时获取 str 或 bytes @yanyongyu (#962)
🚀 新功能
- Feature: 支持 WebSocket 连接同时获取 str 或 bytes @yanyongyu (#962)
- Feature: 添加
CommandStart
依赖注入参数 @MeetWq (#915) - Feature: 添加 Rule, Permission 反向位运算支持 @yanyongyu (#872)
- Feature: 新增文本完整匹配规则 @A-kirami (#797)
🐛 Bug 修复
- Fix: 修复依赖注入默认值参数在
__eq__
被重写时报错的问题 @yanyongyu (#971) - Fix: 修复
MessageTemplate
在没有格式化说明符时行为不正确的问题 @mnixry (#947) - Fix: Bot Hook 没有捕获跳过异常 @yanyongyu (#905)
- Fix: 修复部分事件响应器参数类型中冗余的 Optional @A-kirami (#904)
- Fix: 修复 event 类型检查会对类型进行自动转换 @yanyongyu (#876)
- Fix: 修复
on_fullmatch
返回类型错误 @yanyongyu (#815) - Fix: 修复 DataclassEncoder 嵌套 encode 的问题 @AkiraXie (#812)
📝 文档
- Docs: 修复定时任务一节中的部分拼写错误 @Nova-Noir (#982)
- Fix: 商店搜索失效 @yanyongyu (#978)
- Docs: 添加 QQ 频道链接 @StarHeartHunt (#961)
- Docs: 添加 nonebug 单元测试文档 @MingxuanGame (#929)
- Docs: 添加 pm2 部署文档 @evlic (#853)
- Docs: 更新 GitHub Action 部署文档 @kexue-z (#937)
- Docs: 添加自定义匹配规则文档 @yanyongyu (#914)
- Docs: 修复适配器文档内商店链接 @yanyongyu (#861)
- Docs: tips for finding adapters' document link @StarHeartHunt (#860)
- Docs: 添加对
fastapi_reload
在 Windows 平台额外影响的说明 @CherryGS (#830) - Docs: 修复 ci/cd action 中错误的版本号 @Bubbleioa (#819)
- Docs: 减小更新日志 toc 最大显示等级 @yanyongyu (#813)
- Docs: 修改议题模板中的错误链接 @he0119 (#807)
- Docs: 修改消息模板文档中错误的样例 @mnixry (#806)
- Docs: 更新贡献指南 @yanyongyu (#798)
💫 杂项
- Plugin: nonebot-plugin-chess 改名为 nonebot-plugin-boardgame @MeetWq (#953)
- Plugin: 网易云无损音乐下载更改 @kitUIN (#924)
- Docs: 移除商店中的过期插件 @j1g5awi (#902)
- CI: 修复发布机器人的意外错误 @he0119 (#892)
- Docs: 替换和移除部分已经失效的插件 @MeetWq (#879)
- Docs: 添加 netlify 标签 @yanyongyu (#816)
- Fix: 修改错误的插件 PyPI 项目名称 @Lancercmd (#804)
- CI: 添加更新日志自动更新 action @yanyongyu (#799)
🍻 插件发布
- Plugin: imageutils @yanyongyu (#985)
- Plugin: 摸鱼日历 @yanyongyu (#980)
- Plugin: 走迷宫 @yanyongyu (#977)
- Plugin: 语录娱乐 @yanyongyu (#973)
- Plugin: 国内新冠疫情数据查询 @yanyongyu (#975)
- Plugin: nonebot_plugin_eventdone @yanyongyu (#966)
- Plugin: 幻影坦克图片合成 @yanyongyu (#968)
- Plugin: 合成字符画(GIF) @yanyongyu (#964)
- Plugin: 国际象棋 @yanyongyu (#957)
- Plugin: NoneBot2 文档搜索 @yanyongyu (#952)
- Plugin: 中国象棋 @yanyongyu (#949)
- Plugin: B 站视频封面提取 @yanyongyu (#946)
- Plugin: 一言 @yanyongyu (#944)
- Plugin: 答案之书 @yanyongyu (#942)
- Plugin: 支付宝到账语音 @yanyongyu (#940)
- Plugin: nonebot-plugin-dida @yanyongyu (#934)
- Plugin: 随机唐可可 @yanyongyu (#931)
- Plugin: splatoon2 新闻 @yanyongyu (#917)
- Plugin: nonebot_plugin_draw @yanyongyu (#910)
- Plugin: 扫雷游戏 @yanyongyu (#907)
- Plugin: 汉兜 Handle @yanyongyu (#899)
- Plugin: 多适配器帮助函数 @yanyongyu (#897)
- Plugin: 语句抽象化 @yanyongyu (#894)
- Plugin: 快速搜索 @yanyongyu (#889)
- Plugin: wordle 猜单词 @yanyongyu (#891)
- Plugin: MediaWiki 查询 @yanyongyu (#886)
- Plugin: HikariSearch @yanyongyu (#884)
- Plugin: 第二个 leetcode 查询插件 @yanyongyu (#882)
- Plugin: 成分姬 @yanyongyu (#878)
- Plugin: Arcaea 查分插件 @yanyongyu (#875)
- Plugin: QQ 自动同意好友申请 @yanyongyu (#871)
- Plugin: 21 点游戏插件 @yanyongyu (#865)
- Plugin: 色图生成 @yanyongyu (#863)
- Plugin: bilibili 通知插件 @yanyongyu (#859)
- Plugin: 订阅推送管理 @yanyongyu (#855)
- Plugin: 动漫新闻 @yanyongyu (#852)
- Plugin: 游戏王卡查 @yanyongyu (#846)
- Plugin: 二维码识别与发送 @yanyongyu (#843)
- Plugin: mockingbird @yanyongyu (#841)
- Plugin: QQ 自动续火花 @yanyongyu (#839)
- Plugin: 每日一句 @yanyongyu (#832)
- Plugin: 原神抽卡记录分析 @yanyongyu (#829)
- Plugin: YetAnotherPicSearch @yanyongyu (#825)
- Plugin: 60s 读世界小插件 @yanyongyu (#810)
- Plugin: pixiv.net p 站查询图片 @yanyongyu (#803)
🍻 机器人发布
- Bot: 屑岛风 Bot @yanyongyu (#987)
- Bot: ShigureBot @yanyongyu (#959)
- Bot: Inkar Suki @yanyongyu (#955)
v2.0.0-beta.2
- 修复
receive
,got
在参数为空消息时依旧会反复询问 - 修复文档商店分页显示错误
- 修复插件导入失败时,依然存在于已导入插件列表中
- 移除
state
依赖注入所需的默认值State()
- 增加
fastapi
配置项:是否将适配器路由包含在 schema 中 - 修改
load_builtin_plugins
函数,使其能够支持加载多个内置插件 - 新增
load_builtin_plugin
函数,用于加载单个内置插件 - 修改
Message
和MessageSegment
类,完善 typing,转移 Mapping 构建支持至 pydantic validate - 调整项目结构,分离内部定义与用户接口
- 新增 Bot 连接事件钩子 (如
driver.on_bot_connect
) 的依赖注入
v2.0.0-beta.1
- 新增
MessageTemplate
对于str
普通模板的支持 - 移除插件加载的
NameSpace
模式 - 修改 toml 加载插件时的键名为
tool.nonebot
以符合规范 - 新增 Handler 依赖注入支持,同步/异步支持
- 统一
Processor
,Rule
,Permission
,Processor
使用Handler
- 修改内置
Rule
,Permission
如startswith
,command
等使用 class 实现 - 更换文档框架 (docusaurus) 以及主题 (docusaurus-theme-nonepress)
- 移除 Matcher
state_factory
支持
v2.0.0a16
- 新增
MessageTemplate
可用于Message
的模板生成 - 新增
matcher.got
matcher.send
matcher.pause
matcher.reject
matcher.finish
支持MessageTemplate
- 移除
matcher.got
原本的state format
支持,由MessageTemplate
template 替代 adapter
基类拆分为单独文件- 修复
fastapi
Driver Websocket 未能正确提供请求头部 - 新增
fastapi
Driver 更多的 uvicorn 相关配置项 - 新增
quart
Driver 更多的 uvicorn 相关配置项 - 修复
endswith
Rule 错误的正则匹配 - 修复
cqhttp
Adapterimage
,record
,video
对BytesIO
不正常的读取操作
v2.0.0a15
- 修复
fastapi
Driver 未能正确进行 reconnect - 修复
MessageSegment
错误的 Mapping 映射
v2.0.0a14
- 修改日志等级,支持输出等级自定义
- 修复日志输出模块名错误
- 修改
Matcher
属性module
类型 - 新增
Matcher
属性plugin_name
module_name
module_prefix
- 移除
bot.call_api
参数self_id
切换机器人支持 - 修复
type_updater
permission_updater
未传递的错误 - 修复
type_updater
permission_updater
参数state
错误 - 修复使用
state_factory
后导致无法在 session 内传递state
- 重构
Driver
及连接信息抽象 - 新增正向 Driver(Client) 支持
- 新增
aiohttp
正向 Driver fastapi
Driver 新增正向支持
v2.0.0a13.post1
- 分离
handler
与matcher
- 修复
cqhttp
secret 校验出错 - 修复
pydantic 1.8
导致的alias
问题 - 修改
cqhttp
ding
session id
,不再允许跨群 - 修改
shell_command
存储 message - 修复
cqhttp
检查 reply 失败退出 - 新增
call_api
hook 接口 - 优化
import hook
v2.0.0a11
- 修改
nonebot
项目结构,分离所有adapter
- 修改插件加载逻辑,使用
import hook
(PEP 302) - 新增插件加载方式:
json
,toml
- 适配
pydantic
~1.8 - 移除 4 种内置事件类型限制,允许自定义事件类型
- 新增会话权限更新自定义,会话中断时更新权限以做到多人会话
v2.0.0a10
- 新增
Quart Driver
支持 - 修复
mirai
协议适配命令处理以及消息转义