Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 9a513bb0f515a28c4c982655dfd62387 > files > 5

lua-lgi-0.6.2-5.fc16.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
	<meta http-equiv="content-type" content="text/html; charset=utf-8" />
	<title>LGI</title>
	<link rel="stylesheet" type="text/css" href="default.css" />
</head>
<body>

<h1>LGI</h1>

<p>LGI is gobject-introspection based dynamic Lua binding to GObject
based libraries.  It allows using GObject-based libraries directly
from Lua.</p>

<p>Licensed under
<a href="http://www.opensource.org/licenses/mit-license.php">MIT-style</a>
license, see LICENSE file for full text.</p>

<p>Home of the project is on <a href="http://github.com/pavouk/lgi">GitHub</a>.</p>

<p>LGI is tested and compatible with standard Lua 5.1 and Lua 5.2 and
recent LuaJIT 2 betas.  Compatibility with other Lua implementations
is not tested yet.</p>

<p>If you need to support pre-gobject-introspection GTK (ancient GTK+ 2.x
releases), use <a href="http://sourceforge.net/projects/lua-gnome/">Lua-Gnome</a>.</p>

<h2>Installation:</h2>

<p>In order to be able to compile native part of lgi,
gobject-introspection >= 0.10.8 development package must be installed,
although preferred version is >= 1.30.  The development package is
called <code>libgirepository1.0-dev</code> on debian-based systems (like Ubuntu)
and <code>gobject-introspection-devel</code> on RedHat-based systems (like Fedora).</p>

<p>Using LuaRocks:</p>

<pre><code>luarocks install lgi
</code></pre>

<p>Alternatively, use make-based installation:</p>

<pre><code>make
[sudo] make install [PREFIX=&lt;prefix&gt;] [DESTDIR=&lt;destdir&gt;]
</code></pre>

<p>Please note that on BSD-systems you may need to use 'gmake'.</p>

<h2>Usage</h2>

<p>See examples in samples/ directory.  Documentation is available in
doc/ directory in markdown format.  Process it with your favorite
markdown processor if you want to read it in HTML.</p>

<h2>History</h2>

<h3>0.6.2 (25-Jun-2012)</h3>
<p> - Avoid unexpected dependency on cairo-devel, cairo-runtime is now
   enough
 - Make set<em>resident() more robust and fix stack leak for lua5.2 case,
   avoid useless warning when set</em>resident() fails (to accomodate for
   static linking case).
 - Fix small memory leak (mutex) which occured once per opened
   lua_State using lgi.</p>

<h3>0.6.1 (19-Jun-2012)</h3>
<p> - objects and structs: actually implement '<em>type' property as documented
 - tests: Fix regression tests for less common platforms
 - Pango: Add a few missing overrides
 - cairo: Fix Context:user</em>to<em>device() family of methods.
 - GStreamer: Add support for transfer!=none for input objects.  This
   is needed to avoid leaks caused by strange usage of transfer
   annotations of gstreamer-0.10
 - GStreamer: Add more missing overrides
 - GStreamer: Fix and improve samples
 - Various fixes for usecase when lua context with loaded lgi is
   closed and opened again
 - Gtk: Add missing Gtk.Builder:connect</em>signals() override</p>

<h3>0.6 (22-May-2012)</h3>
<p>- Add cairo bindings, cairo sample and finish some gtk-demo parts
  which were requiring cairo</p>

<h3>0.5.1 (not officially released)</h3>
<p>- Fix a few problems on more exotic architectures (s390x, mips, ia64).
- Allow passing <code>byte.buffer</code> when UTF8 string is requested.</p>

<h3>0.5 (15-Apr-2012)</h3>

<ul>
    <li>Port gtk3-demo to Lua code.  Try running 'lua samples/gtk-demo/main.lua'</li>
    <li>Finish override set for Gtk</li>
    <li>Extend and document features for interfacing LGI with external
    libraries (exporting and importing objects and structures via
    lightuserdata pointers).</li>
    <li>Fix: a few bugs with resolving bitflags values</li>
    <li>Fix: a few bugs in coroutines-as-callbacks feature</li>
    <li>Fix: workaround for crashing bug in gobject-introspection 1.32.0</li>
    <li>Fix: don't try to squeeze GType into lua_Number any more; this could
    cause crashes on some 64bit arches.</li>
</ul>

<h3>0.4 (4-Jan-2012)</h3>

<ul>
    <li>Changed handling of enums and bitflags, switched from marshaling
    them as numbers to prefering strings for enums and tables (sets or
    lists) for bitflags.  Numeric values still work for Lua->C
    marshalling, but backward compatibility is broken in C->Lua enum and
    bitflags marshalling.</li>
    <li>Compatible with Lua 5.2 and LuaJIT</li>
    <li>Added standardized way for overrides to handle constructor argument
    table array part.</li>
    <li>Existing Gtk overrides reworked and improved, there is now a way to
    describe and create widget hierarchies in Lua-friendly way.  See
    <code>docs/gtk.lua</code>, chapter about <code>Gtk.Container</code> for overview and
    samples.</li>
    <li>Various bugfixes and portability fixes.</li>
</ul>

<h3>0.3 (28-Nov-2011)</h3>

<ul>
    <li>Project hosting moved to GitHub.</li>
    <li>Build system switched from <code>waf</code> to simple Makefile-based one</li>
    <li>Added automatic locking of thread-sensitive libraries (Gdk and
    Clutter).  There is no need to add <code>Gdk.threads_enter()</code>,
    <code>Gdk.threads_leave()</code> and <code>Clutter.threads_enter()</code>,
    <code>Clutter.threads_leave()</code> pairs into application, lgi handles this
    automatically.</li>
    <li>Added new sample <code>samples/console.lua</code>, which implements already
    quite usable Lua console using Gtk widgets.</li>
    <li>Fixes for compatibility with older gobject-introspection 0.10.8
    package</li>
    <li>Testsuite is not built automatically, because building it can be
    apparently problematic on some systems, causing installation failure
    even when testsuite is not needed at all.</li>
    <li>Remove <code>setlocale()</code> initialization, which could break Lua when used
    with some regional locales.  The downside of this change is that
    marshaling file names containing non-ASCII characters on systems
    which define <code>G_BROKEN_FILENAMES</code> environment variable (probably
    only Fedora 15) does not work now.</li>
</ul>

<h3>0.2 (7-Nov-2011)</h3>

<p>First public release</p>

</body></html>