2008-09-06  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_object.c: cleanup.

	* src/rbgobj_object.c: destroy object on weak notify. [Bug #2060606]
	Reported by Arnaud Cornet. Thanks!!!

2008-07-27  Sjoerd Simons  <sjoerd@luon.net>

	* src/rbgobj_closure.c: Only use G_REMOVE_RELATIVE when a closure is
	directly invalidated. This prevents object creation when freeing the
	closure from the garbage collector.

2008-07-09  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_object.c (gobj_get_property): fix a bug introduced in
	r2740. (Gtk::Image#stock returns String not Symbol)

2008-06-23  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb (create_makefile_at_srcdir): allow source
	directory that isn't absolute path.
	Reported by Guillaume Cottenceau. Thanks!!!

2008-06-19  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype_body): add
	create_class option.

	* src/rbgobject.h (GTYPE2CINFO_NO_CREATE): add.

	* src/rbgobject.h, src/rbgobj_type.c
	(rbgobj_lookup_class_by_gtype_full): add.

	* src/rbgobj_typeinstance.c (each_cinfo): don't create object
	during GC to work with ruby 1.8.7.
	Reported by Kazuhiro NISHIYAMA. Thanks!!!

2008-06-14  Kouhei Sutou  <kou@cozmixng.org>

	* ./: use test-unit not test-unit-ext.
	* test/glib-test-init.rb: add.
	* test/run-test.rb: use test/glib-test-init.

2008-06-11  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb (check_ruby_func): include ruby.h in
	have_func test.

	* src/rbgobj_object.c (gobj_inspect): add const.

	* extconf.rb: include glib.h or ruby.h in have_func test.

2008-06-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb (create_top_makefile): cleanup.

2008-05-23  Kouhei Sutou  <kou@cozmixng.org>

	* test/run-test.rb: use which not --version to detect make.

2008-05-14  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_unicode.rb:
	- add uconv check.
	- add GLib version check.

2008-05-13  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_keyfile.c (keyfile_load_from_dirs): fix index.

2008-05-02  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_type.c: fix style.

2008-05-02  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgobj_type.c: Make rbgobj_lookup_class_by_gtype a thread critical
	section. Prevents issues if two ruby threads want to convert an unknown
	GObject class at the same time.

2008-05-02  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib.h (GERROR2RVAL): define.

2008-04-26  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil.c (rbgutil_glist2ary_string)
	(rbgutil_gslist2ary_and_free, rbgutil_gslist2ary_boxed_and_free):
	fix not freed bug.

	* src/rbgutil.h (GLIST2ARY_STR, GLIST2ARY_STR_FREE): add.

	* src/glib2.def, src/rbgutil.c (rbgutil_glist2ary_string,
	rbgutil_glist2ary_string_and_free): add.

	* src/rbglib.h (RBG_INSPECT): add.

	* src/glib2.def: src/rbglib.c (rbg_rval_inspect): add.

	* src/rbglib.h (RVAL2CSTR_ACCEPT_NIL): use function instead of
	macro to avoid double evaluation.

	* src/glib2.def, src/rbglib.c (rbg_rval2cstr_accept_nil): add.

2008-04-22  Sjoerd Simons <sjoerd@luon.net>

	* src/rbglib_maincontext: Handle both thread->wait_for WAIT_FD and
	WAIT_SELECT properly.

2008-04-20  Sjoerd Simons <sjoerd@luon.net>

	* src/rbglib_maincontext: Properly handle the case where the poll setup
	function returns early.

2008-04-20  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_maincontext.c: free old FDs.

2008-04-17  Sjoerd Simons <sjoerd@luon.net>

	* src/rbglib_maincontext.c: When preparing our source only add pollfds if we
	were not already polling for it. Fixes 100% cpu usage as soon as another
	ruby thread is blocked on a file descriptor.

2008-04-16  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgobject.c: When initializing look at the complete inheritance tree to
	see if any superclass defined a specialized initialize function

2008-04-15  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil.h:
	- GLIST2ARY_WITH_FREE -> GLIST2ARY_FREE.
	- GSLIST2ARY_WITH_FREE -> GSLIST2ARY_FREE.

2008-04-14  Kouhei Sutou  <kou@cozmixng.org>

	* test/glib-test-utils.rb (GLibTestUtils#only_win32): use GLib.os_win32?.

	* src/rbglib_win32.c: implement
	g_win32_get_package_installation_directory_of_module() defined in
	2.16. Maybe work...

	* test/glib-test-utils.rb: add only_win32.

	* test/test_win32.rb: add.

	* src/rbglib_fileutils.c: implement g_format_size_for_display()
	defined in 2.16.

	* test/test_file_utils.rb: add.

	* src/rbglib_keyfile.c:
	- implement g_key_file_load_from_dirs() defined in 2.14.
	- define G_KEY_FILE_DESKTOP_* defined in 2.14.

	* test/test_key_file.rb: add.

	* src/rbglib_utils.c:
	- implement g_get_user_XXX_dir() and g_get_system_XXX_dirs().
	- implement g_get_user_special_dir() defined in 2.14.

	* test/test_utils.rb: add.

	* src/lib/glib2.rb (GLib::UserDirectory): remove DIRECTORY_ prefix.

	* src/rbglib.c: Init_glib_utils() use G_DEF_CLASS().

2008-04-13  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_unicode.c, test/test_unicode.rb: bind Unicode related
	functions added in GLib 2.14.

	* test/run-test.rb: use glib-test-utils.rb.

	* test/glib-test-utils.rb: add.

	* src/rbgobj_value.c (rbgobj_initialize_gvalue): support more
	objects.

	* src/rbgobj_object.c, src/rbgobj_boxed.c, src/rbgobj_param.c,
	src/rbgobj_enums.c, src/rbgobj_typeinterface.c, src/rbgprivate.h:
	export Ruby classes/modules associated fundamental GType privately.

2008-04-10  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobject.h: G_DEF_CLASS2 -> G_DEF_CLASS_WITH_GC_FUNC.

	* src/glib2.def: export g_connect_flags_get_type().

	* extconf.rb, src/rbgobj_signal.c: make GSignalFlags,
	GConnectFlags and GSignalMatchType GLib::Enum or GLib::Flags.

	* test/test_signal.rb: add.

	* src/rbgobj_type.c, src/glib2.def (rbgobj_define_class): add.

	* src/rbgobject.h (GTYPE2CLASS), src/rbgobj_type.c
	(rbgobj_lookup_class_by_gtype): accept G_TYPE_INVALID.

	* src/rbgutil.h:
	- GLIST2ARYF -> GLIST2ARY_WITH_FREE.
	- GSLIST2ARYF -> GSLIST2ARY_WITH_FREE.

	* src/rbgobject.h: remove nonexistent
	rbg_{set,remote}_internal_poll_func.

2008-04-05  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgutil_callback.c: Create the pipe inside
	rbgutil_start_callback_dispatch_thread to ensure it's created in a race-free
	way

2008-04-04  Kouhei Sutou  <kou@cozmixng.org>

	* src/glib2.def: follow the recent changes.

	* extconf.rb, src/rbgutil_callback.c: use pipe() for communicating
	threads.

	* src/rbglib_bookmarkfile.c (bf_load_from_data): don't declare
	variable after some expression.

2008-04-01  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib.h (CSTR2RVAL2), src/lib/glib2.rb: cleanup.

2008-03-31  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib.h (RVAL2CSTR_ACCEPT_NIL): renamed from RVAL2CSTR2.

	* src/glib2.def: exported rbgobj_get_ruby_object_from_gobject.

2008-03-30  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobject.h (GOBJ2RVAL_UNREF): renamed from GOBJ2RVALU().

	* src/rbgobj_object.c, src/rbgobj_param.c, src/rbgprivate.h:
	get_value -> get_ruby_object.

	* src/rbgobject.c: followed the above changes.

	* src/rbgobject.h: exported rbgobj_get_ruby_object_from_gobject().

2008-03-23  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib.h (CSTR2RVAL_FREE): renamed from CSTR2RVAL2.

2008-03-22  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil_callback.c (rbgutil_protect):
	- passed exception.
	- fixed missing type conversion.

	* src/lib/glib2.rb (GLib.exit_application): received exception.

2008-03-20  Kouhei Sutou  <kou@cozmixng.org>

	* test/test_unicode.rb: fixed duplicated name.

	* test/run-test.rb: $VERBOSE = true.

	* src/rbgobj_enums.c, src/rbglib_error.c: used g_ascii_toupper()
	instead of toupper() to be locale independent. [Bug #1901843]
	Reported by Joseph Method. Thanks!!!

2008-03-15  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/glib-mkenums.rb: used constants instead of consts.
	* test/test_mkenums.rb: added.
	* test/run-test.rb: required 'glib2'.

	* src/lib/glib-mkenums.rb: used $Id$ instead of $Rev$.

	* src/lib/glib-mkenums.rb: GLib::Enum -> GLib::EnumDefinition to
	avoid name conflict.

	* src/lib/glib-mkenums.rb: supported glib 2.16.1.
	[Bug #1886689] [Bug #1913301]
	Reported by Mikael Hallendal and mezz. Thanks!!!

	* ./, test/run-test.rb: used TestUnitExt.

	* test/run-test.rb: renamed from test/runner.rb.

	* test/: renamed from tests/.

2008-03-04  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: used G_RELATIVE2 and "closures" ID for
	keeping GRClosure reference instead of G_ADD_CHILD to protect
	GRClosures from G_CHILD_REMOVE_ALL.

2008-02-21  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil_callback.c:
	- used GAsyncQueue instead of pipe() because pipe() isn't
	portable.
	- rbgutil_{start,stop}_callback_handle_thread ->
	  rbgutil_{start,stop}_callback_dispatch_thread.

2008-02-17  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil_callback.c: initialized callback_handle_thread
	variable as nil.

2008-02-14  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil_callback.c: callback handle thread isn't started
	automatically. Call rbgutil_start_callback_handle_thread() before
	some callbacks invoked. This change breaks Sjoerd's GStreamer
	bindings. Sorry.

	* src/rbglib_maincontext.c: don't use rb_thread_critical because
	we don't create a thread now.

	* src/rbgutil.h, src/glib2.def: exported
	rbgutil_{start,stop}_callback_handle_thread().

2008-01-07  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobject.c (rbgobj_define_property_accessors),
	  src/rbgobj_signal.c (rbgobj_define_action_methods): don't eval
	empty string because that crashes ruby 1.9.0.

2008-01-06  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_enums.c (rbgobj_init_flags_class): added "_" prefix
	to fix invalid predicate method name that starts with
	digits. e.g. 4mv? -> _4mv?. Or just ignore?

	* src/rbgobj_convert.c (rbgobj_convert_rvalue2gtype): implemented.

2008-01-04  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib.h (RARRAY_PTR, RARRAY_LEN): defined.

	* src/rbgobject.h (GPTR2RVAL, RVAL2GPTR): added.

2008-01-03  Kouhei Sutou  <kou@cozmixng.org>

	* src/depend: don't use ftools.
	Reported by Carlo E. Prelz. Thanks!!!

2008-01-02  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_value.c, src/rbgobject.h, src/glib2.def
	(rbgobj_initialize_gvalue): added. (experimental)

	* src/rbgobj_convert.c, src/rbgprivate.h
	(rbgobj_convert_rvalue2gtype): should be implemented.

2007-12-31  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil_callback.c: fixed ruby's thread check.

	* src/rbgutil_callback.c: fixed a wrong select() argument.
	Reported by Carlo E. Prelz. Thanks!!!

2007-12-29  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_mainloop.c: moved poll related functions to ...
	* src/rbglib_maincontext.c: ... here.

	* src/rbglib_mainloop.c: supported ruby 1.9.0 thread model.

	* extconf.rb: removed a needless check.

2007-12-28  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_object.c: rb_hash_aset()'s key should be VALUE not ID.

2007-11-28  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_mainloop.c (source_prepare_add_poll_fd): treated
	G_IO_HUP as except case not read case.

2007-11-27  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_mainloop.c: don't use g_source_is_destroyed().

	* extconf.rb: detected curr_thread.

	* src/rbglib_mainloop.c: supported ruby 1.8.6 p0.

2007-11-26  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgutil_callback.c: used rb_thread_select() instead of
	rb_thread_wait_fd().

	* src/rbglib_mainloop.c: used G_IO_IN as initial events.

	* src/utils_callback.c: renamed to ...
	* src/rbgutil_callback.c: ... this.
	* src/utils_int64.c: renamed to ...
	* src/rbglib_int64.c: ... this.
	* src/rbglib.c: followed the above changes.

	* src/rbglib_mainloop.c (source_check): fixed a typo.

2007-11-25  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_mainloop.c: used GPollFD.

2007-11-23  Kouhei Sutou  <kou@cozmixng.org>

	* tests/test_glib2.rb: added GC.start.

2007-11-21  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_mainloop.c (source_prepare): checked pending signals.

2007-11-17  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_mainloop.c: used GSource not poll func overriding.

2007-11-11  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_fundamental.c: re-added for making more flexible
	backward compatibility layer.
	* src/glib2.def, src/rbgcompat.h: followed the above change.

	* src/rbgobject.h (RG_DEF_CONVERSION), src/rbgcompat.h: used RG_
	prefix not G_ prefix.

	* src/rbgobject.c: made GOBJ2RVAL overridable for non-fundamental
	type.

	* src/global.h: merged to src/rbgprivate.h and removed.
	* src/: followed the above changes.

	* src/glib2.def, src/depend: followed the below changes.

	* src/rbgobj_fundamental.c, src/rbgobj_convert.c,
	src/rbgobj_value.c, src/rbgobject.[ch], src/rbgobj_type.c: renamed
	to rbgobj_convert_* from rbgobj_fund_*. The previous API is still
	available but need to rebuild.
	* src/rbgprivate.h, src/rbgcompat.h: added.

2007-11-10  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobject.[ch], src/rbgobj_fundamental.c: made RVAL2GOBJU
	customizable.

2007-10-04  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb: fixed build failure with top-level
	extconf.rb. Reported by andy. Thanks!

2007-10-03  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobject.c (rbgobj_ruby_object_from_instance2): don't use
	functions of Ruby for GTypeInstance.

	* src/rbglib_mainloop.c (ml_initialize): all arguments of
	GLib::MainLoop.new are optional.

2007-09-29  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb (create_makefile_at_srcdir): don't use TOPDIR.

2007-08-30  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_unicode.c (rbglib_m_unichar_get_script):
	G_TYPE_UNICODE_SCRIPT_TYPE -> G_TYPE_UNICODE_SCRIPT.

	* src/rbglib_maincontext.c (timeout_add_seconds): used
	g_timeout_add_seconds_full() not g_timeout_add_seconds().

	* src/lib/mkmf-gnome2.rb: cleanup.

2007-08-30  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* src/lib/mkmf-gnome2.rb: re-supported build in no-source
	directory.

2007-08-14  Vincent Isambart <vincent.isambart@gmail.com>
	* src/utils_int64.c: included rbglib.h instead of ruby.h
	because utils_int64.c uses the RVAL2CBOOL macro that is declared
	in rbglib.h and thus resulted in a dynamic link error on Mac
	that the system could not find a RVAL2CBOOL function.

2007-08-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_enums.c: supported convenience GEnum and GFlags
	notation. e.g.:
	  GLib::UTF8.normalize(utf8, GLib::NormalizeMode::NFD)
          ->
	  GLib::UTF8.normalize(utf8, :nfd)

	  key_file.load_from_data(data,
	                          GLib::KeyFile::KEEP_COMMENTS |
	                          GLib::KeyFile::KEEP_TRANSLATIONS)
	  ->
	  key_file.load_from_data(data, [:keep_contents, :keep_translations])

	* tests/test_enum.rb: added tests for the above feature.

2007-07-25  Sjoerd Simons   <sjoerd@luon.net>
	* src/rbgobj_signal.c: Properly use the GValueArray api in emit_body.
	Causes all values in the parameter array to be unset after emission.
	Fixing some reference leaks.

2007-07-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c, src/rbgobject.h: deperecate
	rbgobj_add_abstract_but_create_instance_class() and
	move abstract-type check from .allocate to dummy #initialize.

2007-07-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: use rbgobj_init_object_class() to initialize
	object class.
	* src/rbgobj_object.c, src/global.h: add new function
	rbgobj_init_object_class().

	* src/rbgobj_object.c (rbgobj_gobject_new): check returned value of
	g_object_newv().

2007-07-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h: remove unused/undefined functions
	rbgobj_boxed_ref() and rbgobj_boxed_unref().
	
	* src/rbgobject.c: new function rbgobj_invalidate_relatives().
	* src/rbgobject.c: move GObject stuffs to rbgobj_object.c again.
	* src/rbgobj_object.c: deprecate rbgobj_object_create().
	* src/rbgobj_boxed.c: deprecate rbgobj_boxed_create().

	* src/utils_callback.c: brush up.

2007-07-13  Guillaume Cottenceau

	* src/rbglib_iochannel.c, src/rbglib_maincontext.c,
	src/rbglib_mainloop.c, src/rbglib_source.c, src/rbglib_utils.c,
	src/rbgobj_boxed.c, src/rbgobj_object.c, src/rbgobj_param.c,
	src/rbgobj_paramspecs.c, src/rbgobj_signal.c, src/rbgobj_type.c,
	src/rbgobj_typeinterface.c, src/rbgobj_value.c, src/rbgobject.c,
	src/utils_int64.c: replace RTEST uses by RVAL2CBOOL

2007-07-13  Guillaume Cottenceau

	* src/rbgobj_closure.c, src/rbgobj_enums.c, src/rbgobj_object.c,
	src/rbgobj_param.c, src/rbgobj_signal.c, src/rbgobj_type.c,
	src/rbgobj_typemodule.c, src/rbgobj_value.c,
	src/rbgobj_valuetypes.c: "? Qtrue : QFalse" => CBOOL2RVAL cleanup

2007-07-10  Guillaume Cottenceau

	* src/rbgobj_boxed.c: support passing nil to RVAL2BOXED, in order
	to pass NULL to glib/gtk

2007-07-10  Guillaume Cottenceau

	* src/rbgobject.c: kou says we should use NIL_P(foo) not foo ==
	Qnil
	
2007-07-08  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgutil.h: mark G_BLOCK_PROC() as deprecated.
	* src/*.c: use rb_block_proc() directly instead of using G_BLOCK_PROC().

	* src/utils_callback.c (callback_info_run): use rbgutil_protect().
	* src/utils_callback.c (listen_callback_pipe): call
	rb_thread_schedule() to activate newly created thread.
	* src/utils_callback.c (invoke_callback_in_ruby_thread):
	g_mutex_lock(info.done_mutex) should be done before writing
	data to pipe.

2007-07-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/extconf.rb, src/rbglib_messages.c: call ruby_set_current_source()
	only if it exists. Current ruby 1.9 doesn't have it.

	* src/extconf.rb, src/utils_callback.c: don't use is_ruby_native_thread
	on ruby 1.9.

	* src/rbglib_messages.c, extconf.rb: fix to compile on ruby 1.9:
	  ruby_sourcefile -> rb_sourcefile()
	  ruby_sourceline -> rb_sourceline()

	* src/rbglib_message.c, rbglib_completion.c: remove ruby 1.6 support.

	* src/rbgobj_strv.c (strv_from_ruby): fix not to double free.

	* src/rbglib_bookmarkfile.c: fix to compile on ruby 1.9:
	  RSTRING(v)->ptr -> RSTRING_PTR(v),
	  RSTRING(v)->len -> RSTRING_LEN(v).

	* test/test_glib2.rb: add some tests.

	* src/rbbutil.h: change G_PROTECT_CALLBACK() to support calling
	from non-ruby thread.

	* src/rbgutil.c: move rbgutil_protect() into utils_callback.c.

	* src/rbgobj_closure.c: separate stuffs that relate to thread into
	utils_callback.c.

	* src/utils_callback.c: new file for callback invocation.

2007-07-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed.c (rbgobj_boxed_get): type check should be done
	before doing Data_Get_Struct().

2007-07-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed.c (rbgobj_boxed_get): fix argument type to match 
	with its prototype. Repored by Guillaume Cottenceau.
	[ruby-gnome2-devel-en] HEAD doesn't build

2007-07-04  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/global.h, src/rbglib.h, src/rbgobj_boxed.c, src/rbgobj_closure.c,
	src/rbgobj_enums.c, src/rbgobj_object.c, src/rbgobj_param.c, 
	src/rbgobj_typeinstance.c, src/rbgutil.c, src/rbgutil.h, extconf.rb:
	remove ruby-1.6.x support and old yarv support.

2007-07-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib_spawn.c, src/rbgobj_object.c, src/rbgobj_signal.c,
	src/rbgobj_type.c, src/rbgobj_typemodule.c, src/rbgobject.c:
	remove unnecessary StringValue() invocations.

2007-07-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_typeinterface.c: brush up and should not call
	g_type_default_interface_ref(G_TYPE_INTERFACE) which causes SEGV.

2007-06-28  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* tests/test_glib2.rb (TestGLib#test_signal_handler_disconnect_and_gc):
	new test.

2007-06-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c: detach closure->rb_holder from GObject
	when the closure is invalidated.
	[ruby-gnome2-devel-en] Signal handling causes memory leaks

2007-06-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_typeinterface.c: Make interfaces not to be decendants
	of GLib::MetaInterface.  This change makes Mutoh-san's change at
	2007-06-16 unnecessary.

	* src/rbgobj_typeinterface.c: fix GLib::MetaInterface#gtype;
	generic_gtype() -> generic_s_gtype().

	* src/rbglib_mainloop.c: use rbglib_poll() if possible, regardless of
	ruby version. (ruby 1.5.4 is no longer considerd.)

	* src/rbgobj_closure.c: fixed a segfault which is caused by accessing freed
	GRClosure.

2007-06-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: Fixed a segfault using Glade.
	By syscrash2k Bug#1709389.

2007-06-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb, src/rbglib.h, src/rbglib.c, src/rbglib_convert.c,
	src/rbglib_iochannel.c, src/rbglib_keyfile.c, src/rbglib_mainloop.c,
	src/rbglib_spawn.c, src/rbglib_unicode.c, src/rbgobj_object.c, src/rbgutil.c:
	fix to compile on ruby 1.9;
	  RSTRING(v)->ptr -> RSTRING_PTR(v),
	  RSTRING(v)->len -> RSTRING_LEN(v),
	  ruby_errinfo -> rb_errinfo(),
	  and so on.

2007-06-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_typeinterface.c: GLib::Interface.property, .install_property,
	.properties raises a NoMethodError when they call as the instance method.

2007-06-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c: Simplify GRClosure data structure by removing
	GRClosureHolder.

2006-12-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Work ruby-1.8.4 or earlier again.
	by Kouhei Sutou.
	* src/rbglib.h: Increment minor version.

2006-12-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Remove to support dropline GTK2-Runtime DLL.
	* src/lib/glib-mkenums.rb: Fixed a parse error on GLib-2.6.

2006-12-26  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/glib-mkenums.rb: added a space before comment end mark.

2006-12-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb: Code cleanup.
	* src/lib/glib-mkenums.rb: Reimplement as a pure ruby library.
	* src/lib/mkmf-gnome2.rb: Work MinGW again.
	* src/rbglib_win32.c: Fix to compile problems.

2006-12-25  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/glib2.rb (GLib.utf8_validate): removed needless code.

2006-12-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_convert.c: GLib.utf8_validate becomes deprecated.
	Use GLib::UTF8.validate instead.
	* sample/bookmarkfile.rb: Add for GLib::BookmarkFile sample.

2006-12-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_bookmarkfile.c: Add GLib::BookmarkFile
	* src/rbglib_win32.c: Code cleanup. Imprement all functions.

2006-12-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_keyfile.c: Add GLib::Keyfile.
	* sample/keyfile.rb: Add a sample for GLib::KeyFile.

2006-12-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c: Fix warnings on x86_64.
	* src/rbglib_unicode.c: Code cleanup.
	* src/lib/glib-mkenums.rb: Make GLib::MkEnums.
	* src/lib/mkmf-gnome2.rb: Follow above change.
	
2006-12-11  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_maincontext.c: Add GLib::Source.current for GLib-2.12.
	Add GLib::MainContext#owner? for GLib-2.10.
	GLib::Timeout#add_seconds, #source_new_seconds for GLib-2.14.

2006-12-10  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_unicode.c:
	- GLib::Unicode::XXX -> GLib::Unicode::Type::XXX.
	- GLib::UnicodeBreak::XXX -> GLib::Unicode::BreakType::XXX.
	- GLib::UnicodeScript::XXX -> GLib::Unicode::Script::XXX.
	* tests/test_unicode.rb: followed the changes.

	* src/lib/glib2.rb: GLib.utf8_validate is deprecated. Use
	GLib::UTF8.validate instead.
	* src/rbglib_unicode.c:
	- moved GLib.unichar_* to GLib::UniChar.*.
	- moved GLib.unicode_* to GLib::Unicode.*.
	- moved GLib.utf8_* to GLib::UTF8.*.
	- moved GLib.utf16_* to GLib::UTF16.*.
	- moved GLib.ucs4_* to GLib::UCS4.*.
	- removed GLib::UNICODE_*.
	- removed GLib::UNICODE_BREAK_*.
	- removed GLib::NORMALIZE_*.
	* tests/test_unicode.rb: followed the changes.

2006-12-09  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_unicode.c:
	- merged GLib.utf8_get_char_validate to	GLib.utf8_get_char.
	- GLib.unichar_control? -> GLib.unichar.cntrl?
	- added GLib.utf8_reverse.
	* tests/test_unicode.rb: followed the changes.

	* src/rbglib_unicode.c, tests/test_unicode.rb: completed.

2006-12-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_unicode.c: added. not completed yet.
	* src/rbglib.c: added Init_glib_unicode().
	* tests/test_unicode.rb: added tests for Unicode related bindings.

2006-12-07  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c (rclosure_unref): set Qnil to
	disposed rclosure->rb_holder.

2006-12-07  Guillaume Cottenceau <gcottenc@gmail.com>

	* src/rbgobj_closure.c (rclosure_invalidate): don't check
	rclosure->rb_holder because the check isn't necessary.

2006-12-06  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/glib-mkenums.rb: removed garbages.

2006-12-05  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/glib-mkenums.rb: added.
	* src/lib/mkmf-gnome2.rb (glib_mkenums): added.
	* extconf.rb: used glib_mkenums.

2006-12-04  Kouhei Sutou  <kou@cozmixng.org>

	* tests/runner.rb: used Test::Unit::Autorunner.run.
	* tests/test-glib2, tests/test-iocahnnel.rb: renamed to ...
	* tests/test_glib2, tests/test_iochannel.rb: ... them for adapting
	Test::Unit's default configurations.

	* tests/test-iochannel.txt, tests/test-iochannel-sjis.txt: removed
	needless files.

	* tests/runner.rb: setup $LOAD_PATH for test environment.

	* tests/test-iochannel.rb: rewrote with Tempfile. I want to
	suppress GLib-WARNING and GLib-CRITICAL messages but I don't know
	how to do the thing...

	* src/rbglib_iochannel.c: made "U" each time for avoiding GC
	problem.

2006-11-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_typeinterface.c: Fixed a bug when accessing the properties
	of GLib::Instantiatable. 

2006-11-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Set "0" to micro version of version 
	header if pkg-config --modversion doesn't have micro version.
	Bug #1590573.
	
2006-10-12  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: improved alive check.

2006-09-26  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb: used $INCFLAGS instead of $CFLAGS.

2006-09-25  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: improved closure handling. I hope this
	change fixes a closure related segmentation fault bug.
	- added available data marks and checked that marks.

2006-09-21  kangabroo

	* src/rbgobj_enums.c: fixed typo. bug #1561675.

2006-08-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Compiled on GLib-2.8.x again. 

2006-07-09  Kouhei Sutou  <kou@cozmixng.org>

	* src/glib2.def, src/rbgobject.c, src/rbgobject.h
	(rbgobj_ruby_object_from_instance_with_unref):
	added convenience function.
	* src/rbglib.h (GOBJ2RVALU): added convenience macro.

	* src/rbgobj_object.c: implemented GLib::InitiallyUnowned.

	* src/rbglib.h (RVAL2CSTR2): added convenience macro.

2006-06-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c, rbgobject.h, glib2.def: Improve to support
	Win32. rbg_(set|remove)_internal_poll_func are externed.

2006-06-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Fixed wrong include path.
	* src/rbglib.h: Increment version info.

2006-06-18  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Fixed a problem when the object which extends Module
	can't access the instance methods. Reported by Laurent Sansonetti and Bug #1496185.

2006-06-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/type-register?.rb: Remove Gtk.init.
	* src/lib/glib2.rb: Added GLib.exit_application. This is called when it raises
	the exception in a callback proc and it isn't catched in the proc.
	* src/rbgutil.c: Added G_PROTECT_CALLBACK. You need to wrap the functions which
	run in the mainloop with this. This is based on rclosure_marshal_do() in
	src/rbgobj_closure.c.
	* src/rbgobj_closure.c: Apply above G_PROTECT_CALLBACK.
	* src/rbgutil.[ch]: Added GLIST2ARYF, GLIST2ARY2F, GSLIST2ARYF, GLIST2ARY2F. 
	 They free the list with g_list_free() or g_slist_free() internal.
	* src/glib2.def: Follow above changes.
	
2006-06-09  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgobj_object.c: Only let the GObject mark function retrieve
	object properties that it will actually mark. Which is currently just
	other GObjects

2006-06-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c, glib2.def: Works on Windows again.

2006-05-29  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobjvalue.c: Use g_type_set_qdata and g_type_get_qdata instead
	of ruby's hash table.

	* src/rbgobj_singal.c: new function gobj_sig_connect_impl
	extracted from gobj_sig_connect and gobj_sig_connect_after.

	* src/rbgobj_signal.c: Make eNoSignal and _signal_list to be static.

2006-05-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: Remove GLib::Object#singleton_method_added.
	Now we can't define signal handlers by defining singleton methods.

	* src/rbgobj_typeinstance.c (each_cinfo): Fix to traverse ancestor's cinfo.

	* src/rbgobj_paramspecs.c, src/rbgobj_value.c: Use RVAL2GOBJ instead of
	rbgobj_param_spec_get_struct().
	* src/rbgobj_param.c: Rename rbgobj_param_spec_get_struct() to
	rbgobj_get_param_spec().

	* src/rbgobject.c: Remove rbgobj_ruby_object_from_instance_if_exist
	and add rbgobj_ruby_object_from_instance2.
	* src/rbgobject.c: Remove rbgobj_get_value_from_gobject_if_exist
	and extend rbgobj_get_value_from_gobject by adding one argument.
	* src/rbgobj_param.c: Remove rbgobj_get_value_from_param_spec_if_exist
	and extend rbgobj_get_value_from_param_spec by adding one argument.
	* src/rbgobject.h, src/global.h, src/glib2.def,
	src/rbgobj_typeinstance.c: Follow above changes.

	* src/rbgobj_typeinterface.c: New file.
	* src/rbgobj_type.c, src/rbgobject.c: separate some interface stuffs
	into src/rbgobj_typeinterface.c.

	* src/rbgobj_typeinstance.c: New file.
	* src/rbgobj_type.c, src/rbgobject.c, rbgobj_param.c: separate
	some cInstantiatable stuffs into rbgobj_typeinstance.c.
	* src/global.h: ditto.

	* src/rbgobj_closure.c: Revert changes of 2006-04-15.
	We shouldn't use Data_Make_Struct in rclosure_marshal since
	this function could be called from arbitrary threads.
	* src/rbgobj_closure.c: simplify codes a bit.

	* src/rbgobject.c, src/rbgobj_value.c, rbgobject.h, src/glib2.def:
	Add new APIs:
	void rbgobj_gc_mark_instance(gpointer instance) and
	void rbgobj_gc_mark_gvalue(GValue* value).

	* src/rbgobject.c: Change to call `mark` and `free` functions of all
	associated cinfo (not only direct one).

	* src/rbgobj_object.c: Register mark procedure which marks
	each property value. So that each property value is protected from GC
	whenever the owner is alive.

	* src/rbgobj_param.c:
	Add rbgobj_get_value_from_param_spec_if_exist.

	* tests/test-glib2.rb (test_inheritance_and_gc): call GC.start.

2006-05-27  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_maincontext.c: fixed idle/timeout callback memory leak.

	* src/rbgobject.c: added rbgobj_get_relative_removable.
	* src/rbgobject.h: ditto.
	* src/glib2.def: ditto.

	* src/rbglib_source.c: moved GLib::Source.remove to
	rbglib_maincontext.c

	* src/rbglib.c: initialize source before main_context.

2006-05-26  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgobj_closure.c: Ensure that a signal handler in ruby is always run in
	a ruby native thread. This allows signals coming from non-ruby native threads
	to be handled correctly. Needs ruby configured with --enable-pthread to work
	(otherwise the behaviour isn't changed)

2006-05-26  Sjoerd Simons <sjoerd@luon.net>

	* src/rbglib.h, src/global.h: Move the 64 bit integer 
	util functions to the public header

2006-05-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: Fix the format string of rb_raise to match with
	actual arguments.

2006-05-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb, src/rbgobj_rbgobj_closure.c: fix compilation error on YARV.

2006-05-23  Sjoerd Simons

	* src/rbgobj_fundamental.c: Fixed typo.

2006-05-18  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/pkg-config.rb (PKGConfig#have_package): accepted 0.X.X
	version as check target version.

2006-05-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_strv.c: Removed GLib::Strv because they are useless.
	* src/rbgobj_valuearray.c: Removed GLib::ValueArray.
	
2006-05-17  Sjoerd Simons

	* src/rbgobj_valuearray.c: Added.
	* src/rbgobj_closure.c: Fixed crash when handling exception coming 
	from an signal handler.

2006-05-14  Sjoerd Simons

	* src/rbgobj_enums.c: Don't crash if a genum's nick is uninitialized.
	* src/rbglib_completion.c: Fixed GLib::Completion#remove_items. 
	* src/glib2.def, global.h, rbgobj_type.c, rbgobj_value.c,
	rbgobject.[ch], rbgobj_fundamental.c: Added to be able to
	add new fundamental object to Ruby/GLib2 such as GLib::Object,
	GLib::Boxed.

2006-04-20  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c (g_rclosure_attach): Fixed a bug
	GLib::Object.type_register doesn't work.
	* src/rbgobj_type.c: Fixed a bug GLib::MetaInterface#gtype doesn't
	work.

	* src/rbgobj_closure.c: Fixed a closure reference count bug.

2006-04-19  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_type.c (rbgobj_lookup_class): fixed typo.

2006-04-15  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c (rclosure_marshal, rclosure_marshal_body):
	Changed an argument type to VALUE from struct marshal_arg *.

2006-03-18  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: Fixed memory leak. Held closure in each
	object instead of using global table to protect GRClosure from
	Ruby's GC. Each function using GRClosure needs to call
	g_rclosure_attach to protect GRClosure from Ruby's GC.

	* src/glib2.def: Added g_rclosure_attach.
	* src/rbgobject.h: ditto.

	* src/rbgobj_object.c: Called g_rclosure_attach.
	* src/rbgobj_signal.c: ditto.

2006-03-11  Joao Pedrosa 

	* src/rbglib_win32.c: Fix a typo on win32.

2006-02-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_win32.c: Supported GLib.win32_locale and
	GLib.win32_locale_filename_from_utf8.

	* src/rbglib_i18n.c: Supported GLib.language_names.

2006-01-14  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_source.c: GLib::Source#remove -> GLib::Soruce.remove.

2005-12-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: Fixed to use G_BLOCK_PROC.
	
2005-11-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_timer.c: Fix to compile on Cygwin.

2005-11-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment micro version.
	* src/rbgobject.h, glib2.def: Fixed problems on Win32.

2005-11-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.[ch]: Added G_CHILD_REMOVE_ALL.

2005-11-03  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c: rb_thread_wait_for waits 10ms instead of 100ms
	to avoid to lose any signals for Win32. Report by MIYAMUKO Katsuyuki.
	* src/rbgobject.[ch]: Added G_CHILD_SET, _UNSET, _ADD, _REMOVE.
	* src/rbgobj_object.c: Keeps ruby objects as instance variables
	of the object not to be GCed(GLib::Object#(set|get)_property).
	* src/rbgobject.c: Fixed memory leaks. Bug #1341573. Retrieve
	the code from 0.13.0. So, other libs need to support G_CHILD_*
	to avoid Tomasz's problem(2005-09-15).

2005-10-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version information. 
	* src/rbglib_mainloop.c: Fixed to compile on Win32.

2005-10-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c, rbglib_timer.c, rbglib_completion.c,
	rbgobject.c, rbgobj_type.c, rbglib_messages.c: 
	Fixed a compilation errors/warnings under GTK+-2.0/Ruby-1.6. 
	* src/rbglib.c, src/rbglib_timer.c: Added GLib::Timer.
	* sample/timer.rb: Added.
	* src/rbglib_completion.c: Added GLib::Completion.
	* sample/completion.rb: Added.

2005-10-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Added constants from "Limits of Basic Types",
	 "Numerical Definitions".
	* src/rbglib_shell.c: Added GLib::Shell.
	* sample/shell.rb: Added.

2005-10-08  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Added make_version_header.

2005-10-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c: Works with ruby threads and signal handlers.
	Reported by Bram Senders.

2005-10-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_enums.c: Supports spaces in nick names. 
	Reported by Detlef Reichl.

2005-10-04  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Fix a bug to compile
	Ruby-GNOME2 with Ruby/Cairo on Win32.
	* src/rbglib_utils.c: Fix a linking error on Win32.
	* extconf.rb: ditto.

2005-09-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Added GLib::BUILD_VERSION.

2005-09-18  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Add GLib::MetaInterface#install_property, #property,
	#properties.
	* src/rbgobject.c: Doesn't wrap the set_foo functions 
	for construct only properties by Sven Herzberg [Bug #1192975]

2005-09-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Supports Ruby-GetText-Package.
	You can use GetText methods unless "require 'gettext'".
	And it works in English if the users don't have Ruby-GetText-Package.
	* src/rbgobject.c: Keep the ruby object when the GObject is removed by C side. 
	Tomasz Wegrzanowski.

2005-09-13  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Show Warning messages unless -d option.
	Pointed out by Guillaume Cottenceau.

2005-09-12  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c (rbgobj_instance_from_ruby_object): Fixed the error messages
	"TypeError: fundamental type glong isn't supported" to 
	"TypeError:Fixnum isn't supported". Pointed out by Guillaume Cottenceau.

2005-09-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_boxed.c (rbgobj_make_boxed): Return nil if boxed
	object is NULL.

2005608-21  Pascal Terjan <pterjan@linuxfr.org>

	* src/rbglib_utils.c: Added GLib.listenv and .host_name (2.8)

2005-07-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version.
	* sample/type-register.rb: Fix a bug.

2005-07-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/pkg-config.rb: Added PKGConfig.name, .description,
	 .provides, .requires.

2005-07-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c, rbglib_maincontext.c: Works on Win32 again.

2005-07-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/pkg-config.rb: Added PKGConfig.list_all.

2005-07-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb, src/rbglib_maincontext.c, rbglib_iochannel.c: 
	Fix to work on ruby-1.6.8, GTK+-2.0.6. 
	* src/rbglib_iochannel.c, rbgobj_object.c: Fix a compiling warning. 

2005-07-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/iochannel.rb, timeout.rb: Modified header comments. 

2005-07-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/iochannel.rb: Added. 

2005-07-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* tests/test-iochannel.*: Added tests for GLib::IOChannel. 

2005-06-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Rename GLib::IOChannel#fd => #fileno, #to_i. 
	Improved #seek.

2005-06-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Added GLib::IOChannel#each_char, #each, #each_line.

2005-06-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Rename GLib::IOChannel#read_chars => #read.
	Unify GLib::IOChannel#read_to_end => #read.

2005-06-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Rename GLib::IOChannel#read_unichar => #readchar.
	#read_line => #readline. Add #gets, #getc.

2005-06-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_strv.c: Fix double free error. 
	* src/rbglib_iochannel.c: Added GLib::IOChannel.
	* src/rbglib.c, rbgobject.h: ditto.

2005-03-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/spawn.rb: Add a comment. Bugs:1159417.
	* extconf.rb: Add require gtherad-2.0. Bugs: 1159413

2005-03-21  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/pkg-config.rb: Renames the "libs" local variable to "libraries"
	to work ruby-1.9.x.

2005-03-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h, rbgobject.h: Move some macros/definitions to rbgobject.h
	Reported by Vincent Isambart.
	* src/rbglib_maincontext.c: Added GLib::MainContext#query. 

2005-03-13  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/idle.rb, timeout.rb, timeout2.rb: Added.
	* src/rbglib_pollfd.c: Added GLib::PollFD. 
	* src/rbglib_source.c: Added GLib::Source. 
	* src/rbglib_maincontext.c: Added GLib::MainContext#find_source,
	#add_poll, #remove_poll, GLib::Timeout, GLib::Idle, GLib::ChildWatch.
	* src/rbglib.[ch]: Support GLib::PollFD, GLib::Source.

2005-03-12  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c: Added GLib::MainLoop. 
	* src/rbglib_maincontext.c: Added GLib::MainContext. 
	* src/rbglib.[ch]: Support GLib::MainLoop, GLib::MainContext.

2005-03-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_threads.c, extconf.rb: Fix compiling problem on MSVC++.

2005-03-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/spawn.rb: Added.
	* README: Revised.

2005-02-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c, rbglib_threads.c: Added GLib::Threads. 
	* src/lib/pkg-config.rb: Added PKGConfig.cflags_only_I, .cflags_only_other.
	* src/rbglib.h: Increment version information.

2005-02-26  KATO Kazuyoshi  <kzys@8-p.info>

	* src/rbgobj_type.c (rbgobj_lookup_class): Fixed a problem in Ruby 1.9.
	[ruby-list:40518] [ruby-dev:23690]

2005-02-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Removed to call GLib::Log.cancel_handler.

2005-02-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Don't remove Makefile with 'nmake clean'.

2005-02-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* README, COPYING.LIB: Replace "GNU LIBRARY GENERAL PUBLIC LICENSE"
	to "GNU LESSER GENERAL PUBLIC LICENSE".

2005-02-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Fix the default error level.

2005-02-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Fix a compiling warning on Cygwin.

2005-02-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Change checking-rules order.
	Added GTK_BASE_PATH environment variable option for Win32.
	* src/rbglib.c, rbglib_convert.c, rbgutil.h, rbgobject.h: 
	Remove to include glib.h directly.

2005-01-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Fix segfault, and make it simple.
	Now it doesn't raise Exception, because of bad influence to
	other libs such as gnomeprint.

2005-01-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb: Follow mkmf-gnome2.rb changes.
	* src/lib/pkgconfig.rb: Separated from mkmf-gnome2.rb.

2005-01-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_message.c, rbglib_spawn.c, rbgobject.c, rbgobj_boxed.c, 
	rbgobj_closure.c,rbgobj_enums.c,rbgobj_object.c, rbgobj_type.c, 
	src/lib/mkmf-gnome2.rb: Support MS VC++.
	* src/lib/mkmf-gnome2.rb: Added setup_win32, add_depend_package.
	* src/glib.def: Added rbgobj_register_class.

2005-01-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Remove $KCODE="U". Reported by Dafydd Harries.
	Added header information.

2005-01-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Improved error handling. 
	* src/rbglib_messages.c: ditto. 
	* src/rbgobj_strv.c: Added for GLib-2.4.x. Support GStrv as Array.
	* src/rbgobject.c: Support GStrv.

2004-11-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c, src/lib/glib2.rb: 
	Rewrite code to C for stablity.

2004-11-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version information. 

2004-11-03  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Works again for ruby-1.8.x. 
	Reported by Kohei Sutou.

2004-10-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Check the paratmeter is Block or not. 

2004-10-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Added GLib.check_binding_version?
	* src/rbglib_utils.c: GLib.check_version: Use static variables
	instead of MACROS.
	GLib.check_version -> GLib.check_version?.
	* sample/utils.rb: ditto.

2004-10-20  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_convert.c: Implemented GLib::ConvertError. 

2004-10-18  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Added PKGConfig.modversion, .check_version?.
	PKGConfig#have_package accept major, minor micro version to check 
	the module version correctly.
	Pointed out by Kouhei Sutou.

2004-10-17  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/mkmf-gnome2.rb: Renamed add_uniq_to_objs to add_obj.

2004-10-17  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/mkmf-gnome2.rb: Added the add_uniq_to_objs function.

2004-09-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Renamed GLib::Log.set_error_domain to 
	GLib::Log.set_log_domain.

2004-09-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Improved log handling.
	Define GLib::ERROR_DOMAIN, GLib::Object::LOG_DOMAIN, 
	GLib::Thread::LOG_DOMAIN, GLib::Module::LOG_DOMAIN.

2004-09-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Add GLib::Log.set_error_domain for improvement
	error handling.

2004-09-03  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Set $KCODE to "U".

2004-08-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_enums.c: makes rbgobj_define_const to a global function.
	* src/rbglib_error.c: Fix bugs. Re-implement rbgerr_define_gerror.

2004-08-19  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: rbgobj_define_class() can define parent compulsorily.
	* src/rbgobj_param.c, rbgobj_object.c, rbgobj_boxed.c: Follow above change.

	* src/rbgerror.c, rbglib.h: Added. Replace rbgutil_gerror2exception.
	* src/rbgutil.[ch]: Removed rbgutil_gerror2exception.
	* src/rbgfileutils.c: Added for GLib::FileError.
	* src/rbgutil.c: Improved RAISE_GERROR.
	* src/rbglib.c, glib2.def: Follow these changes. 

2004-08-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version number.

2004-08-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_spawn.c: Fix warnings. 
	* src/rbgobject.c: Fix a warning. 

2004-08-04  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Define GPid when GLib < 2.4.0.

2004-08-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_spawn.c: Change the parent of GLib::Spawn*Error to 
	StandardError from SystemCallError.
	Added GLib::Spawn#async_with_pipes, #async, #sync.
	Make uniform of the return values of GLib::Spawn#command_line_sync
	to #sync.

2004-08-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h, glib2.def: Export rbglib_spawn_error() 
	for Gdk::Screen#spawn_on_screen.
	Increment version.

2004-07-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: setlocale parameter was changed. 
	LC_CTYPE and LC_MESSAGES are set not LC_ALL.

2004-07-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* tests/test-glib2.rb: Removed ^M. Pointed out by Laurent Sansonetti.
	* src/rbglib.c: Version informations use variables not macros. 
	Added GLib::INTERFACE_AGE, GLib::BINARY_AGE.
	Pointed out by Jeremy Henty

2004-05-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h. glib2.def: Fixed a problem with rbg_cstr2rval_with_free
	reported by Joao Pedrosa.

2004-05-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c (rbgobj_define_property_accessor): Supports 
	interface properties (Since 2.4).
	* src/rbgobj_type.c (rbgobj_init_interface): ditto. 

2004-05-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.[ch]: Add CSTR2RVAL2 which free given char* area. 

2004-05-05  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbglib_spawn.c: Fixed a memory overflow bug in the
	  spawn_error table.
 
2004-05-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_spawn.c: Fix an initial error on some platforms 
	to restrict errno to exist the environment. 
	Reported by Laurent Sansonetti.
	
2004-04-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/utils.rb: Add a sample.
	* src/rbglib_utils.c: Add/Modify some methods.
	* src/lib/glib2.rb: Fix a bug which GLib.__add_one_arg_setter(klass) 
	doen't work for module function and moved from src/rbgutil.c.

2004-04-30  Pascal Terjan <pterjan@linuxfr.org>

	* src/rbglib_utils.c: Added.
	* src/rbglib.c: Follow rbglib_utils.c added.

2004-04-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Accept a ruby class when GType[...] is required.
	* sample/type-register2.rb: Added.
	* src/rbglib_spawn.c: Improve error classes.
	Separate module from GLib to GLib::Spawn.
	Add GLib::Spawn.close_pid.

2004-04-27  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* src/rbglib_spawn.c: Added.
	* src/rbglib.c: Follow above changes.

2004-04-20  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Fix bugs, Add GLib::Log.log, set_fatal_mask, 
	set_always_fatal, some constants.
	* src/lib/glib2.rb: Add GLib::Log.error, message, critical, warning.

2004-04-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_convert.c: Add GLib.utf8_validate.
	* src/rbglib.c: Commented out Init_mem(), because of "cross-thread violation"
	with Gst::Thread.

2004-03-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: RAISE_GERROR() returns  error messages in UTF-8.

2004-03-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version number.

2004-03-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Fix a compilation error on MinGW.

2004-03-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/type-register.rb: Omit a parameter for type_register.

2004-03-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h src/rbgobj_object.c src/rbgobj_paramspecs.c
	  src/rbgobj_signal.c src/rbgobj_type.c src/rbgobject.c
	  src/rbgobject.h src/rbgutil.c src/lib/mkmf-gnome2.rb: Update Copyright.
	* src/lib/mkmf-gnome2.rb: Work under ruby-1.8.1 or later on Cygwin.

2004-03-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Fix a memleak for GLib::Object#properties. 
	* src/rbgobj_signal.c: Fix a memleak for GLib::Object#signals. 

2004-03-04  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: Work under ruby-1.6.8. 
	The idea is from Sasada Koichi.

2004-03-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version number.

2004-02-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: Remove id, send from prop_exclude_list. 

2004-02-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.h: Add G_DEF_CLASS3(). This is for real-gtype
	but its foo_get_type() isn't public method such as GdkScreenX11.
	* src/rbgobj_type.c: Add RGObjClassInfoDynamic and G_DEF_CLASS3().
	* src/glib2.def: ditto.

2004-02-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: prop_exclude_list defined as a static hash. 

2004-02-14  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/mkmf-gnome2.rb: replaced PLATFORM with RUBY_PLATFORM

2004-02-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_paramspecs.c: Fix a bug for GLib::Param::Flags.new. 

2003-12-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Fix a typo. Pointed out by Kazuhiro NISHIYAMA.

2003-12-21  Kenichi Komiya <kom@mail1.accsnet.ne.jp>

	* src/rbgobj_object.c: Check when the first argument is nil or Hash.

2003-11-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: increment RBGLIB_MICRO_VERSION.

2003-11-15  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enums.c: disable range checks.

	* sample/type-register.rb: call GLib::Object#notify when a
	property is updated.

	* src/rbgobj_signal.c: remove GLib::MetaInterface#signal_override
	and GLib::Instantiatable#signal_chain_from_overridden.

2003-11-10  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c: remove duplication of #include <locale.h>.

2003-11-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_enums.c, rbgobject.h: Add G_RENAME_NICK.

2003-11-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>	

	* sample/type-register.rb: remove Japanese comments.

	* src/rbglib.h: increment RBGLIB_MINOR_VERSION.

	* src/rbgobj_object.c: do not depend on C99, Thanks to Hiroshi
	IGARASHI.

	* src/rbgobj_object.c: remove unnecessary #endif, Thanks to Nobuyoshi
	Nakada.

2003-11-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* sample/type-register.rb: add new file.

	* rename test/test-glib2.rb to tests/test-glib2.rb.

	* src/rbgobj_object.c: rename GLib::Object.register_type to
	type_register and change its arguments.

	* src/rbgobj_object.c, src/rbgobj_signal.c, src/global.h: enable
	subtyping codes by default.

2003-10-29  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/global.h, src/rbgobj_object.c, src/rbgobj_signal.c: share a
	module which serves to hook 'super'.

	* src/rbgobj_signal.c: change prefix of default handler of signals
	from 'do_' to 'signal_do_'.

	* test/test-glib2.rb: new file.

2003-10-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (get_prop_func, set_prop_func): replace '-' with
	'_' from method name.

	* src/rbgobj_object.c (get_prop_func, set_prop_func): do not call
	#do_get_property and #do_set_property, but #foo and #foo=.

	* src/rbgobj_signal.c (gobj_s_signal_new): change the arity of
	GLib::Instantiatable#signal_new.

2003-10-24  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (emit_body, chain_from_overridden_body):
	remove G_SIGNAL_TYPE_STATIC_SCOPE flag from parameters and
	return value.

2003-10-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enum.c (rbgobj_get_enum, rbgobj_get_flags): check if the
	argument GType is subtype of GEnum or GFlags.

	* src/rbgobj_signal.c: new method
	GLib::Instantiatable#signal_has_handler_pending?.

	* src/rbgobj_signal.c (g_signal_handler_block,
	gobj_sig_handler_unblock, gobj_sig_handler_disconnect):
	use NUM2ULONG instead of NUM2INT.

2003-10-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: Fix a segfault when GLib::Object#signal_emit 
	is called. 

2003-10-08  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgobj_param.c: Removed a compilation warning in function
	value_validate_ensure().

2003-10-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c: call g_mem_set_vtable() to make glib to use
	ruby_xmalloc(), ruby_xrealloc(), ruby_xfree().

2003-09-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/mkmf-gnome2.rb: append "-I$(sitearchdir)" to $CPPFLAGS not
	$CFLAGS. and stop overriding create_makefile().

2003-09-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (gobj_s_signal_new): use #instance_method,
	UnboundMethod#bind and Method#call instead of #__send__.

	* src/rbgobj_signal.c (gobj_s_method_added): check GType.

2003-09-22  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (gobj_s_sig_override): check if the class is
	registered.

	* src/rbgobj_signal.c (gobj_s_method_added): when a method named
	'do_<signal_name>' is defined then override default handler by the
	method.

2003-09-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: override #append_features of interface modules to
	prevent including them into classes which is not subclass of
	GLib::Instantiatable.

2003-09-18  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c: implement GLib::Closure#invalidate.

	* src/rbgobj_closure.c: don't invoke Proc objects after ruby is
	terminated.

	* src/rbgobj_signal.c: implement GLib::MetaInterface#signal_override
	and GLib::Instantiatable#signal_chain_from_overridden experimentaly.

2003-09-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c: define GLib::BINDING_VERSION.

	* src/lib/mkmf-gnome2.rb: use PKG_CONFIG environment variable.

2003-09-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf_gnome2.rb: Pass "-l$(sitearchdir)" at last of $CFLAGS.

2003-09-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (register_type): if the super type is not defined
	by ruby, then include a new module that defines #initialize.

	* src/rbgobj_param.c (value_validate): use rb_ensure().

	* src/rbgobj_param.c: disable GLib::Param#value_defaults? since the
	name is bad.

2003-08-31  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enum.c (enum_coerce): use NUM2INT not NUM2UINT.

	* src/rbgobj_paramspecs.c: delete unnecessary StringValue invocation.

	* src/rbgobj_paramspecs.c: use RVAL2GENUM and RVAL2GFLAGS.

2003-08-30  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/glib2.rb: rescue LoadError and Win32::Registry::Error
	separately.

	* src/lib/glib2.rb: On mingw32 and mswin32 platform, require
	'win32/registry' unconditionaly and rescue LoadError.
	(proposed by TAMURA.KENICHI <sgs02516@nifty.com>)

	* src/rbgobj_enums.c: fixed rgbobj_get_enum - a VALUE was not
	converted to int before calling rbgobj_make_enum.
	(reported by Geoff Youngs <g@intersect-uk.co.uk>)

2003-08-29  Vincent Isambart <isambart@netcourrier.com>

	* src/rbgobj_enums.c: fixed rgbobj_get_flags - a VALUE was not
	converted to unsigned int before calling rbgobj_make_flags.

2003-08-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb: Exit with 1 when the package is not found.

2003-08-25  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h: new macros RVAL2GENUM(), RVAL2GFLAGS(),
	GENUM2RVAL() and  GFLAGS2RVAL().

	* src/rbgobj_signal.c: new exception class GLib::NoSignalError.

	* src/rbgobj_object.c: new exception class GLib::NoPropertyError.

	* src/lib/glib2.rb: append Dropline GTK2-Runtime DLL path into PATH
	environmental variable. (proposed by TAMURA.KENICHI <sgs02516@nifty.com>)

	* src/rbgobj_object.c: remove GLib::Object#property.

	* src/rbgobj_enums.c (rbgobj_get_enum, rbgobj_get_flags): 
	create temporary enum/flags object if the argument is an integer.
	this is to check if the integer is in the values avalable in the type.
	(proposed by Vincent Isambart <vincent.isambart@laposte.net>

	* src/rbgobject.c (rbgobj_initialize_object): raise RuntimeError
	if the argument is NULL. (proposed by Vincent Isambart
	<vincent.isambart@laposte.net>)

2003-08-21  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed.c: define GLib::Boxed#initialize which simply raise
	TypeError.

	* src/rbglib2.rb: fix format of GLib::Flags#inspect.

	* src/glib2.def, src/global.h, src/rbgobj_enums.c, src/rbgobj_type.c,
	src/rbgobj_value.c, src/rbgobject.h, src/lib/glib2.rb: new classes
	GLib::Enum and GLib::Flags.

2003-08-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/glib2.rb: add new file.

	* src/lib/mkmf-gnome2.rb (PKGConfig.have_package): don't use
	Array#quote. Because mkmf.rb of ruby-1.6 doesn't provide this method.

2003-08-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h, src/rbgobj_type.c, let rbgobj_define_class() to
	take `const gchar*', not `gchar*'.

2003-08-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/mkmf-gnome2.rb (PKGConfig.have_package): append linker
	flags other than -l and -L into $LDFLAGS.

2003-08-09  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (gobj_sig_emit): fix to setup arg.self.

2003-08-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/depend: use old style
	* src/glib2.def: Add rbgobj_constant_remap.

2003-08-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_valuetypes.c: use GHashTable instead of Ruby's Hash
	for reference counting. Using Ruby's Hash may cause segmentaion fault
	when ruby exits.

	* src/rbgobj_closure.c: use GHashTable instead of Ruby's Hash
	for the same reason as src/rbgobj_valuetypes.c.

	* src/rbgobject.c (rbgobj_gobject_initialize): don't warn if the
	instance type is a subtype of the class type.

2003-08-03  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobj_valuetypes.c: Fix error for gcc 2.95.4.
	Reported by Hiroshi Igarashi.

2003-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/mkmf-gnome2.rb (PKGConfig.have_package): use --libs-only-l
	and --libs-only-L instead of --libs.

2003-08-02  Masao Mutoh <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: fix for other libraries can't compile
	in other directories.

2003-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (gobj_s_properties),
	src/rbgobj_signal.c (gobj_s_signals): recurse by default.

2003-08-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: don't free RGObjClassInfo structure.

2003-07-28  Geoff Youngs  <g@intersect-uk.co.uk>
	* src/rbgobj_enums.c: add rbgobj_constant_* to allow renaming
	invalid constants.
	* src/rbgobject.h: add G_RENAME_CONSTANT

2003-07-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c (rclosure_marshal): don't stop jumps.
	This is a temporary solution for the Ruby-GNOME2 0.6 release.

2003-07-22  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbglib.h: add CBOOL2RVAL, RVAL2CBOOL.

	* src/lib/mkmf-gnome2.rb: Change include orders.

2003-07-21  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enums.c (rbgobj_flags_add_constants): use UINT2NUM()
	instaed of INT2NUM().

	* src/rbgobj_object.c (gobj_smethod_added): use
	rbgobj_get_signal_func().

	* src/rbgobj_signal.c (gobj_s_signal_new): fix to treat accumulator
	correctly.

	* src/rbgobj_type.c: implement GLib::Type#<=>.

	* src/rbgobj_type.c: change superclass of GLib::Boxed from Data to
	Object.

	* src/global.h, rbgutil.c: add new functions generic_s_new(),
	generic_s_gtype() and generic_gtype().

	* rbgobj_boxed.c, rbgobj_type.c: use generic_s_new(),
	generic_s_gtype() and generic_gtype().

2003-07-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c: enhance warning message of rclosure_marshal() 
	which is used in GLib::Instantiatable#signal_connect().

2003-07-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c, src/rbgobj_type.c, src/global.h: enable
	rbgobj_define_action_methods() by default.
	This function defines methods that emit	action signals.

	Action signals are signals that may freely be emitted on alive
	objects from user code via g_signal_emit() and friends, without
	the need of being embedded into extra code that performs pre or
	post emission adjustments on the object. They can also be thought
	of as by third-party code generically callable object methods.

	* src/rbgobject.h, src/rbgobj_enum.c, src/glib2.def: add new function
	rbgobj_add_constants() and new macro G_DEF_CONSTANTS().

2003-07-18  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (signal_add_emission_hook): fix to treat `detail'
	argument correctly.

2003-07-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c (rclosure_marshal): use rb_protect().

	* src/rbgobj_valuetypes.c (value_transform_ruby_any): use rb_protect().

	* src/rbgobject.c (rbgobj_gobject_new): use rb_ensure().

	* src/rbgobj_signal.c (gobj_sig_emit): use rb_ensure().

	* src/rbgobj_object.c (gobj_set_property):
	call rbgobj_rvalue_to_gvalue() even if the argument is nil.

	* src/rbgobj_signal.c: remove Dispatch Closure stuff.
	use g_rclosure_new() instead.

	* src/rbgobj_value.c (rbgobj_rvalue_to_gvalue): call #to_s only for
	Symbol->G_TYPE_STEING conversion.

	* src/rbgobject.c (rbgobj_gobject_initialize): check if the argument
	has expected GType.

	* src/rbgobject.c (rbgobj_get_gobject): raise TypeError instead of
	ArgumentError.

2003-07-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed.c (boxed_to_ruby): convert NULL to nil.

	* src/rbgobj_object.c (register_type): change error message:
	"parent class" to "super class".

	* src/rbgobj_param.c: remove Param#default=.
	rename Param#defaults to Param#value_defaults?.
	rename Paramcompare to Param#value_compare.
	implement Param#value_validate, #value_convert, 
	(value_defaults) initialize tmp.

	* src/rbgobj_paramspecs.c: remove *#default and *#default_value.

	* src/rbgobj_type.c:
	(get_superclass): change to static function.
	(GLib::Type#initialize): check if the given integer is valid GType
	by using g_type_name().
	(GLib::Type#==, #<, #>, #<=, #>=): return nil when uncomparable.

2003-07-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/depend: use $(srcdir) to allow building in different directories.

	* src/rbgobj_param.c (inspect): change inspect format.

	* src/rbgobj_param.c: new methods:
	GLib::Param#owner, GLib::Param#readable?,
	GLib::Param#writable?, GLib::Param#construct?,
	GLib::Param#construct_only?, GLib::Param#lax_validation?,
	GLib::Param#private?, GLib::Param#readwrite?

	* src/rbgobj_paramspec.c: new methods:
	GLib::Param::Char#range, GLib::Param::UChar#range,
	GLib::Param::Int#range, GLib::Param::UInt#range,
	GLib::Param::Long#range, GLib::Param::ULong#range,
	GLib::Param::Int64#range, GLib::Param::UInt64#range,
	GLib::Param::Float#range, GLib::Param::Double#range

	* src/rbgobj_boxed.c: implement GLib::Boxed#inspect and
	GLib::Boxed#initialize_copy.
	(boxed_from_ruby): accept nil and set NULL.

	* src/rbgobj_signal.c: implement GLib::Signal#inspect and
	GLib::Signal#owner.
	(to_signal_id, to_gquark): removed.
	(gobj_s_signal_new, gobj_s_signal, gobj_sig_emit, gobj_sig_emit_stop):
	accept Symbol.
	(query_signal_id, query_signal_name, query_itype, query_return_type,
	query_signal_flags, query_param_types): fix argument declaration.

	* src/rbgobj_valuetypes.c: implement GLib::Pointer#inspect,
	GLib::Pointer#==, GLib::Pointer#eql? and GLib::Pointer#hash.

2003-07-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_value.c, rbgobj_type.c: 
	Accept rb_cObject as RBGOBJ_TYPE_RUBY_VALUE not G_TYPE_POINTER.

2003-07-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_value.c, rbgobj_value_types.c, rbgobj_type.c: 
	Accept rb_cObject as G_TYPE_POINTER.

2003-06-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.h: Define G_BLOCK_PROC for ruby-1.8.x.
	* src/*c: Use G_BLOCK_PROC instead of rb_f_lambda().
	* src/lib/mkmf-gnome2.rb: Check rb_block_proc().

2003-06-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Add GLib::PRIORITY_*. 

2003-06-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Call setlocale(LC_NUMERIC, "C") for some locales 
	which doesn't use "." as decimal-point.
	Pointed out by Joao Pedrosa.

2003-05-27  Geoff Youngs  <g@intersect-uk.co.uk>

	* rbgobject.c - altered rbgobj_instance_from_ruby_object()
	and rbgobj_ruby_object_from_instance() to
	convert between NULL and nil automatically

2003-05-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/depend: Add a file.
	* src/lib/mkmf-gnome2.rb: Add a file(Move from ../).
	* extconf.rb: Follow above changes.

2003-05-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: klass.instance_methods to klass.instance_methods(false) 
	for ruby-1.8.x.
	* src/rbgobject.h, rbgobj_type.c: Remove rbgobj_exist_class().
	Use rb_const_define_at() instead. Pointed out by Masahiro Sakai.

2003-05-19  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c, rbgobject.h: Add rbgobj_exist_class(). 

2003-04-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: fix so that GLib::Type#to_class can treat
	GEnum's descendants.

	* src/rbgobj_object.c: enable GLib::Object.new! by default

	* src/rbgobj_object.c (gobj_s_install_property): modify error message.

	* src/rbgobj_signal.c (gobj_s_signal_new): check if the class has a
	registerd type.

	* src/rbgobj_signal.c: implement GLib::Signal#{run_first?, run_last?,
	run_cleanup?, no_recurse?, detailed?, action?, no_hooks?}

2003-04-12  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (GLib::Object.new!): check if the class has a
	registered type.

	* src/rbgobj_object.c: implement GLib::Object.install_property

	* src/rbgobj_object.c: improve type registeration system.

	* src/rbgobj_paramspecs.c: fix to use appropriate GType.

	* src/rbgobj_type.c, src/rbgobject.h: Add a new function
	rbgobj_register_class() and rewring
	_register_fundamental_klass_to_gtype() and
	_register_fundamental_gtype_to_klass() with it.

2003-04-08  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
	
	* src/rbgobj_type.c: fix typo. ( interfaced? => interface? )
	
	* src/rbgobj_type.c: implement GLib::Type#<, GLib::Type#>,
	GLib::Type#<= and GLib::Type#>=.

	* src/rbgobj_signal.c: Extend GLib::Instantiatable#signal_handler_block
	to take a block.

	* src/rbgobj_signal.c (gobj_s_signals): Fix memory leak.

	* src/rbgobj_object.c: Use RVAL2GTYPE().

	* src/rbgobj_type.c (interface_get_gtype): Use CLASS2GTYPE().

	* src/rbgobject.c (rbgobj_define_property_accessors): ditto

2003-04-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
	
	* src/rbgobj_signal.c: Implement a new function
	rbgobj_define_action_methods() experimentaly.
	This function defines methods that emit	action signals.

	Action signals are signals that may freely be emitted on alive
	objects from user code via g_signal_emit() and friends, without
	the need of being embedded into extra code that performs pre or
	post emission adjustments on the object. They can also be thought
	of as by third-party code generically callable object methods.

	* src/rbgobj_signal.c: Extend GLib::Object.signals to
	GLib::Object.signals([inherited_too])

	* src/rbgobj_object.c: Extend GLib::Object.properties to
	GLib::Object.properties([inherited_too])

	* src/global.h, src/rbgobj_signal.c, rbgobj_type.c:
	gsub(/mInterfaceCommons/, 'mMetaInterface') and define
	GLib::MetaInterface.

	* src/rbgobj_paramspecs.c (GLib::Param::String#default_value): 
	use rbg_cstr2rval() instead of rb_str_new2(). Because we need to
	allow NULL.

	* src/rbgobj_type.c: simplify the format of GLib::Type#inspect

2003-04-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: rename signal_emit_by_name and
	signal_emit_stop_by_name to signal_emit and signal_emit_stop
	respectively.

	* src/rbgobj_signal.c: remove Signal#signal_id, Signal#signal_name,
	Signal#signal_flags.

2003-04-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: add --enable-experimental option

	* src/rbgobj_signal.c (gobj_s_signal_new): implement accumulator stuff.

	* src/rbgobj_signal.c: code cleanup

	* src/rbgobj_signal.c: use signal_id as a key of signal_func_table.

	* src/rbgobj_signal.c: change rbgobj_get_signal_func() to static
	function.

	* src/rbgobj_signal.c: implement Signal#add_emission_hook and
	Signal#remove_emission_hook

2003-04-04  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (gobject_class_new): implement the function
	experimentaly.

	* src/rbgobj_object.c: abolish not_abstract_table and use
	RGObjClassInfo's `flags' field.	

	* src/rbgobj_boxed.c: abolish boxed_table and use RGObjClassInfo's
	`flags' field.	

	* src/rbgobject.c, src/rbgobject.h:
	add `flags' field to RGObjClassInfo.

	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype): code cleanup

2003-03-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Add GLib::Object.destroyed?

2003-03-19  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/glib2.def: Add a file

2003-03-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib_messages.c: change rbglib_log_handler_procs to static
	variable.

2003-03-12  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib_convert.c: implement
	- uri = GLib.filename_to_uri(filename[, hostname])
	- filename, hostname = GLib.filename_from_uri(uri)

2003-03-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgutil.h: #include rbglib.h for RUBY_GLIB2_VAR.

	* src/rbglib.h, rbgutil.h: define RUBY_GLIB2_VAR macro, and
	use RUBY_GLIB2_VAR for defining 'exported' variables.

	* extconf.rb: append "-DRUBY_GLIB2_COMPILATION" to $defs.

2003-02-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: Check NODE_ATTRASGN only if try_compile is defined.

2003-02-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h: Add rbgobj_signal_wrap() declaration.

	* src/rbgobject.h, src/global.h: Move declaration of
	rbgobj_define_property_accessors() from rbgobject.h to global.h

	* src/rbgobject.h: Remove rbgobj_define_signal_constants() declaration.
	This function no longer exists.

2003-02-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb, src/rbgutil.c:
	Check whether NODE_ATTRASGN is used in ruby. If NODE_ATTRASGN is
	used, G_DEF_SETTERS uses alias_method instead of generating wrapper
	methods.
	Patch from Nobuyoshi Nakada <nobu.nokada@softhome.net>

	* src/rbgobject.c (rbgobj_define_property_accessors): ditto

2003-02-15  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c: make id_relatives be static variable.

2003-02-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c, src/rbgutil.[ch]: code cleanups

	* src/rbgobj_boxed.c: make some functions to be static.

	* src/rbgobj_boxed.c: implement GLib::Boxed#{copy,clone}
	Suggested by KATO Kazuyoshi <kadu@zb.wakwak.com>

2003-02-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: follow changes of ../mkmf-gnome2.rb

2003-02-13  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c: Don't free boxed object when it's not copied boxed object.
	* src/rbglib.c: Call setlocale() in Init_glib2(). 

2003-02-12  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: use ../mkmf-gnome2.rb

2003-02-11  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbglib_convert.c: Add a file. Support string character set conversion.
	* src/rbglib.c: Follow above changes.

2003-02-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c, rbgobject.h: Add rbgobj_add_abstract_but_create_instance_class() 
	for the classes which can create instance itself but define as an abstract 
	class in GTK+-2.2. (e.g. GdkGC).

2003-02-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.[ch]: change CSTR2RVAL's body to be a new function
	rbg_cstr2rval() to avoid unexprected side-effect of macro.

2003-02-03  Geoff Youngs  <g@intersect-uk.co.uk>

	* src/rbglib.h: a check for NULL strings in the CSTR2RVAL macro so that
	a NULL string translates to nil rather than raising an ArgumentError.

2003-02-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/*[ch], README: Update Copyright.

2003-01-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c, rbgobject.h: Add rbgobj_boxed_not_copy_obj().
	Some boxed object shouldn't copy when gpoint convert to VALUE.

2002-12-28  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c (type_is_value_type): fix typo

2002-12-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_value.c rbgobj_gvalue_to_rvalue(), rbgobj_rvalue_to_gvalue():
	Change behavior of G_TYPE_INTERFACE(same as G_TYPE_OBJECT).

2002-12-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c, rbgobj_type.c, rbgobj_param.c, rbgobj_object.c: 
	Apply rb_define_alloc_func() of ruby-1.8.x.

2002-12-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: Check 2nd argument is hash. 

2002-12-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.[ch]: Add G_SET_SYMBOL_PROPERTY(gtype, name).

2002-12-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Add rb_cSymbol as G_TYPE_STRING. 

2002-11-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* rbgobj_closure.c (rclosure_marshal): check if return_value's type
	is valid. Reported by Joshua Keith <joshuakeith@linuxmail.org>.

2002-11-24  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgutil.c: remove rbgutil_val2cstr().

	* src/rbglib.h: change StringValuePtr() definition to the same as
	ruby-1.7. and change RVAL2CSTR() to use the StringValuePtr().

2002-11-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_value.c: rbgobj_rvalue_to_gvalue() support Symbol value 
	when G_TYPE_STRING is required.

2002-11-22  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c, src/rbgobj_signal.c: change
	GLib::Instantiatable.signals and GLib::Object.properties to return
	array of strings. (instead of array of specific objects)
	* rbgobj_signal.c: disable some experimental code.

2002-11-20  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: Fix typos in error messages(GLib::GObject to GLib::Object).

2002-11-11  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: BugFix of rbgobj_set/get_signal_func.

2002-11-10  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: stop appending '-g' to $CFLAGS.

2002-11-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* README: Add file.

2002-11-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_message.c: add file(Sorry I forgot it....)

2002-11-08  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: add file(methods are moved from Ruby/GTK). 
	* src/rbgobj_signal.c, rbgobj_closure.c, rbgobj_object.c, rbgobject.h: 
	add G_DEF_SIGNAL_FUNC. 
	
2002-11-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c (G_DEF_SETTERS): don't override existent methods.

2002-11-02  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgutil.c, src/rbgutil.h: re-implement rbgutil_raise_gerror as
	macro and rename to RAISE_GERROR.
	add a new function rbgutil_gerror2exception()

2002-11-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c, rbgobj_type.c: Remove rbgobj_define_signal_constants().

2002-10-30  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgutil.c, src/rbgutil.h: add rbgutil_raise_gerror().

2002-10-24  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgobj_signal.c (GLib::Instantiatable#signal_conect,
	#signal_connect_after): accept detailed signal.

2002-10-20  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: use canonical property name as hash key for the
	hash for a special getter and setter of the property.

2002-10-18  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c, src/rbgobj_valuetypes.c: use Hash#delete
	instead of assigning nil.

2002-10-17  KUBO Takehiro  <kubo@jiubao.org>

	* rbgobj_object.c (gobj_set_property, gobj_get_property): fix a bug.

2002-10-14  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (GLib::Object.property): raise exception if the
	property doesn't exist.
	* src/rbgobj_param.c: rename GLib::ParamSpec to GLib::Param
	* src/rbgobj_signal.c (GLib::Instantiatable#signal_conect): accept
	symbol as signal name.
	* src/rbgobj_signal.c: rename
	GLib::Signal::Query to GLIb::Signal and
	GLib::Object.signal_list to GLIb::Object.signals and
	GLib::Object.signal_lookup to GLIb::Object.signal
	* src/rbgobj_object.c: rename
	GLib::Object.list_properties to GLIb::Object.properties and
	GLib::Object.find_property to GLIb::Object.property

2002-10-13  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>
	
	* src/rbgobj_valuetypes.c (rbgobj_ptr2cptr): check argument type
	* src/rbgobj_valuetypes.c: don't register some transformation function
	which may raise exception
	* src/rbgobj_object.c: add rbgobj_register_property_getter() and
	rbgobj_register_property_setter() for overwriting VALUE<=>GValue
	converter for property.

2002-10-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.[ch], src/rbglib.c: add G_DEF_SETTERS macro.

2002-10-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_value.c (rbgobj_gvalue_to_rvalue): return Qnil when the
	type of GValue is G_TYPE_STRING and the content is NULL.

2002-10-05  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgutil.h: add G_DEF_SETTER macro.

2002-10-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed: implement GLib::Boxed::gtype & GLib::Boxed#gtype

2002-10-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Add _register_fundamental_gtype_to_klass()/
	_register_fundamental_klass_to_gtype().

2002-10-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.h: define LONG2NUM and ULONG2NUM unless already defined.

2002-09-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.[ch]: File added.
	* src/rbgobject.h, src/rbglib.[ch]: Support rbgutil.c.

2002-09-29  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_param.c (inspect): change format: including value type and
	owner type. excluding nick and blurb.
	* src/rbgobj_param.c (get_nick, get_blurb): return nil if the string
	is NULL.
	* src/rbgobj_signal.c: introduce GLIb::Signal::Query to wrap
	GSignalQuery.
	* src/rbgobj_type.c: define GLib::Interface and include it to each
	interface. This inclusion is intended to represent that interfaces
	are subtypes of GLib::Inteface.
	* src/rbgobj_object.c (gobj_s_find_property, gobj_set_property,
	gobj_get_property): accept Symbol as property name.
	* src/rbgobj_object.c: fix parameter number of GLib::Object.find_property

2002-09-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c, src/rbgobj_boxed.c, src/rbgobject.h:
	Change RVAL2BOXED(obj) to RVAL2BOXED(obj, gtype).

2002-09-25  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c (marker_remove): fix a bug which can cause
	segmentation fault on following rb_gc_mark().

2002-09-24  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: allow GLib::Object#freeze_notify to take block.
	* src/rbgobj_param.c (rbgobj_get_value_from_param_spec): fixed
	* src/rbgobj_param.c: implement GLib::ParamSpec#inspect
	* src/rbgobj_object.c: implement GLib::Object.list_properties and
	GLib::Object.find_property
	* src/rbgobj_signal.c: implement signal_handler_is_connected?
	* src/*.c: untabify
	* src/rbgobj_boxed.c (boxed_free): don't call g_boxed_free() if not
	initilized.
	* src/rbgobj_closure.c: implement GLib::Closure

2002-09-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/*.c: introduce GLib::Instantiatable as a common superclass of 
	GLib::Object and GLib::ParamSpec. GLib:Instantiatable corresponds to
	GTypeInstance structure in C.
	* src/*.c: arrange APIs
	* src/rbgobject.c (rbgobj_define_signal_constants): stop calling
	g_class_ref(). Now caller must ensure that the class is initialized.

2002-09-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/*.c: introduce macro "RBGLIB_ENABLE_EXPERIMENTAL" to indicate
	experimental API.
	* src/rbgobj_signal.c: define constants
	* src/rbgobj_signal.c (signal_emit, signal_emit_stop): handles detail
	parameter.
	* src/rbgobject.c (rbgobj_gobject_new): check actual parameter size.

2002-09-21  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_define_property_accessors): when property
	name begins with 'is_', remove 'is_' from getter/setter name.
	* src/rbgobject.c (rbgobj_define_property_accessors): append '?' to
	the name of getter method of gboolean valued property.

2002-09-21  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgobj_object.c (gobj_set_property, gobj_get_property):
	accept nil as an argument of val. raise more kindly exception when
	property name was not found.

2002-09-18  KUBO Takehiro <kubo@jiubao.org>

	* src/rbgobject.c (rbgobj_gobject_new): fix size parameter of memset()
	* src/rbgobj_value.c (rbgobj_rvalue_to_gvalue): don't use
	g2r_func_table but r2g_func_table

2002-09-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_define_property_accessors): optimize a bit
	  by accumulating source string and call module_eval at once.

2002-09-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_define_property_accessors):
	  - Define not only 'hogehoge=' but alse 'set_hogehoge'
	  - Exclude properties which name is conflict with method of 'Object'
	  - Stop passing second and third argument of module_eval

2002-09-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/global.h, src/rbglib.h: Move StringValue, StringValuePtr 
	to src/rbglib.h(Because it'll be used by other Ruby-GNOME libraries).
	Add RVAL2CSTR, CSTR2RVAL macro.

2002-09-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: Append -fnative-struct to $CFLAGS when G_OS_WIN32 is defined

2002-09-13  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobject.h, src/rbgobj_object.c: Rename RBGOBJ_INITIALIZE to G_INITIALIZE.
	* src/rbgobject.h: Add G_RELATIVE, G_RELATIVE2, G_REMOVE_RELATIVE.

2002-09-13  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbobjmanager.[ch]: remove files.
	* src/rbglib.[ch]: remove Init_objmanager().

2002-09-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: implement GLib::Object#signal_emit_by_name

2002-09-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: fix GLib::Object#signal_emit.
	* src/rbgobj_signal.c: implement GLib::Object.signal_lookup and 
	GLib::Object.signal_list
	* src/rbgobj_signal.c: implement GLib::Object.signal_new.
	This is an experimental interface.
	* src/rbgobj_value.c (rbgobj_gvalue_to_rvalue, rbgobj_rvalue_to_gvalue): 
	fix error messsage and use g_warning().
	* src/utils_int64.c: use 0xffffffffL instead of G_MAXUINT
	* src/utils_int64.c, src/global.h, src/rbgobj_paramspecs.c,
	src/rbgobj_value.c: change prefix of int64 functions from 'rbgobj_' to
	'rbglib_'.
	* src/*.[ch]: add 'indent-tabs-mode: nil' to header 

2002-08-29  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c: Add GLib::Boxed.new, GLib::Boxed#allocate.

2002-08-20  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c: Add rbgobj_boxed_initialize(), rbgobj_boxed_create().
	Modify rbgobj_boxed_get().

	* src/rbgobject.[ch]: Support Boxed type in rbgobj_create_object(), 
	rbgobj_initialize_object().

2002-08-20  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/utils_int64.c: rb_global_variable(&max_PRUint32)
	* src/rbgobj_param.c: rename rbgobj_get_value_from_paramspec to
	rbgobj_get_value_from_param_spec
	* src/rbgobj_param.c (gobj_get_gtype): use rbgobj_param_spec_get_struct
	instead of RVAL2GOBJ

2002-08-18  Masao Mutoh <mutoh@highway.ne.jp>

   * src/rbobjmanager.[ch]: Add file. Support RB_DEF_CLASS system.

2002-08-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: use $libs instead of $LDFLAGS
	* src/rbglib.c: define GLib::VERSION, GLib::(MAJOR|MINOR|MICRO)_VERSION
	* src/rbgobj_param.c: define GParamFlags constants
	* src/rbgobj_value.c (rbgobj_register_r2g_func): change argument.
	it now take GType as key instead of Ruby class.
	* src/rbgobject.c (rbgobj_add_relative, rbgobj_add_relative_removable,
	rbgobj_remove_relative): call rb_ivar_defined() before calling rb_ivar_get()
	* rbgobj_valuetypes.c, rbgobj_value.c: improve G_TYPE_POINTER handling

2002-08-10  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.[ch]: move id_relative_callbacks to gtk
	* src/rbgobj_closure.c, src/rbgobj_object.c, src/rbgobj_signal.c:
	use GVAL2RVAL
	* src/rbgobj_valuetypes.c: add file. implement RBGOBJ_TYPE_RUBY_VALUE
	to box Ruby object into GValue.
	* src/rbgobj_type.c, src/rbgobj_value.c, src/rbgobj_valuetypes.c:
	support G_TYPE_POINTER. This is a tentative implementation.
	* src/global.h: move "extern void Init_hoge();" stuff to where these
	functions are actually called.

2002-08-09  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/utils_int64.c (LL_L2UI): cast argument to guint32
	* src/utils_int64.c (RubyTo64BitInt): oops. convert max_PRUint32 to VALUE.
	* src/utils_int64.c: optimize

2002-08-09  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c: use GQuark
	* src/rbgobj_type.c: fix allocation problem in ruby-1.7
	rb_obj_alloc() was used though GLib::Type#allocate wasn't implemented.
	this problem is pointed out by Masao Mutoh <mutoh@highway.ne.jp>.
	* src/rbgobj_object.c: rename GLib::GObject to GLib::Object
	* src/utils_int64.c: add file. support gint64/guint64.
	code is ripped from rbXPCOM-0.0.3.
	<URL:http://www.ruby-lang.org/en/raa-list.rhtml?name=rbXPCOM>
	Thanks to Kenichi Komiya <kom@mail1.accsnet.ne.jp>
	* src/rbgobj_param.c (value_set_default): initialize GValue with {0,}.
	* src/rbgobj_param.c (ParamSpec#value_type): returns GLib::Type
	* src/rbgobj_param.c (ParamSpec#owner_type): ditto
	* src/rbgobj_paramspecs.c: implement more functions
	* src/rbgobj_boxed.c: use rbgobj_type.c for class managiment
	* src/rbgobj_value.c: hardcode most converters.
	Now table-lookup is used only for G_TYPE_POINTER and G_TYPE_BOXED.
	* src/rbgobj_object.c, src/rbgobj_enum.c, src/rbgobj_param.c: ditto

2002-08-08  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: more ruby-ish method naming.
	ie: "hoge?" rather than "is_hoge"?
	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype): enhancement for
	G_TYPE_PARAM
	* src/rbgobj_param.c, src/rbgobj_paramspec.c: rewrite for using above
	enhancement.

2002-08-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_gobject_new): take type argument as GType
	 instead of VALUE.
	* src/rbgobject.c (rbgobj_gobject_new): allow nil for construct parameter
	* src/rbgobj_object.c (is_gtkobject): add function
	* src/rbgobj_object.c (GObject.allocate): check abstract class
	* src/rbgobj_object.c (GObject#initialize): rewrite
	* src/rbgobj_type.c (rbgobj_lookup_class): use independent hash instead
	of instance variable. and abolish id_class_info.
	* src/rbgobj_type.c (rbgobj_lookup_class): search ancestor classes.
	* src/rbgobj_type.c: implement GLib::Type.

2002-08-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: extend rbgobj_lookup_class_by_gtype() to deal
	interfaces
	* src/rbgobject.h: define macros: G_DEF_INTERFACE and G_DEF_INTERFACE2
	* src/rbgobj_typeplugin.c: file added
	* extconf.rb: use --msvc-syntax option for pkg-config if the compiler
	is MSVC++.

2002-08-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
 
	* src/rbgobject.h: remove declaration of id_class_info and id_delete
	* src/rbgobject.h, src/rbgobj_object.c, src/rbgobj_signal.c:
	remove global variable rbgobj_cGObject.

2002-08-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.[ch]: fix mGLib declaration and definition

2002-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype):
	enable calling of rbgobj_define_property_accessors() and
	rbgobj_define_signal_constants().

2002-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: abolish rbgobj_register_class()
	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype):
	now this function create a new class on demand.
	* src/rbgobj_type.c: abolish rbgobj_lookup_rbclass()
	* src/rbgobject.c: fix typo
	* src/rbgobject.c: add rbgobj_define_signal_constants()
	which define constants for signal names.

2002-08-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (_gobject_to_ruby): check NULL before calling
	GOBJ2RVAL().
	* src/rbgobj_signal.c (gobj_sig_connect): remove unused variable 'id'.
	* src/rbgobj_signal.c (gobj_sig_connect_after): ditto
	* src/rbgobj_object.c (gobj_smethod_added): fix bugs
	
2002-07-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: devide from rbgobj_objectc[ch].
	* src/rbgobj_object.c, src/rbgobject.h: abolish rbgobj_force_get_gobject().
	* src/rbgobject.h: add G_DEF_CLASS(), G_DEF_CLASS2(), GTYPE2CLASS().
	* src/rbgobj_type.c: add rbgobj_define_class()

2002-07-31  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c: use g_closure_add_invalidate_notifier()
	instead of g_closure_add_finalize_notifier()
	* src/rbgobj_closure.c: fix g_closure_add_invalidate_notifier()'s
	argument order
	* src/rbgobj_signal.c: GObject#signal_connect now accept extra argument
	as Ruby/Gtk 1.
	* src/rbgobj_signal.c: implement GObject#signal_connect_after

2002-07-28  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (gobj_s_gobject_new): refine GtkObject-specific
	stuff
	* src/rbgobj_object.c: implement GObject#freeze_notify, GObject#notify,
	GObject#thaw_notify
	* src/rbgobj_object.c (gobj_inspect): use g_strdup_printf() instead of
	ALLOCA_N() and sprintf()
	* src/rbgobj_type.c (rbgobj_register_class): add some check
	* src/*.c: replace rbgobj_get_value_from_gobject() with GOBJ2RVAL()
	* src/*.c: replace rbgobj_get_gobject() with RVAL2GOBJ()
	* src/rbgobj_object.c:
	  void rbgobj_define_property_acccessors(VALUE klass);
	is added. This function defines accessor methods for properties.
	* src/rbgobj_signal.c (gobj_sig_emit): call g_value_init()

2002-07-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: abolish rbgobj_make_gobject_auto_type() and
	rbgobj_make_gobject()
	* src/rbgobj_boxed.c, src/rbgobj_enums.c, src/rbgobj_typemodule.c,
	src/rbgobj_signal.c: created
	* src/rbgobj_object.c: move signal stuff to src/rbgobj_signal.c

2002-07-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: implement GObject.gobject_new experimentaly.
	  example:
	   w = GLib::GObject.gobject_new("GtkWindow", "title" => "Hello World")

2002-07-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: check allocation framework
	* src/rbgobj_object.c: introduce intermediate data structure (gobj_holder)
	for managing not only GObject*, but also class_info and ruby object itself.
	* src/rbgobj_object.c: abolish gobject_object_list_v and 
	gobject_object_list
	* src/rbgobj_object.c: use gobject_weak_ref() to observe an explicit
	disposition. (e.g. by gtk_object_destroy())
	* src/rbgobj_object.c: implement GObject#set_property and
	GObject#get_property
	* src/rbgobj_paramspecs.c: created

2002-06-23  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/rbgobj_type.c (Init_gobject_gtype): call g_type_init().
	* src/rbgobj_object.c, src/gclosure.c: zero-fill GValue before
	using it.

2002-06-23  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobject.h: Fix parameter number of RBGOBJ_INITIALIZE().

2002-06-23  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobject.c: change rbgobj_set_gobject() to rbgobj_initialize_gobject().
	* src/rbgobject.h: create RBGOBJ_INITIALIZE().

2002-06-22  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/rbgobject.h: create two macros; RVAL2GOBJ() and GOBJ2RVAL().
	* src/rbgobject.h, rbgobj_object.c: make rbgobj_make_gobject() and
	rbgobj_make_gobject_auto_type() be private.
	* src/rbgobj_object.c: remove gobj_mark() and clear_gobject().
	* src/rbglib.c: remove gError.

2002-06-20  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/rbgobj_object.c, src/rbgobj_type.c, src/rbgobject.h:
	rename rbgobj_class_info to RGObjClassInfo.

2002-06-18  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/*.c: conform to Ruby/GNOME2 coding-style.

2002-06-18  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* extconf.rb: check whether package exists or not.
