<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lanes/docs/index.html, branch v3.0.0</title>
<subtitle>A mirror of https://github.com/LuaLanes/lanes.git
</subtitle>
<id>https://git.lua4.win/lanes/atom?h=v3.0.0</id>
<link rel='self' href='https://git.lua4.win/lanes/atom?h=v3.0.0'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/'/>
<updated>2011-11-14T18:41:28+00:00</updated>
<entry>
<title>* removed packagepath and packagecpath options, replaced by a package table, whose fields path, cpath, loaders, preload are transfered</title>
<updated>2011-11-14T18:41:28+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-11-14T18:41:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=87431bcc0ece1eaf9305593223bb0c5145004044'/>
<id>urn:sha1:87431bcc0ece1eaf9305593223bb0c5145004044</id>
<content type='text'>
* code cleanup to facilitate transition between WIN32 and PTHREAD impleentations
* tentative fix for desinit crashes when free running lanes are killed at process shutdown
</content>
</entry>
<entry>
<title>* process exit change: close everything at GC when main state closes, not when atexit() handlers are processed</title>
<updated>2011-11-05T16:31:02+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-11-05T16:31:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=053f7cff3c95acb915e6babfd306971f11bb7986'/>
<id>urn:sha1:053f7cff3c95acb915e6babfd306971f11bb7986</id>
<content type='text'>
   * Lua 5.2-style module:
      * module() is no longer used to implement lanes.lua
      * a global "lanes" variable is no longer created when the module is required
      * the Lanes module table is returned instead
   * Lanes must be initialized before used:
      * the first occurence of 'require "lanes"' produces a minimal interface that only contains a configure() function
      * the remainder of the interface is made available once this function is called
      * subsequent calls to configure() do nothing
      * configure() controls the number of keeper states and the startup of timers
   * LuaJIT 2 compatibility
      * non-Lua functions are no longer copied by creating a C closure from a C pointer, but through 2-way lookup tables
      * this means that if a lane function body pulls non-Lua functions, the lane generator description must contain the list of libraries and modules that exports them
      * introduces a change in configuration .globals management: contents are copied *after* std libs are loaded
      * new .required configuration entry to list modules that must be require()'ed before lane body is transferred
   * lane:cancel() wakes up waiting lindas like what is done at lane shutdown
</content>
</entry>
<entry>
<title>* linda uses a fast FIFO implementation to speed up data exchanges</title>
<updated>2011-04-18T06:25:23+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-04-18T06:25:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=05256f1e75f8583829bbaa7cdf1fb1518b93332a'/>
<id>urn:sha1:05256f1e75f8583829bbaa7cdf1fb1518b93332a</id>
<content type='text'>
* new linda:count() method
* new linda batched data read mode
* proper key type check in all linda methods
* fix setup-vc.cmd to support Visual Studio 2010 and Windows 7 64 bits
* bugfix: release keeper state mutex at desinit
</content>
</entry>
<entry>
<title>New features</title>
<updated>2011-03-30T17:44:17+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-03-30T17:16:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=2d5d798c24286f10c1bffd5ea4ac466c2c3a12fa'/>
<id>urn:sha1:2d5d798c24286f10c1bffd5ea4ac466c2c3a12fa</id>
<content type='text'>
* linda honors __tostring and __concat
* new accessor linda:keys(), to retrieve the list of keys with pending data inside a linda
* new lanes options packagepath and packagecpath, in case one needs to set them differently than the default
</content>
</entry>
<entry>
<title>* fixed potential crash at application shutdown when calling lua_close() on a killed thread's VM.</title>
<updated>2011-03-01T20:12:56+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-03-01T20:12:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=e97adefde985e30fe31ffa036c74ffb0ce10ca26'/>
<id>urn:sha1:e97adefde985e30fe31ffa036c74ffb0ce10ca26</id>
<content type='text'>
* exposed cancel_test() in the lanes to enable manual testing for cancellation requests.
* removed kludgy {globals={threadName}} support, replaced with a new function set_debug_threadname().
</content>
</entry>
<entry>
<title>Make the number of internal keeper states selectable by an optional parameter passed to require.</title>
<updated>2011-02-21T19:33:39+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-02-21T19:33:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=974aa4343cf900938b5d357d10798d91faf60f5a'/>
<id>urn:sha1:974aa4343cf900938b5d357d10798d91faf60f5a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>* keeper.lua is now embedded in text form instead of bytecode to improve LuaJIT2-compatibility (but this is not enough).</title>
<updated>2011-02-18T19:33:43+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-02-18T19:33:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=1760eafa1d2ebce8f07e11414a53d4a251af5b8e'/>
<id>urn:sha1:1760eafa1d2ebce8f07e11414a53d4a251af5b8e</id>
<content type='text'>
* moved keeper-related code in a separate source file
</content>
</entry>
<entry>
<title>Lane userdata implementation refactoring:</title>
<updated>2011-02-17T06:52:53+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-02-17T06:52:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=ab233d0c9a1edc34836e2249c1eb6d714f1066b5'/>
<id>urn:sha1:ab233d0c9a1edc34836e2249c1eb6d714f1066b5</id>
<content type='text'>
    - Refactor lane proxy implementation: it is now a full userdata instead
      of a table, and its methods are implemented in C instead of Lua.
      * its metatable is no longer accessible.
      * writing to the proxy raises an error.
      * it is no longer possible to overwrite its join() and cancel() methods
    - when a deep userdata idfunc requests a module to be required, manually
      check that it is not loaded before requiring it instead of relying on
      the require function's loop detection feature.
    - when a module must be required, raise an error if the 'require' function
      is not found in the target state.
    - we know Lanes is loaded in the master state, so we don't force it
      to be required in every lane too when a linda deep userdata is copied.
</content>
</entry>
<entry>
<title>Changed idfunc signature and contract to clarify that fact it is not lua-callable and to be able to require the module it was exported from in the target lanes.</title>
<updated>2011-02-12T16:06:03+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-02-12T16:06:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=a661736f7984292a41d71847de68590f6b8ca08a'/>
<id>urn:sha1:a661736f7984292a41d71847de68590f6b8ca08a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Updated CHANGES</title>
<updated>2011-01-29T16:40:50+00:00</updated>
<author>
<name>Benoit Germain</name>
<email>bnt.germain@gmail.com</email>
</author>
<published>2011-01-29T16:40:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lanes/commit/?id=3dc924cac5f687ca03d187d0c4ed7d088834ffc3'/>
<id>urn:sha1:3dc924cac5f687ca03d187d0c4ed7d088834ffc3</id>
<content type='text'>
Fixed makefile so that make finds lua.exe
Updated contact information in documentation
</content>
</entry>
</feed>
