aboutsummaryrefslogtreecommitdiff
path: root/CHANGES (follow)
Commit message (Collapse)AuthorAgeFilesLines
* don't test __lanesignore for POD types (-> slightly faster when trasnfering ↵Benoit Germain2018-11-301-0/+4
| | | | | | lots of data) + more code refactoring
* Split a megafunction in smaller partsBenoit Germain2018-11-281-0/+3
|
* Lua 5.4 supportBenoit Germain2018-11-271-0/+4
|
* Lanes version available in public headerBenoit Germain2018-11-261-0/+3
|
* protect_allocator configure option is gone, long live allocator (more ↵Benoit Germain2018-11-251-0/+3
| | | | embedders-friendly)
* Raise an error instead of crashing when attempting to transfer a non-deep ↵Benoit Germain2018-11-231-0/+3
| | | | full userdata
* More DEBUGSPEW loggingBenoit Germain2018-11-211-0/+3
|
* Internal code tweaksBenoit Germain2018-11-191-0/+5
| | | | | | * Registry access code utility macros * CONFIG_REGKEY and LOOKUP_REGKEY are now lightuserdata instead of strings * Stack checking debug macros improvements
* Deep userdata must embed DeepPrelude to save an allocation (also changes ↵Benoit Germain2018-11-151-0/+3
| | | | Deep protocol)
* rockspec for version v3.13.0Benoit Germain2018-11-151-0/+4
|
* fix a bunch of compilation warnings (issue #157)Benoit Germain2018-11-111-0/+3
|
* new API lanes.set_thread_affinity(), and et_debug_threadname implemented ↵Benoit Germain2018-11-091-0/+4
| | | | with win32 pthread
* Make sure any linda operation that can raise an error won't ever leave a ↵Benoit Germain2018-11-081-0/+4
| | | | mutex unreleased
* __lanesclone mechanism should actually work nowBenoit Germain2018-11-071-0/+3
|
* Fix potential crash at application shutdown when deep userdata were created ↵Benoit Germain2018-11-071-0/+3
| | | | before Lanes is required
* fix an internal error trying to call on_state_create in a lane without any ↵Benoit Germain2018-11-031-0/+4
| | | | | | | libs loaded always duplicate the config structure in new lanes even when no libraries are initialized by the generator
* Fix error with LuaJIT when ffi package isn't requiredBenoit Germain2018-11-021-0/+4
|
* Better protect_allocator autodetectionBenoit Germain2018-10-311-0/+3
|
* Update changelogBenoit Germain2018-10-301-0/+3
|
* Merge changesBenoit Germain2018-10-291-0/+10
|\
| * Fix Lanes build by reorganizing types around a bitBenoit Germain2018-10-251-0/+3
| |
| * verbose_error improvementsBenoit Germain2018-07-091-0/+4
|/ | | | | | * Fix a stack overflow when copying large tables with verbose_errors option enabled * Support for integer formatting in verbose errors
* Deep userdata improvementsBenoit Germain2017-08-021-0/+4
| | | | | Support for user-provided __gc Improved example
* Fix for deep-aware modulesBenoit Germain2017-08-011-0/+4
| | | | | | Don't crash when using a module that creates Lanes-compatible deep userdata. Added a sample deep-aware module.
* Accept non-string error messagesBenoit Germain2017-06-131-0/+3
|
* Table transfer improvementsBenoit Germain2017-06-051-0/+5
| | | | | | | | * new API function lanes.register( "name", module) to manually register a module table after it was required * Transfering registered module tables will link the equivalent in the destination state instead of cloning it * bumped version to 3.11
* Suppress a #pragma messageBenoit Germain2017-05-101-1/+1
|
* Improve LuaJIT supportBenoit Germain2017-05-101-0/+4
| | | | | | | * better LuaJIT-specific headers detection * add LuaJIT-specific libraries when known * properly raise an error when attempting to transfer a LUAT_CDATA value * some compilationg warning fixes
* Bump version, update docv3.10.1Benoit Germain2016-11-211-0/+7
|
* Preparing next releasev3.10.0Benoit Germain2015-04-271-1/+6
|
* New API lanes.sleep (bumped version to 3.9.7)Benoit Germain2014-09-181-0/+4
|
* fix lookup of globals created by on_state_createBenoit Germain2014-07-081-0/+4
| | | | | | * Postponed _G scan for function lookup database to after on_state_create invocation * Fixed a crash when USE_DEBUG_SPEW == 1
* Deep userdata changesBenoit Germain2014-06-171-0/+5
| | | | | | | | | * bumped version to 3.9.6 * separate deep userdata code in a dedicated file to allow external modules to implement Lanes-compatible deep userdata without requiring a binary dependency against the Lanes module. because of this linda_id function(eDO_metatable) must push 2 values on the stack: a metatable and a deep version string obtained from luaG_pushdeepversion()
* Minor fixes and tweaksBenoit Germain2014-05-161-0/+14
| | | | | | * bumped version to 3.9.5 * lanes.gen() error reporting improvements * fix linda.__towatch to return non-nil when the linda is empty
* Fixed error handling when handler isn't calledBenoit Germain2014-03-201-0/+6
| | | | | | | | * bumped version to 3.9.4 * set_finalizer throws an error if provided finalizer isn't a function * fix error handling when the error doesn't generate an error handler call (IOW, all errors but LUA_ERRRUN) * provide callstack if LUA_ERRRUN occurs inside a finalizer
* Don't mutex-wrap require() more than onceBenoit Germain2014-03-191-0/+3
|
* Fixed crash when using protect_allocator optionBenoit Germain2014-03-171-0/+3
|
* linda:send() improvementsBenoit Germain2014-02-271-0/+6
| | | | | | | | | * Bumped version to 3.9.3 * new exposed variable linda.null that exposes the internal NIL_SENTINEL marker * linda:send() interprets send key linda.null as authorization to silently send a single nil when not provided with anything to send (useful when sending results of a function that can return nothing)
* Fixed some compilation warningsBenoit Germain2014-02-261-0/+1
|
* Multiverse compatibilityBenoit Germain2014-02-261-0/+9
| | | | | | | | | | | | | | | * bumped version to 3.9.2 * Internal rework: the whole Lanes engine now works "per universe" to allow concurrent Lanes execution in more than one embedded master state * this universe is a full userdata created in the master state, selfdestruct_gc is the __gc for this userdata * most of what was initialized only once is now per-universe * Fixed potential crashes at desinit if problems occur during keeper states initialisation * Fixed require() not always serialized properly * Raise an error instead of crashing on deep userdata prelude memory allocation failure * Added forgotten mutex desinitialisation at universe shutdown
* Multi-state initialisation issueBenoit Germain2014-02-241-0/+3
| | | | | Fix lookup database table not being created when it should if Lanes is required in more than one Lua master state
* more graceful handling of out-of-memory errorsBenoit Germain2014-02-181-0/+3
| | | | | * raise an error instead of dereferencing a NULL pointer on deep userdata creation and lane struct creation
* Lanes init crash fixBenoit Germain2014-02-181-0/+7
| | | | | | | | | | | * bumped version to 3.9.1 * keeper array is allocated with master state's alloc function instead of malloc()/free() * prevent application crash when specifying a very large number of keepers in the configuration options * removed some keeper desinit legacy dead code * any error occuring during one-time inits is raised outside the one-time mutex protected code region
* lindas can have a group for keeper state assignation controlBenoit Germain2014-02-171-0/+3
|
* Deep userdata support improvementsBenoit Germain2014-02-171-0/+7
| | | | | | | | | | | | * bumped version to 3.9.0 * keepers now require "package", receive package.path & package.cpath, and call on_state_create() if it is a C function * changed the deep public API (improved deep idfunc signature, renamed luaG_deep_userdata to luaG_newdeepuserdata) * if an error occurs while copying a deep userdata, don't raise inside the keeper state * fixed situations where raised errors could lead to memory leaks (deep gc)
* more fixes/tweaks about cancelled lindasBenoit Germain2014-02-131-0/+7
| | | | | | | | | | * bumped version to 3.8.5 * linda:limit() returns lanes.cancel_error on a limited linda * lanes.genlock() and lanes.genatomic() support cancelled lindas by returning lanes.cancel_error whenever appropriate * fixed a possible Lua stack overflow when calling linda:dump() * fixed cases where linda:send() and linda:receive() would not return lanes.cancel_error when they should
* new API linda:cancel("read"|"write"|"both"|"none")Benoit Germain2014-02-101-0/+6
| | | | | | | * bumped version to 3.8.4 * all linda operations return lanes.cancel_error on a cancelled linda * raised an internal string length so that longer linda names are fully output before truncation applies when doing tostring( linda)
* another Lua stack overflow fixBenoit Germain2014-01-241-0/+3
|
* 2 crash fixes and 1 experimentBenoit Germain2014-01-221-0/+6
| | | | | | | | | | * bumped version to 3.8.3 * fixed a possible Lua stack overflow when sending complex function through lindas or as lane body * experimental: lanes.nameof() scans the registry if a regular search didn't yield anything interesting * fixed lanes.nameof() misbehaving when encountering a LUA_TTHREAD object
* new lane launcher option gc_cbBenoit Germain2014-01-221-0/+5
| | | | | | | | * bumped version to 3.8.2 * new lane launcher option gc_cb to set a callback that is invoked when a lane is garbage collected * Fix more invalid memory accesses when fetching the name of a joined lane with lanes:threads() (because its lua_State is closed)