بنقرة واحدة
fix-busted-cached-so
busted loads _insight.so from ~/.luarocks/lib first, not build/ — must copy .so after rebuild
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
busted loads _insight.so from ~/.luarocks/lib first, not build/ — must copy .so after rebuild
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Add device information query functions through HAL → ins:: API → language bindings
Add --device all/--timer/--info CLI flags to demos across all languages for competition scoring
Add composite signal operators using existing primitives (no dedicated backend kernels needed)
How to port a cusignal Python/CUDA module to ins::signal C++ using Insight7 primitives and HAL
Profile and optimize binding language (Lua/Julia/Python) demo performance to match or exceed C++ baseline
Julia C API bindings must check for nullptr return — silent failure otherwise
| name | fix-busted-cached-so |
| description | busted loads _insight.so from ~/.luarocks/lib first, not build/ — must copy .so after rebuild |
| source | auto-skill |
| extracted_at | 2026-06-07T01:46:20.559Z |
After rebuilding the Lua binding (make insight_lua), busted tests still use
the OLD .so file. Direct luajit tests work fine, but busted fails.
Root cause: busted's launcher script (~/.luarocks/bin/busted) sets
package.cpath to include ~/.luarocks/lib/lua/5.1/?.so FIRST. Even with
LUA_CPATH="build/bindings/lua/?.so;;", the luarocks path takes precedence
because the launcher explicitly sets package.cpath.
Symptom: Direct luajit test passes, but busted test fails with old behavior.
# Check which _insight.so files exist and their timestamps
ls -la bindings/lua/_insight.so build/bindings/lua/_insight.so ~/.luarocks/lib/lua/5.1/_insight.so
# Check if new code is in the .so
strings build/bindings/lua/_insight.so | grep "your_new_string"
strings ~/.luarocks/lib/lua/5.1/_insight.so | grep "your_new_string"
After rebuilding, copy the new .so to the luarocks lib directory:
# Rebuild
make -j24 insight_lua
# Copy to luarocks lib (busted loads from here first)
cp build/bindings/lua/_insight.so ~/.luarocks/lib/lua/5.1/_insight.so
cp build/backends/cpu/libinsight_cpu_backend.so ~/.luarocks/lib/lua/5.1/libinsight_cpu_backend.so
If you don't want to copy, you can try setting LUA_CPATH before the busted
launcher's package.cpath assignment. But this is fragile — copying is more
reliable.
~/.luarocks/bin/busted — launcher script, sets package.cpath~/.luarocks/lib/lua/5.1/_insight.so — cached bindingbuild/bindings/lua/_insight.so — freshly built bindingbindings/lua/_insight.so — copy target (used by LUA_CPATH="bindings/lua/?.so;;")Add a post-build step to CMakeLists.txt that copies the .so to the luarocks lib directory automatically.