Skip to content

Releases: iTXTech/mirai-js

Mirai Js 2.0-RC-dev2

26 Dec 13:32
Compare
Choose a tag to compare
  • Recompile with mirai 2.8.0 and kotlin 1.5.30.
  • Optimize code.

Mirai Js 2.0-RC-dev1

27 Jun 07:02
Compare
Choose a tag to compare
  • Recompile with mirai 2.7-M1
  • Fix a fatal error caused by permission system loading issue.

Mirai Js 2.0-RC

04 Mar 12:30
Compare
Choose a tag to compare

Mirai Js 2.0-RC,基于 Mirai(console) 2.4.0
2.0-RC 是一个稳定版本。 之后版本更新将会有插件兼容性保证(API 和 加载机制等)。

变更日志

API 变更:

  • 完善了 external 模块,现在可以加载外部的 jar 文件(暂不支持 Android)。

功能:

  • 控制台支持热加载(load)插件。
  • 抛弃多文件自定义加载顺序,改为树状加载(类似 Node.js)。

优化:

  • 解除了 PluginScopePluginPackage 的关系。
  • 稳定性[UP↑],BUG[↓]。

基本开发文档已经完成, API 正在编写中。

Mirai Js 2.0-M2

07 Feb 11:59
Compare
Choose a tag to compare
Mirai Js 2.0-M2 Pre-release
Pre-release

MiraiJs 于 rewrite 分支的第二个测试性构建,基于 Mirai(console) 2.3.2

变更日志:

API 变更:

  • 新增从 1.2.1 版本继承的控制台指令模块 command
  • 完善了 storage 模块,现在可以存储基本数据(如 numberstringboolean)。
  • coroutine 模块添加了 isCancelled() 用于判断插件是否被卸载(unload)。
  • coroutine 模块添加了默认从插件协程作用域启动协程的 launch(callback)async(callback)

功能:

  • 控制台支持重载 (reload),卸载 (unload) 和列出加载的插件 (list) 指令。
  • 插件配置 config.json 中支持自定脚本加载顺序。

优化:

  • 正确捕获插件异常,调整插件和插件加载的协程上下文关系。
  • 稳定性[UP↑],BUG[↓]。

食用方法和 API 正在编写中,会先在 rewrite 的分支中展示几个示例。
注意:此版本为测试版本,在版本号的 -Mx 消失之前不保证 API 的兼容性。

Mirai Js 2.0-M1

22 Jan 08:48
Compare
Choose a tag to compare
Mirai Js 2.0-M1 Pre-release
Pre-release

此版本是 MiraiJs 于 rewrite 分支的第一个测试性构建,基于 Mirai(console) 2.0.0

2.0-M11.2.1 相比是完全不同的版本,包括 API 变更控制台指令 等,具体的不同包括:

API 变更:

  • 移除了 plugincorebotstor,完全修改了 loggerhttp 的方法。

  • 新增 API:
    coroutine (较为完整的 Kotlin 协程支持)
    mirai (原生 package: net.mamoe.mirai)
    miraiKt (Mirai API 中的 Kotlin独占方法封装(如 selectMessagesnextEvent))
    external (提供加载外部 Jar 的方法)
    storage (替代原 stor 的部分功能,提供加载插件包中的资源方法)。

加载方式变化:

  • 不再通过在插件中定义 pluginInfo 来指定插件信息,改为插件 zip 压缩包。
    插件压缩包的结构:
myplugin.zip
├─── plugins  <---- 存放 JavaScript 插件主体。
│   ├─── main.js  <---- 主脚本,若存在则先加载 main.js,再加载其他脚本。
│   ├─── other1.js <---- 其他脚本。
│   └─── other2.js   <---- 其他脚本。
├─── resources  <---- 资源文件,会被在首次加载时解压到 <base>/data/org.itxtech.miraijs.MiraiJs/data/<plugin id>/ 中。
│   ├─── a.jpg
│   ├─── b.jar
│   ├─── c.jar
│   ├─── d.json
│   └─── ...
└─── config.json <---- 插件信息。

插件信息的结构 config.json

{
    // 插件ID,必须是独一无二的,否则会冲突。
    "id": "me.myname.testplugin",
    // 插件名称,可以为空。
    "name": "TestPlugin",
    // 插件作者,可以为空。
    "author": "PluginAuthor",
    // 插件描述,可以为空。
    "description": "This is a test mirai-js plugin."
}
  • 抛弃使用 plugin.ev.onLoadplugin.ev.onEnable 等方式触发加载事件。

控制台指令变化:使用方式基本没发生变化。

食用方法和 API 正在编写中,会先在 rewrite 的分支中展示几个示例。
注意:此版本为测试版本,在版本号的 -Mx 消失之前不保证 API 的兼容性。

Mirai Js 1.2.1

29 Dec 02:33
Compare
Choose a tag to compare

注意:本版本仅支持mirai console 2.0-M2

MiraiJs 1.2.0

20 Dec 03:18
Compare
Choose a tag to compare

注意:本版本仅支持 mirai console 2.0-M1

Mirai Js 1.1.0

12 Oct 12:47
Compare
Choose a tag to compare

注意:本版本仅支持mirai console 1.0-RC-dev-29

新特性:

  • 添加部分帮助方法

Mirai Js 1.1.0-rc.1

26 Aug 15:52
Compare
Choose a tag to compare
Mirai Js 1.1.0-rc.1 Pre-release
Pre-release

注意:本版本仅支持mirai console 1.0-M3

注意:近期插件API可能有大变动,迁移到mirai console提供的统一插件管理API

更改

  • 命令采用新的API形式,详见reply.js

Mirai Js 1.0.1

12 Aug 09:48
Compare
Choose a tag to compare

第一次于GitHub正式发布