Koishi 4.17.9
Notable Changes
- 实验性地支持了上下文追踪机制,允许服务直接使用
this.ctx
访问来源上下文;同时调整了inject
检测机制,服务中访问其他服务应遵循服务自身的上下文而非请求者上下文;新增了ctx.reflect
内置服务;支持了服务混入中使用 getter / setter (cordiverse/cordis@0a0da4b, cordiverse/cordis@c9be0aa, cordiverse/cordis@90257b2, cordiverse/cordis@e06b3f3, cordiverse/cordis@1eba29f, cordiverse/cordis@cb0d85d, cordiverse/cordis@9909463, cordiverse/cordis@f904dc4, cordiverse/cordis@0956cb2, cordiverse/cordis@49f0cf8, cordiverse/cordis@d373e08, satorijs/satori@b61c1e0, f57e86d, cordiverse/webui@1ff66d1, cordiverse/minato@bb8e2e9, cordiverse/cordis@b005e94, koishijs/webui@53b7dea)
Features
- cordis: 支持了更通用的
Inject
字典结构 (cordiverse/cordis@acffbd3) - discord: 支持了更多的 Koishi 指令参数类型 (satorijs/satori#280) (satorijs/satori@58a0064)
- discord: 支持了
<code-block>
元素 (satorijs/satori#279) (satorijs/satori@f63c7d1) - koishi: 支持了 bigint 参数类型 (#1410) (5f1610e)
- logger: 支持了
logger.meta
,并允许扩展类型 (shigma/reggol@b32dfdd, cordiverse/cordis@ebaeded) - minato: 修复了关系 API 设计和实现的一些问题 (cordiverse/minato#99) (cordiverse/minato#101) (cordiverse/minato@308229e, cordiverse/minato@60e474f)
- qq: 为
interaction/button
事件增加了data
字段 (satorijs/satori#281) (satorijs/satori@e5a70df)
Bug Fixes
- cordis: 修复了部分内部事件缺少
this
参数的问题 (cordiverse/cordis@a2ea5b1) - discord: 支持了子指令的斜杠交互 (satorijs/satori#271) (satorijs/satori@6802853)
- explorer: 临时停用了 watcher 以修复
EMFILE
报错 (koishijs/webui#328) (koishijs/webui@232567c) - http: 修复了
data:
URL 的正则匹配 (cordiverse/http@f6138b5) - mongo: 修复了事务执行错误 (cordiverse/minato#100) (cordiverse/minato@08540c0)
- protocol: 修复了
channel.type
实现与标准不符的问题 (satorijs/satori@58cb423) - qq: 修复了
data:
URL 的正则匹配 (satorijs/satori@bbe05fe)
Next Updates
以下变更属于开发中的 Cordis 生态,并不会影响 Koishi 的行为,但会在未来版本为 Koishi 提供更多功能。
- client: 支持了响应式的
ctx[service]
(cordiverse/webui@01c939a, cordiverse/webui@258d854) - database: 基于关系 API 实现了群组、频道等结构的缓存逻辑 (satorijs/webui@7fada5b, satorijs/webui@163cf5b)
- logger: 初步实现了 Logger 插件 (cordiverse/webui@2e21623)
- logger: 支持了触顶无限滚动 (不固定位置) (cordiverse/webui@3dbe46a)
- logger: 支持了关键词搜索 (cordiverse/webui@561026f)
- manager: 新增了「服务管理」子页面,支持了手动配置服务注入与服务隔离 (cordiverse/webui@ac2b8c6, cordiverse/webui@e2e970b)
- manager: 为每个支持了
intercept
的服务提供了子页面 (cordiverse/webui@107374f) - manager: 调整了子路由的顺序,支持了
usage
国际化 (cordiverse/webui@db96a8c) - status: 修复了注入
manager
服务失败的问题 (satorijs/webui@341bbab)
Other Changes
- chore: bump versions (d985a51)
- chore: bump versions (koishijs/webui@e5d3dec)
- chore: bump versions (satorijs/satori@ab78834)
- test: check every explicit warnings (cordiverse/cordis@e0a0eed)
- chore: bump versions (satorijs/webui@a8a31b0)
- refa: revert edbeaec (0082b6e)
- refa: revert 0badd5ecdbaddbe928339975e935d34e0144b80c (cordiverse/webui@2c9d267)
- chore: bump versions (shigma/reggol@f3285f7)
- chore: bump versions (cordiverse/webui@5f55653)
- chore: bump versions (cordiverse/minato@04b03c0)
- chore: bump versions (satorijs/satori@5e34920)
- chore: bump versions (koishijs/webui@48689b5)
- chore: bump versions (b246289)