Commit Graph

33 Commits

Author SHA1 Message Date
11c4266234 release: luarunnerjit 0.4.0 (clean artifact, proper publish) 2026-08-27 11:14:55 +08:00
006ad24df6 release: luarunnerjit 0.3.5 2026-08-26 13:24:01 +08:00
a85776acc5 release: luarunnerjit 0.3.3 (proper publish) 2026-08-26 11:22:46 +08:00
ab87f4e057 release: luarunnerjit 0.2.10 (correct branch) 2026-08-25 20:54:31 +08:00
f505365a29 release: luarunnerjit 0.2.9 (clean bundle) 2026-08-25 20:39:16 +08:00
857f4bb272 release: luarunnerjit 0.2.8 2026-08-25 20:04:50 +08:00
fcfa49368d fix: 制品包排除构建缓存目录 2026-08-25 19:53:02 +08:00
75829ff739 release: luarunnerjit 包命名 2026-08-25 19:19:04 +08:00
cc40a49ae6 feat: 适配 LuaJIT 2.1 (luajit_2.1 分支)
- lib/lua 替换为完整 LuaJIT 2.1 仓库(Makefile+src+dynasm, 官方结构)
- 构建系统改造: lib/lua/CMakeLists.txt 改为调用 LuaJIT 自带 make
  (BUILDMODE=static CFLAGS=-fPIC) 产出 libluajit.a; 顶层链接该静态库
  并加 -Wl,-E 导出符号(静态链 LuaJIT 必需)
- 补充 lua.hpp 转发头兼容桥接层 'lua/lua.hpp' include 路径
- 桥接层沿用 5.1 方案: Registry 存 iopath / luaL_tolstring 兜底 /
  typed interop 无 integer 子类型(LUA_VERSION_NUM=501)
- [关键修复] lua_remove 栈越界 bug(各版本共有, LuaJIT 下显性崩溃):
  * unload_lib: ref 记录的是 gettop+1, 实际移除应用 ref-1
  * clean(): 原逐个 remove 循环恒越界且多次移除后索引偏移,
    属死代码(末尾 settop(L,0) 已清栈), 直接删除
  该 bug 在 Lua 5.4 中被隐式容忍, 在 LuaJIT 的 GC finalizer 中
  表现为 lj_gc_finalize_cdata 段错误
- 测试跨版本断言同步(自 5.1.5)
- 验证: GTest 44/44 通过
2026-08-25 11:57:32 +08:00
4af121c1f3 refactor!: 错误码体系重构 删除特殊平台语境残留
BREAKING CHANGE: 错误码编号全部变更, 外部依赖旧编号的代码需按映射表更新

- 删除 10 个从未使用的错误码:
  JSON/MCP 系列(5001/5002/5006/5007/5008) + 其余死码(5004/5009/5013/5018/5021)
- 重排为连续 5001~5016
- 宏前缀 NAPI_(鸿蒙 NAPI 语境残留) 改为 LUAERR_
- 同步更新: errors.h / bridge.cj getErrorMessage+typed抛出点 /
  lua_runner_test.cj 断言 / api.md 对照表 / README.md / GTest 宏名
- 清理注释残留: 鸿蒙 el2 沙盒路径 TODO / 沙盒内路径描述
- 版本号 0.2.1 -> 0.2.2

验证: GTest 44/44 通过; cjpm build 成功; 独立程序运行时 9/9 通过
(含新编号 5016/5013 错误路径)
2026-08-25 09:29:48 +08:00
237aab3f36 feat: typed interop 原始类型直通映射 (Int64/Float64/Bool)
- C++ 层: callfunction_int/num/bool/void + run_int/num/bool/void
- 新增 capture_result()/finish_call() 正确计算 lua_pcall 实际返回值数量,
  修复无返回值场景下误读栈残留的问题
- C FFI 层: 11 个新导出函数 + lua_runner 结构体 tresult_* 镜像字段
- 仓颉层: callFunctionInt/Num/Bool, runScriptInt/Num/Bool, resultType()
  带严格类型校验(不匹配抛 LUAERR_RESULT_TYPE)
- 大整数跨 2^53 保真(字符串路径做不到)
- 管道模式语义保留给字符串 API; typed run_* 为独立调用保持栈清洁
- GTest 新增 10 个 typed 测试用例(共 44 个全部通过)
- 独立程序验证仓颉层运行时正确性(int/num/bool直通/大整数保真/错误路径)
2026-08-25 09:29:24 +08:00
42e8b7676d feat: 实现loadFunction预加载函数能力 + AI辅助编程标识
- 新增 loadFunction/callFunction/unloadFunction 预加载函数 API
- 预加载语义:加载文件→顶层执行一次→返回函数存入Lua Registry→可多次调用
- 与管道模式(load/runScript)存储完全解耦:funcs[]+Registry vs pkgs[]+虚拟栈
- 新增错误码 5023/5024/5025
- 新增单元测试:仓颉侧 8 个 + C++ GTest 侧 11 个
- 本机以 Cangjie 1.1.0 实编译并通过功能运行验证
- README/doc 增加 AI 辅助编程标识及预加载函数模式说明
2026-08-23 12:03:04 +08:00
207082a1a0 update: 更新文件 api.md
Signed-off-by: JianFeeeee <2198972886@qq.com>
v0.2.1
2026-04-05 09:14:56 +08:00
63b4e152c2 update: 更新文件 README.md
Signed-off-by: JianFeeeee <2198972886@qq.com>
2026-04-05 08:56:09 +08:00
d78b1349ce update: 更新文件 README.md
Signed-off-by: JianFeeeee <2198972886@qq.com>
2026-04-05 08:31:54 +08:00
4ffc6e2544 update: 更新文件 README.md
Signed-off-by: JianFeeeee <2198972886@qq.com>
2026-04-05 08:31:23 +08:00
8f1d409cf5 更新:添加doString方法及对应的单元测试 2026-04-05 08:19:20 +08:00
14526b8dc2 update: 更新文件 README.md
添加图标

Signed-off-by: JianFeeeee <2198972886@qq.com>
v0.2.0-alpha
2026-04-02 15:35:06 +08:00
135e04760a 修复windows平台编译问题 2026-03-25 16:23:54 +08:00
905d70809b 优化编译脚本,保证bundle顺利通过 2026-03-25 14:53:11 +08:00
c3109ddad4 对齐c层与cj层错误码,修改测试以配合c层更新 2026-03-25 14:52:36 +08:00
c16de88385 update runner docs and align tests 2026-03-22 23:44:33 +08:00
10bc402100 修正runner为最新实现
Signed-off-by: JianFeeeee <2198972886@qq.com>
2026-03-22 10:01:23 +08:00
8e9deb2865 修复描述性错误,完善测试 2026-03-21 22:53:03 +08:00
8998ad6900 修正部分描述性错误 2026-03-21 20:35:58 +08:00
8c216ef9e3 添加说明文档,为cangjie层添加单元测试 2026-03-21 16:03:24 +08:00
a4196e53f9 添加单元测试,修复部分错误 2026-03-21 11:13:13 +08:00
a5eb303c4b 完成桥接层 2026-03-19 22:04:07 +08:00
4ee065954e 修正 2026-03-19 17:37:48 +08:00
20611b720f 尝试修复库引用 2026-03-19 17:30:38 +08:00
a90a7d5cf2 update: 更新文件 README.md
Signed-off-by: JianFeeeee <2198972886@qq.com>
2026-03-18 16:23:37 +08:00
20221fac5f 初始化仓库 2026-03-18 16:20:46 +08:00
8ebf63008e Initial commit 2026-03-18 14:53:36 +08:00