Forum: Ruby-Gnome 2 [ANN] Ruby-GNOME2 1.1.9

Ee6ffca720cc428d70247dcd7377dd48?d=identicon&s=25 Kouhei Sutou (Guest)
on 2012-12-30 15:50
(Received via mailing list)
Hi,

The Ruby-GNOME2 project released Ruby-GNOME2 1.1.9:
  http://ruby-gnome2.sourceforge.jp/hiki.cgi?News_20121230_1

This is a experimental GObject Introspection support release!

After GObject Introspection bindings is stable, you can
create Ruby bindings for GObject based libraries such as
Clutter. (You need to adjust auto generated APIs to adopt
Rubyish API.)

The Ruby bindings is named gobject-introspection gem. You
can install by:

  % gem install gobject-introspection

I confirmed that Clutter sample Ruby script that is ported
from Clutter's sample C program works.

  https://github.com/ruby-gnome2/ruby-gnome2/blob/ma...

The sample Ruby bindings for Clutter is written about 10
lines:

  https://github.com/ruby-gnome2/ruby-gnome2/blob/ma...

  require "gobject-introspection"

  module Clutter
    class Loader < GObjectIntrospection::Loader
      private
      def load_constant_info(info)
        return unless /\A(?:KEY_|COLOR_)/ =~ info.name
        super
      end

      load("Clutter", Clutter)
    end
  end

(The sample Ruby bindings doesn't adjust APIs. So They
has non-Rubyish APIs.)

I'm trying cross compiling GObject Introspection to Windows
by MinGW on Debian GNU/Linux sid but it will be
failed... Because GObject Introspection requires Python that
is not supported cross compiling by MinGW and needs to run
.exe to generate .typelib and .gir. I hope that
ftp.gnome.org distributes GObject Introspection binary...


== Changes

=== Ruby/GLib2

  * Improvements
    * Renamed G_DEF_CLASS4 to G_DEF_CLASS_WITH_PARENT.
      G_DEF_CLASS4 is still usable but it is deprecated.

=== Ruby/GObjectIntrospection

  * Added. It is still experimental.

Thanks,
--
kou
Please log in before posting. Registration is free and takes only a minute.
Existing account

NEW: Do you have a Google/GoogleMail, Yahoo or Facebook account? No registration required!
Log in with Google account | Log in with Yahoo account | Log in with Facebook account
No account? Register here.