Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-08-28 | Remove obsolete, unreferenced DESTRINGIZE(), DEWSTRINGIZE() macros. | Nat Goodspeed | |
2024-08-28 | Merge pull request #2416 from secondlife/lua-lazymod | nat-goodspeed | |
Allow UI to have lazily-loaded submodules. | |||
2024-08-27 | Merge pull request #2384 from secondlife/lua-inventory | Maxim Nikolenko | |
Lua inventory api | |||
2024-08-27 | code clean up | Mnikolenko Productengine | |
2024-08-27 | Merge branch 'release/luau-scripting' into lua-inventory | Maxim Nikolenko | |
2024-08-26 | Merge pull request #2400 from secondlife/lua-issue-2385 | Maxim Nikolenko | |
Fix for #2385: say, shout and whisper messages from the script should be displayed consistently | |||
2024-08-26 | clean up Lua prefix | Mnikolenko Productengine | |
2024-08-24 | Update test scripts to reference UI.Floater, not standalone Floater. | Nat Goodspeed | |
2024-08-23 | Massage results from UI.popup() for ease of use. | Nat Goodspeed | |
In particular, where the raw leap.request().response call would return {OK_okcancelbuttons=true}, just return the string 'OK' or 'Cancel'. Update existing consumer scripts. | |||
2024-08-23 | Encapsulate the lazy submodule idiom as util.submoduledir(). | Nat Goodspeed | |
2024-08-23 | Look for lazy UI submodules in a require/UI subdirectory. | Nat Goodspeed | |
This way encourages "UI = require 'UI'; UI.Floater" instead of just "Floater = require 'Floater'". Moreover, now we don't need UI to maintain a list of allowed submodules; that's effected by membership in the subdirectory. | |||
2024-08-23 | Allow UI to have lazily-loaded submodules. | Nat Goodspeed | |
Equip UI with an __index metamethod. When someone references an unknown key/field in UI, require() that module and cache it for future reference. Add util.setmetamethods() as a way to find or create a metatable on a specified table containing specified metamethods. Exercise the new functionality by referencing UI.popup in test_popup.lua. | |||
2024-08-22 | Fix for #2385: say, shout and whisper messages from the script should be ↵ | Mnikolenko Productengine | |
displayed consistently | |||
2024-08-21 | mac build fix | Mnikolenko Productengine | |
2024-08-21 | Merge branch 'release/luau-scripting' into lua-inventory | Maxim Nikolenko | |
2024-08-21 | Add item limit for collectDescendentsIf func; add demo script | Mnikolenko Productengine | |
2024-08-21 | Merge pull request #2373 from secondlife/viewer-lua-2237 | nat-goodspeed | |
Fix for #2237: intermittent Lua data stack overflow. | |||
2024-08-21 | Improve diagnostic output for Lua atexit() functions. | Nat Goodspeed | |
2024-08-21 | Suppress ~LuaStackDelta() verification during stack unwinding. | Nat Goodspeed | |
Otherwise, an exception raised in the block containing a LuaStackDelta instance -- that might be caught -- would result in an LL_ERRS() crash. We can't expect a block exited via exception to keep its contract wrt the Lua data stack. | |||
2024-08-20 | Fix a couple more set_interrupts_counter() calls. | Nat Goodspeed | |
2024-08-20 | Defend timers.Timer(iterate=True) against long callbacks. | Nat Goodspeed | |
Specifically, defend against a callback that runs so long it suspends at a point after the next timer tick. | |||
2024-08-20 | Fix for #2237: intermittent Lua data stack overflow. | Nat Goodspeed | |
Use a static unordered_map to allow a function receiving (lua_State* L) to look up the LuaState instance managing that lua_State. We've thought about this from time to time already. LuaState's constructor creates the map entry; its destructor removes it; the new static getParent(lua_State* L) method performs the lookup. Migrate lluau::set_interrupts_counter() and check_interrupts_counter() into LuaState member functions. Add a new mInterrupts counter for them. Importantly, LuaState::check_interrupts_counter(), which is indirectly called by a lua_callbacks().interrupt function, no longer performs any Lua stack operations. Empirically, it seems the Lua engine is capable of interrupting itself at a moment when re-entry confuses it. Change previous lluau::set_interrupts_counter(L, 0) calls to LuaState::getParent(L).set_interrupts_counter(0). Also add LuaStackDelta class, and a lua_checkdelta() helper macro, to verify that the Lua data stack depth on exit from a block differs from the depth on entry by exactly the expected amount. Sprinkle lua_checkdelta() macros in likely places. | |||
2024-08-20 | Fix TempSet to use type VAR to store mOldValue. | Nat Goodspeed | |
In fact we set mOldValue from mVar, and restore mVar from mOldValue, so the VAR type makes the most sense. The previous way, you'd get actual errors if you tried to use TempSet(pointervar, nullptr): that declared mOldValue to be nullptr_t, which you can't initialize from mVar. | |||
2024-08-20 | Add LL::scope_exit | Nat Goodspeed | |
2024-08-20 | Add collectDescendentsIf api for Lua | Mnikolenko Productengine | |
2024-08-15 | First batch of Inventory api; raise interrupts limit | Mnikolenko Productengine | |
2024-08-15 | Merge branch 'release/luau-scripting' into viewer-lua-2237 | Nat Goodspeed | |
2024-08-15 | Introduce lluau_checkstack(L, n); use instead of luaL_checkstack(). | Nat Goodspeed | |
luaL_checkstack() accepts a third parameter which is included in the stack overflow error message. We've been passing nullptr, leading to messages of the form "stack overflow ((null))". lluau_checkstack() implicitly passes __FUNCTION__, so we can distinguish which underlying luaL_checkstack() call encountered the stack overflow condition. Also, when calling each atexit() function, pass Luau's debug.traceback() function as the lua_pcall() error handler. This should help diagnose errors in atexit() functions. | |||
2024-08-13 | Merge pull request #2274 from secondlife/luau-0.638 | nat-goodspeed | |
Update Luau to v0.638-r2 (2024-08-12 build) | |||
2024-08-13 | Update Luau to v0.638-r2 (2024-08-12 build) | Nat Goodspeed | |
2024-08-13 | Merge pull request #2240 from secondlife/lua-groupchat | Maxim Nikolenko | |
Lua api for sending group messages | |||
2024-08-13 | clean up and add comment | Mnikolenko Productengine | |
2024-08-13 | Merge pull request #2265 from secondlife/lua-groupchat-throttle | Maxim Nikolenko | |
Add Throttle and LogThrottle classes to manage throttled APIs. | |||
2024-08-12 | Add virtual destructor to Throttle class. | Nat Goodspeed | |
2024-08-12 | Add Throttle and LogThrottle classes to manage throttled APIs. | Nat Goodspeed | |
2024-08-12 | Merge branch 'release/luau-scripting' into lua-groupchat | Maxim Nikolenko | |
2024-08-12 | Merge pull request #2209 from secondlife/viewer-lua-smoother | nat-goodspeed | |
Introduce a custom coroutine/fiber scheduler to prioritize UI. With approval from Maxim and Atlas, merging to project trunk. | |||
2024-08-09 | add demo script for sending group chat messages | Mnikolenko Productengine | |
2024-08-09 | Lua api for sending group messages | Mnikolenko Productengine | |
2024-08-08 | Ensure that the flycam stays near moving avatar. | Nat Goodspeed | |
2024-08-07 | Move #include "coro_scheduler.h" from llstartup to llappviewer. | Nat Goodspeed | |
2024-08-07 | Allow smaller minimum timer intervals. | Nat Goodspeed | |
Add test_flycam.lua to exercise the smaller intervals. | |||
2024-08-07 | Move llcoro::scheduler::use() call from llstartup to llappviewer. | Nat Goodspeed | |
Thanks, Maxim. | |||
2024-08-07 | Merge branch 'release/luau-scripting' into viewer-lua-smoother | Nat Goodspeed | |
2024-08-07 | Merge pull request #2223 from secondlife/lua-login-fix | nat-goodspeed | |
Fix omission in login.savedLogins(). | |||
2024-08-07 | Fix omission in login.savedLogins(). | Nat Goodspeed | |
Also add Region.lua. | |||
2024-08-07 | Merge branch 'release/luau-scripting' into viewer-lua-smoother | Nat Goodspeed | |
2024-08-07 | Merge pull request #2218 from secondlife/lua-ui-tweak | nat-goodspeed | |
Rename 'UI' 'getParents' op to 'getTopMenus', add UI.lua function. | |||
2024-08-07 | Merge branch 'release/luau-scripting' into lua-ui-tweak | Nat Goodspeed | |
2024-08-07 | Rename 'UI' 'getParents' op to 'getTopMenus', add UI.lua function. | Nat Goodspeed | |
Also update the 'UI' help text to reflect its more general nature. Mention 0-relative rank in the xxToolbarBtn operation help text. |