Releases: Meloland/melobot
Releases · Meloland/melobot
v2.2.0
⚠️ 特别:
- 从 melobot v2.2.0 开始,版本支持为 python >= 3.10。
✨ 新增
- 新增 api:
notice_event()
,req_event()
,meta_event()
,msg_event()
。用于获取不同情景下的事件。 - event 和 action 现提供
mark()
和flag_check()
方法,用于添加标记、进行标记检查。 - MessageEvent 现支持
get_cq_params()
和get_cq()
方法,用于从 event 中提取 cq 消息段和 cq 消息参数。 - 各类文本匹配器(matcher)现支持字符串列表(list[str])入参,同时对于 list[str] 型参数,可启用指定逻辑模式进行工作(and, or, not, xor)。
⏩变更
- 获取事件接口 event() 现已细化为四个接口:
notice_event()
,req_event()
,meta_event()
,msg_event()
。实质上都是返回当前 session 下的 event,但新的 api 对 IDE 类型提示功能更友好。 - 获取 cq 参数方法
get_cq()
现已改为cq_get_params()
。 - PriorityLevel 类更名为 PriorLevel。
- MsgEvent 类更名为 MessageEvent。
- bot 生命周期阶段
BotLife.EVENT_RECEIVED
更名为BotLife.EVENT_BUILT
。 - 修改了 session.args 的返回类型,现在的返回类型为 Dict[str, ParseArgs] | List[Any] | None。若为 Dict[str, ParseArgs] 类型,可使用支持该类型的内置格式化器 ArgFormatter 进行格式化。
👍修复
- 修复了在 session 下发送 action 时尝试附加不存在的 event 的错误。
- 修复了 MessageEvent 在格式化化 cq 参数时,将 int 类型进一步转换为 float 类型的错误。
- 修复了加载插件时,因加载顺序导致的 PluginStore 共享对象重复创建的错误。
- 重写了部分不具体、不清晰、拥有潜在运行隐患的类型标注。
- 修改了部分设计逻辑不合理的内部组件。