lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


I am happy to announce the third public release of LuaCocoa (v. 0.3).
This version is mostly a Xcode 4 and Lion compatibility release, but
also includes a handful of improvements.

LuaCocoa is a next generation Lua/Objective-C bridge that uses
BridgeSupport and libffi on Mac OS X to provide full automatic
bindings to Objective-C and the more difficult areas of the platform
such as functions, macros, structs, constants, enums, etc. LuaCocoa is
under the MIT License.


Release Notes for v 0.3: (Xcode 4 / Lion compatibility changes, final
PowerPC release?)

- Changed LuaCocoa to use the non-'Full' .bridgesupport files instead
of the 'Full' bridgesupport files because Lion removed the 'Full'
versions without warning.
	- As fallout from this change, LuaCocoa no longer requires Obj-C
classes to be fully specified in BridgeSupport data to refer to them
in Lua code (i.e. Using NSClassFromString to refer to a is no longer
necessary to refer to an unspecified class.)

- Added new Xcode 4 project to deal with Xcode 4 compatibility, plus
minor Xcode script phase compatibility fixes.
	- This might be the last PowerPC release because building PowerPC is
hard in Xcode 4 and Lion

- Remove use of helper categories in LuaCocoa implementation to avoid
headaches with static linking.

- Added APIS: LuaCocoa_PrependToLuaSearchPath,
LuaCocoa_PrependToCSearchPath, LuaCocoa_AppendToCSearchPath. These
APIs help you add more search paths for Lua plugins and Lua files.
	- The LuaCocoa class will add the .app bundle's PlugIns path to the
begining of the search path.
	- The luacocoa shell tool has been modified to look in
*/Library/Application Support/LuaCocoa/PlugIns for additional .so
modules, and */Library/Application Support/LuaCocoa/Scripts for
additional .lua scripts.

- Bug fix for returning const char* (strings) through the bridge, e.g.
nstring:UTF8String().

- Added new preprocessor define LUACOCOA_DONT_USE_BUNDLED_LUA_HEADERS
so #include "lua.h" can be used instead of <LuaCocoa/lua.h> in case
people need to use a custom version of Lua which is not located in a
LuaCocoa subdirectory (for people building LuaCocoa themselves).

- Optional Source Code: Added simple lua_isinteger implementation to
stand in for projects that need LuaCocoa but use a stock version of
Lua without LNUM. It is located the the directory: 'etc'

- Updated bundled LPeg to 0.10.

- Doxygen (in repo): Experimenting with man page generation in
addition to html and Xcode DocSets



To learn more about LuaCocoa and grab the binaries, please visit:
http://playcontrol.net/opensource/LuaCocoa/

-Eric
--
Beginning iPhone Games Development
http://playcontrol.net/iphonegamebook/