Skip to content

Releases: ArcletProject/Entari

Entari 0.12.1

29 Jan 07:06
Compare
Choose a tag to compare
  • 修复 AlconnaDispatcher.assign
  • 增加一个 basic 配置 skip_req_missing, 设置为 True 后可让订阅器在依赖不满足时跳过执行
    Full Changelog: v0.12.0...v0.12.1

Entari 0.12.0

28 Jan 06:48
Compare
Choose a tag to compare

What's Changed

  • entari new 命令增加选项 --plugins 来增加加载的插件
  • 更新 Letoderea 到 0.15.0 by @RF-Tar-Railt in #10
    • 不再提供 @Filter().xxx.yyy() 形式的过滤器,可以使用 @propagate(filter_.xxx(), filter_.yyy()) 形式替代
    • 依据 propagate 机制,响应器可以自行实现过滤器,会话控制等功能
  • 增加事件 command/output, command/before_parsecommand/after_parse
    • 任一命令的解析流程都会执行这些事件。插件可以通过监听并返回值来控制解析流程。
    • 例如:监听 command/after_parse 并返回 bool 可控制命令是否执行。
  • yaml 格式的配置文件支持插值语法来使用环境变量: foo: ${{ env.XXX }}
  • 增加选择依赖 dotenv
  • ⬆️ Bump dependabot/fetch-metadata from 2.2.0 to 2.3.0 by @dependabot in #11

Full Changelog: v0.11.2...v0.12.0

Entari 0.11.2

25 Jan 08:51
Compare
Choose a tag to compare
  • echo 插件增加转义/反转义选项
  • 增加插件加载/卸载的事件
  • commands 会记录插件中声明了哪些指令
  • 增加基础配置 cmd_count, 默认为 4096

Full Changelog: v0.11.1...v0.11.2

Entari 0.11.1

30 Dec 07:46
Compare
Choose a tag to compare
  • 修复 unload_plugin

Full Changelog: v0.11.0...v0.11.1

Entari 0.11.0

30 Dec 07:08
Compare
Choose a tag to compare

新增

  • 插件配置现支持传入配置模型类
    • 可以通过 config_validator_register 来注册某一配置基类的处理方法 (例如, 注册 pydantic.BaseModel 的处理方法为 type_validate)
    • plugin_config 可以传入插件定义的配置类使其解析传入的配置数据
    • 内置使用 dataclass 作为配置基类的 BasicConfModel
from arclet.entari import BasicConfModel, plugin_config

class Config(BasicConfModel):
    foo: str
    bar: int = 0

conf = plugin_config(Config)
  • 配置文件的路径可以通过 ENTARI_CONFIG_FILE 环境变量来设置
  • plugin.collectcollect_disposes 方法,用于注册插件卸载时的回调函数
  • 插件配置项 $files, 用于指定部分插件的配置文件路径或目录路径 (例如,在 ./plugins 下存放各插件的独立配置文件, 即可配置 $files: ["./plugins"])

改进

  • 使用 nonestorage 作为 local_data 的依赖
  • 升级至 Letoderea 0.14
  • 插件内使用 es.on 注册的响应器现在也会由插件管理 (除非插件标记自己为 static)
  • startup, readycleanup 事件不再于插件重载时发送

修复

  • 插件子目录下的插件作为独立插件加载时的错误

Full Changelog: v0.10.5...v0.11.0

Entari 0.10.5

17 Dec 10:42
Compare
Choose a tag to compare

Entari 0.10.4

17 Dec 10:02
Compare
Choose a tag to compare
  • self log展示的消息会把图片等元素的信息抹去
  • 修复 assign 的优先级

Full Changelog: v0.10.3...v0.10.4

Entari 0.10.3

17 Dec 07:55
Compare
Choose a tag to compare
  • 再次修复模块导入问题

Full Changelog: v0.10.2...v0.10.3

Entari 0.10.2

17 Dec 06:59
Compare
Choose a tag to compare
  • 修复依赖

Full Changelog: v0.10.1...v0.10.2

Entari 0.10.1

16 Dec 06:21
Compare
Choose a tag to compare
  • 修复 localdata 导入问题

Full Changelog: v0.10.0...v0.10.1