MiraiCP icon indicating copy to clipboard operation
MiraiCP copied to clipboard

未来几个月计划

Open Nambers opened this issue 3 years ago • 3 comments

功能描述

按优先级排序:

  1. 修复新报告的 issue
  • [ ] 2. 重构CPP到下一个大版本3.*, 同时这个2.*版本也会继续维护(修复一些提交的问题), 但是不会更新其他功能(会尽量不写太多API change, 但是为了优化使用, API change是必要的), 大概包含以下几点:
    • 统一命名规范
    • 减少复制
    • 优化继承结构
  • [ ] 3. kotlin 引入 mockFrame 以增加对kt + cpp的单元测试 #84 #118
  • [ ] 4. kotlin 的 core 模块支持 kotlin native(可能可行), 如果可行的话就可以直接纯cpp启动miraicp
  1. TBD

原因

None

组件选择

both

Nambers avatar Sep 13 '22 21:09 Nambers

  • [x] 具体的异常类型应该在需要抛出的位置再定义,不要统合到一个exception.h里

Antares0982 avatar Sep 20 '22 12:09 Antares0982

TODO1:

Class_cpplib = reinterpret_cast<jclass>(env->NewGlobalRef(env->FindClass("tech/eritquearcus/miraicp/shared/CPPLib")));

改成

Class_cpplib = reinterpret_cast<jclass>(env->NewGlobalRef(env->FindClass("tech/eritquearcus/miraicp/shared/CPPLibMultiplatform")));

以及

if (!registerMethods(env, "tech/eritquearcus/miraicp/shared/CPPLib", method_table, 3)) {
if (!registerMethods(env, "tech/eritquearcus/miraicp/shared/CPPLibMultiplatform", method_table, 3)) {

我觉得可以用个宏/常量替换

Nambers avatar Sep 20 '22 16:09 Nambers

  • [x] 增加代码规范文档

Antares0982 avatar Sep 20 '22 16:09 Antares0982

希望主可以增加一个获取龙王的事件,谢谢啦^_^

wly20040415 avatar Sep 23 '22 14:09 wly20040415

  • [ ] refresh需要用try包裹,失败后将init设为false

Antares0982 avatar Sep 24 '22 10:09 Antares0982

  • [x] defer busy = false https://github.com/Nambers/MiraiCP/blob/9725693a09ab91710e0e98299ccee0b562d36a79/cpp/src/libloader/native/ThreadController.cpp#L85

Antares0982 avatar Oct 15 '22 09:10 Antares0982

  • [x] PLUGIN_INFO改为传递指针而非引用,~~允许返回空指针用于异常检查~~不允许空指针

Antares0982 avatar Oct 16 '22 09:10 Antares0982

  • [x] 保留events原有的构造函数,但改为protected,用作传入json的构造函数的委托构造

Antares0982 avatar Oct 16 '22 09:10 Antares0982

  • [x] timeoutEvent改为在libloader线程处理,防止加载多个插件时倒计时被抛到其他插件

Antares0982 avatar Oct 16 '22 17:10 Antares0982

  • [x] 加入线程池

Antares0982 avatar Oct 29 '22 17:10 Antares0982

  • [x] timeoutEvent由libloader端tick处理,降低线程池占用

Antares0982 avatar Nov 19 '22 10:11 Antares0982

  • [x] native 收不到包
  • [x] api 文档样式崩坏
  • [x] 重构一些内部实现

Nambers avatar Nov 19 '22 17:11 Nambers

  • [x] 插件接口noexcept,是否产生异常通过~~MiraiCPString~~ int返回

Antares0982 avatar Nov 21 '22 06:11 Antares0982

  • [ ] 使用md5计算插件hash,并依此作为目标文件名复制temp插件

Antares0982 avatar Nov 21 '22 11:11 Antares0982

  • [x] 降低工具链版本,close #149

Antares0982 avatar Nov 21 '22 12:11 Antares0982

  • [ ] 添加wchar, wstring类型的支持

Antares0982 avatar Jan 16 '23 09:01 Antares0982

  • [ ] 对所有const json对象,检查其key存在性后再使用

Antares0982 avatar Jan 17 '23 09:01 Antares0982

  • [x] 更好的线程识别方案,受限于linux内核,线程名最大字符数为15,需要一些别的方案来存储线程识别符

Antares0982 avatar Jan 17 '23 09:01 Antares0982

  • [ ] 使用md5计算插件hash,并依此作为目标文件名复制temp插件

用这个 https://github.com/stbrumme/hash-library

Antares0982 avatar Jan 17 '23 09:01 Antares0982

no planned anymore ><

Nambers avatar Oct 26 '23 06:10 Nambers