Releases: koishijs/koishi
Koishi 4.17.2
Notable Changes
- cordis: 实验性地引入了
ctx.set()
,能够资源安全地设置一个服务 (cordiverse/cordis@cfb2718) (cordiverse/cordis@6deca56)
Features
- satori: 优化了 WebSocket 错误的日志输出 (satorijs/satori@6d916e5)
- undios: 支持了
validateStatus
(cordiverse/http@3ca4816) - yakumo: 支持了通过
intercept
来设置exclude
和alias
(cordiverse/yakumo#15) (cordiverse/yakumo#17) (cordiverse/yakumo@27240d1) - yakumo: 将插件导出为独立的入口文件 (cordiverse/yakumo@1623516)
Bug Fixes
- inspect: 修复了引用回复时部分数据显示为 undefined 的问题 (#1374) (37885ab)
- proxy-agent: 修复了 HTTP 代理无法代理 HTTPS 请求的问题 (cordiverse/http#3) (cordiverse/http@0087bf1)
Next Changes
以下变更属于开发中的 Cordis 生态,并不会影响 Koishi 的行为,但会在未来版本替换 Koishi 的相关实现。
- loader: 支持了不存在配置文件时自动创建 (cordiverse/cordis@0d75c0b)
Other Changes
- chore: bump versions (f875413)
- refa: migrate to cordis latest (koishijs/webui@0b3f91b)
- chore: bump versions (koishijs/webui@d8d4845)
- chore: bump versions (koishijs/upstream@699c4f4)
- refa: rename trace to origin (cordiverse/cordis@29dc0df)
- chore: bump versions (cordiverse/cordis@a3e9a7d)
- chore: bump versions (cordiverse/cordis@581115c)
- chore: bump versions (satorijs/satori@f65dfac)
- chore: bump versions (10047fb)
- chore: bump versions (cordiverse/yakumo@6811721)
Koishi 4.17.0
此版本前有若干个预发布版本。要了解此版本的全部特性,可以进一步查看预发布版本的更新日志。
- https://github.com/koishijs/koishi/releases/tag/4.17.0-alpha.0
- https://github.com/koishijs/koishi/releases/tag/4.17.0-beta.0
Features
- cordis: 支持了
Service.extend
方法,以原型链派生的方式创建新的服务实例 (cordiverse/cordis@64f19b9) - cordis: 重新调整了若干 symbol 的命名,并将所有 symbol 统一导出为
symbols
(cordiverse/cordis@8144a8d) (cordiverse/cordis@7e9e378) - cordis: 优化了
Service
基类的构造函数,使之支持更接近框架的调用方法 (cordiverse/cordis@238a5fd) (cordiverse/cordis@b3bf879) - discord: 支持了斜线指令中选项和参数的
required
的同步 (satorijs/satori@4dbb629) - koishi: 实验性地支持了
config.prefixMode
(#1364) (ff53b75) - undios: 实验性的支持了
http.decoder()
,可动态扩展responseType
(cordiverse/http@306e721) - yakumo: 支持了
upgrade --next
,即升级全部依赖到最新版本 (cordiverse/yakumo@5fc9660) - yakumo: 支持了
version -P, --stable
,用于去除预发布后缀 (cordiverse/yakumo@dc2c94f)
Bug Fixes
- element: 修复了缺少
children
属性导致 JSX 类型报错的问题 (satorijs/satori@e476344) - postgres: 修复了上次升级导致的语法错误的问题 (cordiverse/minato#73) (cordiverse/minato@35ff516)
- qq: 修复了对 trace-id 功能的日志输出 (satorijs/satori#237) (satorijs/satori@6b50991)
- undios: 修复了
data
和keepAlive
不生效的问题 cordiverse/http#2 (cordiverse/http@6dd109e) - undios: 修复了对请求体的编码问题,现在能够自动识别多种类型了 (cordiverse/http@4ccbd3e)
- undios: 修复了
ws()
没有同步返回的问题 (cordiverse/http@f94a7fb)
Changes on Cordis Next
以下变更属于开发中的 Cordis 生态,并不会影响 Koishi 的行为,但会在未来版本替换 Koishi 的相关实现。
- loader: 支持了插件组的细粒度更新 (cordiverse/cordis@c8181db)
- loader: 将
Loader
类实现为服务 (cordiverse/cordis@f77fb13) - loader: 将
fullReload()
重命名为exit()
(cordiverse/cordis@d280231) - loader: 支持了当插件更新自身配置时写回配置文件 (cordiverse/cordis@7617fd4)
- loader: 支持了当插件停用自身时写回配置文件 (cordiverse/cordis@e54e8f3)
- loader: 支持了基于
options.intercept
的服务拦截 (cordiverse/cordis@0041327) - loader: 初步支持了基于
options.isolate
的服务隔离 (cordiverse/cordis@a763e1c) (cordiverse/cordis@cf65001)
Other Changes
- chore: bump versions (781125e)
- refa: use dumble under the hood (cordiverse/yakumo@280f967)
- refa: migrate form-data (satorijs/satori@f60ca8c)
- refa: migrate undios http response type (satorijs/satori@3ca9245)
- docs: entry points (cordiverse/dumble@37962bf)
- refa: migrate Header and Error.is (satorijs/satori@3224f5d)
- docs: add more options (cordiverse/dumble@53adae0)
- test: dropAll for mongo migration tests (cordiverse/minato@5833775)
- docs: add basic usage (cordiverse/http@72cc88d)
- docs: config and response (cordiverse/http@4d42ae9)
- chore: bump versions (cordiverse/cordis@6327f6f)
- chore: bump versions (satorijs/satori@b9db5b6)
- chore: bump versions (cordiverse/minato@6196cad)
- chore: bump versions (f875413)
- refa: migrate to cordis latest (koishijs/webui@0b3f91b)
Koishi 4.17.0-beta.0
这是一个预发布版本,主要涉及底层架构调整,并未包含新功能。建议升级前备份整个目录,并确保同时升级所有依赖。
Notable Changes
-
cordis: 支持了函数式服务,只需实现
Context.invoke
方法,即可支持将服务以方法的形式暴露在上下文对象上 (cordiverse/cordis@b6197dd, cordiverse/cordis@f692eb8, cordiverse/cordis@4fbf8bf, cordiverse/cordis@cab9ce1) -
undios: 使用
fetch
API 重构了http
服务,并以 undios 命名发布为插件 (#1181) (cordiverse/http@ce0d4b3, cordiverse/http@565250f, cordiverse/http@6f0776b, cordiverse/http@a0dc5f8, cordiverse/http@c2ff28a, cordiverse/http@67850ce, cordiverse/http@1e74c3c, cordiverse/http@1e2d09f, cordiverse/http@e918da6, satorijs/satori@cf899ea, satorijs/satori@5841dbd)- 与代理相关的功能被迁移到了 undios-proxy-agent 包中,目前内置于整合包中 (cordiverse/http@fea2f99, cordiverse/http@45a1438, cordiverse/http@94a4248, cordiverse/http@e6dc7e3, cordiverse/http@d89a750, ac33e97)
- 与文件相关的 API 被迁移到了 undios-file 包中,目前内置于 Satori 中 (cordiverse/http@f0a3dd1, cordiverse/http@c07af16)
-
dumble: 发布了一个名为 dumble 的工具,该工具用于零配置构建 TypeScript 项目,现已内置于模板项目工作区中,作为
build
命令的一部分 (cordiverse/dumble@f053f90, cordiverse/dumble@bd68eef)- 支持了打包
devDependencies
(cordiverse/dumble@97e886c) - 对源文件目录中的
.d.ts
文件进行复制而非编译 (cordiverse/dumble@8d52904) - 优化了路径解析的性能和行为 (cordiverse/dumble@d541bab, cordiverse/dumble@c65721a)
- 输出文件中的文件名现在将基于当前项目的路径而非工作区根路径 (cordiverse/dumble@f73f282)
- 支持了打包
Features
- core: 实验性地支持了
ctx.intercept()
相关功能 (cordiverse/cordis@baea8d7) - logger: 基于函数式服务特性,支持了
ctx.logger.info()
等 API (cordiverse/cordis@9d11895)
Changes on Cordis Next
以下变更属于开发中的 Cordis 生态,并不会影响 Koishi 的行为,但会在未来版本替换 Koishi 的相关实现。
- hmr: 支持了配置项国际化 (cordiverse/cordis@69e5dd6)
Other Changes
- chore: bump versions (3e79a4f)
- refa: separate builder class (cordiverse/minato@3a356d2)
- chore: migrate to core monorepo, rename to http (cordiverse/http@4885102)
- chore: initial commit (cordiverse/dumble@179e1c2)
- chore: setup project (cordiverse/dumble@744f949)
- test: add example node-classic (cordiverse/dumble@5ec633f)
- test: add example node-next (cordiverse/dumble@b8fb407)
- test: add example node-hybrid (cordiverse/dumble@6f4c67a)
- test: add example cross-platform (cordiverse/dumble@06952a1)
- test: add tsc output (cordiverse/dumble@88a8577)
- test: add example wildcard (cordiverse/dumble@6486547)
- refa: rename package folders (cordiverse/http@1af22fe)
- chore: add readme (cordiverse/http@06ef47a)
- test: setup test workspace (cordiverse/dumble@a94bdd6)
- chore: setup eslint (cordiverse/dumble@8c581c0)
- chore: setup codecov (cordiverse/dumble@688855d)
- docs: add setup (cordiverse/dumble@b0a91f8)
- docs: add credits (cordiverse/dumble@838607d)
- chore: bump versions (cordiverse/cordis@1ea5ddc)
Koishi 4.17.0-alpha.0
这是一个预发布版本,主要涉及底层架构调整,并未包含新功能。
Notable Changes
- cordis: 引入了与 Koishi 类似的 Loader / HMR 等功能,现已实装于 Yakumo 等框架中,并将在未来替换 Koishi 的底层实现 (cordiverse/cordis@413a999, cordiverse/cordis@fd408a4, cordiverse/cordis@f58cb36)
- cordis: 将核心功能发布到 @cordisjs/core,而 cordis 将自带 Timer 和 Logger 服务 (cordiverse/cordis@94b114a, cordiverse/cordis@1efd00b, cordiverse/cordis@061043b, cordiverse/cordis@2a7a947, satorijs/satori@3ff856a, satorijs/satori@8f96625)
- minato: 现在 Minato 也将作为 Cordis 生态的一部分,可以直接作为 Cordis 插件使用 (cordiverse/minato@aef9dba, cordiverse/minato@d889604, cordiverse/minato@228fff5, cordiverse/minato@cdf8309)
- minato: 为 Minato 侧的数据库插件添加了配置约束,同时移除了一些与 Koishi 耦合的默认值;这些默认值将在新版本 Koishi 启动时自动写入配置文件,以保证向下兼容性 (cordiverse/minato@25ed14e, cordiverse/minato@99b2baf, 61c7d2c)
Features
- cordis: 简化了 Cordis 的类型,修复了过度使用泛型导致派生框架类型报错的问题 (cordiverse/cordis@e34e9cf) (cordiverse/cordis@c1ac7b0)
- cordis: 支持了
Service
类不传入一参数ctx
的情况,此时将自动创建一个根上下文 (cordiverse/cordis@e0d96b4) - cordis: 新增了
internal/info
事件 (cordiverse/cordis@159742e) - minato: 新增
driver.dropAll()
方法,用于对应实现database.dropAll()
(cordiverse/minato@fb984b3) - qq: 引入了更多输出日志 (satorijs/satori#236) (satorijs/satori@b0f6d63)
- tsc: 生成的
.dts
文件将根据exports
决定 (cordiverse/yakumo@f0c742a)
Bug Fixes
- cordis: 修复了使用
ctx.effect()
创建的副作用不会自动回收的问题 (cordiverse/cordis#8) (cordiverse/cordis@957e74d) - discord: 修复了
bot.getMessage()
多次或递归触发会导致 429 的问题 (satorijs/satori@e5825f1)
Other Changes
- chore: bump versions (6cc2f9b)
- chore: refactor to monorepo (cordiverse/cordis@21a86a3)
- chore: patch tsx to fix CI error (cordiverse/cordis@502e63f)
- chore: remove redundant dependencies (cordiverse/cordis@d3eec26)
- chore: bump versions (cordiverse/yakumo@970ea6d)
- refa: temporarily allow importing ts extensions (cordiverse/cordis@bdd36a0)
- types: use
Options
instead ofConfig
if it is not actual config (satorijs/satori@979f2da) - chore: bump versions (satorijs/satori@27822a0)
- chore: add database-* plugins (koishijs/upstream@9a69ef8)
- chore: bump versions (koishijs/upstream@b2850a5)
- chore: migrate database-* plugins to upstream (64e13d0)
Koishi 4.16.8
Notable Changes
- minato: 完整支持了子查询的所有情况 (#595) (cordiverse/minato#41) (cordiverse/minato@dcbdf81)
Features
- axios: 支持了
request.keepAlive
配置项 (satorijs/satori#235) (satorijs/satori@5df1a6f) - client: 组件内的
useConfig()
将遵守由ctx.settings()
设置的默认值 (koishijs/webui@4c8378c) - cordis: 当内部错误信息事件未被监听时将通过
console
发送错误信息 (cordiverse/cordis@68faf23) - cordis: 支持了
ctx.effect()
内的回调函数返回带有dispose
方法的对象了 (cordiverse/cordis@86e0b80) - cordis: 当在上下文中访问带有
$
或_
前缀的属性时将不进行注入检查 (cordiverse/cordis@0edd83e) - koishi: 当调用
ctx.broadcast()
时传入的频道不存在时,将会显示警告 (cba935f) - esbuild: handle
.cjs
and.mjs
extensions (cordiverse/yakumo@c1f67b2) - notifier: 支持通过
notifier.message()
在控制台弹出消息 (koishijs/webui@42de242) - qq:
<passive>
组件支持了message-id
和event-id
(satorijs/satori#234) (satorijs/satori@1bd24ac) - market: 支持了在客户端设置批量操作模式、移除配置确认等行为 (koishijs/webui@bc0d11f)
- market: 支持了在客户端设置插件市场中作者头像的镜像站 (koishijs/webui@8ad80b9)
- market: 支持了从 Yarn 安装日志中分离不同等级的日志信息 (koishijs/webui#294) (koishijs/webui@3a5d055) (koishijs/webui@03a38e2)
- minato: 支持了
$.regex
,优化了 MongoDB 对于特定正则查询的兼容性和速度 (cordiverse/minato#71) (cordiverse/minato@70109f6) - tsc: 构建完成时将自动列出生成的文件 (cordiverse/yakumo#14) (cordiverse/yakumo@3916c33)
Bug Fixes
- client: 修复了部分错误信息未能显示的问题 (koishijs/webui@feb2a45)
- client: 修复了部分页面的右键菜单会改变顶部菜单行为的问题 (koishijs/webui#260) (koishijs/webui@eafc280)
- client: 修复了多个页面中注册的快捷键会互相冲突的问题 (koishijs/webui#255) (koishijs/webui@498e486)
- console: 修复了
fs.strict
导致克隆 WebUI 仓库的开发环境无法顺利访问控制台的问题 (koishijs/webui#301) (koishijs/webui@250a969) - console: 修复了部分模块导入报错的问题 (koishijs/webui@fdaf99e)
- market: 修复了在确认移除配置窗口操作后,安装窗口不会自动关闭的问题 (koishijs/webui#300) (koishijs/webui@9061bf8)
- market: 修复了使用 npmmirror 作为搜索源时,部分内容无法显示的问题 (koishijs/webui#304) (koishijs/webui@1d27d5d)
- minato: 修复了与嵌套属性相关的部分类型错误 (cordiverse/minato#56) (cordiverse/minato#72) (cordiverse/minato@6621d2c)
- mocha: 修复了低版本 Node.js 无法使用
import.meta.resolve
的问题 (cordiverse/yakumo@bd2e921) - protocol: 修复了 Satori 适配器无法顺利接收和发送消息的问题 (satorijs/satori#177) (satorijs/satori@ff233e1)
- satori: 修复了
server
服务注入检查报错的问题 (satorijs/satori@5c0b8d6) - yakumo: 修复了对
--import
选项的支持 (cordiverse/yakumo@062dfe2)
Other Changes
- chore: bump versions (57429dd)
- chore: bump versions (satorijs/satori@8217e1f)
- refa: fix server exports for cjs (a82c25f)
- refa: move dev server logic to client (koishijs/webui@3abb736)
- chore: remove unnecessary tsconfig.json (#1352) (eb42c4d)
- refa: support tsconfig path for client lib (koishijs/webui@c8b506f)
- chore: bump versions (koishijs/webui@90bf879)
- refa: refactor client into plugins (koishijs/webui@1451c26)
- refa: refactor client into plugins (koishijs/webui#305) (koishijs/webui@275d7c8)
- chore: add esm exports (cordiverse/cordis@205ff60)
- chore: bump versions (cordiverse/minato@be01069)
- chore: bump versions (satorijs/satori@572979c)
- chore: bump versions (koishijs/webui@7ae9ac8)
- chore: bump versions (6cc2f9b)
Koishi 4.16.7
Features
- commands: 支持了设置指令别名携带的参数和选项 (koishijs/webui@466541f)
- console: 支持了在构建出的文件中使用非相对路径的包名 (koishijs/webui@7c388e4)
- console: 支持了适用于 node.js 的 ESM 导出 (#1339) (koishijs/webui@3819721)
- core: 实验性地支持了
alias.filter
(5dee042) - market: 支持在安装面板中选择依赖版本 (koishijs/webui@cfd12b0)
- market: 非批量操作模式下,安装面板将自动选择未下载的依赖同时安装 (koishijs/webui#10) (koishijs/webui@3e11380)
- qq: 支持了基于反射的内部 API,优化了错误日志 (satorijs/satori#230) (satorijs/satori#232) (satorijs/satori@92c471b) (satorijs/satori@3ea40ef)
- schema: 配置项支持了「编辑 JSON」功能 (#1270) (shigma/schemastery@b8425dc) (shigma/schemastery@b08e36b)
- status: 支持客户端设置机器人状态提示灯的最大显示数量 (koishijs/webui#274) (koishijs/webui@4e176f8)
Bug Fixes
- commands: 移除了不必要的配置写回 (koishijs/webui@aaf5f24)
- core: 修复了 ESM 导出与 CJS 导出行为不一致的问题 (#1339) (satorijs/satori@dbfc243) (8ea157b)
- discord: 添加了默认的按钮文本以解决文本缺失导致的报错问题 (satorijs/satori#233) (satorijs/satori@c1ea1ad)
- element: 为 JSX 类型添加了回退属性以防止报错 (#1345) (satorijs/satori@4486656)
- mail: 修复了发送消息失败的问题 (satorijs/satori#206) (satorijs/satori#229) (satorijs/satori@bfaff44)
- market: 修复了在批量操作模式下,依赖在移除后仍然显示在依赖管理中的问题 (koishijs/webui@0efd20b)
- server: 服务器启动时将输出实际监听的地址而非可访问的地址 (#1344) (cordiverse/server@707393b)
- status: 修复了状态栏负载条内文本可能溢出的问题 (koishijs/webui#59) (koishijs/webui@6ff13f0)
Other Changes
- chore: bump versions (koishijs/webui@f86a75e)
- chore: bump versions (f39e54e)
- refa: replace
<T>
with<T, >
to workaround JSX ambiguity (5d2ae54) - refa: replace
<T>
with<T, >
to workaround JSX ambiguity (koishijs/webui@995a2bd) - refa(commands): migrate to rpc entry API (koishijs/webui@3637f6b)
- refa(commands): migrate to action menus (koishijs/webui@98dcb5b)
- chore: bump versions (koishijs/webui@737cf61)
- chore: setup esm exports (cordiverse/server@e687e94)
- chore: bump versions (57429dd)
- chore: bump versions (satorijs/satori@8217e1f)
Koishi 4.16.5 - 4.16.6
Features
- commands: 支持了禁用已经存在的指令别名 (koishijs/webui#298) (koishijs/webui@82ed283)
- console: 针对常见的元素优化了
config.head
的配置提示 (koishijs/webui@a3eeabc) - core: 实验性地支持了自定义参数类型 (1709f36)
- core: 支持了
command-updated
事件 (89cb719) - element: 支持了向资源元素 API 传入
ArrayBufferView
(satorijs/satori#227) (satorijs/satori@a06f3cd) - element: 增加了 JSX 类型支持 (satorijs/satori@4735f29) (satorijs/satori@5781f52)
- insight: 自动调整整个网络图以适配不同宽高比的界面 (koishijs/webui#20) (koishijs/webui@48cf751)
- insight: 插件之间的调用和依赖关系将使用不同强度的边 (koishijs/webui@470151b)
- market: 当使用批量操作模式时,安装界面提示的依赖版本号将使用待更新的版本号 (koishijs/webui#287) (koishijs/webui@2f8aa39)
- market: 更新了插件市场分类,调整了部分分类名称和标准,新增了「生活指南」分类 (koishijs/webui@577b66a)
- notifier: 支持了发送 JSX 和按钮功能 (koishijs/webui@a3bb9bb) (koishijs/webui@955fc81)
- notifier: 导出了
Notifier
类型 (koishijs/webui#290) (koishijs/webui@636de40) - qq: 优化了按钮相关 API 的类型提示 (satorijs/satori#222) (satorijs/satori@a538f89)
Bug Fixes
- admin: 修复了打开指令管理页面白屏的问题 (koishijs/webui#289) (koishijs/webui@1401bb9)
- commands: 当打开添加指令或别名的窗口时自动聚焦输入框 (koishijs/webui@243d0cf)
- commands: 修复了指令已经被记录后的改动未能反映到指令管理页面中 koishijs/webui#295 (koishijs/webui@0ec5c22)
- config: 当打开添加或重命名分组的窗口时自动聚焦输入框 (koishijs/webui#276) (koishijs/webui@ac6d710)
- loader: 增加了适用于 Node.js 的 ESM 入口文件 (#1336) (9710a7e)
- locales: 优化了显示效果,修复了换行异常等问题 (koishijs/webui@221471e)
- market: 修复了添加或移除本地工作区插件会导致触发安装的问题 (koishijs/webui@409e03a)
- qq: 移除了触发交互时由于权限不足导致的警告 (satorijs/satori#225) (satorijs/satori@03d1057)
- status: 修复了当前 QPS 实际按分钟计数的问题 (koishijs/webui@bd9adef)
Other Changes
- chore: bump versions (285a144)
- i18n: update ru-RU.yml (#1332) (5eb0d97)
- chore: bump versions (satorijs/satori@4cef9e3)
- chore: adjust page order (koishijs/webui@38c70cd)
- chore: bump versions (koishijs/webui@f86a75e)
- chore: bump versions (f39e54e)
Koishi 4.16.4
Notable Changes
- notifier: 发布了新的官方插件 notifier,可用于在插件详情页中动态展示内容 (koishijs/webui@6eaac85)
- satori: 对协议实现进行了一些调整:
- 移除了已过时的
encoder.guildId
用法 (satorijs/satori#216) (satorijs/satori@ac103f1) - 修改了与标准元素不符的实现,将
<image>
替换为<img>
,<url>
属性替换为<src>
(satorijs/satori#198) (satorijs/satori#217) (satorijs/satori#223) (satorijs/satori@014583e) (koishijs/webui@765a7f9)
- 移除了已过时的
- timer: 支持了新的内置服务 Timer,包含了
ctx.setTimeout()
,ctx.setInterval()
,ctx.sleep()
,ctx.debounce()
,ctx.throttle()
等 API- 所有 API 都是资源安全的,插件停用后会自动释放 (cordiverse/http@cf098f2) (cordiverse/http@3367ff6) (satorijs/satori@6e04d1e)
- 相关插件已经迁移到了新的内置服务,不再需要额外安装依赖 (5be018c) (koishijs/webui@14215bf)
Features
- axios: 当
http.file()
请求的内容经过重定向后返回正确的 URL (satorijs/satori#221) (satorijs/satori@9aac05e) - console: 支持了非全局的数据传输接口 (koishijs/webui@a6ab904) (koishijs/webui@bf191de) (koishijs/webui@bf3281d)
- console: 支持了
head
配置项,可用于定制控制台页面头部信息 (koishijs/webui#206) (koishijs/webui@ba2315c) (koishijs/webui@1b32ecf) - cordis: 当在停用的上下文触发副作用时将会直接抛出错误 (cordiverse/cordis@0e77b2a) (cordiverse/cordis@6c71d31)
- cordis: 统一了
Context.current
的使用 (cordiverse/cordis@b62069e) - core: 实验性地支持了
:image
参数类型 (35c16ff) - loader: 调用
fork.dispose()
会在配置文件中停用插件 (339ea3a) - qq: 支持了对 WebSocket 终结点的替换 (satorijs/satori#220) (satorijs/satori@912a801)
Bug Fixes
- analytics: 修复了当只有收数据没有发数据时部分图表空白的问题 (koishijs/webui@dad36b6)
- console: 修复了当后端插件本体变动时前端可能显示异常的问题 (koishijs/webui#285) (koishijs/webui@b593572)
- cordis: 修复了框架的内置属性定义被插件覆写的问题 (cordiverse/cordis@3a4a309)
- hmr: 修复了被 HMR 的插件无法修改配置的问题 (5d440e4)
- loader: 修复了对配置文件进行 HMR 会导致插件永久链接变化的问题 (3440c8f)
- loader: 修复了直接访问
ctx.loader
会导致直接调用场景出现报错的问题 (koishijs/webui@ae60519) - qq: 修复了模板 MarkDown 的接口类型 (satorijs/satori#213) (satorijs/satori@6390012)
Other Changes
- chore: bump versions (cc77a51)
- chore: setup tests (cordiverse/http@cf13c92)
- chore: bump versions (satorijs/satori@d3f55a9)
- chore: upgrade yakumo to v1 alpha (koishijs/upstream@aa45c1b)
- chore: bump versions (koishijs/upstream@0c82773)
- chore: bump versions (koishijs/webui@f5857bd)
- chore: bump versions (285a144)
Koishi 4.16.3
🎉 Koishi 团队祝大家新年快乐!在新的一年里请继续支持 Koishi 哦!
Notable Changes
- 重新实现了 Permission API,并对 admin, commands 等插件进行了适配,同时优化了部分交互体验 (7050324) (koishijs/webui@e25a179) (koishijs/webui@50fe918) (ddfd442) (1811bdb) (koishijs/webui@2c3bc05) (koishijs/webui@4176747)
Features
- config: 当创建分组时弹出对话框输入分组名称 (koishijs/webui@86833c3)
- config: 跳转到插件配置页面时,左侧栏自动滚动到对应的位置 (koishijs/webui#262) (koishijs/webui@f5f4279)
- config: 禁止 server 插件被禁用 (koishijs/webui@56e9979)
- console: 引入了
ctx.console.refresh()
等 API,用于替换对控制台数据服务的直接访问 (koishijs/webui@0d8f60c) - console: 引入了 unocss (koishijs/webui@0363b0b) (koishijs/webui@593336c) (koishijs/webui@e23cd7f)
- core: 内部事件新增了
bot
二参数,可用于对接收到事件的机器人进行操作 (satorijs/satori@662db18) - discord: 支持了 MarkDown 链接 (satorijs/satori@69cf597)
- discord: 支持了频道类型语音和分类 (satorijs/satori#214) (satorijs/satori@601eaba)
- logger: 优化了移动设备下的显示效果 (koishijs/webui@9787d2f)
- market: 批量安装插件后,为每个新增插件自动创建配置 (koishijs/webui#58) (koishijs/webui@f193607)
- market: 当没有搜索结果时,显示空白提示文本 (koishijs/webui#266) (koishijs/webui@4044f75)
- market: 用户可以配置当插件被卸载时,自动删除存在的配置 (koishijs/webui@3975544)
- schema:
.role('table')
的列现在支持disabled
和hidden
了 (#1306) (shigma/schemastery@e31df61)
Bug Fixes
- bind: 修复了绑定两个相同平台用户的边界情况 (#1319) (0bbed71)
- commands: 修复了对指令选项进行操作后不遵守初始值的问题 (koishijs/webui#281) (koishijs/webui@f036525)
- components: 修复了
computed
类型默认值异常的问题 (koishijs/webui#282) (koishijs/webui@215434a) - console: 修复了重载 console 插件会导致启动失败的问题 (koishijs/webui#275) (koishijs/webui@b0096dc)
- help: 修复了帮助指令会显示没有权限调用的指令的问题 (#1323) (26b5920)
- kook: 修复了仅包含文本的
<kook:card>
将不会发送卡片的问题 (satorijs/satori@756b051) - kook: 修复了
session.kook
类型与实际不符的问题 (satorijs/satori#212) (satorijs/satori@22d60b3) - market: 修复了批量模式下添加的插件,在依赖管理界面中没有修改按钮的问题 (koishijs/webui#279) (koishijs/webui@bc3c587)
- market: 修复了依赖管理页面中的版本提示灯与安装面板中的提示灯不一致的问题 (koishijs/webui@1456fa6)
- minato: 修复了
db.join()
在部分边界情况下行为异常的问题 (cordiverse/minato#68) (cordiverse/minato@5c4857b) - postgres: 修复了存在外键时可能初始化错误的问题 (cordiverse/minato#69) (cordiverse/minato#70) (cordiverse/minato@b15354a)
- schema: 修复了警告、危险的菜单项被禁用时颜色异常的问题 (shigma/schemastery@bc93787)
- utils: 修复了
deepEqual()
没有考虑Date
和RegExp
的问题 (#1321) (shigma/cosmokit@3bed666)
Other Changes
- chore: bump versions (0294c38)
- chore: bump versions (koishijs/webui@38feae2)
- refa: refactor events to service (koishijs/webui@e27cb0a)
- chore: bump versions (shigma/cosmokit@bb98d75)
- chore: bump versions (shigma/schemastery@b13d3d8)
- refa: add http inject (satorijs/satori@5d87791)
- chore: bump versions (satorijs/satori@f6b9c9b)
- chore: bump versions (koishijs/webui@8a93765)
- chore: bump versions (cc77a51)
Koishi 4.16.2
Notable Changes
本次更新对插件的安装、配置流程进行了大幅优化。
- config: 新增了插件配置管理功能。
- 如果插件同时存在多份配置,则在插件的配置页面将出现配置管理提示,点击后将弹出对话框;用户可以在其中查看和跳转到所有配置,也可以删除或添加配置 (koishijs/webui@7e90ec4)
- 当查看已经安装到本地的插件时,会新增「配置」按钮;点击后会根据插件已经被配置的次数自动创建配置、跳转到配置页面或打开配置管理对话框 (koishijs/webui#135) (koishijs/webui@b7790ec)
- 新增了「克隆配置」和「管理多份配置」按钮,前者可用于将当前插件按相同配置复制一份到当前插件下方,后者可以呼出对话框,管理插件的全部配置 (koishijs/webui#270) (koishijs/webui@3c6a948)
- market: 支持了快速安装功能:对于存在于配置文件但尚未安装到本地的插件,现在可以在配置页面中快速安装,而不需要浏览插件市场了 (koishijs/webui@f20e843)
Features
- analytics: 优化了移动设备上的边距 (koishijs/webui@d4d442f)
- analytics: 当用户使用此插件不足 7 天时,将使用已经使用的天数求平均 (koishijs/webui@f328a68)
- client: 支持了
action.hidden
,用于控制不显示某个菜单项 (koishijs/webui@a3ce12d) - client: 通过引入菜单解决了移动设备上右上角菜单显示不全的问题 (koishijs/webui@5da74ea)
- components: 优化了链接的显示效果 (koishijs/webui@8d1957b)
- components: 优化了
<k-comment>
在<el-dialog>
中的显示效果 (koishijs/webui@f280e60) - config: 插件列表将区分显示未加载的插件 (灰色状态灯) 和未安装的插件 (灰色插件名,不显示状态灯) (koishijs/webui@132853f)
- cordis: 实验性地引入了
ctx.effect()
用法 (cordiverse/cordis@3c5e258) - lark: 增加了若干内部接口,修复了部分名称错误 (satorijs/satori#210) (satorijs/satori@ae058ac)
- market: 优化了「确认安装」界面,增加了箭头提示和「丢弃」按钮 (koishijs/webui@ae137c1)
- market: 对于未配置
registry.endpoint
的情况下不使用--registry
以避免警告信息 (koishijs/webui#257) (koishijs/webui@53d59ca) - qq: 支持了
<passive>
元素 (satorijs/satori#194) (satorijs/satori@acd5acf) - qq: 支持了群和频道环境使用不同的内部接口 (satorijs/satori@bf6bdea)
- sql: 支持了
string
类型定义的自动更新 (cordiverse/minato#67) (cordiverse/minato@94c401e) - status: 插件详情页增加「机器人」板块,可以通过状态栏的机器人状态灯点击前往 (koishijs/webui#238) (koishijs/webui@0df94d5)
- status: 当机器人数量过多时,将会自动合并状态灯 (koishijs/webui@e3a474a)
- status: 在
status
指令的输出中显示平台名称 (koishijs/webui#236) (koishijs/webui@c39a885)
Bug Fixes
- analytics: 修复了同时使用 MySQL 时插件无法正常初始化的问题 (koishijs/webui@4fe9615)
- analytics: 修复了接收到匿名用户消息时会报错的问题 (koishijs/webui#269) (koishijs/webui@1060ecc)
- config: 修复了插件安装完成后配置页面仍然提示此插件尚未安装的问题 (koishijs/webui#265) (koishijs/webui@663241f)
- console: 修复了在屏幕底部触发菜单会导致显示不全的问题 (koishijs/webui#267) (koishijs/webui@64c5671)
- console: 修复了当从其他页面切换到欢迎页面后,再次刷新会回到之前页面的问题 (koishijs/webui#272) (koishijs/webui@6b88267)
- core: 修复了
model.format()
对undefined
的处理与预期不符的问题 (cordiverse/minato#66) (cordiverse/minato@618a38e) - core: 修复了当消息存在 @ 时可能会异常触发机器人响应的问题 (1a15aa6)
- core: 修复了交互指令触发时可能报错的问题 (#1314) (976ac6f)
- kook: 修复了
session.content
缺失的问题 (satorijs/satori#202) (satorijs/satori@678d78f) - logger: 修复了启动时有概率报错的问题 (koishijs/webui@4f1f77a)
- market: 当插件安装发生错误时,会提示用户选择移除或者修复 (koishijs/webui#271) (koishijs/webui@f14f01e)
- qq: 修复了
bot.sendMessage()
发送群消息失败的问题 (satorijs/satori#195) (satorijs/satori@00966c8) - qq: 移除了
Request
中不存在的timestamp
属性 (satorijs/satori#208) (satorijs/satori@aaea140) - temp: 修复此插件停用时会执行第二次启用流程的问题 (satorijs/satori#209) (satorijs/satori@6444d35)
Other Changes
- chore: bump versions (f5134fd)
- chore: bump versions (koishijs/webui@757fa1f)
- refa(config): use provide / inject for plugin data (koishijs/webui@2de0714)
- chore: bump versions (koishijs/webui@97eb264)
- chore: bump versions (koishijs/webui@ec16fca)
- chore: init plugin notifier (koishijs/webui@08e27ff)
- refa: refactor to monorepo (cordiverse/http@f48da67)
- chore: add esm entry, fix cordiverse/http#1 (cordiverse/http@ba08a0f)
- chore: bump versions (satorijs/satori@600a305)
- chore: bump versions (0294c38)