[BUG] - varargs removal does not check correct variable
[gnome.gobject-introspection] / ChangeLog
index 702f1ab..e69de29 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
-2009-01-27  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/cairo-1.0.gir:
-       * gir/fontconfig-2.0.gir:
-       * gir/freetype2-2.0.gir:
-       * gir/libxml2-2.0.gir:
-       * gir/xfixes-4.0.gir:
-       * gir/xft-2.0.gir:
-       * gir/xlib-2.0.gir:
-       Remove shared-library tags for these too.
-
-2009-01-27  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/GL-1.0.gir:
-       Remove shared-library which removes the build
-       time dependency on mesa.
-
-2009-01-27  Dan Winship  <danw@gnome.org>
-
-       Misc warning fixes
-
-       * giscanner/scannerparser.y: Fix the "Ignoring non-UTF-8 constant
-       string" error to print the right value.
-
-       * tests/scanner/annotation.c (backslash_parsing_tester)
-       (backslash_parsing_tester_2): make these non-static to avoid a
-       warning.
-       (annotation_object_string_out)
-       (annotation_string_zero_terminated): fix return values
-
-       * tests/scanner/annotation.h (annotation_object_with_voidp):
-       prototype this
-
-       * tests/scanner/gtkfrob.c:
-       * tests/scanner/gtkfrob.h (gtk_frob_language_manager_get_default):
-       fix prototype. (s/()/(void)/).
-
-       * tools/compiler.c (format_output): fix signed/unsigned warning.
-       Output a prototype for register_typelib() to avoid warnings later.
-
-2009-01-26  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/everything/everything.c (test_callback):
-       * tests/everything/everything.h:
-       Add a couple of callback tests.
-
-2009-01-26  Johan Dahlin  <jdahlin@async.com.br>
-
-       * girepository/ginfo.c (g_base_info_unref):
-       Only unref the repository if it's actually set.
-
-2009-01-23  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/everything/everything.c (test_enum_param):
-       * tests/everything/everything.h:
-
-       Add an enum param test function
-
-2009-01-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       * configure.ac:
-       Post-release version bump
-
-=== 0.6.2 ===
-2009-01-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       * NEWS: Update
-
-2009-01-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 562622 – Errordomains missing
-
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * tests/scanner/Makefile.am:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.tgir:
-       * tests/scanner/foo.c (foo_error_get_type), (foo_error_quark):
-       * tests/scanner/foo.h:
-
-2009-01-20  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/scannerlexer.l:
-       Increase the buffer size to 1M, so
-       gtkalias.h can be parsed.
-
-2009-01-20  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/glibtransformer.py:
-       When trying to map functions to structs, do
-       not require a public structure to exist, should
-       fix Gst gir generation in.
-
-2009-01-20  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 562615 – Struct methods missing
-
-       * giscanner/annotationparser.py:
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.tgir:
-
-2009-01-16  Dan Winship  <danw@gnome.org>
-
-       * gir/GL-1.0.gir: add back GLvoid, which got lost during the
-       gir-repository -> gobject-introspection migration
-
-2009-01-15  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/freetype2-2.0.gir: add FT_Int32
-       * gir/xft-2.0.gir: add XftFont
-       * girepository/gdump.c (g_irepository_dump):
-       Report errors when an invalid type is encountered
-       * giscanner/glibtransformer.py:
-       Make the error message a bit nicer.
-
-       Part of preparating for gir generating inside pango.
-
-2009-01-15  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/GL-1.0.gir:
-       * gir/Makefile.am:
-       * gir/cairo-1.0.gir:
-       * gir/fontconfig-2.0.gir:
-       * gir/freetype2-2.0.gir:
-       * gir/libxml2-2.0.gir:
-       * gir/xfixes-4.0.gir:
-       * gir/xft-2.0.gir:
-       * gir/xlib-2.0.gir:
-
-       Move over the hand-written girs from gir-repository
-       so upstream libraries depending on these can avoid
-       a gir-repository dependency.
-
-2009-01-15  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 567813 – Everything should be versioned
-
-       * gir/Makefile.am:
-       * girepository/Makefile.am:
-       * girepository/girepository.c (init_globals):
-       * girepository/girparser.c (locate_gir):
-       * giscanner/dumper.py:
-       * giscanner/transformer.py:
-       * gobject-introspection-1.0.pc.in:
-       * tests/everything/Makefile.am:
-       * tests/invoke/Makefile.am:
-       * tests/offsets/Makefile.am:
-       * tests/repository/Makefile.am:
-       * tests/scanner/Makefile.am:
-       * tools/Makefile.am:
-
-2009-01-13  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 555036 – put gtk-doc in GIR
-
-       * giscanner/annotationparser.py:
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation.h:
-       * tests/scanner/foo-1.0-expected.gir:
-
-2009-01-13  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/cachestore.py (CacheStore.load): Catch AttributeError
-       which seems to be occasionally raised for Record.
-
-       * giscanner/annotationparser.py:
-       Fix a bug where \n was not present in a comment
-
-2009-01-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 562467 – Property annotation
-
-       * giscanner/annotationparser.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/annotation.c (annotation_object_set_property),
-       (annotation_object_get_property), (annotation_object_class_init):
-
-       Annotations are parsed for properties.
-
-2009-01-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 546739 – Introspection should know precise signal parameter types
-
-       * giscanner/annotationparser.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/annotation.c (annotation_object_class_init):
-
-       Annotations are parsed for signals, the (type) annotation is introduced.
-
-2009-01-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 563591 – Flags not recognized when there is no introspection data
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/giscannermodule.c (type_get_is_bitfield):
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/scannerparser.y:
-       * giscanner/sourcescanner.c (gi_source_type_copy):
-       * giscanner/sourcescanner.h:
-       * giscanner/sourcescanner.py:
-       * giscanner/transformer.py:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.tgir:
-       * tests/scanner/foo.h:
-
-       Large parts of this patch was done by Jürg Billeter.
-
-2009-01-12  Havoc Pennington  <hp@pobox.com>
-
-       Bug 563386 – scanner ignores "const" on boxed return values
-
-       * tests/everything/everything.c (test_simple_boxed_a_const_return):
-       * tests/everything/everything.h:
-
-       This adds just the tests specified in the bug above, the fix itself
-       was included in Bug 563794
-
-2009-01-03  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 566404 – Annotations for GLib
-
-       * gir/glib-2.0.c: Added allow-none annotations for g_thread_init()
-       and g_main_loop_new().
-
-2009-01-12  Johan Dahlin  <jdahlin@async.com.br>
-
-        Bug 566419 – Element type of arrays not properly handled in all cases
-
-       * giscanner/annotationparser.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/annotation.c (annotation_object_set_data),
-       (annotation_object_set_data2), (annotation_object_set_data3):
-       * tests/scanner/annotation.h:
-
-       Based on patch by Andreas Rottmann
-
-2009-01-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 566560 – giscanner.transformer.SkipError
-
-       * giscanner/transformer.py:
-
-       Catch SkipError for all nodes, not just functions.
-       Makes it possible to skip unsupported parameter types in 
-       callbacks.
-
-2009-01-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 563794 - Redo annotation parsing & applying
-       
-       Thanks to Colin for helping out considerably in landing this.
-
-       * giscanner/Makefile.am:
-       * giscanner/ast.py:
-       * giscanner/dumper.py:
-       * giscanner/girparser.py:
-       * giscanner/giscannermodule.c (pygi_source_scanner_get_comments),
-       (calc_attrs_length), (pygi_collect_attributes), (init_giscanner):
-       * giscanner/glibtransformer.py:
-       * giscanner/scannerlexer.l:
-       * giscanner/sourcescanner.c (gi_source_symbol_unref),
-       (gi_source_scanner_new), (gi_source_scanner_free),
-       (gi_source_scanner_get_comments):
-       * giscanner/sourcescanner.h:
-       * giscanner/sourcescanner.py:
-       * giscanner/transformer.py:
-       * giscanner/xmlwriter.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/annotation.c:
-       * tests/scanner/annotation.h:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.tgir:
-       * tests/scanner/foo.h:
-       * tools/g-ir-scanner:
-
-       This commit merges the annotation parser rewrite branch.
-       It'll change the annotation parsing to be done completely in python
-       code which will make it easier to do further annotation parsing 
-       easier.
-
-2009-01-03  Andreas Rottmann  <a.rottmann@gmx.at>
-       Bug 563469 – Arrays not treated correctly in struct offset calculation
-       
-       * tests/scanner/foo.h (FooObject): Added field `some_int'.
-       * tests/scanner/foo-1.0-expected.gir,
-       * tests/scanner/foo-1.0-expected.tgir: Adapted.
-       * giscanner/glibtransformer.py (GLibTransformer._create_gobject):
-       carry over object fields from original (struct) node.
-       (GLibTransformer._pair_class_struct): Don't add fields of the
-       class struct to to the node for the class, they should go under a
-       nested <record> element (see also Bug 551738). This is needed as
-       otherwise offset calculation would not work, as the instance
-       fields are mingled with the class fields without a way to
-       distinguish them.
-  
-2009-01-03  Johan Dahlin  <jdahlin@async.com.br>
-
-       * misc/pep8.py:
-       Disable blank line check, it works differently under
-       Python 2.5 from 2.6 and was rather annoying from the start.
-
-2008-01-03  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 556489 – callback annotations
-       
-       * giscanner/transformer.py 
-
-       * tools/generate.c (write_callable_info): Write out the new scope,
-       closure and destroy attributes.
-
-       * giscanner/transformer.py (Transformer._type_is_callback): New
-       method, checking if a given type is a callback.
-       (Transformer._augment_callback_params): New method; adds
-       information (closure, destroy) to callback parameters.
-       (Transformer._handle_closure, Transformer._handle_destroy): New methods, 
-       auxiliary to _augment_callback_params.
-       (Transformer._create_function): Call _augment_callback_params().
-       (Transformer._create_parameter): Handle scope option.
-
-       (Transformer._create_typedef_callback): New method, creates a
-       callback, and registers it in the typedef namespace
-       (Transformer._create_typedef): Use _create_typedef_callback()
-       instead of the plain _create_callback().
-
-       * giscanner/ast.py (Parameter): Added callback-related fields.
-       * giscanner/girwriter.py: Write out new Parameter fields.
-
-       * girepository/girnode.h (GIrNodeParam): Added fields scope, 
-       closure and destroy.
-       * girepository/gtypelib.h (ArgBlob): Ditto.
-       * girepository/girparser.c (start_parameter): Handle new fields.
-
-       * girepository/girmodule.c (g_ir_module_build_typelib): Adjust
-       arg_blob_size, bump major version due to this change.
-       * girepository/girnode.c (g_ir_node_get_full_size_internal)
-       (g_ir_node_build_typelib)
-       * girepository/gtypelib.c (g_typelib_check_sanity): ArgBlob size
-       adjustments.
-       (g_ir_node_build_typelib): Fill in new ArgBlob flags from param. 
-
-       * girepository/girepository.h (GIScope): New enumeration, listing
-       the different possible scopes for callbacks.
-
-       * girepository/ginfo.c (g_arg_info_get_scope)
-       (g_arg_info_get_closure, g_arg_info_get_destroy): Accessors for
-       callback-related argument indices (callback scope, closure for a
-       callback, destroy notification for a callback).
-
-       * tests/scanner/: Added testcases for new features.
-       
-2009-01-03  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/ast.py:
-       * giscanner/dumper.py:
-       * giscanner/girparser.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/sourcescanner.py:
-       * giscanner/transformer.py:
-       * giscanner/xmlwriter.py:
-
-       Fix inconsistencies with PEP8
-
-2008-12-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/gio-2.0.c:
-       Annotate transfer, direction and allow none for
-       g_file_load_contents, g_file_load_contents_finish and
-       g_file_load_partial_contents_finish parameters.
-
-2008-12-12  Owen Taylor  <otaylor@redhat.com>
-
-       Disable array auto-detection for out-annotated parameters (#563934)
-
-       If we have a parameter annotated as (out), then having a ctype of
-       'char **' (or similar) doesn't necessarily indicate an array.
-
-       * giscanner/transformer.py: Skip array-detection logic for
-       (out)-annotated parameters.
-       * tests/scanner/annotation.h tests/scanner/annotation.c
-       tests/scanner/annotation-1.0-expected.gir
-       tests/scanner/annotation-1.0-expected.tgir: Add a test for
-       an (out) string parameter.
-
-2008-12-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/dumper.py (DumpCompiler._link): Pass in
-       --tag=CC to libtool to avoid making libtool confused
-       when CC is different from gcc on some systems.
-
-2008-12-10  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 563998 – Cache the GIBaseInfo for GTypes
-
-       * girepository/girepository.c (g_irepository_find_by_gtype):
-       add a cache of GType -> GIBaseInfo.
-
-2008-12-09  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 562545 – Add function taking / returning GValue
-
-       * tests/everything/everything.[ch]: add a test of function taking and
-       returning "const GValue *"
-
-2008-12-09  Johan Dahlin  <johan@async.com.br>
-
-       * giscanner/cachestore.py (CacheStore.store): Use
-       shutil.move instead of os.rename, since it will
-       automatically fall back to copying+remove if the
-       src directory is on a different partition from
-       the dst directory.
-
-2008-12-08  Tristan Van Berkom  <tristan.van.berkom@gmail.com>
-
-       Bug 563742 – introspection should record the introduced version of
-                     symbols marked with the "Since:" tag
-
-       reviewed by: Johan
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/scannerlexer.l:
-       * giscanner/transformer.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/annotation.c (annotation_versioned):
-       * tests/scanner/annotation.h:
-
-2008-12-08  Johan Dahlin  <johan@async.com.br>
-
-       * giscanner/cachestore.py (_get_cachedir): Don't require
-       HOME to be set and if it set, don't require the
-       directory to exist.
-
-2008-12-08  Johan Dahlin  <johan@async.com.br>
-
-       * giscanner/cachestore.py (CacheStore.store): Dump the cache
-       file to a temporary file and rename it the expected filename
-       only when it's completely written.
-       This should make the cache more roboust when run in parallel,
-       and hopefully avoid triggering bugs in Python.
-
-2008-12-03  Christophe Fergeau  <teuf@gnome.org>
-
-       Bug 562971 – g-ir-scanner failure on libgpod headers
-
-       * giscanner/scannerlexer.l: raise YY_BUF_SIZE to 65536 up from the
-       default 16384. Without it, the lexer was aborting with a cryptic
-       error message on source files containing really long comment
-       blocks.
-
-2008-12-01  Colin Walters  <walters@verbum.org>
-
-       * girepository/gfield.c: Fix memory leak; unref type info we
-       created, not field info
-
-2008-11-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 562289 – Race when removing invalid cache
-
-       * giscanner/cachestore.py:
-       ENOENT is mapped to a OSError, not IOError.
-
-2008-11-27  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/glib-2.0.c: Add return value transfer annotation
-       for g_markup_escape_text.
-
-2008-11-25  Colin Walters  <walters@verbum.org>
-
-       * tools/g-ir-scanner: Add --libtool option which we expect Automake-using
-       people to pass.
-       * giscanner/dumper.py: Implement it.
-       * gir/Makefile.am, tests/**/Makefile.am: Use it.
-
-2008-11-25  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/Makefile.am: Remove hand-rolled generation of .tgir; easier
-       to just use a Makefile rule and dependencies.  This corresponds with a change
-       made to gir-repository to fix srcdir != builddir issues.
-
-2008-11-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * configure.ac:
-       Post release version bump
-
-=== 0.6.1 ===
-2008-11-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * NEWS:
-       Release 0.6.1
-
-2008-11-25  Colin Walters  <walters@verbum.org>
-
-       Bug 559705 – Missing association between static methods and classes
-
-       * docs/typelib-format.txt:
-       * girepository/ginfo.c (g_function_info_get_flags):
-       * girepository/girmodule.c (g_ir_module_build_typelib):
-       * girepository/girnode.c (g_ir_node_get_size),
-       (g_ir_node_build_typelib):
-       * girepository/girparser.c (start_function):
-       * girepository/gtypelib.c (g_typelib_check_sanity),
-       (validate_header), (validate_function_blob):
-       * girepository/gtypelib.h:
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.tgir:
-       * tests/scanner/foo.h:
-
-2008-11-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py: Define socklen_t as an alias for int32.
-
-2008-11-24  Johan Dahlin  <jdahlin@async.com.br>
-
-       * girepository/gdump.c (dump_type): Remove a warning,
-       be less verbose on error on fundamental types.
-
-2008-11-23  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/dumper.py: Add license headers,
-       refactor into a class, avoid some duplication and do some
-       extra pedantic checks.
-
-2008-11-23  Johan Dahlin  <jdahlin@async.com.br>
-
-       Make it compilable with -Werror on my system by adding
-       a couple of prototypes and including headers.
-
-2008-11-23  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 562022 – gobject-introspection needs python headers
-
-       * configure.ac: fail without python headers present.
-       Patch by: Tom Parker
-
-2008-11-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 561617 – Return value array annotations
-
-       * giscanner/transformer.py:
-       * tests/scanner/annotation.c (annotation_return_array):
-       * tests/scanner/annotation.h:
-       Add support for (array) for return value annotations as well.
-
-2008-11-20  Johan Bilien  <jobi@via.ecp.fr>
-
-       * tests/everything/everything.[ch]: add a test function which calls a
-       closure.
-
-2008-11-19  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/cachestore.py:
-       Catch ValueError exceptions.
-
-2008-11-18  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/scanner/Makefile.am (barapp_SOURCES): fix builddir != srcdir
-
-2008-11-18  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       * girepository/girnode.c (g_ir_node_build_typelib): Use sizeof()
-       instead of hard-coding struct sizes.
-
-2008-11-18  Owen Taylor <otaylor@redhat.com>
-
-       Bug 561296 - Add "storage type" to the typelib data for enums
-
-       In order to set and get enum and flag fields in structures, we need
-       to know the integral type that the enumeration is stored as. We are already
-       computing that at compile time in order to compute struct offsets, so the
-       easiest thing to do is to save that in the typelib.
-
-       * docs/typelib-format.txt girepository/girnode.[ch] girepository/giroffsets.c
-       girepository/gtypelib.h: Add 'storage_type' to the typelib format for EnumBlob
-       and compute and save it at compile time.
-
-       * girepository/girepository.h girepository/ginfo.c:
-       Add g_enum_info_get_storage_type().
-
-       * girepository/gfield.c: Implement reading and writing enum and flags fields
-       based on the storage type.
-
-2008-11-18  Owen Taylor <otaylor@redhat.com>
-
-       Add enums to the Everything test module
-
-       * tests/everything/everything.[ch]: Add TestEnum and TestFlags to the Everything
-       test module and register them as GTypes.
-
-       https://bugzilla.gnome.org/show_bug.cgi?id=561296
-
-2008-11-18  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/cachestore.py:
-       Catch BadPickleGet exceptions as well.  
-
-2008-11-17  Owen Taylor  <otaylor@redhat.com>
-
-       * tests/everything/everything.c: Fix doc comment annotations
-       for test_struct_b_clone() to refer to the right function.
-
-2008-11-17  Dan Winship  <danw@gnome.org>
-
-       * giscanner/glibtransformer.py (GLibTransformer.__init__): fix
-       spelling of GHashTable. #561135
-
-       * tests/scanner/annotation.c (annotation_object_get_hash):
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/annotation-1.0-expected.tgir: add a test of
-       GHashTable annotations
-
-2008-11-17  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       * giscanner/ast.py: Change string array match type to be in terms
-       of canonicalized type.
-       * giscanner/transformer.py: Add canonicalize_ctype which gives us
-       a version of a c:type without aliases, so we can deep canonicalize
-       char** to utf8*.  Update parse_ctype to use it.
-       * tests/*: Add gtk_init like int*/char*** arg functions for testing.
-
-2008-11-16  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c: Ensure we always call init_globals,
-       even if passed a non-default repository.
-
-2008-11-16  Colin Walters  <walters@verbum.org>
-
-       Bug 559706 - Interface prerequisites
-
-       * common.mk: Dep on libgirepository.la for scanner libs so that
-       we rebuild things even if just gdump.c changes.
-       * girepository/gdump.c: Dump prerequisites.
-       * giscanner/ast.py: Add prerequisite list.
-       * giscanner/girparser.py: Parse them from gdump.
-       * giscanner/girwriter.py: Write them.
-       * giscanner/glibtransformer.py: Resolve them.
-       * tests/*: Test.
-
-2008-11-16  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 561087 - Respect is_pointer in serialize_type()
-
-       Add a '*' to the serialization for the cases where we set is_pointer
-       in the type blob we write out depending on node->is_pointer. Don't
-       add the '*' in the cases where is_pointer is set or not set in a
-       fixed fashion.
-
-       http://bugzilla.gnome.org/show_bug.cgi?id=561087
-
-2008-11-16  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 560825 – Add size and alignment to typelib
-
-       Include the size and alignment of structures and unions in the typelib,
-       and add getter methods to retrieve them from GIStructInfo/GIUnionInfo.
-
-       * docs/typelib-format.txt girepository/gtypelib.h girepository/girnode.c
-       girepository/girmodule.c girepository/gtypelib.c: Add size and alignment
-       to StructBlob and UnionBlob.
-
-       * girepository/ginfo.c girepository/girepository.h:
-       Add g_[struct|union]_get[size|alignment]().
-
-       * test/offsets/gen-gitestoffsets: Test overall structure size and alignment.
-
-2008-11-16  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 552371 – implement struct field get/set
-
-       * girepository/gfield.c girepository/girepository.h: Add
-       convenience functions g_field_info_set_field() and
-       g_field_info_get_field() to set and get fields based on the
-       offsets in GIFieldInfo.
-
-2008-11-16  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 560241 - Out-arguments should not be marked as being pointers
-       in all cases
-
-       * girepository/girparser.c: Improved logic for out arguments.
-
-2008-11-16  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 559601 - Pointers in structs/unions unduly treated as arrays
-
-       * giscanner/transformer.py: Differentiate type creation logic
-       between parameters and struct components.
-
-2008-11-15  Colin Walters  <walters@verbum.org>
-
-       * giscanner/dumper.py: Check return code from pkg-config
-       invocations.
-
-2008-11-14  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/everything/everything.c (test_array_int_in),
-       (test_array_gtype_in):
-       * tests/everything/everything.h:
-       Rename the int/gtype array tests. Make the return value
-       useful, an aggregation of the array input values.
-
-2008-11-14  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/everything/Makefile.am:
-       * tests/everything/everything.c:
-       * tests/everything/everything.h:
-       * tests/everything/gitesttypes.c:
-       * tests/everything/gitesttypes.h:
-       Rename gitesttypes.[ch] to everything.[ch]
-
-2008-11-13  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 560708 – Don't treat arrays that have a length specified as
-       zero-terminated by default
-
-       * giscanner/transformer.py: Default to non zero terminated for
-       arrays with length.
-       * tests/*: Update, add test for zero vs not.
-
-2008-11-13  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 557788 - Return types for constructors in generated typelib bogus
-
-       * girepository/girnode.c: Namespace-qualify XREFs; not doing so is
-       obviously broken in the face of duplicate names in different
-       namespaces.
-       * tests/scanner/*expected.gir: Fix up.
-
-2008-11-13  Owen Taylor  <otaylor@redhat.com>
-
-       * girepository/girffi.c: Fix  "Unexpected time for time_t"
-       message.
-
-2008-11-13  Colin Walters  <walters@verbum.org>
-
-       Bug 558436 - avoid having scanner load app code
-
-       * giscanner/cgobject.py: Delete; we no longer load shared
-       libraries directly.
-       * giscanner/dumper.py: Support for linking a library to
-       a stub binary for introspection.
-       * giscanner/glibtransformer.py: Rewrite to use gdump XML
-       from invocation of child binary.
-       * giscanner/transformer.py: Fix up to use fully qualified
-       name in parse tree.  Make parse_ctype public so we can use
-       it inside glibtransformer.
-       * tests/scanner/barapp.c: New test, using --program arg
-       for g-ir-scanner.
-       * tests/*: Update to use common.mk for invoking scanner.
-       * tools/g-ir-scanner: Add options --program, --program-arg,
-       and --no-libtool.
-       * docs/g-ir-scanner.1: Update.
-
-2008-11-13  Colin Walters  <walters@verbum.org>
-
-       * configure.ac: Depend on Gio, we use it in gdump.c.
-       * girepository/gdump.c: Code to dump GType data to XML.
-       * girepository/girepository.c: Add option group for dumping.
-       * girepository/girepository.h: Define API for the above.
-
-2008-11-13  Colin Walters  <walters@verbum.org>
-
-       * common.mk: Add a file to include with Makefile fragments
-       useful for scanner invocation.
-
-2008-11-13  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/everything/gitesttypes.c (test_filename_return): Return
-       strings in filename encoding.
-
-2008-11-13  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 560253 – Add structure and boxed types to Everything test module
-
-       * tests/everything/gitesttypes.[ch]: Add examples of:
-
-         Plain old data structs
-         Plain old data structs with nested fields
-         Plain old data boxed
-         Plain old data boxed with nested fields
-         More complicated boxed types with internal state
-
-2008-11-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/everything/gitesttypes.c (test_gtype_in):
-       * tests/everything/gitesttypes.h:
-       Add a test of GType arrays, a la gtk_list_store_set_columns.
-
-2008-11-12  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 560419 – Cache includes when parsing
-
-       Keep track of all modules parsed within a GIrParser, and when a
-       module is referenced a second time, use the existing parsed copy
-       instead of reparsing.
-
-2008-11-12  Owen Taylor  <otaylor@redhat.com>
-
-       Fix management of ParseContext.includes_modules (#560419)
-
-       * girepository/girparser.c: Fix some trivial bugs in managing the
-       list of include modules. (Add to module's list twice, not
-       initialized to NULL, not freed.)
-
-2008-11-12  Owen Taylor  <otaylor@redhat.com>
-
-       Keep aliases and disguised_structures local to each module (#560419)
-
-       * girepository/girmodule.[ch]: When parsing, keep keep a separate
-       hash tables of aliases and 'disguised' flags for each module, and
-       store that on the module.
-
-       After parsing an include merge the aliases/disguised flags to the
-       including module.
-
-       * girepository/girparser.c: Remove 'prefix_aliases' flag and
-       always prefix aliases/disguised structure types when parsing; this
-       simplifies the code considerably.
-
-2008-11-12  Owen Taylor  <otaylor@redhat.com>
-
-       Fix mismatches between .gir name and 'name' attribute (#560419)
-
-       * tests/boxed.gir tests/constant.gir tests/enum.gir tests/invoke/invoke.c
-       tests/invoke/testfns-1.0.gir tests/object.gir tests/struct.gir: Fix places
-       where the 'name' element of <namespace/> didn't match the filename of the
-       gir, an assumption that the compiler has always expected and now enforces.
-
-2008-11-12  Owen Taylor  <otaylor@redhat.com>
-
-       Only allow one <namespace/> element per <repository/> (#560419)
-
-       * girepository/girparser.c: The logic in girparser.c didn't work
-       very well if there were multiple <namespace/> nodes within a
-       single <repository/> (context->namespace was always the overall
-       filename and not the the name specified in the <namespace/>
-       element for one thing; this would cause aliases to be mis-prefixed
-       in include modules.) Also check that the "name" in the
-       <namespace/> node matches the filename.
-
-2008-11-12  Owen Taylor  <otaylor@redhat.com>
-
-       Add a GirParser object to hold the state of a compilation
-
-       * girepository/girparser.[ch] tools/compiler.c: Add a toplevel
-       GirParser object to hold state that is global across a
-       compilation. Currently just holds the include path, but will
-       eventually also keep a cached list of parsed modules.
-
-2008-11-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * girepository/girepository.c (find_namespace_latest): Fix
-       minor memory leak.
-
-2008-11-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * configure.ac: use 'introspection' component for bugs
-
-2008-11-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/everything/gitesttypes.c (test_filename_return):
-       * tests/everything/gitesttypes.h:
-       Add a filename return test.
-
-2008-11-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/offsets/Makefile.am (gitestoffsets.c): fix
-       gen-gitestoffsets invocation with builddir != srcdir
-
-2008-11-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * girepository/girepository.c:
-       Change the element type from utf8 to filename
-       * girepository/girnode.c (g_ir_node_build_typelib):
-       Special case filename equally to utf8 here.
-
-2008-11-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/Makefile.am:
-       Remove unused variables, add a dependency of girepository.ch, so when
-       they change we rebuild the gir automatically.
-
-2008-11-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * girepository/girepository.c (g_irepository_get_search_path):
-       * girepository/girepository.h:
-       Add a g_irepository_get_search_path, so we can access the search
-       paths from runtime.
-
-2008-11-12  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 560474 – g-ir-compiler crashes when compiling the glib gir
-
-       * girepository/girparser.c: avoid freeing an uninitialized pointer
-
-2008-11-12  Johan Dahlin  <jdahlin@async.com.br>
-
-       * gir/Makefile.am:
-       * giscanner/glibtransformer.py:
-       * tools/g-ir-scanner:
-       Add a GIRepository-2.0.gir. Change the libtool lookup slightly
-       so we can just pass in --library=foo/bar/baz.la and the scanner
-       does the right thing.
-       Don't warn for _get_type() functions if they don't take any
-       parameters
-
-2008-11-11  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 560404 – Prefix types when resolving aliases in included modules
-
-       * girepository/girparser.c: When resolving aliases in an included
-       module, prefix types before looking them up.
-
-2008-11-11  Owen Taylor  <otaylor@redhat.com>
-
-       Compute field offsets and overall size for object structures
-
-       Bug 560326 – Fails to build Gtk-2.0.typelib with "Unexpected non-pointer
-       field of type object in structure"
-
-       Do basic computation of field offsets for objects and interfaces;
-       this doesn't attempt to address all of the "mess" for virtual
-       functions described in Bug 560281.
-
-2008-11-11  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 560308 – g-ir-compiler goes in infinite loop on Gdk-2.0.gir
-
-       Based on patch by Johan Bilien.
-
-       * giscanner/transformer.py (_create_member, _create_parameter):
-       Resolve types here as well.
-       (_resolve_type_name_1): Try resolving using 'ctype' first since
-       it's least ambiguous. Fixes struct member type resolution with
-       similarly named types, e.g. Gdk.PangoRendererClass and
-       Pango.RendererClass
-       * tests/scanner/foo*: Add test.
-
-2008-11-11  Owen Taylor  <otaylor@redhat.com>
-
-       * girepository/girparser.c: Search provided include dirs before
-       the default directories.
-
-2008-11-11  Owen Taylor  <otaylor@redhat.com>
-
-       * girepository/giroffsets.c: Include fully-qualified names in
-       all error messages.
-
-2008-11-11  Owen Taylor  <otaylor@redhat.com>
-
-       * girepository/giroffsets.c: Fail gracefully with an informative
-       error message when recursion is encountered when computing a 
-       structure size.
-
-2008-11-11  Owen Taylor  <otaylor@redhat.com>
-
-       * girepository/girparser.c: Remove an unused variable.
-
-2008-11-10  Owen Taylor <otaylor@redhat.com>
-
-       Add tests for field offset computations
-
-       * tests/offsets/offsets.h: Header file with structure definitions to test
-
-       * tests/offsets/gen-gitestoffsets: Generate a C program that computes
-       field offsets for the structures in offsets.h two ways: using
-       the information from a generated typelib, and as computed by the
-       compiler.
-
-       We diff these two versions to test that everything is OK.
-
-2008-11-10  Owen Taylor <otaylor@redhat.com>
-
-       Remove field offsets from g-ir-generate output and test inputs
-
-       Field offsets are a) architecture dependent so they shouldn't be part
-       of the architecture-independent gir format which is installed in
-       datadir. b) Are architecture-dependent so they shouldn't be in test
-       expected output.
-
-       * girepository/girparser.c: Don't parse offset for fields
-       * tools/generate.c: Don't parse offset for fields
-       * tests/*.gir test/scanner/*.tgir: Remove offsets
-
-       (Virtual function and discriminator offsets are not removed, as they
-       aren't fully hooked up to the field-offset computation machinery yet.)
-
-2008-11-10  Owen Taylor <otaylor@redhat.com>
-
-       Bug 560252 - Compute field offsets before writing typelib
-
-       * girepository/girnode.h: Store the total size and alignment for
-       GIrNodeStruct/Boxed/Union.
-
-       * girepository/giroffset.c: New file implementing computation of
-       structure field offsets.
-
-       * girepository/girnode.c: Compute structure field offsets before
-       writing types into the typelib.
-
-       * docs/typelib-format.txt: Document that a field offset of 0xFFFF
-       means "unknown". Also fix description of the discriminator_offset
-       field for unions.
-
-2008-11-10  Owen Taylor <otaylor@redhat.com>
-
-       Bug 560250 - Fully parse included modules
-
-       For some things, like computing structure offsets to put into the typelib
-       we need more than just the aliases from included modules. Do a completel
-       parse of included modules and store in module->included_modules.
-
-       Also add g_ir_find_node() to find node information from within the
-       active set of modules and their includes.
-
-2008-11-10  Owen Taylor <otaylor@redhat.com>
-
-       Split g_ir_ffi_get_ffi_type() out from ginvoke.c
-
-       Extract a function to convert GITypeTag to ffi_type from the internals
-       of ginvoke.c. This will be useful in figure out structure alignment.
-
-       Also fix handling of gsize and time_t to be portable. (Add a check
-       to configure.ac to figure out the width of time_t.)
-
-2008-11-10  Owen Taylor <otaylor@redhat.com>
-
-       Bug 560248 – "disguised structures"
-
-       Certain types like GIConv and GdkAtom are pointers internally but don't
-       look like pointers when referenced. They have the form.
-
-         typedef struct _X *X;
-
-       Parse these as structures/records but mark them in the gir with a 'disguised'
-       attribute so that we know that they need special handling.
-
-       In the typelib treat them like any other structure.
-
-2008-11-09  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-
-       Write throws attribute for virtual functions, fixes bug 559703
-
-2008-11-07  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/libtoolimporter.py (LibtoolImporter.find_module): Clear
-       up some confusion about the second argument to find_module, it's
-       actually the packages __path__ attribute which we can safely ignore
-       for our purposes.
-       (LibtoolImporter.load_module): Set module.__loader__ as per PEP 302.
-
-2008-11-07  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 559737 – Deal with continuations in macros
-
-       * giscanner/giscannerlexer.l: Treat continuation lines the same
-       as regular newlines. This makes the scanner not complain about
-       #define foo(x) \ <stuff> inside a C file. There's no attempt
-       however to handle parsing macro definitions split across lines.
-
-2008-11-07  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/cachestore.py:
-       Handle broken cache entries, write only filesystems and
-       running out of diskspace.
-
-2008-11-07  Owen Taylor  <otaylor@redhat.com>
-
-       * giscanner/giscannermodule.c (pygi_source_scanner_lex_filename):
-       Set current_filename before lexing the file so error messages
-       are reported in the right file.
-
-2008-11-06  Colin Walters  <walters@verbum.org>
-
-       * tests/everything/*: Add some tests for strv.
-
-2008-11-05  Colin Walters  <walters@verbum.org>
-
-       * girepository/ginvoke.c (g_function_info_invoke): Don't use
-       nested scope local variable for error which may go away after
-       conditional is complete.
-
-2008-11-05  Colin Walters  <walters@verbum.org>
-
-       * giscanner/scannerlexer.l: Avoid static 256 char buf which we
-       manipulate hackily; just use GString.  This avoids an
-       uninitialized memory read pointed out by Havoc.
-
-2008-11-04  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/__init__.py:
-       * giscanner/ast.py:
-       * giscanner/cachestore.py:
-       * giscanner/cgobject.py:
-       * giscanner/girparser.py:
-       * giscanner/girwriter.py:
-       * giscanner/giscannermodule.c:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/libtoolimporter.py:
-       * giscanner/minixpath.py:
-       * giscanner/odict.py:
-       * giscanner/sourcescanner.c:
-       * giscanner/sourcescanner.h:
-       * giscanner/sourcescanner.py:
-       * giscanner/transformer.py:
-       * giscanner/utils.py:
-       * giscanner/xmlwriter.py:
-       * COPYING:
-       Relicense the giscanner library under LGPLv2+.
-       This has been approved by all contributors.
-
-2008-11-01  Owen Taylor  <otaylor@redhat.com>
-
-       Bug 558848 giparser.py: shared library should be optional
-
-       When parsing a .gir, allow the shared-library attribute
-       of <namespace/> to be missing: this corresponds to the handling
-       in libgirepository and elsewhere.
-
-2008-11-01  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 557898 – Fails to build on OSX 10.4
-
-       * configure.ac: Check for $shrext_cmds that should be implicitly
-       available if you're using libtool >= 2.0. If undefined, call
-       libtool --config explicitly to get its value.
-       * girepository/gtypelib.c: Remove special case for (non-)Darwin
-       systems as unneeded.
-
-2008-10-31  Colin Walters  <walters@verbum.org>
-
-       * COPYING, COPYING.lib, COPYING.tools: Clarify licensing status.
-
-2008-10-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * configure.ac: Post release version bump
-
-=== 0.6.0 ===
-2008-10-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * NEWS:
-       * configure.ac:
-       * docs/release-checklist.txt:
-       0.6.0
-
-2008-10-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * Makefile.am: add an upload-release target
-       * docs/release-checklist.txt:
-       Release process documentation
-
-2008-10-31  Colin Walters  <walters@verbum.org>
-
-       Bug 558109 – _g_typelib_init fails to find shared libraries
-
-       * transformer/glibtransformer.py: Use ctypes' find_library
-       on passed libraries and write that for the shared-library
-       entry.  We want to avoid depending on -devel packages.
-
-2008-10-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * docs/g-ir-scanner.1:
-       Document the renaming options.
-
-2008-10-31  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * giscanner/Makefile.am:
-       * tests/invoke/Makefile.am:
-       * tests/repository/Makefile.am: List in-tree libraries first in
-       LDADD / LIBADD. If installed library is listed first, the
-       resulting binary will prefer installed version to one in .libs,
-       possibly making 'make check' behave strangely.
-
-2008-10-30  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * giscanner/ast.py: map 'id' (ObjC) to 'any' type to stop
-       gir-repository from choking with gdk/quartz
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/giscannermodule.c (calc_attrs_length),
-       (pygi_collect_attributes):
-       * giscanner/xmlwriter.py:
-       Write a C version of the xml namespace formatter.
-       Saves 15% of the time it takes to create a gtk gir.
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/xmlwriter.py: Abstract attribute formatting
-       to a function external to the XMLWriter class.
-
-       * giscanner/scannerlexer.l:
-       Parse and discard __typeof and __attribute.
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/girparser.py:
-       Remove arguments from the constructor, move them to
-       separate accessors. Add a new parse_tree method
-       which takes an element tree instance.
-       * tools/g-ir-scanner:
-       Update callsite for this
-
-       * giscanner/Makefile.am:
-       * giscanner/cachestore.py:
-       * giscanner/transformer.py:
-       Cache the include parsing. Saves ~25% time when
-       creating vte (which includes everything up to gtk+).
-
-2008-10-30  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: Don't reparse includes
-       we've already processed.
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/girparser.py:
-       * giscanner/transformer.py:
-       Avoid parsing parameters, types etc when parsing
-       includes. Should speed up include parsing a bit.
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/girparser.py:
-       Avoid big if/else and use a dispatch table like
-       approach.
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/transformer.py:
-       Clean up include parsing and registration.
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/transformer.py:
-       Clean up imports
-
-2008-10-30  Johan Dahlin  <jdahlin@async.com.br>
-
-       Bug 558383 – builddir != srcdir build fails if giscanner python module not already installed
-
-       * gir/Makefile.am:
-       construct PYTHONPATH just once
-
-       * tests/everything/Makefile.am:
-       * tests/scanner/Makefile.am:
-       add $(top_srcdir) to PYTHONPATH to
-       handle builddir != srcdir
-
-       * giscanner/libtoolimporter.py:
-       * giscanner/sourcescanner.py:
-       Make the libtoolimporter work when distchecking too.
-
-       Mostly based on patch by Tommi Komulainen
-
-2008-10-29  Owen Taylor  <otaylor@redhat.com>
-
-       * giscanner/glibtransformer.py: If a filename of an existing
-       file is passed to --library, hunt for it directly, rather than
-       searching for a corresponding library.
-
-2008-10-29  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/libtoolimporter.py:
-       * giscanner/sourcescanner.py:
-       Clean up the libtool importer a bit. Add a context so we
-       can use it through a with statement.
-       Don't just look in the current directory, look in the whole
-       sys.path.
-
-2008-10-29  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 558065 – gitesttypes should be installed
-
-       * configure.ac:
-       * tests/Makefile.am:
-       * tests/types/Makefile.am   -> tests/everything/Makefile.am
-       * tests/types/gitesttypes.c -> tests/everything/gitesttypes.c
-       * tests/types/gitesttypes.h -> tests/everything/gitesttypes.h
-       move tests/types to tests/everything
-
-       * tests/everything/Makefile.am: build normal shared library
-       libgirepository-everything.so.1.0.0 and corresponding typelib
-       Everything-1.0.typelib
-
-       * tests/everything/Makefile.am: explicitly link libtool
-       versioning with typelib versioning with variables
-
-2008-10-28  Johan Bilien  <jobi@via.ecp.fr>
-
-       * tools/g-ir-scanner: add LD_LIBRARY_PATH to LPATH before calling ld.
-
-2008-10-27  Johan Bilien  <jobi@via.ecp.fr>
-
-       * gio/gio-2.0.c: add allow-none annotations, based on the pygobject
-       .defs file
-
-2008-10-27  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 558068 – when invoking a method, offset the in arguments by one,
-       not the out
-
-       * tests/invoke/invoke.c, tests/invoke/testfns.c,
-       tests/invoke/testfns-1.0.gir: Add testing of method and constructor.
-       * girepository/ginvoke.c: do not offset the index of given out
-       arguments by one for methods, "this" is provided as in argument only.
-
-2008-10-27  Johan Bilien  <jobi@via.ecp.fr>
-
-       * gir/gio-2.0.c: add annotation for g_file_delete
-
-2008-10-27  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 558062 – provide and use paths in the .pc file
-
-       * gobject-introspection-1.0.pc.in: provide typelibdir variable
-       for where .typelibs should be installed (callers shouldn't need
-       to construct paths from bits and pieces)
-
-2008-10-25  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 557791 – g_irepository_require() could return a GTypelib *
-
-       * girepository/girepository.c: Return GTypelib; this is useful
-       for low level manipulation.
-
-2008-10-25  Colin Walters  <walters@verbum.org>
-
-       Bug 557788 – Return types for constructors in generated typelib bogus
-
-       * giscanner/glibtransformer.py: Don't resolve ctors incrementally,
-       rely on end pass resolution.
-
-2008-10-25  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 557786 - support fixed size arrays
-
-       * girepository/ginfo.c: Add g_type_info_get_array_fixed_size.
-       * giscanner/scannerparser.y: Retain fixed array size.
-       * giscanner/ast.py: Add to note.
-       * giscanner/girwriter.py: Write to gir.
-       * girepository/girnode.c: Write it to typelib.
-       * tools/generate.c: Generate.
-       * tests/*: Add tests.
-
-2008-10-25  Colin Walters  <walters@verbum.org>
-
-       Bug 557076 - move typelibs to $libdir
-
-       * configure.ac: Steal some configury bits from dbus to expand
-       libdir.
-       * gir/Makefile.am: Move to libdir.
-       * girepository/girepository.c: Stop searching XDG_DATA_DIRS;
-       instead just look at one hardcoded path in libdir.
-       * acinclude.m4: Bits from dbus.
-
-2008-10-24  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girnode.c (g_ir_node_check_unhandled_members):
-       Be quiet, do not warn about unhandled members.
-
-2008-10-24  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/gtypelib.c:
-       Only use SHLIB_SUFFIX on darwin, otherwise use
-       G_MODULE_SUFFIX, we cannot get shext_cmds from libtool 2.2.
-
-2008-10-24  Lucas Rocha  <lucasr@gnome.org>
-
-       Bug 557623 - Constructors shouldn't be flagged as methods.
-
-       * girepository/ginfo.c (g_function_info_get_flags): ditto.
-
-2008-10-24  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/scannerparser.y:
-       Check against division by zero for the modula operator.
-       This fixes header parsing of OSX system headers included
-       by libsoup.
-
-2008-10-24  Johan Dahlin  <johan@gnome.org>
-
-       * CONTRIBUTORS:
-       * Makefile.am:
-       Add a CONTRIBUTORS file and dist it.
-
-2008-10-23  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556739 – transfer-ownership attribute should be mandatory in .gir
-
-       * girepository/girparser.c (parse_param_transfer):
-       * giscanner/transformer.py (_create_parameter, _create_return):
-       * giscanner/girwriter.py (_write_return, _write_parameter):
-       * tools/generate.c (write_callable_info): always write and
-       require "transfer-ownership" for return-values and parameters
-
-       * tests/boxed.gir:
-       * tests/invoke/testfns-1.0.gir:
-       * tests/object.gir:
-       * tests/scanner/DrawableAdditions.xml:
-       * tests/scanner/GtkFrob-1.0-expected.tgir:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/drawable-1.0-expected.tgir:
-       * tests/scanner/drawable-injected-1.0-expected.gir:
-       * tests/scanner/drawable-injected-1.0-expected.tgir:
-       * tests/scanner/foo-1.0-expected.tgir: Updated
-
-2008-10-23  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * giscanner/cgobject.py: build fundamental types same way as glib
-
-       * giscanner/glibtransformer.py (_type_from_gtype): record GType
-       when constructing the Type from it
-
-       * giscanner/glibtransformer.py (_adjust_transfer): Check whether
-       the parameter is a GObject from its GType, if available.
-
-       * giscanner/glibtransformer.py (_adjust_transfer):
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.tgir: deduce
-       transfer-ownership from GTypes
-
-2008-10-23  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * giscanner/transformer.py (_create_parameter):
-       * tests/scanner/foo-1.0-expected.gir: make varargs
-       transfer-ownership="none"
-
-2008-10-23  Colin Walters  <walters@verbum.org>
-
-       Bug 556739 - transfer ownership
-
-       * giscanner/ast.py: Refactor Parameter/Return to share
-       common attributes.  Add transfer_inferred attribute
-       which says whether or not we made a guess.
-       * giscanner/transformer.py: Add much more extensive
-       heuristics around parameter and return transfer.
-       * giscanner/glibtransformer.py: Adjust to inspect
-       transfer_inferred.
-       * tests/*: Adjust.
-
-2008-10-22  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 557377 – Add test to ensure annotations survive the roundtrip via typelib
-
-       * tests/scanner/Makefile.am:
-       * tests/scanner/annotation-1.0-expected.tgir:
-       * tests/scanner/drawable-1.0-expected.tgir:
-       * tests/scanner/drawable-injected-1.0-expected.tgir:
-       * tests/scanner/foo-1.0-expected.tgir:
-       * tests/scanner/GtkFrob-1.0-expected.tgir:
-       * tests/scanner/utility-1.0-expected.tgir: Add test to ensure
-       annotations survive the roundtrip via typelib
-
-       The expectations are as currently produced by g-ir-generate,
-       comparison with the .gir files shows there are differences.
-
-2008-10-23  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 557468 – Support for GI_TYPELIB_PATH
-
-       * girepository/girepository.c: if the GI_TYPELIB_PATH is set, add the
-       provided paths to the global search path.
-
-2008-10-22  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 557379 – g-ir-generate not writing the 'abstract' attribute
-
-       * tests/scanner/drawable-1.0-expected.tgir:
-       * tests/scanner/drawable-injected-1.0-expected.tgir:
-       * tests/scanner/foo-1.0-expected.tgir:
-       * tools/generate.c (write_object_info): write 'abstract'
-       attribute for classes
-
-2008-10-22  Lucas Rocha  <lucasr@gnome.org>
-
-       * girepository/girmodule.c, girepository/gtypelib.c,
-       girepository/girparser.[ch]: fix some build warnings.
-
-2008-10-22  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 557405 – Use 'allow-none' consistently
-
-       * docs/typelib-format.txt:
-       * girepository/ginfo.c (g_arg_info_may_be_null):
-       * girepository/girnode.c (g_ir_node_build_typelib):
-       * girepository/girnode.h (struct _GIrNodeParam):
-       * girepository/girparser.c (start_parameter):
-       * girepository/girwriter.c (function_generate):
-       * girepository/gtypelib.h (ArgBlob):
-       * tests/errors.gir:
-       * tests/function.gir:
-       * tools/generate.c (write_callable_info): Use 'allow-none'
-       consistently throughout
-
-2008-10-22  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 557092 – Callback annotations not used
-
-       * giscanner/transformer.py (_create_callback): use annotations
-       for callbacks
-       * tests/scanner/annotation.h
-       * tests/scanner/annotation-1.0-expected.gir: add tests
-
-2008-10-21  Colin Walters  <walters@verbum.org>
-
-       * giscanner/scannerlexer.l: Don't require trailing whitespace after
-       uncommented parameters.
-       * tests/*: Test it.
-
-2008-10-21  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c: Ensure that when doing an unversioned
-       require, we prefer items earlier in the search path to later ones.
-
-2008-10-21  Owen Taylor  <otaylor@redhat.com>
-
-       * giscanner/transformer.py: For string parameters allow transfer annotation
-       to override the standard automatic guessing based on 'const'.
-
-2008-10-21  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 557241 – "throws" flag for functions
-
-       * tests/scanner/drawable-1.0-expected.gir,
-       tests/scanner/drawable-injected-1.0-expected.gir,
-       tests/scanner/drawable.[ch]: add simple test for throwing
-       function (has GError ** as last argument)
-
-       * giscanner/ast.py: add a 'throws' flag to Function
-       * giscanner/glibtransformer.py: if a function's last paramerter is
-       a GError, set the 'throws' flag and remove that parameter
-       * giscanner/girwriter.py: write out the 'throws' attribute
-       * giscanner/girparser.py: support parsing the 'throws' attribute
-
-       * tests/repository/gitestthrows.c: add a simple test to check the
-       throws flag in a typelib and invoke the function
-
-       * girepository/ginfo.c, girepository/girnode.[ch],
-       girepository/girnode.h, girepository/girparser.c,
-       girepository/girepository.h: Add and parse the GI_FUNCTION_THROWS flag
-
-       * girepository/ginvoke.c: if a function throws, add a GError as last
-       arguments, and propagate the error to the invoker.
-
-2008-10-21  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * giscanner/transformer.py (_create_parameters): Warn if we see
-       annotations for unknown parameters. If .h and .c files name
-       parameters differently, the annotations may be lost.
-
-2008-10-21  Johan Dahlin  <johan@gnome.org>
-
-       Bug 556358 - don't use libtool internals
-
-       * giscanner/Makefile.am:
-       * giscanner/libtoolimporter.py:
-       * giscanner/sourcescanner.py:
-       * giscanner/utils.py:
-       Add a python meta importer and remove a libtool symlink hack.
-
-2008-10-20  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       * tests/scanner/Makefile.am (%.typelib): Set PYTHONPATH
-       and --add-include-path appropriately when invoking the scanner.
-       * tests/types/Makefile.am (%typelib): Likewise.
-
-2008-10-20  Colin Walters  <walters@verbum.org>
-
-       Bug 556777 - validate properties
-
-       * giscanner/transformer.py: Add option to throw on unknown types.
-       * giscanner/glibtransformer.py: Use it on properties.
-       * tests/*: Add a test.
-
-2008-10-20  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibast.py: Also register g variants of
-       default_array_types.  This is not beautiful, but
-       good alternatives aren't easy to come by.
-       This fixes gchar ** parsing.
-
-2008-10-20  Colin Walters  <walters@verbum.org>
-
-       * docs/typelib-format.txt, girepository/gtypelib.h:
-       Take a bit from ObjectInfo to represent abstract flag.
-       * giscanner/cgobject.py: Expose g_type_get_flags.
-       * girepository/girepository.h: Add accessor.
-       * girepository/ginfo.c: Implement it.
-       * giscanner/ast.py: Add is_abstract flag to generic
-       class object.
-       * giscanner/glibast.py: Use it.
-       * giscanner/girwriter.py: Write it.
-       * girepository/girparser.c: Parse it.
-       * tests/*: Test it.
-
-2008-10-20  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * giscanner/girparser.py (_parse_function): don't lose
-       'transfer-ownership' attributes when injecting, check for the
-       correct attribute
-
-2008-10-19  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/scannerlexer.l: Parse and ignore __asm.
-
-2008-10-19  Colin Walters  <walters@verbum.org>
-
-       * giscanner/girparser.py: Parse array length= to ensure
-       it doesn't get lost from --inject.
-
-2008-10-17  Colin Walters  <walters@verbum.org>
-
-       Bug 556795 - char ** regression
-
-       * giscanner/transformer.py: Fix parsing of ctypes, add some
-       comments about what's going on.
-       * tests/*: Add a test for char **.
-
-2008-10-17  Colin Walters  <walters@verbum.org>
-
-       Bug 556783 - change namespace handling to be more consistent
-
-       * giscanner/transformer.py: Eliminate usage of
-       strip_namespace_object.  We now treat --namespace as the default
-       --strip-prefix; however, if --strip-prefix is specified it
-       overrides --namespace.  This applies to everything except function
-       names, where we do also strip the namespace.
-       * giscanner/glibtransformer.py: Remove usage of
-       strip_namespace_object.
-       * tests/*: Update.
-       * tests/*: Add skeletal GtkFrob-1.0 test which has different
-       --namespace and --strip-prefix.
-
-2008-10-17  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556732 – generate gir files consistently
-
-       * girepository/girparser.c (start_parameter):
-       * tests/boxed.gir:
-       * tests/invoke/testfns-1.0.gir:
-       * tools/generate.c (write_callable_info): write
-       'transfer-ownership' attribute consistently with both
-       return-value and parameter elements
-
-2008-10-17  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556732 – generate gir files consistently
-
-       * tools/generate.c (write_callable_info): write 'direction'
-       attribute only if other than 'in' to be consistent with
-       girwriter.py
-       * tests/boxed.gir:
-       * tests/object.gir: remove direction="in" which is the default
-
-2008-10-17  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556732 – generate gir files consistently
-
-       * giscanner/ast.py (Field): add readable and writable properties
-       * giscanner/girparser.py (_parse_field): copy 'readable' and
-       'writable' attributes
-       * giscanner/transformer.py (_create_member): create fields as
-       read-write
-       * giscanner/glibtransformer.py (_introspect_object,
-       _pair_class_struct): make object instance and class fields
-       read-only
-       * giscanner/girwriter.py (_write_field):
-       * tools/generate.c (write_field_info): write field 'readable'
-       and 'writable' attributes only if non-default (read-only)
-       * girepository/girparser.c (start_field): in the absence of
-       attributes assume fields are read-only
-       * tests/boxed.gir:
-       * tests/struct.gir: remove redundant readable="1" from fields
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/utility-1.0-expected.gir: add writable="1" to
-       all record and union fields
-
-2008-10-17  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556732 – generate gir files consistently
-
-       * giscanner/girwriter.py (_write_property): write properties
-       'construct' attribute if set
-       * tools/generate.c (write_property_info): write properties
-       'readable' and 'writable' attributes only if non-default
-       * tests/object.gir: add writable="0"
-       * tests/scanner/foo-1.0-expected.gir: add construct="1"
-
-2008-10-17  Johan Bilien  <jobi@via.ecp.fr>
-
-       * gir/glib-2.0.c: added annotations
-
-2008-10-16  Johan Bilien  <jobi@via.ecp.fr>
-
-       * giscanner/ast.py: Also assume direction=out for size_t*, ssize_t*
-       arguments
-
-2008-10-16  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 556610 – giscanner/girparser.py drops parameter options
-
-       * tests/scanner/drawable-injected-1.0-expected.gir,
-       tests/scanner/DrawableAdditions.xml: added simple test for injection.
-       * giscanner/ast.py: allow Parameter to take options in the constructor
-       * giscanner/girparser.py: parse parameter options (transfer,
-       direction, allow-none)
-
-2008-10-16  Colin Walters  <walters@verbum.org>
-
-       Bug 556185 - segfault on g_callable_info_get_return_type
-
-       Initial patch from John Ehresman.
-
-       * tests/repository/*: Add a test using
-       g_callable_info_get_return_type.  Instead of casting a
-       GITypeInfo directly to a GIRegisteredTypeInfo, we need
-       to call g_type_info_get_interface.
-
-2008-10-16  Colin Walters  <walters@verbum.org>
-
-       Bug 556579 - union and struct name misresolved
-
-       * giscanner/transformer.py: The calls to _resolve_type_name
-       for struct/union names was a legacy holdover from when type
-       resolution had multiple phases.  Now it's actively harmful
-       since we might pull in an identical name from another
-       namespace.
-       * tests/*: Update.
-
-2008-10-16  Colin Walters  <walters@verbum.org>
-
-       Bug 556432 - transfer annotations and defaults
-
-       * giscanner/transformer.py: Canonicalize type
-       after removing *, not before.  This ensures that
-       guchar* is transformed to 'uint8'.
-       Add some comments here.
-       * giscanner/glibtransformer.py: Add _adjust_transfer
-       phase for tweaking GObject transfers.
-       * tests/*: test it.
-
-2008-10-16  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * configure.ac: enable bunch of gcc warning CFLAGS
-
-2008-10-16  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556543 – reduce compiler warnings
-
-       * girepository/ginfo.c:
-       * girepository/girepository.c (register_internal,
-       count_interfaces, find_interface, find_namespace_version,
-       parse_version, g_irepository_require):
-       * girepository/girmodule.c (g_ir_module_build_typelib):
-       * girepository/girnode.c (init_stats, dump_stats,
-       _g_irnode_init_stats, _g_irnode_dump_stats,
-       g_ir_node_can_have_member):
-       * girepository/girparser.c (firstpass_end_element_handler,
-       locate_gir, parse_basic, parse_type_internal, resolve_aliases,
-       start_alias, start_type, end_type_top, parse_include, cleanup,
-       post_filter):
-       * girepository/gtypelib.c (validate_function_blob, validate_enum_blob):
-       * giscanner/giscannermodule.c (directive_get_options,
-       type_get_child_list):
-       * giscanner/scannerlexer.l (parse_gtkdoc):
-       * giscanner/scannerparser.y (ctype_free):
-       * giscanner/sourcescanner.c:
-       * giscanner/sourcescanner.h (gi_source_scanner_parse_macros):
-       * tests/types/gitesttypes.c:
-       * tools/compiler.c (main):
-       * tools/generate.c (write_repository): Remove unused variables
-       and code, add missing includes, declarations and case
-       statements.
-
-2008-10-16  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556541 – access union members through UnionBlob rather than
-       StructBlob
-
-       * girepository/ginfo.c (g_union_info_find_method): access union
-       members through UnionBlob rather than StructBlob
-
-2008-10-15  Colin Walters  <walters@verbum.org>
-
-       Bug 556331 - clean up includes handling
-
-       * tools/g-ir-scanner: Rework command line arguments; now we take
-       --add-include-path and --include separately.
-       * giscanner/girwriter.py: Separate name= and version= in include
-       directives.
-       * giscanner/ast.py: Add Include type.
-       * giscanner/transformer.py: Cleanups to register_include now that
-       we don't need to handle mixed filenames and relative arguments.
-       * girepository/girparser.c: Parse name and version separately;
-       this fixes a bug as a side effect where we weren't resolving
-       through aliases for basic types.
-       * girepository/girepository.c: Fix format string args.
-       * gir/Makefile.am: Update.
-       * tests/*: Update.
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556434 – unhandled interface/object/... member types
-
-       * girepository/girnode.c (g_ir_node_check_unhandled_members,
-       g_ir_node_build_typelib): Check all
-       interface/object/boxed/struct/union members are processed and
-       abort if they are not. (Mostly callbacks in structs, but also
-       fields in interfaces.)
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * a/girepository/girnode.c (g_ir_node_build_members,
-       g_ir_node_build_typelib): refactor common code for processing
-       members to a function
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * gir/Makefile.am (check-local): check that typelib -> gir -> typelib
-       transformation is lossless (it's not)
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/Makefile.am: fix tests to compare xml to xml instead of
-       typelib to xml, and stop on error
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (write_type_name, write_type_info,
-       write_type_info, write_object_info, write_object_info,
-       write_interface_info, write_error_domain_info): reduce code
-       duplication
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556174 – parse types for lists etc.
-
-       * girepository/girparser.c (end_type_recurse):
-       * tests/boxed.gir:
-       * tools/generate.c (write_type_info, write_field_info,
-       write_callable_info, write_callable_info, write_constant_info,
-       write_property_info): use nested <type>s for lists and hashes
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/enum.gir:
-       * tests/object.gir: remove trailing whitespace from inside
-       elements to match g-ir-generate output
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (xml_printf): quote printf arguments so that
-       we don't generate invalid XML by writing unescaped double quotes
-       and such in attributes
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (write_field_info, write_callable_info,
-       write_function_info, write_callback_info, write_struct_info,
-       write_constant_value, write_signal_info, write_vfunc_info,
-       write_object_info, write_interface_info, write_union_info,
-       write_repository): remove unused indent parameters, xmlwriter
-       keeps track of necessary indentation
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (xml_element_new, xml_element_free,
-       xml_start_element, xml_end_element, xml_end_element_unchecked,
-       xml_open, xml_close): Keep track of generated XML tree and
-       handle indentation and closing tags properly.
-       (write_field_info, write_callable_info, write_function_info,
-       write_callback_info, write_struct_info, write_value_info,
-       write_constant_info, write_enum_info, write_signal_info,
-       write_vfunc_info, write_property_info, write_object_info,
-       write_interface_info, write_error_domain_info, write_union_info,
-       write_repository): Use xml_start_element and xml_end_element to
-       open/close tags.
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (xml_printf, xml_open, xml_close, xml_free):
-       (write_type_name, write_type_info, write_field_info,
-       write_callable_info, write_function_info, write_callback_info,
-       write_struct_info, write_value_info, write_constant_value,
-       write_constant_info, write_enum_info, write_signal_info,
-       write_vfunc_info, write_property_info, write_object_info,
-       write_interface_info, write_error_domain_info, write_union_info,
-       write_repository): wrap all FILE access to go through simple xmlwriter
-
-2008-10-15  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556400 – Fails to build on OS X 10.4
-
-       * configure.ac: check for functions backtrace and backtrace_symbols
-       * girepository/girparser.c (backtrace_stderr): Comment out
-       implementation if the functions are not available.
-       * gcov.mak (clean-gcov, clean-gcno): always call 'find' with a
-       directory for better portability
-
-2008-10-15  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 556433 – assume direction = out for int * parameters
-
-       * giscanner/ast.py: define a list of types for which, if passed as
-       reference, we assume a default direction of 'out'
-       * giscanner/transformer.py: if a type has type pointer to one of the
-       previously defined types, and no direction is set, assume out.
-       * tests/scanner/drawable.[ch]: added tests for guessed direction=out
-
-2008-10-15  Johan Bilien  <jobi@via.ecp.fr>
-
-       * tests/scanner/annotation.c: fixed a few copy-paste errors
-
-2008-10-14  Johan Bilien  <jobi@via.ecp.fr>
-
-       Bug 556323 – transfer-ownership is wrong for functions returning const
-       char *
-
-       * giscanner/transformer.py: check for a const string as return value,
-       not just const char*. Suggested by Colin Walters
-       * tests/scanner/annotation-1.0-expected.gir: updated expected output
-
-2008-10-14  Johan Bilien  <jobi@via.ecp.fr>
-
-       * girepository/ginfo.c, girepository/girepository.h: add
-       g_union_info_find_method
-
-2008-10-14  Colin Walters  <walters@verbum.org>
-
-       * tests/repository/Makefile.am: Reenable repo test.
-       * tests/repository/gitestrepo.c: Prepend search
-       path for $(top_builddir)/gir dir so that we don't
-       require installation for "make check" to pass.
-
-2008-10-13  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/glibtransformer.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/drawable-1.0-expected.gir:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/utility-1.0-expected.gir:
-
-       Support fields in GObject structs
-
-2008-10-13  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/ast.py: add signed integer and off_t to type_names
-
-2008-10-12  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/girparser.py: Parse bits attribute of fields
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/repository/Makefile.am: run 'gitestrepo' in 'make check'
-       * tests/repository/gitestrepo.c (main): instantiate
-       'GCancellable' to ensure the GType is registered before using
-       g_type_from_name()
-
-2008-10-12  Johan Bilien  <jobi@via.ecp.fr>
-
-       * giscanner/girparser.py: actually add the parsed constant nodes
-
-2008-10-12  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c: Don't cast DirEntry to Blob,
-       actually look it up by offset.
-
-2008-10-12  Johan Bilien  <jobi@via.ecp.fr>
-
-       * giscanner/girparser.py: parse constant nodes in gir files
-
-2008-10-12  Johan Bilien  <jobi@via.ecp.fr>
-
-       * giscanner/transformer.py: prefix for constants have an underscore,
-       so remove them as if they were functions, not objects.
-
-2008-10-12  Johan Bilien  <jobi@via.ecp.fr>
-
-       * tests/scanner/foo-1.0-expected.gir: add constants to expected gir
-       file
-
-2008-10-12  Colin Walters  <walters@verbum.org>
-
-       Initial patch from Jani Monoses.
-
-       * girepository/gtypelib.c: Fix inverted test for success
-       in version parsing.
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (write_callable_info): use "transfer-ownership"
-       attribute for return values
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tools/generate.c (write_callable_info): move "transfer" and
-       "null-ok" attributes from <function> to <return-value> element
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * girepository/girparser.c (start_return_value): handle
-       "transfer-ownership" attribute
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * girepository/girparser.c (parse_param_transfer):
-       * tools/generate.c (write_callable_info): use "container" for
-       container/shallow ownership transfer (not "shallow")
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * girepository/girparser.c (parse_param_transfer,
-       start_parameter): Refactor handling of transfer=none/shallow/full
-       to separate function
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 556048 – Crash in g_irepository_find_by_gtype
-
-       * girepository/gtypelib.h (BLOB_IS_REGISTERED_TYPE): added
-       * girepository/girepository.c (find_interface): Fix
-       find_by_gtype case to get the type name from right offset
-
-2008-10-12  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/girparser.py: Fix parsing transfer-ownership attribute
-       of <return-value>
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * girepository/gtypelib.h (RegisteredTypeBlob): make
-       'unregistered' one bit wide as everywhere else
-
-2008-10-12  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/glibtransformer.py:
-       * tests/scanner/annotation-1.0-expected.gir:
-       * tests/scanner/drawable-1.0-expected.gir:
-       * tests/scanner/drawable.h:
-       * tests/scanner/foo-1.0-expected.gir:
-       * tests/scanner/utility-1.0-expected.gir:
-
-       Readd class records as workaround to not break Gtk typelib
-
-2008-10-12  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       * tests/types/Makefile.am: fix typo in gitesttypes namespace
-
-2008-10-12  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/glibtransformer.py: Don't generate <record> elements
-       for class structs.
-       * tests/scanner/*: Update test cases
-
-2008-10-11  Colin Walters  <walters@verbum.org>
-
-       Bug 552858: versioning
-
-       This is a big patch.  You should probably remove your installation
-       tree to be cleaner.
-
-       * docs/typelib-format.txt: Add nsversion entry which holds
-       version of namespace.
-       * girepository/girepository.h: Add 'version' parameter to
-       g_irepository_require.  This may be NULL.  Normally
-       bindings should pass an explicit version though.
-       * girepository/girepository.c: Lots of infrastructure to
-       support versioning.  Add some more documentation.  Disallow
-       some usage of NULL namespaces.
-       * girepository/girmodule.c: Add version parameter.
-       * girepository/gtypelib.c: Update header size.
-       * giscanner/ast.py: Add version to Namespace.
-       * giscanner/girparser.py: Parse version attribute from
-       XML, pass to Namespace.
-       * giscanner/girwriter.py: Write out version parameter.
-       * giscanner/transformer.py: Clean up include registration.
-       * tests/*: Add version attribute.
-       * tests/invoke/invoke.c: Don't try looking up test before
-       it's loaded in repository.
-       * tools/generate.c: Output version parameter.
-       * gir/Makefile.am: Add 2.0 version to .gir files.
-
-2008-10-11  Colin Walters  <walters@verbum.org>
-
-       * giscanner/scannerlexer.l (parse_gtkdoc): Don't lose
-       if we have mismatched parens.
-
-2008-10-11  Lucas Rocha  <lucasr@gnome.org>
-
-       * giscanner/girparser.py (_parse_enumeration_bitfield): fix typo
-       on 'members' variable.
-
-2008-10-11  Colin Walters  <walters@verbum.org>
-
-       Bug 555947 - update annotations syntax
-
-       * giscanner/ast.py: Default to None for transfer.  Remove
-       default transfers for container types; we require this to
-       be specified now.
-       * giscanner/girwriter.py: Transfer is now 'none', 'container',
-       'full' to match repository.
-       * giscanner/scannerlexer.l: Annotations now are parenthesized.
-       * giscanner/transformer.py: Update for new annotations syntax.
-       * tests/*: Update.
-
-2008-10-11  Johan Bilien  <jobi@litl.com>
-
-       * giscanner/scannerparser.y: ignore non-UTF-8 string constants
-
-2008-10-11  Johan Bilien  <jobi@litl.com>
-
-       Bug 552347: Parse #defines constants
-
-       * girepository/gtypelib.c: update the list of value_size
-       with recently defined type tags
-       * giscanner/scannerparser.y: brought back parsing of #defined, as
-       present in older version
-       * giscanner/giscannermodule.c: bind gi_source_scanner_append_filename
-       * giscanner/girwriter.py: write out constant tags in the gir
-       * giscanner/sourcescanner.py: add accessor for const_string
-       * giscanner/transformer.py, giscanner/glibtransformer.py: handle
-       constant
-
-2008-10-11  Tommi Komulainen  <tommi.komulainen@iki.fi>
-
-       Bug 555946: Install a test module exercising all types, transfer
-       rules, etc.
-
-       * configure.ac
-       * tests/Makefile.am
-       * tests/types/*: Add and install a test module that has functions
-       accepting and returning most of the basic types to enable bindings
-       implementors to more easily test their type conversion routines.
-
-2008-10-11  Jürg Billeter  <j@bitron.ch>
-
-       Bug 552374: Const strings should be identified in the gir.
-
-       * giscanner/transformer.py: support string memory management
-       * tests/scanner/foo.h: use char * and const char *
-       * tests/scanner/foo-expected.gir: test that
-
-2008-10-11  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girparser.py:
-       Also parse enums which are not glib types.
-
-2008-10-11  Lucas Rocha  <lucasr@gnome.org>
-
-       Bug 552370: add one more test for unsigned as a type, not as
-       a type qualifier.
-
-       * giscanner/ast.py: add 'uint' type name for 'unsigned'.
-       * test/scanner/foo.h: add function which uses unsigned as a type.
-       * test/scanner/foo-expected.gir: test that.
-
-2008-10-11  Andreas Rottmann  <a.rottmann@gmx.at>
-
-       Bug 555712: Struct and union issues
-
-       * giscanner/scannerparser.y (struct_declarator): Use information
-       provided about the bit width of a field.
-       * giscanner/transformer.py (Transformer._create_member): Pass the
-       symbol's const_int member to the created field (it represents the
-       bit width).
-       * giscanner/girwriter.py (GIRWriter._write_field): Output 'bits'
-       field attribute, if present.
-       * giscanner/ast.py (Field): Add 'bits' member, specifying the
-       width in bits of the field (only relevant for bitfields).
-       * tests/*: Updated.
-
-       * giscanner/transformer.py (Transformer._create_typedef_struct)
-       (Transformer._create_typedef_union): Add calls to _create_struct()
-       and _create_union(), respectively. This causes the scanner to
-       generate output for fields of struct and union typedefs.
-       * tests/*: Updated.
-
-2008-10-11  Jürg Billeter  <j@bitron.ch>
-
-       Bug 552370: unsigned not scanned properly
-
-       * giscanner/scannerparser.y: combine basic types such as unsigned
-       int and long long when scanning
-       * tests/scanner/foo-expected.gir:
-       * tests/scanner/foo.c: (foo_test_unsigned):
-       * tests/scanner/foo.h: test that
-
-2008-10-11  Lucas Rocha  <lucasr@gnome.org>
-
-       Bug 554854: The --typelib-xml and --inject options should reuse
-       giscanner parser/writer.
-
-       * giscanner/ast.py: add constructor list to Struct and Union.
-       Add new param in Return's contructor to define transfer.
-       * giscanner/girparser.py: several additions to the parser in order
-       to have parsing all nodes of the gir xml files.
-       * tools/g-ir-scanner (typelib_xml_strip, inject): use gir parser
-       and writer in --inject and --typelib-xml options.
-       * giscanner/xmlwriter.py: ignore empty attributes instead of
-       raising an error as this basically exposes a bug in GIRParser.
-       This should be reverted as soon as the parser is fixed.
-
-2008-10-11  Lucas Rocha  <lucasr@gnome.org>
-
-       Bug 552376: scanner generates wrong names for enum members when
-       there's no defined gtype.
-
-       * giscanner/utils.py (strip_common_prefix): Always strip common
-       prefix exactly up to the last "_", and not beyond.
-       * tests/scanner/foo.h (FooEnumNoType): add FOO_ENUM_NEUF. The point
-       here is that the first character after the last '_' should should be
-       the same as the character in the same position on the type name.
-       * tests/scanner/foo-expected.gir: test that
-
-2008-10-10  Lucas Rocha  <lucasr@gnome.org>
-
-       Bug 555293: append library_paths to LPATH env variable to work
-       around a bug in find_library when using ldconfig.
-
-       * tools/g-ir-scanner (main): ditto.
-
-2008-10-09  Lucas Rocha  <lucasr@gnome.org>
-
-       * girepository/girepository.c (register_internal): fix regression on
-       invoke test case by making sure we load the global module in the
-       typelib when dealing with inline typelibs.
-       * girepository/gtypelib.c: a couple of coding style fixes.
-
-2008-10-06  Lucas Rocha  <lucasr@gnome.org>
-
-       Bug 555294: Add support for multiple shared libraries per typelib.
-
-       * girepository/ginvoke.c (g_function_info_invoke),
-       girepository/ginfo.c(g_registered_type_info_get_g_type): use
-       g_typelib_symbol instead of g_module_symbol.
-       * girepository/girepository.h: remove g_typelib_set_module and add
-       g_typelib_symbol.
-       * girepository/gtypelib.[ch] (find_some_symbol, _g_typelib_init,
-       g_typelib_new_from_memory, g_typelib_new_from_const_memory,
-       g_typelib_free, g_typelib_symbol): chnage GTypeLib to hold a list of
-       modules instead of just one. The symbol lookup is now abstracted
-       behind g_typelib_symbol which tries to find the passed symbol name in
-       one of its modules.
-       * giscanner/girwriter.py, tools/g-ir-scanner: change scanner to read
-       and write shared_library attribute as a comma-separated list of libs.
-
-2008-10-06  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: Parse length= annotation as
-       a parameter name, not a raw int.
-       * tests/*: Update.
-
-2008-10-03  Colin Walters  <walters@verbum.org>
-
-       Bug 551744: Non-GObject types aren't aggregating ctors and methods
-
-       * girepository/gtypelib.c: Allow ctors/methods on struct,union,
-       and boxed.
-       * giscanner/glibtransformer.py: Ditto, and GLibBoxed is also a
-       registered type.
-       * tests/*: Extend.
-
-2008-10-03  Colin Walters  <walters@verbum.org>
-
-       Bug 554576: scan problem with ev_selection_render_selection()
-
-       * giscanner/transformer.py: Only do type resolution once we've
-       scanned all types.  What could happen before is that we'd strip
-       the namespace from local type "EvSelection" => Selection, and
-       then later pull a "Selection" from some other namespace because
-       we hadn't yet seen the local EvSelection.  This could come
-       down to hash table ordering and other things so not easy
-       to write a test for.
-
-2008-10-03  Lucas Rocha  <lucasr@gnome.org>
-
-       * giscanner/girwriter.py (_parser_member): fix the last parameter of
-       GLibEnumMember constructor as it should be the enum member nick.
-
-2008-10-02  Colin Walters  <walters@verbum.org>
-
-       Bug 552961: remove this parameter for methods
-
-       * giscanner/glibtransformer.py: Delete this parameter; it is
-       redundant.
-       * girepository/ginvoke.c: Insert this parameter for methods.
-       * girepository/gtypelib.c: Remove no longer needed verification of
-       method this parameter.
-       * tests/*: Update.
-
-2008-09-30  Dan Winship  <danw@gnome.org>
-
-       Bug 554490: g-ir-scanner gets confused by '\\'
-
-       * giscanner/scannerlexer.l (chartext, stringtext): fix use of
-       backslashes so it will correctly parse '\\' and "\\"
-
-       * tests/scanner/annotation.c: add a use of '\\' to make sure that
-       this stays fixed
-
-       * giscanner/glibtransformer.py (GLibTransformer.count_type): typo
-
-2008-10-02  Colin Walters  <walters@verbum.org>
-
-       bug 552393: Note variadic functions
-
-       * giscanner/scannerparser.y: Parse ellipsis.  Refactor grammar
-       to use parameter_list directly.
-       * giscanner/sourcescanner.h: Add ellipsis csymbol type.
-       * giscanner/ast.py: Add Varargs type.
-       * giscanner/transformer.py: Check for ellipsis symbol, transform
-       to varargs type.
-       * girepository/girnode.h: Add varargs flag to in-memory nodes.
-       Parse varargs functions, but filter them out before we start
-       compiling the typelib.
-
-2008-10-02  Colin Walters  <walters@verbum.org>
-
-       Bug 554632: type tag for GType
-
-       * girepository/girepository.h, girepository/girepository.c:
-       Add type tag for GType - it's a special type we don't want
-       to resolve to just "long".
-       * docs/typelib-format.txt: Update.
-       * girepository/girparser.c: Parse it.
-       * giscanner/glibtransformer.py: Ensure we don't put GType in
-       the GObject.gir.
-       * tools/generate.c: Remove hardcoded type list.
-       * test/* update.
-
-2008-09-30  Dan Winship  <danw@gnome.org>
-
-       Bug 554521: scanner generates wrong names for enum members with
-       full type name prefix
-
-       * giscanner/utils.py (strip_common_prefix): Fix this to strip the
-       right amount when the entire "first" string is a prefix of
-       "second"
-
-       * tests/scanner/foo.h (FooEnumFullname):
-       * tests/scanner/foo-expected.gir: test that
-
-2008-09-29  Colin Walters  <walters@verbum.org>
-
-       Bug 552380: Array parameters should be marked in the gir
-
-       * giscanner/ast.py: Default char** to utf8[], and guchar* to
-       uint8[].  Add Array, List, and Map subclasses of Type;
-       these types can be generic.  Return transfer defaults
-       to true if return value is string or container type.
-       Delete Sequence type.
-       * giscanner/scannerlexer.l: Syntax change for annotations;
-       use <> since it's more readable.
-       * giscanner/girwriter.py: Write out these changes.
-       * giscanner/girparser.py: Parse them.
-       * giscanner/transformer.py: Have a defined set of
-       both list and map types.  When creating a type,
-       check if the ctype we've parsed is one of them,
-       if so create a container type subclass as appropriate.
-       * girepository/girparser.c: Parse in generic types.
-       * tests/*: Update.
-
-2008-09-27  Colin Walters  <walters@verbum.org>
-
-       * tools/g-ir-scanner: Add --inject option.
-
-2008-09-25  Colin Walters  <walters@verbum.org>
-
-       Remove non-repository types from GIR
-
-       * giscanner/ast.py: The canonical name is 'utf8', not
-       'string'.
-       * giscanner/glibast.py: A few more glib type mappings.
-       * girepository/girparser.c: We only parse repository types.
-       * tests/*.gir: Update.
-
-2008-09-23  Colin Walters  <walters@verbum.org>
-
-       Bug 552566: Add time_t type
-
-       We need a type for time_t since it's special in C, and just
-       mapping it to long precluded bindings from handling it
-       in a nice way.
-
-2008-09-19  Colin Walters  <walters@verbum.org>
-
-    Bug 552390: Handle capitialization like "DBus" more robustly
-
-    The to_underscores function was designed for use against prefixed
-    names; we need a separate function which will convert names like
-    DBusFoo into dbus_foo, not d_bus_foo.
-
-2008-09-19  Colin Walters  <walters@verbum.org>
-
-    Add check to make sure we're not hitting out unresolved types
-
-    Validate the "this" argument for methods
-
-    Remove heuristic matching of methods to classes based on prefix
-
-    It was a broken hack that dated from when we handled underscoring
-    and capitalization conventions less well.
-
-2008-09-18  Colin Walters  <walters@verbum.org>
-
-    Bug 552384: Use SHLIB_SUFFIX intead of G_MODULE_SUFFIX for Darwin
-
-    On Darwin, the suffix for installed shared libraries (.dylib) is
-    different from loadable modules (.so).  We use a bit of magic shell
-    script from Behdad Esfahbod to figure out the right suffix.
-
-2008-09-15  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/sourcescanner.py (SourceType.type_qualifier): Add
-       a wrapper for type_qualifier as well.
-
-2008-09-15  Colin Walters  <walters@verbum.org>
-
-       http://bugzilla.gnome.org/show_bug.cgi?id=552065
-
-       * giscanner/ast.py: Add deprecation attributes.
-       * giscanner/girwriter.py: Write out deprecation data.
-       * girepository/girparser.c: Relax parsing; deprecated
-       attribute now includes freeform string.
-       * giscanner/scannerlexer.l: Parse Deprecated.
-       * giscanner/transformer.py: Look for deprecated attribute
-       on functions.
-       * tests/scanner/*: Add a Deprecated test.
-
-2008-09-14  Tor Lillqvist  <tml@novell.com>
-
-       * tests/scanner/Makefile.am (%.typelib): Use $(EXEEXT).
-
-2008-09-14  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Ignore functions with
-       leading _.
-
-2008-09-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Accept Gtk.Type as GType.
-
-2008-09-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/ast.py: Bind pid_t to INT for vte.
-
-2008-09-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/girparser.py: Parse c:type for boxed records/unions.
-       * giscanner/glibast.py: Avoid overwriting ctype.
-       * giscsanner/transformer.py: Try resolving types using the GType names.
-
-2008-09-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/minixpath.py: Code to run an "XPath"
-       assertion against an XML tree, taken from
-       gir-repository/gir/tests.py.
-       * giscanner/Makefile.am: Ship it.
-       * tools/g-ir-scanner: Add --xpath-assertions option.
-       * gir/GLib-assertions.txt: Add a few assertions.
-       * gir/Makefile.am: Run them.
-
-2008-09-11  Colin Walters  <walters@verbum.org>
-
-       http://bugzilla.gnome.org/show_bug.cgi?id=551737
-
-       * giscanner/transformer.py: Fix strip_namespace_func to only strip
-       prefix if it ends with _.  Tweak callback stripping to determine
-       based on presence of _ whether we need to use strip_namespace_func
-       or strip_namespace_object.
-
-2008-09-09  Owen Taylor  <otaylor@redhat.com>
-
-       * docs/typelib-format.txt: Wether => Whether
-
-2008-09-08  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Default to "readable" for properties.
-       * giscanner/ast.py: Add readable, writable etc.
-       * giscanner/girwriter.py: Writ them.
-       * giscanner/glibtransformer.py: Inspect them.
-       * tests/*: Update.
-
-2008-09-07  Colin Walters  <walters@verbum.org>
-
-       * giscanner/cgobject.py: Add comment.
-
-2008-09-07  Colin Walters  <walters@verbum.org>
-
-       * giscanner/cgobject.py: Also call g_thread_init.
-
-2008-09-07  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: Fix regression by not
-       stripping prefix before stripping namespace for unions
-       either.
-
-2008-09-06  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: If a namespace contains
-       multiple caps, try stripping both gnomekeyring_ and
-       gnome_keyring_.
-
-2008-09-07  Johan Dahlin  <johan@gnome.org>
-
-       Bug 551162 – giscanner does not recognize asm and __asm__
-       * giscanner/scannerlexer.l:
-       Patch by Jani Monoses.
-
-2008-09-06  Colin Walters  <walters@verbum.org>
-
-       * girepository/girnode.c: Allow gtype_name
-       and gtype_init in struct and union.
-       * girepository/girparser.c: Parse glib:
-       boxed bits for both structure and union.
-       * girepository/gtypelib.c: Don't barf
-       if structure is boxed.
-       * giscanner/girparser.py: Parse new XML
-       format.
-       * giscanner/girwriter.py: Write out new
-       XML format.
-       * giscanner/glibast.py: Define new classes
-       which are both Boxed and Struct/Union, as
-       well as an "Other" for everything else.
-       * giscanner/glibtransformer.py: Handle
-       boxed types specially; we try to merge
-       them with a struct/union if one exists,
-       otherwise fall back to generic boxed.
-       * tests/*: Update.
-       * tools/generate.c: Write out new format.
-
-2008-09-06  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/grealpath.h: Include stdlib.h
-
-       * docs/g-ir-generate.1: Remove leading %
-
-2008-09-01  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Look at c:type to determine
-       whether or not an item is a pointer.
-
-2008-09-01  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Makefile.am:
-       Set PYTHONPATH so the scanner can run
-       even if you didn't install anything.
-
-2008-09-01  Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       Post-release version bump
-
-=== 0.5.0 ===
-2008-09-01  Johan Dahlin  <johan@gnome.org>
-
-       * NEWS: Update
-
-2008-08-31  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Quiet info
-       prints for now.
-
-2008-08-31  Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       Bump version to 0.5.0
-
-2008-08-31  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Follow aliases to ensure
-       we don't get a constructor returning a basic type.
-       * giscanner/transformer.py: Add function to follow aliases.
-       * tests/ Update.
-
-2008-08-31  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/scannerlexer.l:
-       * giscanner/scannerparser.y:
-       * giscanner/sourcescanner.h:
-       * giscanner/sourcescanner.py:
-       Parse GCC extensions in the parser instead of just undeffing them
-       in the pre-processor.
-
-2008-08-31  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py:
-       Clean up a huge if. Do not add methods or constructors
-       to enums/flags.
-       * giscanner/utils.py:
-       second might be longer than first, check that.
-
-2008-08-31  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       Add a GModule.gir
-
-2008-08-31  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Don't lose if we
-       have no includedirs
-
-2008-08-31  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Look for libtool
-       library in current directory
-       * tests/scanner - Update.
-
-2008-08-30  Colin Walters  <walters@verbum.org>
-
-       * docs/typelib-format.txt: Add a guint32
-       for dependencies.
-       * gir/Makefile.am: Dep on Makefile
-       * girepository/ginfo.c:
-       * girepository/girepository.c: Clean up
-       default typelib handling; remove global
-       default_typelib variable.  Ensure we handle
-       NULL repository in more places.
-       Support dependency resolution.
-       Support lazy loading.
-       * girepository/girepository.h: Remove
-       g_irepository_unregister; we don't support
-       unloading typelibs since really they're
-       process-global.  Update for lazy loading
-       API.
-       * girepository/girmodule.c: Use g_new0.
-       Add dependencies to GirModule.
-       * girepository/girparser.c: Parse dependencies.
-       * girepository/gtypelib.c: Add 4 bytes for
-       dependencies.
-       * tests/Makefile.am: Kill off gobject.gir,
-       it conflicts with the real one.
-       * tests/object.gir: Dep on GObject.
-       * tools/generate.c: Take --includedir
-       argument to say which directories to search
-       for typelibs.  Print out dependencies.
-
-2008-08-30  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Reduce warning noise.
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * girepository/ginfo.c: Add some assertions regarding
-       refcounts, just to be sure.
-       * giscanner/glibtransformer.py: Blacklist a few more
-       odd Gio methods.
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Blacklist a few
-       functions that use GError oddly
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c: Don't crash if no
-       shlib is embedded
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Handle chains of aliases
-       across modules by ensuring we fully qualify aliases
-       from includes.
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Don't search aliases
-       for basic types.
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Rewrite type parsing
-       to handle both GLib parsing case as well as correctly
-       handling GLib.List and friends.  Don't try to treat
-       e.g. ListStore as a List.
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c: Add more context
-       during validate.
-
-2008-08-29  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Add some informative
-       logging messages in corner cases.  Be sure we use
-       the most recent node set instead of a cache
-       when generating result set.
-       * tests/: Remove duplicated bits in expected girs
-       * girepository/girparser.c: Accept both List (for
-       compiling GLib) and GLib.List (what the scanner
-       generates).
-       * tests/ - Update.
-       * tools/generate.c: Generate canonical form.
-
-2008-08-29  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/config.py.in:
-       Use datarootdir instead of datadir to avoid
-       an autoconf warning.
-
-2008-08-29  Johan Dahlin  <johan@gnome.org>
-
-       * README:
-       * TODO:
-       * examples/gdk-pixbuf.gidl:
-       * libffi.pc.in:
-       Update and remove old cruft.
-
-2008-08-29  Johan Dahlin  <johan@gnome.org>
-
-       * Makefile.am:
-       * docs/g-ir-compiler.1:
-       * docs/g-ir-generate.1:
-       * docs/g-ir-scanner.1:
-       Add man pages for the generator and compiler.
-
-2008-08-29  Johan Dahlin  <johan@gnome.org>
-
-       * docs/g-ir-scanner.1: Document
-
-       * giscanner/Makefile.am:
-       * giscanner/gidlparser.py:
-       * giscanner/gidlwriter.py:
-       * tools/g-ir-scanner:
-       Remove gidl support.
-
-2008-08-28  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/Makefile.am: Pass the right
-       --includedir args.  Add a Makefile dep.
-       * tools/compiler.c: Pass includedirs down.
-       * girepository/girparser.c: Actually put
-       includedirs in context, pass down.  Fix
-       locate_gir.
-
-2008-08-28  Colin Walters  <walters@verbum.org>
-
-       * gir/Makefile.am: Use --includedir
-       * girepository/girparser.c: Recursively parse
-       includes to pull in aliases and expand them.
-       We need this to avoid putting unknown names in
-       the typelibs.
-       * tools/compiler.c: Add --includedir option.
-       * giscanner/ast.py: Map size/ssize to types
-       too.
-
-2008-08-28  Tor Lillqvist  <tml@novell.com>
-
-       Make check now runs successfully on Windows.
-
-       * tools/compiler.c (write_out_typelib): Use binary mode for output
-       file on Windows.
-
-       * girepository/girnode.c: Don't print NULL strings.
-
-       * tests/invoke/Makefile.am
-       * tests/scanner/Makefile.am: Use -no-undefined on Windows to
-       convince libtool to build shared libraries.
-
-       * tests/invoke/invoke.c: Don't needlessly include <dlfcn.h>. Use
-       g_assert() instead of printing out expected errors.
-
-2008-08-28  Tor Lillqvist  <tml@novell.com>
-
-       * girepository/gtypelib.h: Change type of bitfield fields from
-       guint to the most suitable smaller type. This makes the struct
-       sizes match the ones on Linux that the sanity check expects when
-       using gcc -mms-bitfields on Windows.
-
-2008-08-28  Johan Dahlin  <johan@gnome.org>
-
-       * Makefile.am:
-       * configure.ac:
-       * gir/Makefile.am:
-       * giscanner/Makefile.am:
-       * tests/Makefile.am:
-       * tests/scanner/Makefile.am:
-       Make distcheck pass.
-
-2008-08-27  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/Makefile.am:
-       Only send in -no-undefined on Win32 as it breaks on MacOS X.
-
-2008-08-27  Tor Lillqvist  <tml@novell.com>
-
-       Make g-ir-scanner work on Windows. Still problems with the typelib
-       code. Changes okayed by jdahlin.
-
-       * configure.ac: Check for Windows, set Automake conditional
-       OS_WIN32. Change backslashes to forward slashes in pyexecdir to
-       avoid shell quoting issues
-       
-       * girepository/Makefile.am: Use -no-undefined so that libtool
-       agrees to build a shared library on Windows.
-
-       * girepository/girparser.c (backtrace_stderr): No backtrace() on
-       Windows. Empty implementation on Windows so far.
-
-       * girepository/gtypelib.c (g_typelib_check_sanity): Give more
-       informative error message for the assertion failures. Tell also
-       what the expected size of the struct is. Check all sizes first and
-       fail afterwards if at least one size was different from expected.
-
-       * tools/Makefile.am: Reorder libraries into proper logical
-       dependency order.
-
-       * tools/generate.c: Don't include <dlfcn.h>, not used.
-
-       * giscanner/Makefile.am: On Windows, link with the Python library,
-       and install the module DLL as _giscanner.pyd. Remove the
-       unnecessary import library and libtool library that libtool has
-       installed.
-
-       * giscanner/scannerlexer.l: Recognize the gcc __attribute__ syntax
-       and just skip it. Recognize also two "l" suffixes for long long
-       constants. Recognize also __inline__.
-
-       * giscanner/grealpath.h (g_realpath): Implement on Windows, using
-       GetFullPathName(). As such, GetFullPathName() does more than the
-       UNIX realpath(). It also changes relative paths into absolute
-       paths. But for our purposes that shouldn't matter.
-
-       * giscanner/giscannermodule.c (pygi_source_scanner_parse_file): On
-       Windows the file descriptor passed to us is from Python. Python
-       Python2.5 uses the msvcr71.dll C library, while mingw-built code
-       uses msvcrt.dll. On Windows, file descriptors are specific to
-       which C library is used. So we must find out what underlying OS
-       handle corresponds to the file descriptor Python passes us, and
-       then make that into a file descriptor valid for the C library this
-       code uses.
-
-       * giscanner/sourcescanner.py (_parse): Don't need to bypass
-       __attribute__ as the lexer now handles it. The definition as empty
-       was ineffective for mingw anyway, as mingw's _mingw.h undefines
-       __attribute__. Close the temp file before unlinking it.
-
-       * giscanner/cgobject.py: Use correct library name for the gobject
-       DLL on Windows.
-
-       * gir/Makefile.am: Must pass the full basename of the DLLs on
-       Windows to g-ir-scanner. It's a bit ugly that we have to "know"
-       that the names of the GLib DLLs are like libglib-2.0-0.dll, but in
-       reality they won't change, until there is a GLib 3, and then also
-       the Unix code here needs changing.
-
-       Must pass CPPFLAGS to g-ir-scanner when building GLib.gir so that
-       libintl.h is found.
-
-2008-08-26  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c: Search
-       $DATADIR/girepository instead of
-       $DATADIR/gitypelibs; this naming makes
-       it clearer that e.g. jgir can install
-       .jars there.
-       * gir/Makefile.am: Install there.
-
-2008-08-26  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c (_g_typelib_init): Also
-       use G_MODULE_SUFFIX instead of hardcoding .so.
-
-2008-08-26  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c (_g_typelib_init): Free
-       string in the right place.
-
-2008-08-26  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c (_g_typelib_init): Handle
-       both .la and .so names; this works better in the
-       uninstalled library case.
-
-2008-08-26  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       * giscanner/Makefile.am:
-       * giscanner/cgobject.py:
-       * giscanner/config.py.in:
-       * giscanner/sourcescanner.py:
-       Avoid undeffing __GNUC__, instead define
-       __attribute__ & friends. Remove glibconfig.h hack.
-       This makes gobject-introspection work better on
-       MacOS X, Thanks to Richard Hult for kind help.
-
-2008-08-25  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Always print
-       statistics.
-
-2008-08-25  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Skip over
-       interfaces we don't know.
-
-2008-08-25  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Parse new implements
-       syntax, drop gapi one.
-       * tests/object.gir: Update.
-       * tools/generate.c: Generate new syntax.
-
-2008-08-25  Colin Walters  <walters@verbum.org>
-
-       * giscanner/ast.py: Add interfaces property
-       to class.
-       * giscanner/girwriter.py: Write out implemented
-       interfaces.
-       * giscanner/glibtransformer.py: Introspect
-       implemented interfaces.
-       * tests/scanner/*: Make FooObject implement
-       FooInterface.
-
-2008-08-25  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: More correctly pair
-       methods; if we have a symbol that starts with
-       e.g. hippo_canvas look for a matching HippoCanvas
-       class before accepting e.g. HippoCanvasImage.
-
-2008-08-24  Colin Walters  <walters@verbum.org>
-
-       * tools/g-ir-scanner: Filter out unknown options from
-       pkg-config files.
-
-2008-08-24  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Fail with better
-       error if we can't find library.
-
-2008-08-24  Colin Walters  <walters@verbum.org>
-
-       * tools/g-ir-scanner: Use subprocess instead of
-       commands, works on Windows and avoids the evil
-       shell on Unix.
-
-2008-08-24  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Skip over
-       g_object_get_type from GLib trunk.
-
-2008-08-24  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c (g_irepository_require): 
-       Don't open shared library here; we already do it
-       in gtypelib.c.
-
-2008-08-24  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c: Add context stack so
-       when we get an error we can print out nicely
-       where it is.
-
-2008-08-24  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girparser.c (start_glib_boxed), (start_function),
-       (start_field), (start_alias):
-       Refactor a couple of parsing functions to be simpler to follow.
-       Avoid huge ifs.
-
-2008-08-24  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girparser.c (start_function):
-       Remove left-over code, checking type of function.
-
-2008-08-23  Colin Walters  <walters@verbum.org>
-
-       * giscanner/config.py: Define DATADIR.
-       * giscanner/transformer.py: Look in DATADIR.
-
-2008-08-23  Colin Walters  <walters@verbum.org>
-
-       * girepository/gtypelib.c: Check constructor
-       returns.
-       * girepository/girnode.c: Small tweaks.
-       * girepository/ginfo.c: Calculate signature offsets
-       more robustly.
-       * girepository/girparser.c: Remove duplicate
-       start_boxed.
-       * giscanner/glibtransformer.py: Avoid marking
-       functions which return a basic type as
-       constructors.
-
-2008-08-23  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Ignore <include>.
-       * giscanner/girparser.py: Parse them.
-       * giscanner/girwriter.py: Generate them.
-       * giscanner/transformer.py: Process <include>
-       recursively.  Don't require full path for
-       includes, look in {$XDG_DATA_DIRS}/gir.
-       * tools/g-ir-scanner: Pass through includes.
-       * Makefile.am: Remove extra --include
-       args for scanner.
-       * *-expected.gir: Add expected includes.
-
-2008-08-23  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Makefile.am:
-       * tests/scanner/annotation-expected.gir:
-       * tests/scanner/drawable-expected.gir:
-       Avoid duplication in the Makefile, regenerate with new
-       namespaces (same as the filename)
-
-2008-08-22  Colin Walters  <walters@verbum.org>
-
-       * girepository/girnode.c: Don't hardcode integers,
-       use GITypeTag.
-
-2008-08-22  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/sourcescanner.py:
-       Check for ../gobject-introspection-1.0.pc.in to determine
-       if we run installed or uninstalled.
-
-2008-08-22  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       * giscanner/sourcescanner.py:
-       Send in undefs/defines via writing it directly to stdin
-       of cpp instead of via arguments.
-
-2008-08-22  Colin Walters  <walters@verbum.org>
-
-       * tools/generate.c, tools/compiler.c: Default
-       to --raw.
-       * all Makefile.am: Update.
-
-2008-08-22  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Pass through
-       recursive types.  Avoid overwriting errors.
-       * giscanner/xmlwriter.py: Always write the
-       XML header.
-       * tests/*.gir: Adjust.
-       * tests/scanner/Makefile.am: Build typelibs,
-       and generate XML from those.  Once we
-       have a good diff mechanism...
-       * tests/scanner/*-expected.gir: Add XML
-       header.
-       * tools/g-ir-scanner: Accept --typelib-xml
-       option.
-       * tools/generate.c: Better defaults for transfer.
-
-2008-08-22  Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       * gir/Makefile.am:
-       * giscanner/Makefile.am:
-       * giscanner/config.py.in:
-       * giscanner/sourcescanner.py:
-       Use the generated glibconfig.h for all scanner invokations.
-       Rename it to glibconfig-scanner.h and install it.
-       Add a config.py which so far contains the include dir.
-
-2008-08-22  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       Replace glibconfig.h with our own, do some replacement
-       for CPP/C features we do not support
-
-2008-08-22  Colin Walters  <walters@verbum.org>
-
-       * tools/generate.c (write_callable_info): Fix unref
-       sequence.
-
-2008-08-22  Colin Walters  <walters@verbum.org>
-
-       * gobject-introspection-1.0.pc.in: Add g-ir-generate.
-       * tests/Makefile.am: Support $(DEBUG)
-       * tools/generate.c: Do immediate close tags if no
-       sub-elements.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/drawable-expected.gir,
-       * tests/scanner/drawable.c,
-       * tests/scanner/drawable.h:
-       Add a method.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Compute prefix
-       by searching through the symbol for bits
-       rather than going directly from ctype; this fixes
-       webkit_ namespace.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Also try squashing
-       underscores from namespace, fixes webkit_web_view_new.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: More ctor work,
-       avoid having gtk_window_group_new end up under
-       GtkWindow.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Much simpler approach
-       of mapping uscored names to classes.
-       * giscanner/utils.py: Remove unnecessary function.
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girepository.c (g_irepository_require):
-       Plug memory leak and avoid using freed memory.
-       Resolve the whole module path, here as well.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Look up all permutations
-       of class names when scanning methods/ctors based on
-       the prefix instead of using the return value.  This
-       associates gtk_window_new with the right class.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * girepository/girmodule.c (g_ir_module_build_typelib): 
-       Revert change to increment header_size; we do that in
-       write_string.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * girepository/girnode.c (write_string): Tweak to
-       use UINT instead of INT.  Not likely to matter.
-       * girepository/girmodule.c (g_ir_module_build_typelib):
-       Add to header_offset as well for header strings
-       to match what write_string does.
-       * girepository/gtypelib.c: Replace is_name with
-       validate_name, which more strongly validates and
-       handles errors in a better way.  Update all callers.
-       * giscanner/glibtransformer.py: Handle constructors
-       better.
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am (typelibs_DATA): Build and 
-       install the Gio.typelib too
-
-       * girepository/gtypelib.c (_g_typelib_init):
-       Use g_module_build_path to resolve the shlib name
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * gir/Makefile.am: CLEANFILES typelibs too.
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py:
-       Do not send .la files through find_library.
-
-2008-08-21  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c (g_irepository_require):
-       Fix one small leak in error case.
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       Parse glibconfig.h as well and install the compiled
-       typelib
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       * giscanner/glibtransformer.py:
-       * tools/g-ir-scanner:
-       Do not hard-core library names in the Makefile, reuse
-       ctypes find_library instead.
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girparser.c (resolve_aliases):
-       Remove compilation warnings
-
-2008-08-21  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girepository.c (g_irepository_require):
-       Rewrap and fix double free bug by leaking a bit.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c: Add new function
-       g_irepository_get_typelib_path which tells
-       us from where we loaded a namespace.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/*-expected.gir: Adjust for
-       added shared-library.
-       * giscanner/giwriter.py: Make pylint happy.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/girmodule.c (g_ir_module_build_typelib):
-       Calculate size correctly, avoid use-after-free.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c: Remove
-       g_irepository_register_file in favor of
-       g_irepository_require.  There are two
-       possible deployment scenarios for typelibs:
-       First, separate in $DATADIR/gitypelibs/.  Second,
-       they may be embedded in shlibs.  However since
-       the first is now the normal case, the API is
-       optimized around it.
-
-       Refactor internals to look up typelibs for
-       namespaces just-in-time, but we expect
-       consumers to call g_irepository_require.
-
-       Also, add some docs.  No one has died from that
-       before.
-       * gir/Makefile.am: Need --library for glib.
-       * giscanner/girwriter.py: Write out shared-library.
-       * tools/g-ir-writer: Take the first --library
-       argument as the target of shared-library.  In
-       the future we should make this nicer with pkg-config
-       probably.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.py: And parse them.
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibast.py: Add gshort/gushort types
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * gir/Makefile.am: Rename .gir files using GI namespace.
-       * girepository/girepository.c: Use XDG_DATA_DIRS for
-       looking up typelibs.  Also typelibs are now suffixed
-       with .typelib.
-       * tests/invoke/Makefile.am: Only use metadata.
-       * girepository/Makefile.am: Remove unnecessary include.
-       * tests/scanner/Makefile.am: Update using GI namespaces
-       for scanner includes.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/transformer.py: Suppress aliases whose
-       name is a builtin.
-       * girepository/ast.py: Define some more aliases.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Avoid alias infloops.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/foo-expected.gir: Fix expected list type.
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py (GLibTransformer._resolve_type_name): 
-       Add a workaround for #548689.
-       We can now compile gtk!
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Try to look up
-       aliases using the c:type too.
-
-2008-08-20  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Parse union fields.
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py: Make time_t an alias for long
-
-       * gir/gio-2.0-good.gir:
-       * gir/glib-2.0-good.gir:
-       * gir/gobject-2.0-good.gir:
-       Regnerate
-       * giscanner/glibtransformer.py:
-       Do not delete Class structures, we need them in gdk/gtk.
-       * tests/scanner/drawable-expected.gir:
-       * tests/scanner/foo-expected.gir:
-       * tests/scanner/utility-expected.gir:
-       Update tests.
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Makefile.am:
-       * tests/scanner/annotation-expected.gir:
-       * tests/scanner/annotation.c (annotation_object_class_init),
-       (annotation_object_init), (annotation_object_method),
-       (annotation_object_in), (annotation_object_out),
-       (annotation_object_inout), (annotation_object_inout2),
-       (annotation_object_inout3), (annotation_object_calleeowns),
-       (annotation_object_calleesowns), (annotation_object_get_strings),
-       (annotation_object_with_voidp), (annotation_object_get_objects),
-       (annotation_object_create_object), (annotation_object_allow_none):
-       * tests/scanner/annotation.h:
-       * tests/scanner/foo-expected.gir:
-       * tests/scanner/foo.c:
-       * tests/scanner/foo.h:
-       Split out annotation tests out of foo
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Foo-expected.gir:
-       * tests/scanner/Makefile.am:
-       * tests/scanner/foo-expected.gir:
-       * tests/scanner/foo-object.h:
-       * tests/scanner/foo.c:
-       Foo->foo, foo-object.h -> foo.h
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Foo-expected.gir:
-       * tests/scanner/Makefile.am:
-       * tests/scanner/drawable-expected.gir:
-       * tests/scanner/drawable.c (test_drawable_class_init),
-       (test_drawable_init):
-       * tests/scanner/drawable.h:
-       * tests/scanner/foo-object.h:
-       * tests/scanner/foo.c (foo_boxed_method):
-       Move the drawable parts out of Foo to its own test.
-
-2008-08-20  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Foo-expected.gir:
-       * tests/scanner/foo-object.h:
-       * tests/scanner/foo.c (foo_drawable_class_init),
-       (foo_drawable_init):
-       Add a based on GdkDrawable which generates
-       a broken gir.
-
-2008-08-19  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: Don't try
-       to strip prefix before namespace.
-
-2008-08-19  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/transformer.py:
-       * tests/scanner/Foo-expected.gir:
-       * tests/scanner/foo-object.h:
-       Add support for typedef void foo type of
-       aliases.
-
-2008-08-19  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * tests/scanner/Foo-expected.gir:
-       Add basic support for union, base the code much
-       on Struct. Add a testcase.
-
-2008-08-19  Johan Dahlin  <johan@gnome.org>
-
-       * tests/scanner/Foo-expected.gir:
-       * tests/scanner/foo-object.h:
-       Add a union testcase which the compiler currently
-       barfs at.
-
-2008-08-19  Johan Dahlin  <johan@gnome.org>
-
-       * gobject-introspection-1.0.pc.in:
-       Add a g_ir_compiler variable
-
-2008-08-19  Colin Walters  <walters@verbum.org>
-
-       * giscanner/ast.py: Rework types to be more closely
-       based on GITypeTag.
-       * giscanner/girparser.py: Parse more bits.
-       * giscanner/girwriter.py: Write sequences in a new
-       way that specifies container type.
-       * giscanner/glibast.py: Adjust for ast.py changes,
-       add 'ctype' property to GLibObject and GLibInterface
-       so we can look things up by it later.
-       * gicanner/transformer.py: Names is new class holding
-       the various namespaces we manage.  Do not confuse
-       with Namespace which is toplevel XML node effectively.
-       Rework all type resolution to go through
-       _resolve_type_name_1.
-       * giscanner/glibtransformer.py: Raise UnknownTypeError
-       instead of ValueError for cleanliness.  Add Unresolved
-       class to mark types whose parent we haven't seen yet.
-       Use new Names object from transformer.py.
-       Correctly look up parent=.
-       Fix type validation to handle sequences.
-       * tests/scanner/Foo-expected.gir: Update for sequence
-       work, int instead of int32.
-       * tools/g-ir-scanner: Add --noclosure option
-       * gir/Makefile.am: Use --noclosure by default for
-       GLib/GObject.
-
-2008-08-18  Johan Dahlin  <johan@gnome.org>
-
-       * gir/gio-2.0-good.gir:
-       * gir/glib-2.0-good.gir:
-       * gir/gobject-2.0-good.gir:
-       Regenerate.
-
-2008-08-18  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py:
-       * giscanner/girparser.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * tests/scanner/Foo-expected.gir:
-       * tests/scanner/foo-object.h:
-       * tests/scanner/utility-expected.gir:
-       * tests/scanner/utility.h:
-       Redo type resolving and validation.
-       Add a couple of new tests.
-       Patch mostly written by Colin.
-
-2008-08-18  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       * giscanner/girparser.py:
-       Set ctype of enums
-       * giscanner/transformer.py:
-       Improve enum parsing for enums without a GType.
-       Make flags/enum references to other girs work
-       * giscanner/utils.py:
-       Simplify this a bit
-       * tests/scanner/Makefile.am:
-       * tests/scanner/foo-object.h:
-       * tests/scanner/utility-expected.gir:
-       * tests/scanner/utility.h:
-       Add a new test for external enum references
-
-2008-08-18  Johan Dahlin  <johan@gnome.org>
-
-       * docs/global-module-registry.txt: Update
-
-       * tests/array.gir: Update with new type proposal
-
-       * girepository/girepository.c (g_type_tag_to_string):
-       * girepository/girepository.h:
-       * girepository/girnode.c (g_ir_node_get_full_size_internal),
-       (find_entry_node):
-       * girepository/girnode.h:
-       Make enum serializing functions public. Clean up some whitespace.
-
-2008-08-17  Johan Dahlin  <johan@gnome.org>
-
-       * docs/global-module-registry.txt:
-       Add a document for an on disk module registry format
-
-2008-08-17  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       * gir/gio-2.0-good.gir:
-       Add a gio gir.
-
-2008-08-17  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       * gir/glib-2.0-good.gir:
-       * gir/gobject-2.0-good.gir:
-       * giscanner/cgobject.py:
-       * giscanner/glibtransformer.py:
-       Regenerate GObject & GType.
-       Avoid warnings when generating gobject-2.0.gir.
-       Introspect a little more, and skip *_get_type functions.
-
-2008-08-17  Colin Walters  <walters@verbum.org>
-
-       * gir/glib-2.0.gir, gir/gobject-2.0.gir:
-       Rename to -good, always generate during build.
-       * gir/Makefile.am: Ensure .gir files dep on
-       all scanner sources.
-       * Makefile.am: Switch build order to ensure
-       the scanner is ready before we do gir/.
-       * tools/g-ir-scanner: Look for .git too.
-
-2008-08-17  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/gtypelib.c (validate_enum_blob):
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       Remove resolve_possible_typedefs, it was unused.
-       Allow multiple enum values of the sample value in an enum,
-       since it's actually pretty common.
-       Register enums so they can be resolved too.
-
-2008-08-16  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girparser.py:
-       Parse enumeration/bitfield.
-
-2008-08-16  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girparser.py:
-       Parse boxed types.
-
-2008-08-16  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py:
-       Resolve type names for alias targets
-       * giscanner/transformer.py:
-       Skip FILE* parameters fow now
-
-2008-08-16  Johan Dahlin  <johan@gnome.org>
-
-       * gir/glib-2.0.gir:
-       * gir/gobject-2.0.gir:
-       Regenerate
-
-       * tests/scanner/Makefile.am:
-       parser -> scanner
-
-2008-08-15  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Explicitly construct
-       new list, since we're deleting as we iterate.
-       Don't delete all structures which end in Class; just
-       ones which have a paired GObject.
-       Fix printing of type warning.
-       * giscanner/transformer.py: Make strip_namespace_object
-       be the identity function if it doesn't match the 
-       namespace.
-
-2008-08-15  Colin Walters  <walters@verbum.org>
-
-       * giscanner/cgobject.py: Define yet more argument
-       prototypes; fix prototype for g_type_fundamental.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * tests/Makefile.am:
-       * tests/constant.gir:
-       * tests/gobject.gir:
-       * tests/struct.gir:
-       * tools/generate.c (write_struct_info):
-       Fix generator for constant/gobject/struct
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * tests/Makefile.am:
-       * tests/enum.gir:
-       * tools/generate.c (write_enum_info):
-       Fix generation of enum/bitfields
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girparser.c (start_field), (start_constant),
-       (start_type), (end_element_handler):
-       Clear up constant parsing
-
-       * tests/object.gir:
-       Update
-
-       * tools/generate.c (write_callable_info), (write_function_info),
-       (write_callback_info), (write_constant_info), (write_signal_info),
-       (write_vfunc_info), (write_property_info), (write_object_info),
-       (write_interface_info):
-       Constants/Signals are handled now.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girparser.c (start_type):
-       Don't require c:type.
-       * tests/Makefile.am:
-       Test boxed.gir
-       * tests/boxed.gir:
-       Update, remove parts we don't support yet
-       * tests/roundtrips.sh:
-       Remove
-       * tools/generate.c (write_type_info), (write_field_info),
-       (write_callable_info), (write_struct_info):
-       Make it emit proper gir.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/transformer.py:
-       New internal function for adding a new node.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * gir/Makefile.am:
-       Define an internal _H_ variable so we skip parsing both
-       i18n headers, only one is needed.
-       * gir/glib-2.0.gir:
-       Add the glib-2.0.gir too.
-       * giscanner/glibast.py:
-       Add gconstpointer as an alias for ANY
-       * giscanner/transformer.py:
-       Do not lower case enumeration names per se.
-       Skip functions which has parameters called 'va_list'
-
-2008-08-14  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: Comment data structures.
-       Also squash pointers in resolve_type_name to correspond
-       with what we do for params.
-       * giscanner/glibtransformer.py: Print warnings in more
-       situations.  Rework checks for method/constructor to
-       look up in our GType database instead of just checking
-       for *.   Avoid generating <record> for GObject which
-       duplicate the <class>.
-       * gir/Makefile.am: Generate glib-2.0.gir and gobject-2.0.gir
-       in here.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * misc/pyflakes.py:
-       * tests/Makefile.am:
-       Add pyflakes.py and run it in make check.
-       Update the source code to fix the errors reported by
-       pyflakes.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py:
-       * giscanner/girparser.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       Refactor the parser a bit.
-       Add parent type to interfaces and update callsites.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py:
-       * giscanner/utils.py:
-       Refactor a bit, avoid isinstance and add a method
-       for each type we parse.
-
-2008-08-14  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py:
-       * giscanner/girparser.py:
-       * giscanner/glibtransformer.py:
-       * tests/Makefile.am:
-       Run pep8.py in make check, fix old errors.
-
-2008-08-13  Colin Walters  <walters@verbum.org>
-
-       * giscanner/girparser.py: Parse records.
-
-2008-08-13  Colin Walters  <walters@verbum.org>
-
-       * gir/Makefile.am: Install again.
-       * gir/gobject-2.0.gir: Add some more bits.
-
-2008-08-13  Colin Walters  <walters@verbum.org>
-
-       * gir/gobject-2.0.gir: Use correct namespace, add GType.
-       * giscanner/girparser.py: Handle aliases.
-       * giscanner/transformer.py: Record aliases.  Make resolver
-       functions public; we now call into these explicitly from
-       glibtransformer.  Handle resolving aliases.
-       * giscanner/glibtransformer.py: Separate our internal namespace
-       from included ones.  Call up into transformer's resolver functions.
-
-2008-08-13  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/girnode.c (g_ir_node_get_full_size_internal):
-       * girepository/girparser.c (start_class):
-       * giscanner/glibtransformer.py:
-       Allow get_type to be None, set a get_type for GInitiallyUnowned too.
-
-2008-08-13  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/cgobject.py:
-       Register GInitiallyUnowned
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       Special case GObject/GInitially owned as they are a bit special to use.
-
-2008-08-13  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/Foo-expected.gir, tests/scanner/utility-expected.gir:
-       Object is in GObject namespace.
-
-2008-08-13  Colin Walters  <walters@verbum.org>
-
-       * giscanner/girparser.py: Fix processing of functions
-       from last commit.
-
-2008-08-13  Colin Walters  <walters@verbum.org>
-
-       * giscanner/girparser.py: Parse more than just <class.
-       * giscanner/glibtransformer.py: Put aliases in a separate
-       data structure since their name is not canonicall.
-       * giscanner/transformer.py: Handle resolving type names
-       from includes.
-
-2008-08-13  Johan Dahlin  <johan@gnome.org>
-
-       * tools/g-ir-scanner:
-       Allow multiple libraries
-       * giscanner/glibtransformer.py:
-       Rename load_library to add_library, traverse over all libraries
-       when trying to resolve a function
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/transformer.py: Record typedefs as <alias> elements.
-         Also attempt to look up types in external namespaces.
-       * giscanner/girwriter.py: Write them.
-       * giscanner/glibtransformer.py: Rework resolver using real instanceof
-       checks.  Resolve interface methods and properties.
-       * tests/scanner/foo-object.h: Add a method with typedef.
-       * tests/scanner/Foo-expected.gir: Update.
-       * girepository/girnode.c: Debug tweaks.
-       * girepository/girparser.c: Make a first pass through the XML where we
-       record all the aliases.  This lets us resolve them as we go through the
-       second pass.
-       * gir/Makefile.am: Don't install gobject-2.0.gir; we want that to come
-       from gir-repository.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Resolve typedefs (e.g. AtkAttributeSet -> GSList).
-       Correctly do subclasseing in 2nd pass resolution.  Handle callbacks in structure
-       fields.
-       * giscanner/transformer.py: Record typedefs and expose public API for resolving
-       them.
-       * tests/scanner/Foo-expected.gir: Fix expected callback types.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Also transform object properties.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: Also transform callbacks
-       and structure field types.
-       * tests/scanner/Fooe-expected.gir: Update to expect correct
-       names for callbacks and structs.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c: Handle 'any'.
-       * tests/scanner/Foo-expected.gir, tests/scanner/foo-object.h:
-       Add test for void *.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * giscanner/glibtransformer.py: We need to do type
-       resolution in a second pass after we've seen all the
-       enums, records, etc.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/Foo-expected.gir, tests/scanner/foo-object.h:
-       Add enum return value.
-       * giscanner/glibtransformer.py: Transform function return types
-       too.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * tests/scanner/Makefile.am: Dep .gir files on scanner
-       sources too.  Also remove @ so we see scanner invocations.
-
-2008-08-12  Colin Walters  <walters@verbum.org>
-
-       * girepository/girparser.c, girepository/gtypelib.c,
-       girepository/gtypelib.h, girepository/girnode.c:
-       Remove usage of (GAPI-oriented) TypeTag in favor of
-       GITypeTag from girepository.h.
-
-2008-08-10  Colin Walters  <walters@verbum.org>
-
-       * tests/roundtrips.sh: Use the correct tests.
-
-2008-08-10  Colin Walters  <walters@verbum.org>
-
-       * giscanner/cgobject.py: Declare/wrap a few more functions.
-       Fix parameter types for g_object_new and g_type_fundamental.
-
-2008-08-10  Colin Walters  <walters@verbum.org>
-
-       * giscanner/cgobject.py: Add new decorator @gwrap which forces
-       us to declare types for both return value and parameters.  The
-       ctypes default of 'int' is bad because it hides 32/64 bit
-       problems.  Convert all existing functions to use it.
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/__init__.py:
-       * giscanner/ast.py:
-       * giscanner/cgobject.py:
-       * giscanner/gidlparser.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/girparser.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/odict.py:
-       * giscanner/sourcescanner.py:
-       * giscanner/transformer.py:
-       * giscanner/utils.py:
-       * giscanner/xmlwriter.py:
-       * tools/g-ir-scanner:
-
-       PEP8ify
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * relaxng/api.xml:
-       * relaxng/c-types.xml:
-       * relaxng/g-types.xml:
-       * relaxng/relaxng.rng:
-       * relaxng/util.xml:
-       Remove outdated relaxng schemas.
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * *.[ch]:
-       Rename metadata to typelib in variable names,
-       comments and apis.
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * tools/scanner.c:
-       * tools/scanner.h:
-       Remove old C scanner, which got rewritten in python.
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/Makefile.am:
-       * tools/Makefile.am:
-       * tools/girmodule.c:
-       * tools/girmodule.h:
-       * tools/girnode.c:
-       * tools/girnode.h:
-       * tools/girparser.c:
-       * tools/girparser.h:
-       * tools/girwriter.c:
-       * tools/girwriter.h:
-       Move shared *.[ch] files to girepository from tools
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * tests/Makefile.am:
-       * tests/array.test:
-       * tests/boxed.test:
-       * tests/constant.test:
-       * tests/enum.test:
-       * tests/errors.test:
-       * tests/function.test:
-       * tests/gobject.test:
-       * tests/interface.test:
-       * tests/object.test:
-       * tests/struct.test:
-       * tests/types.test:
-       * tests/union.test:
-       * tests/xref1.test:
-       * tests/xref2.test:
-       Rename *.test to *.gir
-
-2008-08-09  Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       * tests/Makefile.am:
-       * tests/parser/Foo-expected.gir:
-       * tests/parser/Makefile.am:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c:
-       * tests/parser/utility-expected.gir:
-       * tests/parser/utility.c:
-       * tests/parser/utility.h:
-       * tests/scanner/Makefile.am:
-       Rename tests/parser to test/scanner
-
-2008-08-08  Colin Walters  <walters@verbum.org>
-
-       * tests/roundtrips.sh: Use local .gir files again.
-
-2008-08-08  Colin Walters  <walters@verbum.org>
-
-       * tests/invoke/Makefile.am: .gir file depends on libtool
-       library.
-
-2008-08-08  Colin Walters  <walters@verbum.org>
-
-       * tools/girnode.c: Pass through parent node so we can
-       print the node whose child is NULL, if that occurs.
-
-2008-08-08  Johan Dahlin  <johan@gnome.org>
-
-       * tests/Makefile.am:
-       Disable roundtrip tests which are not yet working
-       * tests/invoke/testfns.gir:
-       Rewrite as gir.
-
-2008-08-08  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girwriter.py:
-       type -> ntype
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       Swap order of members, to keep it consistent with
-       base enum class
-
-2008-08-08  Johan Dahlin  <johan@gnome.org>
-
-       * girepository/gtypelib.c (validate_header):
-       * girepository/gtypelib.h:
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/sourcescanner.c (gi_source_symbol_ref),
-       (gi_source_symbol_unref):
-       * tests/array.test:
-       * tests/boxed.test:
-       * tests/constant.test:
-       * tests/enum.test:
-       * tests/errors.test:
-       * tests/function.test:
-       * tests/gobject.test:
-       * tests/interface.test:
-       * tests/invoke/Makefile.am:
-       * tests/invoke/testfns.xml:
-       * tests/object.test:
-       * tests/parser/Makefile.am:
-       * tests/roundtrips.sh:
-       * tests/struct.test:
-       * tests/types.test:
-       * tests/union.test:
-       * tests/xref1.test:
-       * tests/xref2.test:
-       * tools/Makefile.am:
-       * tools/compiler.c (main):
-       * tools/generate.c (write_callable_info), (write_function_info),
-       (write_repository):
-       * tools/gidlmodule.c:
-       * tools/gidlmodule.h:
-       * tools/gidlnode.c:
-       * tools/gidlnode.h:
-       * tools/gidlparser.c:
-       * tools/gidlparser.h:
-       * tools/gidlwriter.c:
-       * tools/gidlwriter.h:
-       * tools/scanner.c (create_node_from_gtype),
-       (create_node_from_ctype), (g_igenerator_process_properties),
-       (g_igenerator_process_signals), (g_igenerator_create_object),
-       (g_igenerator_create_interface), (g_igenerator_create_boxed),
-       (g_igenerator_create_enum), (g_igenerator_create_flags),
-       (g_igenerator_process_function_symbol),
-       (g_igenerator_process_unregistered_struct_typedef),
-       (g_igenerator_process_struct_typedef),
-       (g_igenerator_process_union_typedef),
-       (g_igenerator_process_enum_typedef),
-       (g_igenerator_process_function_typedef),
-       (g_igenerator_process_constant), (g_igenerator_process_symbols),
-       (g_igenerator_add_module), (g_igenerator_add_include_idl):
-       Merge in the gir-compiler branch.
-       Thanks to Philip and Colin for their help.
-
-2008-07-26  Colin Walters  <walters@verbum.org>
-
-       * tools/Makefile.am (bin_PROGRAMS): Install g-idl-compiler
-       and g-idl-generate to go along with how we're changing this
-       module to be installed.
-       * gobject-introspection-1.0.pc.in: Set up Cflags and Libs.
-
-2008-07-24  Colin Walters  <walters@verbum.org>
-
-       * girepository/girepository.c (g_irepository_register): Add
-       environment variable G_IREPOSITORY_VERBOSE so we can print
-       out what we're doing.
-       * girepository/girepository.c (g_irepository_register_file): 
-       Add GError error message to g_debug call.
-
-2008-07-08  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/glibast.py:
-
-       Fix typo
-
-2008-06-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/girparser.py (GIRParser._parse_api): Ignore a few
-       more tags
-
-2008-06-20  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/transformer.py:
-       * tests/parser/Foo-expected.gir:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c (foo_object_allow_none):
-       Add support for gtk-doc annotations for allow-none.
-       Add test case.
-
-2008-06-19  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * tests/parser/Foo-expected.gir:
-       Start using abstract type instead of the raw C types.
-       Register a bunch of glib types we care about.
-
-2008-06-19  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * AUTHORS:
-       Update authors
-
-2008-06-08  Philip Van Hoof  <pvanhoof@gnome.org>
-
-       * girepository/girepository.c:
-       * girepository/gtypelib.c:
-       * girepository/ginfo.c:
-       * girepository/ginvoke.c:
-       * girepository/girepository.h:
-       * girepository/gtypelib.h:
-       * girepository/gmetadata.c:
-       * girepository/Makefile.am:
-       * girepository/gmetadata.h:
-       * tools/compiler.c:
-       * tools/gidlmodule.c:
-       * tools/gidlnode.c
-       * tools/generate.c:
-       * tools/gidlmodule.h:
-       * tools/gidlparser.c:
-
-       Renamed GMetadata to GTypelib
-
-2008-06-07  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/xmlwriter.py:
-       Improve line wrapping when > 79 charaters
-
-2008-06-05  Jürg Billeter  <j@bitron.ch>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/transformer.py:
-       Use <type> element for field types
-       * tests/parser/Foo-expected.gir:
-       Update testcase
-
-2008-06-04  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/glibtransformer.py:
-       Fix a bug which prevented GdkEvent from being generated
-
-2008-06-03  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/Makefile.am:
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * giscanner/utils.py:
-       * tests/parser/Foo-expected.gir:
-       Improve enum member parsing and introspection
-
-2008-05-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/scannerparser.y:
-       * giscanner/sourcescanner.h:
-       * giscanner/sourcescanner.py:
-       Add a new source type enum for member.
-       Use __repr__ for improved debugging
-       * giscanner/girparser.py:
-       Ignore some more
-       * giscanner/transformer.py:
-       Improve parsing of struct members.
-       * tests/parser/foo-object.h:
-       Add a new testcase
-
-2008-05-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/xmlwriter.py:
-       Improve error reporting when trying to quote None.
-       * giscanner/girparser.py:
-       Do not print warnings when including more complete .gir files
-       * giscanner/girwriter.py:
-       Do not require a name for parameters, add a todo for singletons
-       * giscanner/glibtransformer.py:
-       Refactor the way structs are done, add a couple of hacks to allow
-       us to get further.
-       * giscanner/transformer.py:
-       Add enough hacks so cairo, atk and pango.gir can be parsed properly
-       * gobject-introspection-1.0.pc.in:
-       Export girdir, so we can access gobject-2.0.gir from outside
-
-2008-05-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tools/g-ir-scanner:
-       * tests/parser/Makefile.am:
-       Update sys.path before running the parser so we don't have
-       to setup PYTHONPATH ourselves.
-
-       * Makefile.am:
-       * configure.ac:
-       * girepository/Makefile.am:
-       * giscanner/transformer.py:
-       * gobject-introspection-1.0.pc.in:
-       * gobject-introspection.pc.in:
-       * tools/Makefile.am:
-
-       Rename pkg-config name to gobject-introspection-1.0,
-       Do not installed anything which is not using the gir format.
-       Disable compililation the old C scanner, but still keep the source
-       until all the remaning functionallity has been ported.
-
-2008-05-31  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/giscannermodule.c (symbol_get_ident): Prevent
-       a crash when symbol->indent is NULL.
-
-       * giscanner/sourcescanner.py (ctype_name): Add ctype_name,
-       a function to convert a CTYPE symbol to a string
-
-2008-05-24  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/giscannermodule.c
-       (pygi_source_scanner_append_filename),
-       (pygi_source_scanner_parse_file):
-       * giscanner/glibtransformer.py:
-       * giscanner/sourcescanner.py:
-       Revert back to using temporary files to send in headers.
-       Allow Functions to be passed in as callbacks, add a couple
-       of try/excepts missing features.
-       We can now scan pango
-
-2008-05-08  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       Move namespace stripping glibtransformer->transformer
-
-2008-05-08  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * tools/g-ir-scanner:
-       Introduce a namespace ast node
-
-2008-05-05  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/__init__.py:
-       * giscanner/sourcescanner.py:
-       * giscanner/transformer.py:
-       Move sourcescanner symbols to the sourcescanner module, instead
-       of in the global __init__ namespace.
-
-2008-05-03  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/glibtransformer.py:
-       * tools/g-ir-scanner:
-       Handle missing parameters better, allow - and + in .la dlname
-       filenames.
-
-2008-05-03  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/__init__.py:
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       Parse struct fields properly, improve debugging.
-
-2008-04-29  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/transformer.py:
-       * tests/parser/Foo-expected.gir:
-       * TODO:
-       Use transfer-ownership everywhere, to mark ownership/calle/caller etc.
-
-2008-04-29  Johan Dahlin  <jdahlin@async.com.br>
-
-       * Makefile.am:
-       * docs/g-ir-scanner.1:
-       * metadata-annotations-proposal.txt:
-       * metadata-format.txt:
-       Add a basic, unfinshed man page for g-ir-scanner, move documents into .txt
-
-2008-04-29  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * giscanner/xmlwriter.py:
-       * tests/parser/Foo-expected.gir:
-       * tests/parser/foo-object.h:
-       Write record/structs to gir file too. Add a couple of tests,
-       fix an off by one error in xmlwriter.py.
-
-2008-04-28  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/xmlwriter.py: Calculate the line length properly,
-       include the provided extra indentation in the calculation, really.
-
-2008-04-28  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       * tools/g-ir-scanner:
-       Add a --strip-prefix and sort out confusion between names and symbols
-       for functions and struct + derivaties.
-       Refactor bootstrap of g-ir-scanner, so we can set options on
-       Transformer() before parsing everything.
-
-2008-04-28  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/transformer.py (Transformer._traverse_one): Avoid recursion
-       when scanning girepository.h
-
-       * giscanner/sourcescanner.py (SourceScanner._preprocess): Define
-       a __GI_SCANNER__ when we run.
-
-2008-04-28  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * tests/parser/Foo-expected.gir:
-       * tests/parser/utility-expected.gir:
-       Rename most c:identifier to c:type. Add new ones to
-       class/interface/enum/boxed.
-
-2008-04-28  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/ast.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/Makefile.am:
-       Move c:identifier from return-value to subchild type,
-       as per Jürgs suggestion
-
-2008-04-28  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girwriter.py:
-       * tests/parser/Foo-expected.gir:
-       Write property.type as a child node.
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * Makefile.am:
-       * configure.ac:
-       * gidl/Makefile.am:
-       * gidl/gobject-2.0.gidl:
-       * gir/Makefile.am:
-       * gir/gobject-2.0.gir:
-       * tests/parser/Makefile.am:
-       Replace the GObject gidl with a GObject gir.
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * tools/Makefile.am (bin_SCRIPTS): g-ir-scanner is a script,
-       not a program.
-
-       * giscanner/xmlwriter.py:
-       * tests/parser/Foo-expected.gir:
-       Include indentation in line length calculation
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/girparser.py:
-       Prettify NS parsing using elementtree.
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       * giscanner/Makefile.am:
-       * giscanner/girparser.py:
-       * giscanner/glibtransformer.py:
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/Foo-expected.gir:
-       * tests/parser/Makefile.am:
-       * tests/parser/utility-expected.gidl:
-       * tests/parser/utility-expected.gir:
-       * tools/g-ir-scanner:
-       Switch over to GIR as the default format. Add a simple GIDL
-       parser.
-       Update tests and fix simplify makefiles by depending
-       on GNU make extensions.
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/xmlwriter.py:
-       Wrap attributes for lines which are wider than 79 characters
-
-       * giscanner/scannerlexer.l:
-       Allow parenthesis in annotations
-
-       * giscanner/ast.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       Add initial sequence support, including annotation.
-       Refactor type handling a bit.
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c (foo_object_class_init),
-       (foo_object_get_strings), (foo_object_get_objects):
-       Add two new functions to check sequence return values.
-       Also fixes a compilation warning.
-
-2008-04-27  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/giscannermodule.c (]): Cast the getter, avoids
-       a compilation warning.
-
-       * tools/Makefile.am (g_ir_scanner_SOURCES):
-       g-ir-scanner has no sources.
-
-2008-04-25  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/Makefile.am:
-       * giscanner/ast.py:
-       * giscanner/gidlparser.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibast.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/transformer.py:
-       Split out nodes to ast.py and glibast.py
-
-2008-04-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/Makefile.am:
-       * giscanner/gidlparser.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/girwriter.py:
-       * giscanner/glibtransformer.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/transformer.py:
-       * giscanner/treebuilder.py:
-       * tools/g-ir-scanner:
-       Rename treebuilder to transformer and
-       gobjectreebuilder to glibtransformer.
-
-2008-04-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/Makefile.am:
-       * giscanner/__init__.py:
-       * giscanner/cgobject.py:
-       * giscanner/gidlparser.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/girwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/odict.py:
-       * giscanner/sourcescanner.py:
-       * giscanner/treebuilder.py:
-       * giscanner/xmlwriter.py:
-       * tools/Makefile.am:
-       * tools/g-ir-scanner:
-       Add LGPLv2 license header and install all python files
-
-2008-04-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * TODO:
-       * giscanner/gidlwriter.py:
-       * giscanner/giscannermodule.c (pygi_source_directive_new),
-       (directive_get_options), (pygi_source_symbol_new),
-       (symbol_get_base_type), (pygi_source_type_new),
-       (type_get_base_type), (type_get_child_list),
-       (pygi_source_scanner_get_symbols),
-       (pygi_source_scanner_get_directives):
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/sourcescanner.py:
-       * giscanner/treebuilder.py:
-       * tests/parser/foo-object.h:
-       Add support for virtual methods.
-       Pair struct FooClass with struct Foo.
-       Clean up the SourceScanner bindings a bit.
-       Add a testcase for virtual methods.
-
-2008-04-25  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/cgobject.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       Add support for signals
-
-       * tests/parser/foo.c (foo_object_class_init):
-       * Foo-expected.gidl:
-       Add a signal and update the expected output.
-
-2008-04-24  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/girwriter.py:
-       * giscanner/giscannermodule.c (directive_get_name),
-       (directive_get_value), (directive_get_options),
-       (symbol_get_directives), (symbol_set_directives),
-       (pygi_source_scanner_parse_file),
-       (pygi_source_scanner_lex_filename),
-       (pygi_source_scanner_get_directives), (init_giscanner):
-       * giscanner/sourcescanner.c (gi_source_scanner_get_directives):
-       * giscanner/sourcescanner.h:
-       * giscanner/sourcescanner.py:
-       * giscanner/treebuilder.py:
-       * tools/g-ir-scanner:
-       Add support for source/header annotations.
-
-2008-04-22  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/girwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       Add support for Callbacks
-
-2008-04-22  Havoc Pennington  <hp@pobox.com>
-
-       * girepository/ginvoke.c (g_function_info_invoke): If a symbol is
-       not in metadata->module, look for it in the global module, in case
-       some other object or the app itself provides the symbol.
-
-2008-04-22  Havoc Pennington  <hp@pobox.com>
-
-       * girepository/gmetadata.c (_g_metadata_init): hack to avoid
-       dlopening a library that is already in the main app, by checking
-       whether one of the lib's symbols is already loaded.
-
-2008-04-22  Johan Dahlin  <jdahlin@async.com.br>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       Add a callback test
-
-2008-04-22  Havoc Pennington  <hp@pobox.com>
-
-       * girepository/ginfo.c (g_interface_info_find_method):
-       Use interface_blob_size not object_blob_size to compute offset.
-
-2008-04-22  Havoc Pennington  <hp@pobox.com>
-
-       * girepository/gmetadata.c (_g_metadata_init): remove
-       G_MODULE_BIND_LOCAL flag when loading libraries, since some libs
-       (Glade and Clutter for example) rely on being loaded globally.
-
-2008-04-22  Havoc Pennington  <hp@pobox.com>
-
-       * girepository/ginfo.c (g_registered_type_info_get_g_type): new
-       function to get the GType given a RegisteredTypeInfo
-
-2008-04-22  Johan Dahlin  <johan@gnome.org>
-
-       * COPYING: Add a LGPL license, to prevent automake to
-       put in a copy of GPL here. Pointed out by Havoc.
-
-       * girepository/ginfo.c (g_info_from_entry), (g_type_info_new),
-       (g_type_info_is_pointer), (g_type_info_get_tag),
-       (g_type_info_get_param_type), (g_type_info_get_interface),
-       (g_type_info_get_array_length), (g_type_info_is_zero_terminated),
-       (g_type_info_get_n_error_domains), (g_type_info_get_error_domain),
-       (g_error_domain_info_get_codes), (g_enum_info_get_value),
-       (g_object_info_get_interface), (g_object_info_get_field),
-       (g_interface_info_get_prerequisite),
-       (g_signal_info_get_class_closure), (g_constant_info_get_value):
-       * girepository/ginvoke.c (get_ffi_type):
-       * girepository/girepository.h:
-       * girepository/gmetadata.c (g_metadata_get_dir_entry),
-       (g_metadata_check_sanity), (validate_header),
-       (validate_array_type_blob), (validate_iface_type_blob),
-       (validate_param_type_blob), (validate_error_type_blob),
-       (validate_type_blob), (validate_constant_blob),
-       (validate_struct_blob), (validate_enum_blob):
-       * girepository/gmetadata.h:
-       * tests/Makefile.am:
-       * tests/invoke/Makefile.am:
-       * tests/invoke/invoke.c (main):
-       * tests/roundtrips.sh:
-       * tools/Makefile.am:
-       * tools/compiler.c (format_output), (write_out_metadata), (main):
-       * tools/generate.c (write_type_name), (write_type_info),
-       (write_constant_value), (write_enum_info), (load_metadata), (main):
-       * tools/gidlcompilercontext.c:
-       * tools/gidlcompilercontext.h:
-       * tools/gidlcompilerentrynode.c:
-       * tools/gidlcompilerentrynode.h:
-       * tools/gidlcompilertypenode.c:
-       * tools/gidlcompilertypenode.h:
-       * tools/gidlmodule.c (g_idl_module_build_metadata):
-       * tools/gidlmodule.h:
-       * tools/gidlnode.c (init_stats), (dump_stats),
-       (g_idl_node_get_size), (g_idl_node_get_full_size),
-       (g_idl_node_cmp), (g_idl_node_can_have_member),
-       (g_idl_node_add_member), (g_idl_node_param_direction_string),
-       (parse_int_value), (parse_uint_value), (parse_float_value),
-       (parse_boolean_value), (find_entry_node), (find_entry),
-       (serialize_type), (g_idl_node_build_metadata), (write_string):
-       * tools/gidlnode.h:
-       * tools/gidlparser.c (parse_type_internal):
-       * tools/quote-file.sh:
-       Revert revisions 157,149-148,136-129 and 120.
-       Move back to using g-idl-generate to generate the metadata and
-       avoids dependency on a c compiler.
-
-2008-04-22  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/girwriter.py:
-       * tools/g-ir-scanner:
-       Add an initial GIR writer and a --format option to g-ir-scanner
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/cgobject.py: Use ctypes.util.find_library to locate
-       gobject-2.0 and raise ImportError if not found.
-
-       * giscanner/gidlparser.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * tools/g-ir-scanner:
-       Add a --include argument to include types from other idls.
-       Add a minimalistic GIDL parser (just objects for now)
-       Implement resolving of external type references and use it to
-       resolve parent types, argument types and return types.
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       Add support for properties.
-       Refactor Class/Interface support a bit, to share more code and
-       always initialize their method attribute to an empty list.
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/cgobject.py:
-       Add a workaround for a glib bug interface introspection bug
-       (object_interface_list_properties, object_class_list_properties):
-       Cast the return value to GParamSpec.
-
-       * tests/parser/Foo-expected.gidl: Update
-       * tests/parser/foo.c: Add a string property
-
-       * giscanner/gobjecttreebuilder.py:
-       After stripping namespaces, remove the original
-       item to avoid duplication (GtkButton struct and Button object)
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       Strip namespaces before objects, so we'll export
-       GtkButton as Button in the gtk namespace
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       Add constructors for object/boxed types.
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       Add support for boxed types
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/giscannermodule.c: Mark structures as const,
-       wrap SourceType.const_string.
-
-       * tests/parser/foo-object.h: Add a couple of constants.
-
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       Add basic support for interfaces
-
-       * tools/g-ir-scanner:
-       Add -o/--output for writing to a file
-
-2008-04-21  Havoc Pennington  <hp@redhat.com>
-
-       * TODO: add some C API wishlist items I could think of quickly
-
-2008-04-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/xmlwriter.py:
-       Add a simple api for writing tags which can be used 
-       with the new 'with statement' in python 2.5
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/gobjecttreebuilder.py:
-       Strip namespace and object prefix from method names.
-
-2008-04-21  Johan Dahlin  <johan@gnome.org>
-
-       * tools/g-ir-scanner (main): Add --pkg option to pass in
-       pkg-config modules to get cflags from.
-
-       * giscanner/gidlwriter.py (GIDLWriter._write_method): 
-       Avoid duplication, reuse function writer for methods.
-
-2008-04-21  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       * tools/g-ir-scanner:
-       Resolve libtool .la files.
-       Strip name spaces for methods.
-       Add function symbols
-
-2008-04-20  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/cgobject.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/treebuilder.py:
-       Add support for classes and methods
-
-2008-04-20  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * giscanner/odict.py:
-       Avoid conflicts, keep the output ordered similar to
-       the order of the input.
-       Add a simple ordered dictionary implemenation
-
-2008-04-19  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/cgobject.py:
-       * giscanner/gidlwriter.py:
-       * giscanner/gobjecttreebuilder.py:
-       * tools/g-ir-scanner:
-       Start introspecting get-type functions.
-       Implement support for GLib/GFlags GTypes.
-       Add a ctype based GObject binding.
-
-2008-04-18  Johan Dahlin  <jdahlin@async.com.br>
-
-       * giscanner/gidlwriter.py:
-       * giscanner/xmlwriter.py:
-       * tools/g-ir-scanner:
-       Add a simplistic gidl writer, which can't do too much.
-
-2008-04-18  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/sourcescanner.py:
-       * giscanner/treebuilder.py:
-       * tools/g-ir-scanner:
-       split tree building and source scanning interface to separate files.
-
-2008-04-18  Johan Dahlin  <johan@gnome.org>
-
-       * tools/g-ir-scanner (Parameter.__init__): Start constructing
-       a real node tree.
-       - Add support for struct/parameter/return, start parsing of ctypes
-
-       * giscanner/giscannermodule.c: wrap GISourceType.child_list and
-       fix the style
-
-2008-03-31  Johan Dahlin  <johan@gnome.org>
-
-       * tools/g-ir-scanner:
-       Start to build abstract syntax node of scanned sources.
-       Add support for cpp options.
-
-2008-03-27  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/giscannermodule.c:
-       * giscanner/scannerlexer.l:
-       * giscanner/sourcescanner.c:
-       * tools/g-ir-scanner:
-
-       Add simple pre-processor using subprocess and a PIPE.
-       Change the parse_file apis to accept a file descriptor.
-
-2008-03-25  Johan Dahlin  <johan@gnome.org>
-
-       * giscanner/__init__.py:
-       * tools/g-ir-scanner:
-       Fix a typo and add an example python test program.
-
-2008-03-25  Johan Dahlin  <johan@gnome.org>
-       
-       * giscanner/__init__.py:
-       * giscanner/giscannermodule.c:
-       * giscanner/sourcescanner.c:
-       * giscanner/sourcescanner.h:
-       Add constants and wrap a few more SymbolType fields
-
-2008-03-25  Johan Dahlin  <johan@gnome.org>
-       
-       * configure.ac:
-       * giscanner:
-       * giscanner/__init__.py:
-       * giscanner/giscannermodule.c:
-       * giscanner/Makefile.am:
-
-       Add initial python bindings for the scanner and 
-       depend on python 2.5.
-
-2008-03-25  Johan Dahlin  <johan@gnome.org>
-
-       * Makefile.am:
-       * configure.ac:
-       * giscanner/Makefile.am:
-       * giscanner/sourcescanner.c:
-       * giscanner/sourcescanner.h:
-       * tools/Makefile.am:
-       * tools/grealpath.h:
-       * tools/sourcescanner.c:
-       * tools/sourcescanner.h:
-
-       Move the scanner to a separate library.
-       
-2008-03-23  Johan Dahlin  <johan@gnome.org>
-
-       * tools/Makefile.am:
-       * tools/scanner.c:
-       * tools/scanner.h:
-       * tools/scannerlexer.l:
-       * tools/scannerparser.y:
-       * tools/sourcescanner.c:
-       * tools/sourcescanner.h:
-       Split out the source scanner from the generator.
-       Rename the symbols used in the scanner to use the gi_ prefix.
-       This should make it possible to use the raw C parser from
-       other programs.
-
-2008-03-23  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Makefile.am (utility.gidl): 
-       * tests/parser/utility-expected.gidl: 
-       Pass in the gobject.gidl since we're defining a GObject.
-
-2008-03-12  Johan Dahlin  <johan@gnome.org>
-
-       * relaxng/relaxng.rng:
-       Add a releaxng in relaxng we can use to validate the relaxngs
-       schemas
-
-2008-03-12  Jürg Billeter  <j@bitron.ch>
-
-       * tools/scanner.c: (g_igenerator_new):
-       * tools/scannerparser.y:
-       Fix compiler warnings.
-
-2008-03-12  Jürg Billeter  <j@bitron.ch>
-
-       * tools/scanner.c:
-       * tools/scanner.h:
-       * tools/scannerparser.y:
-       Start fixing memory management in g-idl-scanner.
-
-2008-03-12  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/gidlcompilercontext.c: (write_compiled):
-       Fix critical warning when no shlib passed to g-idl-compiler.
-
-2008-03-12  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/utility-expected.gidl:
-       * tests/parser/utility.h:
-       Add a get_type-function, so the scanner actually
-       parses it as an object.
-       
-2008-03-12  Johan Dahlin  <johan@gnome.org>
-
-       * tools/gidlwriter.c (function_generate): Add missing trailing quote.
-       Bad Philip!
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/Makefile.am:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c:
-       * tests/parser/utility-expected.gidl:
-       * tests/parser/utility.c:
-       * tests/parser/utility.h:
-
-       Add a new gidl test. 'utility.gidl', which is used to be able
-       to test external type references. Add a reference to UtilityObject*
-       in the idl file.
-
-2008-03-11  Johan Dahlin  <johan@gnome.org>
-
-       * tools/compiler.c:
-       * tools/generate.c:
-       Remove most global variables
-
-2008-03-11  Philip Van Hoof  <me@pvanhoof.be>
-       * tools/scannerlexer.l:
-       * tools/scanner.c:
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo.c:
-       * tests/parser/Makefile.am:
-       * tests/parser/foo-object.h:
-       Added a few extra tests. Which resulted in finding a few
-       bugs. Which resulted in me fixing those bugs
-
-2008-03-11  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/gidlcompilercontext.c: (g_idl_compiler_write_dir_entry),
-       (g_idl_compiler_write_xref_entry), (g_idl_compiler_add_xref):
-       Add some comments for strings into generated output for
-       easier debugging.
-
-2008-03-11  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/gidlcompilercontext.c: (write_compiled):
-       Write out the shlibs variable before writing out the strings
-       length. Fixes compiler warning when using '-l' flag with
-       g-idl-compiler
-
-2008-03-11  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tools/scanner.c:
-       * tools/scanner.h:
-       * tools/scannerlexer.l:
-       Add support for parsing return arguments. Add support for
-       caller-owns return types.
-       Patch by Philip Van Hoof.
-       
-       * tools/scannerparser.y:
-       Remove parsing of the @deprecated syntax used in headers.
-       We will support gtk-doc deprecation in the future instead.
-
-2008-03-11  Johan Dahlin  <johan@gnome.org>
-
-       * tools/compiler.c (main): Coding style fixes
-
-2008-03-10  Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       Add GCOV_LIBS to GILIBS
-
-2008-03-10  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo.c:
-       Rename null-ok to direction=out
-
-2008-03-10  Philip Van Hoof  <me@pvanhoof.be>
-
-       reviewed and extensively tested by Johan
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c:
-       * tools/gidlnode.c:
-       * tools/gidlnode.h:
-       * tools/gidlwriter.c:
-       * tools/scanner.c:
-       * tools/scanner.h:
-       * tools/scannerlexer.l:
-       * tools/scannerparser.y:
-
-       Add support for scanning for gtk-doc comments inside
-       C source files. Add tests
-
-2008-03-10  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Makefile.am:
-       * tests/parser/foo.c:
-       * tools/scanner.c:
-       * tools/scanner.h:
-       * tools/scannerparser.y:
-       Add an api to lex filenames.
-       Lex all source .c files passed in on the command line.
-       Scan sources in a test and a couple of private structures
-       which should not be included in the generated gidl
-
-2008-03-10  Johan Dahlin  <johan@gnome.org>
-
-       * tests/invoke/Makefile.am: Make the generated metadata 
-       depend on the g-idl-compiler
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * tools/gidlmodule.c
-       * tools/gidlmodule.h
-       * tools/gidlnode.c
-       * tools/gidlnode.h
-       Remove the old g-idl-compiler code.
-
-
-2008-02-22  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * tools/quote-file.sh
-       * tools/compiler.c
-       * tools/generate.c
-       Move to using the 'C' struct compiler code.
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * girepository/ginfo.c
-       * tools/generate.c
-       Change the way that external references with no namespace
-       are dealt with. External references with no namespace
-       are placed into the XML as-if they are a local reference.
-       This is temporary, but helps with roundtrip tests.
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * girepository/ginfo.c
-       Add the ability to get the value of a constant of
-       type TYPE_TAG_SYMBOL. In the case of a symbol the value
-       is provided as a string.
-
-       This would deal properly with:
-       typedef char* random;
-       const random = "A string";
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * girepository/ginfo.c
-       * girepository/girepository.h
-       * tools/generate.c
-       Add a function to check if an enum is registered or not.
-       Previously anything testing this relied on the g-type
-       string offset having a value of 0.
-
-       * girepository/gmetadata.c
-       * girepository/gmetadata.h
-       * tools/generate.c
-       Remove unneccesary or erroneous checks. There were two
-       metadata validation checks which made sure that the blob
-       sizes were the same as some magic numbers compiled into the code.
-       This is wrong as it breaks any forwards compatibility that may
-       be possible.
-
-       Checks were also present that made sure that unregistered type
-       blobs had a value of 0 in the g-type offset field. This is
-       unneccessary. If a type blob is unregistered then any value
-       in its g-type field is simply invalid.
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-        * girepository/ginfo.c
-        * girepository/gmetadata.c
-        * girepository/gmetadata.h
-
-          Change the metadata format to have a standard header
-          for all the type blobs. Merge the SimpleTypeBlob
-          and InterfaceTypeBlob into a union. A union of these
-          two blobs existed previously but was not explicit
-          in the metadata format.
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * tools/gidlcompilercontext.c
-       * tools/gidlcompilercontext.h
-       * tools/gidlcompilerentrynode.c
-       * tools/gidlcompilerentrynode.h
-       * tools/gidlcompilertypenode.c
-       * tools/gidlcompilertypenode.h
-
-       Add code to compile a tree of GIdlNodes to
-       a 'C' struct representing the metadata.
-       This is to aid cross-compiling. Previously
-       the g-idl-compiler created a binary blob with
-       data written in the byte order and alignment
-       of the tool rather than the intended target.
-
-       Cleaned up and improved by Johan and Robert :-)
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * girepository/ginvoke.c
-       * girepository/girepository.h
-       * girepository/gmetadata.c
-       * girepository/gmetadata.h
-       * tools/generate.c
-       * tools/gidlparser.c
-       Modify TYPE_TAG_INTERFACE to TYPE_TAG_SYMBOL
-       to avoid confusion with the interface blob.
-
-       * tools/generate.c
-       * tools/gidlparser.c
-       Remove magic numbers and replace with type-tag
-       enumeration symbols.
-
-       * girepository/gmetadata.c
-       Add validate declaration.
-
-2008-03-10  Jürg Billeter  <j@bitron.ch>
-
-       * tools/gidlparser.c: (parse_type_internal):
-       * tools/scannerlexer.l:
-       * tools/scannerparser.y:
-       Support C99 _Bool type in scanner.
-
-2008-03-10  Jürg Billeter  <j@bitron.ch>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c: (foo_enum_method):
-       * tools/scanner.c: (g_igenerator_process_function_symbol):
-       Don't skip functions that are defined in the namespace of a type
-       that doesn't support methods, as for example enums.
-
-2008-03-10  Johan Dahlin  <johan@gnome.org>
-
-       * gidl.dtd: Remove, we're using relaxng for now
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c:
-       Rename the enum/flags get_type functions to include the whole type.
-
-2008-03-08  Marc-Andre Lureau  <marcandre.lureau@gmail.com>
-
-       * tools/gidlwriter.c (enum_generate): added "type-name",
-       "get-type" and "deprecated" missing arguments.
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h: test enum type, and no type.
-
-2008-03-06  Johan Dahlin  <jdahlin@async.com.br>
-
-       * configure.ac:
-       Consistent checks, add missing 'test'
-
-2008-03-05  Havoc Pennington  <hp@redhat.com>
-
-       * configure.ac: Take advantage of a libffi.pc if one exists, as it
-       does on Fedora 8. Make libffi a hard requirement, since it was in
-       practice anyway (was not really conditional in the code or
-       makefile, only in configure).
-
-2008-02-21  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       reviewed by: Rob Taylor  <rob.taylor@codethink.co.uk>
-       reviewed by: Johan Dahlin  <johan@gnome.org>
-
-       * tests/Makefile.am:
-       * tests/roundtrips.sh:
-       Modify the roundtrips test so that they do not use the
-       --raw option of the gidl compiler but instead compile a
-       shared library to use with g_module.
-
-       * tests/invoke/Makefile.am:
-       * tests/invoke/invoke.c:
-       Modify the invoke tests to build a shared library rather
-       than use the --raw option.
-
-       * tests/invoke/invoke-namespace-find.sh: Removed:
-       Noone knows why this was here, so removed.
-
-2008-02-19  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/scanner.c: (g_igenerator_process_function_symbol):
-       Move g_idl_node_can_have_member test later, as it broke spotting
-       get_type's for nodes that can't have members.
-
-2008-02-18  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/gidlnode.h:
-       * tools/gidlnode.c: (g_idl_node_can_have_member):
-       Add g_idl_node_can_have_member.
-
-       * tools/scanner.c: (g_igenerator_process_function_symbol):
-       Use g_idl_node_can_have_member to test if we should add a function
-       as a member of the type node.
-
-2008-02-18  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * gidl/GLib.gidl: Renamed to gidl/gobject-2.0.gidl:
-       * gidl/Makefile.am:
-       * tests/parser/Makefile.am:
-       Rename GLib.gidl to gobject-2.0.gidl and install in /usr/share/gidl.
-
-2008-02-18  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/scanner.c: (main):
-       Ignore -pthread when passed to g-idl-scanner.
-
-2008-02-18  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tools/grealpath.h: Added:
-       * tools/scanner.c: (main):
-       * tools/scannerlexer.l:
-       * tools/Makefile.am:
-       Always use absolute paths with symbolic links resolved when
-       comparing filenames.
-
-2008-02-18  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * gobject-introspection.pc.in:
-       Provide variables for g-idl-parser, scanner and compiler in the
-       pkgconfig file.
-
-2008-02-13  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * gcov.mak:
-       * girepository/Makefile.am:
-       * tools/Makefile.am:
-       Rename GCOV_SOURCES to GCOVSOURCES to top automake complaining.
-
-2008-02-10  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c: (foo_boxed_copy), (foo_boxed_free),
-       (foo_boxed_get_type), (foo_boxed_new), (foo_boxed_method):
-       Add boxed test.
-
-2008-02-10  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c: (foo_enum_get_type), (foo_flags_get_type):
-       Add enum and flags test.
-
-2008-02-10  Johan Dahlin  <johan@gnome.org>
-
-       * Makefile.am:
-       * configure.ac:
-       * girepository/Makefile.am:
-       Make 'make distcheck' work again.
-
-2008-02-10  Johan Dahlin  <johan@gnome.org>
-
-       * m4/Makefile.am (EXTRA_DIST): its called as-compiler-flag.m4,
-       not as-compiler.m4.
-
-       * tests/parser/Makefile.am: Only create Foo.gidl when running make
-       check, eg exclude it from BUILT_SOURCES.
-
-2008-02-08  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * Makefile.am:
-       * configure.ac:
-       * gcov.mak: Added:
-       * girepository/Makefile.am:
-       * m4/Makefile.am: Added:
-       * m4/as-compiler-flag.m4: Added:
-       * m4/gcov.m4: Added:
-       * tools/Makefile.am:
-       Add ability to generate a coverage report.
-       Adds configure option --enable-gcov and make rule 'check-coverage'.
-
-2008-02-08  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * Makefile.am:
-       * configure.ac:
-       * gidl/Makefile.am: Added:
-       * girepository/Makefile.am: Added:
-       * src/Makefile.am: Renamed to tools/Makefile.am:
-       * src/compiler.c: Renamed to tools/compiler.c:
-       * src/g-idl-offsets.pl: Renamed to tools/g-idl-offsets.pl:
-       * src/generate.c: Renamed to tools/generate.c:
-       * src/gidlmodule.c: Renamed to tools/gidlmodule.c:
-       * src/gidlmodule.h: Renamed to tools/gidlmodule.h:
-       * src/gidlnode.c: Renamed to tools/gidlnode.c:
-       * src/gidlnode.h: Renamed to tools/gidlnode.h:
-       * src/gidlparser.c: Renamed to tools/gidlparser.c:
-       * src/gidlparser.h: Renamed to tools/gidlparser.h:
-       * src/gidlwriter.c: Renamed to tools/gidlwriter.c:
-       * src/gidlwriter.h: Renamed to tools/gidlwriter.h:
-       * src/ginfo.c: Renamed to girepository/ginfo.c:
-       * src/ginvoke.c: Renamed to girepository/ginvoke.c:
-       * src/girepository.c: Renamed to girepository/girepository.c:
-       * src/girepository.h: Renamed to girepository/girepository.h:
-       * src/gmetadata.c: Renamed to girepository/gmetadata.c:
-       * src/gmetadata.h: Renamed to girepository/gmetadata.h:
-       * src/scanner.c: Renamed to tools/scanner.c:
-       * src/scanner.h: Renamed to tools/scanner.h:
-       * src/scannerlexer.l: Renamed to tools/scannerlexer.l:
-       * src/scannerparser.y: Renamed to tools/scannerparser.y:
-       * tests/invoke/Makefile.am:
-       Split src/ into girepository/ and tools/
-
-       * Makefile.am:
-       * configure.ac:
-       * girepository/Makefile.am:
-       * tests/Makefile.am:
-       * tests/invoke/Makefile.am:
-       * tests/parser/Makefile.am:
-       * tests/roundtrips.sh:
-       * tools/Makefile.am:
-       Make distcheck work.
-
-2008-02-04  Rob Taylor  <rob.taylor@codethink.co.uk>
-
-       * tests/invoke/invoke.c: (main):
-       * tests/invoke/testfns.c: (test6), (test7):
-       * tests/invoke/testfns.xml:
-       Add tests for invokation with a GList argument.
-       Also tests caller-owns return values.
-
-2008-02-04  Rob Taylor  <robtaylor@floopily.org>
-
-       * src/ginfo.c:
-       Add some documentation for GICallableInfo
-
-2008-02-01  Mark Doffman  <mark.doffman@codethink.co.uk>
-
-       * gidl.dtd:
-       Correct syntax errors in the DTD file.
-       * relaxng/api.xml:
-       * relaxng/c-types.xml:
-       * relaxng/g-types.xml:
-       * relaxng/util.xml:
-       Add a RelaxNG specification for the GObject Introspection XML data.
-       The Specification has validated all of the test files.
-
-2008-01-25  Rob Taylor  <robtaylor@floopily.org>
-
-       * tests/roundtrips.sh:
-       * tests/struct.test:
-       Add roundtrip tests for structs.
-
-2008-01-11  Johan Dahlin  <johan@gnome.org>
-
-       * src/scanner.c (g_igenerator_process_function_symbol):
-       Refactor out g_idle_node_add_member.
-       (create_node_from_gtype, create_node_from_ctype):
-       Use case instead of if...else
-       (get_type_from_type_id):
-       Rename to create_node_from_gtype
-       (get_type_from_ctype):
-       Rename to create_node_from_ctype
-
-       Rename ginode -> node, gitype -> type, gifunc -> func.
-
-       * src/gidlnode.c (g_idl_node_add_member, g_idl_node_cmp):
-       Two new functions, refactor out of scanner.c
-
-       * src/scanner.c: (g_igenerator_process_function_symbol):
-       * src/scannerlexer.l:
-       Do not save the content of the deprecated variable, only
-       if it's set or not.
-
-2008-01-11  Johan Dahlin  <johan@gnome.org>
-
-       * tests/parser/foo-object.h: Add a couple of comment parser tests.
-
-2008-01-11  Jürg Billeter  <j@bitron.ch>
-
-       * src/scannerlexer.l:
-       Fix GTK-Doc parsing.
-
-2008-01-11  Jürg Billeter  <j@bitron.ch>
-
-       * src/scannerlexer.l:
-       Fix GTK-Doc parsing.
-
-2008-01-11  Jürg Billeter  <j@bitron.ch>
-
-       * src/scanner.c: (lookup_symbol):
-       Return unresolved name if we find unknown symbol.
-
-2008-01-11  Jürg Billeter  <j@bitron.ch>
-
-       * src/scanner.c: (g_igenerator_generate):
-       Initialize GObject to fix scanning interface properties.
-
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c: (foo_interface_get_type):
-       Test interfaces with GObject prerequisite.
-
-       * tests/parser/Makefile.am:
-       Set G_DEBUG=fatal_warnings to abort test on warnings and criticals.
-
-2007-12-27  Johan Dahlin  <johan@gnome.org>
-
-       * src/scannerlexer.l:
-       Parse gtk-doc comments.
-
-       * src/gidlwriter.c: (function_generate):
-       Reorganize, avoid duplication and add support for
-       writing deprecated functions.
-
-       * src/scannerparser.y:
-       * src/scanner.h:
-       Add new structure CDirective and functions to create/free them.
-
-       * src/scanner.c: (g_igenerator_process_function_symbol),
-       (g_igenerator_process_unregistered_struct_typedef),
-       (g_igenerator_process_struct_typedef),
-       (g_igenerator_process_union_typedef),
-       (g_igenerator_process_enum_typedef),
-       (g_igenerator_process_function_typedef), (g_igenerator_add_symbol),
-       (g_igenerator_start_preprocessor):
-       Parse @deprecated directive for functions.
-       Remove some more C99isms.
-       Send in -C to cpp to avoid stripping comments.
-
-       * tests/parser/foo-object.h:
-       * tests/parser/Foo-expected.gidl:
-       Add deprecated directive
-
-2007-12-27  Johan Dahlin  <johan@gnome.org>
-
-       * src/scannerlexer.l (intsuffix): Add emacs mode line and
-       escape ' and " so it looks more like C.
-
-       * src/scanner.c:
-       Unlink temporary file used.
-
-2007-12-27  Johan Dahlin  <johan@gnome.org>
-
-       * src/scanner.c: (g_igenerator_new), (g_igenerator_free),
-       (g_igenerator_start_preprocessor), (main):
-       * src/scanner.h:
-       * src/scannerparser.y:
-       Plug a couple of simple memory leaks.
-
-2007-12-27  Johan Dahlin  <johan@gnome.org>
-
-       * src/scanner.c: (g_igenerator_parse_macros),
-       (g_igenerator_start_preprocessor), (g_igenerator_set_verbose),
-       (main):
-       * src/scanner.h:
-       * src/scannerparser.y:
-       * tests/parser/Makefile.am:
-
-       Improve error reporting, return when the preprocessor fails.
-       Add a verbose parameter, to aid debugging.
-       Revert to using a temporary file to communicate between the
-       preprocessor and the parser, because we need to wait for
-       the exit code from the pre-processor before starting to parse.
-
-2007-12-16  Johan Dahlin  <jdahlin@async.com.br>
-
-       * src/Makefile.am: Rename clexer.l to scannerlexer.l and
-       cparser.y to scannerparser.y
-
-2007-12-11  Johan Dahlin  <johan@gnome.org>
-
-       * src/clexer.l:
-       * src/cparser.y:
-       * src/scanner.c: (g_igenerator_new):
-       * src/scanner.h:
-       Get rid of the global the_generator variable.
-
-2007-12-10  Johan Dahlin  <johan@gnome.org>
-
-       * src/scanner.c (main): Add an output option,
-       add checks for required parameters
-
-       * src/Makefile.am:
-       set BUILD_SOURCES and CLEANFILES properly
-
-       * src/gidlwriter.c: (g_writer_write_inline), (g_writer_write),
-       (g_writer_write_indent), (g_writer_write_unindent),
-       (field_generate), (value_generate), (constant_generate),
-       (property_generate), (function_generate), (vfunc_generate),
-       (signal_generate), (interface_generate), (struct_generate),
-       (union_generate), (boxed_generate), (enum_generate),
-       (node_generate), (g_writer_write_module), (g_idl_writer_save_file):
-       * src/gidlwriter.h:
-       * src/scanner.c: (g_igenerator_generate):
-       * src/scanner.h:
-       * src/scannerwriter.c:
-
-       Refactor scannerwriter to only be tied to a GIdlModule and move
-       it (again!) to gidlwriter.c. Change the writer function to take
-       a filename.
-
-2007-12-10  Johan Dahlin  <johan@gnome.org>
-
-       * src/Makefile.am:
-       * src/scanner.c: (g_igenerator_generate):
-       * src/scanner.h:
-       * src/scannerwriter.c: (g_igenerator_write_inline),
-       (g_igenerator_write), (g_igenerator_write_indent),
-       (g_igenerator_write_unindent), (field_generate), (value_generate),
-       (constant_generate), (property_generate), (function_generate),
-       (vfunc_generate), (signal_generate), (interface_generate),
-       (struct_generate), (union_generate), (boxed_generate),
-       (enum_generate), (node_generate), (module_generate),
-       (g_scanner_write_file):
-
-       Move the scanner gidl writing to a separate source file.
-
-2007-12-10  Johan Dahlin  <johan@gnome.org>
-
-       * src/cparser.y:
-       * src/scanner.c:
-       * src/scanner.h:
-       Move over all CType construction functions.
-
-       * tests/parser/Makefile.am:
-       Be verbose when printing parsing tests results.
-
-2007-12-10  Johan Dahlin  <johan@gnome.org>
-
-       * src/scanner.c (g_igenerator_start_preprocessor): Refactor
-       preprocessor handling to here. Start cpp insteado of cc -E,
-       always include -U__GNUC__, since it's specific to the preprocessor
-       we use.
-
-       * tests/parser/Makefile.am (check-local): Silent diff and skip
-       -U__GNUC__ which is always defined now
-
-2007-12-10  Johan Dahlin,,,  <jdahlin@plasttroll>
-
-       reviewed by: <delete if not using a buddy>
-
-       * src/scanner.c: (g_igenerator_start_preprocessor), (main):
-       * tests/parser/Makefile.am:
-
-2007-12-09  Johan Dahlin  <johan@gnome.org>
-
-       * src/scanner.c:
-       Use GOption for command line options.
-       (g_igenerator_new, main): Simplify constructor and they way
-       parameters are passed into it.
-
-       * src/cparser.y:
-       * src/Makefile.am:
-       * src/clexer.l:
-       * src/cparser.y:
-       * src/gen-introspect.c:
-       * src/gen-introspect.h:
-       * src/scanner.c:
-       Rename gen-introspect.[ch] to scanner.[ch]
-
-2007-12-09  Johan Dahlin  <johan@gnome.org>
-
-       * TODO: Update
-
-       * src/Makefile.am: Rename gen-introspect to g-idl-scanner,
-       don't make the repository library and the other utilites link against
-       gthread-2.0
-
-       * src/gen-introspect.c: (g_igenerator_create_object),
-       (g_igenerator_create_interface), (g_igenerator_create_boxed),
-       (g_igenerator_create_enum), (g_igenerator_create_flags),
-       (g_igenerator_process_module_symbol),
-       (g_igenerator_process_module), (g_igenerator_generate), (main):
-       * src/gen-introspect.h:
-       Refactor g_igenerator_process_types into smaller pieces.
-
-       * tests/parser/Makefile.am:
-       Depend on the gen-introspect binary
-
-2007-12-09  Johan Dahlin  <johan@gnome.org>
-
-       * src/gen-introspect.c (g_igenerator_process_types):
-       Break into smaller pieces, one for each generated node type.
-
-2007-12-08  Johan Dahlin  <johan@gnome.org>
-
-       * src/gen-introspect.c: (g_igenerator_process_types),
-       (g_igenerator_add_module):
-       * tests/parser/Foo-expected.gidl:
-       * tests/parser/foo-object.h:
-       * tests/parser/foo.c: (foo_subobject_class_init),
-       (foo_subobject_init):
-
-       Add a subobject test and make sure to register defined classes
-       in the lookup symbol hash table.
-
-2007-12-08  Johan Dahlin  <johan@gnome.org>
-
-       * gidl/GLib.gidl:
-       * src/Makefile.am:
-       * src/gen-introspect.c: (g_igenerator_new), (lookup_symbol),
-       (g_igenerator_process_types), (g_igenerator_add_module),
-       (g_igenerator_add_include_idl), (main):
-       * src/gen-introspect.h:
-       * tests/parser/Makefile.am:
-       * tests/parser/Foo-expected.gidl:
-
-       Change the gen-introspect to generate namespaced module names,
-       such as GLib.Object instead of GObject.
-       Add a GLib.gidl which introduces GLib.Object and GLib.InitiallyUnowned,
-       add a --include-idl parameter to gen-introspect,
-       and update the parser test.
-
-2007-12-08  Johan Dahlin  <johan@gnome.org>
-
-       * src/gen-introspect.c:
-       Move main to the end of the file and attempt to make it valid
-       ansi c.
-
-       * tests/parser/Makefile.am (BUILT_SOURCES): Remove .repo here,
-       we're not quite ready to generate metadata yet.
-
-       * tests/parser/:
-       * configure.ac:
-
-       Add a simple gen-introspect parser test
-
-2007-12-06  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
-
-       reviewed by: Johan Dahlin  <johan@gnome.org>
-
-       * configure.ac:
-       * gobject-introspection.pc.in:
-       * src/Makefile.am:
-       * src/compiler.c: (format_output), (write_out_metadata), (main):
-       * src/gen-introspect.c: (main):
-       * src/gen-introspect.h:
-       * src/generate.c: (write_callable_info), (write_repository),
-       (load_metadata), (main):
-       * src/gidlmodule.c: (g_idl_module_new),
-       (g_idl_module_build_metadata):
-       * src/gidlmodule.h:
-       * src/gidlparser.c: (start_element_handler):
-       * src/ginfo.c: (g_info_new), (g_info_from_entry),
-       (g_base_info_get_name), (g_base_info_get_namespace),
-       (g_base_info_is_deprecated), (g_base_info_get_annotation),
-       (g_base_info_get_metadata), (g_function_info_get_symbol),
-       (g_function_info_get_flags), (g_function_info_get_property),
-       (g_function_info_get_vfunc), (signature_offset), (g_type_info_new),
-       (g_callable_info_may_return_null),
-       (g_callable_info_get_caller_owns), (g_callable_info_get_n_args),
-       (g_callable_info_get_arg), (g_arg_info_get_direction),
-       (g_arg_info_is_return_value), (g_arg_info_is_dipper),
-       (g_arg_info_is_optional), (g_arg_info_may_be_null),
-       (g_arg_info_get_ownership_transfer), (g_type_info_is_pointer),
-       (g_type_info_get_tag), (g_type_info_get_param_type),
-       (g_type_info_get_interface), (g_type_info_get_array_length),
-       (g_type_info_is_zero_terminated),
-       (g_type_info_get_n_error_domains), (g_type_info_get_error_domain),
-       (g_error_domain_info_get_quark), (g_error_domain_info_get_codes),
-       (g_value_info_get_value), (g_field_info_get_flags),
-       (g_field_info_get_size), (g_field_info_get_offset),
-       (g_registered_type_info_get_type_name),
-       (g_registered_type_info_get_type_init),
-       (g_struct_info_get_n_fields), (g_struct_info_get_field),
-       (g_struct_info_get_n_methods), (g_struct_info_get_method),
-       (find_method), (g_struct_info_find_method),
-       (g_enum_info_get_n_values), (g_enum_info_get_value),
-       (g_object_info_get_parent), (g_object_info_get_type_name),
-       (g_object_info_get_type_init), (g_object_info_get_n_interfaces),
-       (g_object_info_get_interface), (g_object_info_get_n_fields),
-       (g_object_info_get_field), (g_object_info_get_n_properties),
-       (g_object_info_get_property), (g_object_info_get_n_methods),
-       (g_object_info_get_method), (g_object_info_find_method),
-       (g_object_info_get_n_signals), (g_object_info_get_signal),
-       (g_object_info_get_n_vfuncs), (g_object_info_get_vfunc),
-       (g_object_info_get_n_constants), (g_object_info_get_constant),
-       (g_interface_info_get_n_prerequisites),
-       (g_interface_info_get_prerequisite),
-       (g_interface_info_get_n_properties),
-       (g_interface_info_get_property), (g_interface_info_get_n_methods),
-       (g_interface_info_get_method), (g_interface_info_find_method),
-       (g_interface_info_get_n_signals), (g_interface_info_get_signal),
-       (g_interface_info_get_n_vfuncs), (g_interface_info_get_vfunc),
-       (g_interface_info_get_n_constants),
-       (g_interface_info_get_constant), (g_property_info_get_flags),
-       (g_signal_info_get_flags), (g_signal_info_get_class_closure),
-       (g_signal_info_true_stops_emit), (g_vfunc_info_get_flags),
-       (g_vfunc_info_get_offset), (g_vfunc_info_get_signal),
-       (g_constant_info_get_value), (g_union_info_get_n_fields),
-       (g_union_info_get_field), (g_union_info_get_n_methods),
-       (g_union_info_get_method), (g_union_info_is_discriminated),
-       (g_union_info_get_discriminator_offset),
-       (g_union_info_get_discriminator):
-       * src/ginvoke.c: (g_function_info_invoke):
-       * src/girepository.c: (g_irepository_register),
-       (g_irepository_unregister), (g_irepository_get_default),
-       (count_interfaces), (g_irepository_get_n_infos), (find_interface),
-       (g_irepository_get_info), (g_irepository_find_by_name),
-       (g_irepository_get_shared_library),
-       (g_irepository_build_search_path), (g_irepository_register_file),
-       (g_irepository_error_quark):
-       * src/girepository.h:
-       * src/gmetadata.c: (g_metadata_get_dir_entry),
-       (g_metadata_check_sanity), (validate_header),
-       (validate_array_type_blob), (validate_iface_type_blob),
-       (validate_param_type_blob), (validate_error_type_blob),
-       (validate_type_blob), (validate_arg_blob),
-       (validate_signature_blob), (validate_function_blob),
-       (validate_callback_blob), (validate_constant_blob),
-       (validate_value_blob), (validate_field_blob),
-       (validate_property_blob), (validate_signal_blob),
-       (validate_vfunc_blob), (validate_struct_blob),
-       (validate_enum_blob), (validate_object_blob),
-       (validate_interface_blob), (validate_errordomain_blob),
-       (validate_union_blob), (validate_blob), (validate_directory),
-       (validate_annotations), (g_metadata_validate), (_g_metadata_init),
-       (g_metadata_new_from_memory), (g_metadata_new_from_const_memory),
-       (g_metadata_new_from_mapped_file), (g_metadata_free),
-       (g_metadata_set_module), (g_metadata_get_namespace):
-       * src/gmetadata.h:
-       * tests/Makefile.am:
-       * tests/invoke/Makefile.am:
-       * tests/invoke/invoke-namespace-find.sh:
-       * tests/invoke/invoke.c: (main):
-
-       Add a namespace/shared library mapping. fixes #313268.
-
-2007-12-03  Johan Dahlin  <johan@gnome.org>
-
-       * src/gidlparser.c (parse_type_internal): Disable char/gchar and
-       guchar for now.
-
-2007-11-30  Jürg Billeter  <j@bitron.ch>
-
-       * configure.ac:
-       * src/Makefile.am:
-       * src/clexer.l:
-       * src/cparser.y:
-       * src/gen-introspect.c: (g_idl_node_cmp), (g_igenerator_new),
-       (g_igenerator_write_inline), (g_igenerator_write),
-       (g_igenerator_write_indent), (g_igenerator_write_unindent),
-       (field_generate), (value_generate), (constant_generate),
-       (property_generate), (function_generate), (vfunc_generate),
-       (signal_generate), (interface_generate), (struct_generate),
-       (union_generate), (boxed_generate), (enum_generate),
-       (node_generate), (module_generate), (get_type_from_type_id),
-       (str_replace), (g_igenerator_process_properties),
-       (g_igenerator_process_signals), (g_igenerator_process_types),
-       (get_type_from_ctype), (g_igenerator_process_function_symbol),
-       (g_igenerator_process_unregistered_struct_typedef),
-       (g_igenerator_process_struct_typedef),
-       (g_igenerator_process_union_typedef),
-       (g_igenerator_process_enum_typedef),
-       (g_igenerator_process_function_typedef),
-       (g_igenerator_process_constant), (g_igenerator_process_symbols),
-       (g_igenerator_add_symbol), (g_igenerator_is_typedef),
-       (g_igenerator_generate), (main), (csymbol_new),
-       (csymbol_get_const_boolean), (ctype_new), (ctype_copy),
-       (cbasic_type_new), (ctypedef_new), (cstruct_new), (cunion_new),
-       (cenum_new), (cpointer_new), (carray_new), (cfunction_new),
-       (eat_hspace), (eat_line), (read_identifier),
-       (g_igenerator_parse_macros):
-       * src/gen-introspect.h:
-
-       Import gen-introspect to generate introspection information by
-       parsing C headers.
-
-2007-11-30  Jürg Billeter  <j@bitron.ch>
-
-       * src/gidlnode.c: (g_idl_node_new): support creating callback nodes
-
-2007-11-30  Jürg Billeter  <j@bitron.ch>
-
-       * src/gidlparser.c: (end_element_handler): Don't leave requires
-       state too early.
-
-2007-11-29  Johan Dahlin  <johan@gnome.org>
-
-       * src/gidlparser.c (parse_type_internal): Add char,
-       gchar and guchar to the builtin types.
-
-2007-11-26  Johan Dahlin  <johan@gnome.org>
-
-       * src/ginfo.c: (g_object_info_get_type_name),
-       (g_object_info_get_type_init):
-       * src/girepository.c: (g_irepository_is_registered):
-       * src/girepository.h:
-
-       Add g_object_info_get_type_name, g_object_info_get_type_init and
-       g_irepository_is_registered.
-
-2006-08-14  Jürg Billeter  <j@bitron.ch>
-
-      * src/gidlparser.c: (end_element_handler): Don't leave
-        namespace and implements states too early.
-       Fixes #351264
-
-2007-11-26  Johan Dahlin  <johan@gnome.org>
-
-       * src/gmetadata.c (validate_struct_blob):
-       pass blob_type to validate_function_blob instead of
-       hard-coding BLOB_TYPE_STRUCT.
-
-       Patch by Torsten Schoenfeld, fixes #314190
-
-2006-10-03  Torsten Schoenfeld  <tsch@cvs.gnome.org>
-
-       * src/compiler.c, src/generate.c, src/gidlnode.c,
-       src/gidlparser.c, src/ginfo.c, src/girepository.c,
-       tests/invoke/invoke.c, test/invoke/testfns.c: Hush compiler
-       warnings about return values, signedness mismatches, unused
-       variables, and unhandles enum values in switch statements.
-
-       * tests/invoke/Makefile.am: Don't install the invoke test program.
-       Add -I ../../src to the cflags used for the test functions files.
-
-2005-08-31  Torsten Schoenfeld  <tsch@cvs.gnome.org>
-
-       * src/girepository.h: Export g_invoke_error_quark.
-
-2005-08-31  Torsten Schoenfeld  <tsch@cvs.gnome.org>
-
-       * src/ginvoke.c: Remove the fallback implementation of
-       g_function_info_invoke since we now formally depend on libffi.
-
-2005-07-25  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/Makefile, tests/Makefile, tests/invoke/Makefile:
-       Remove these files from cvs, as they are now generated.
-
-       * src/gmetadata.c (validate_iface_type_blob): Don't
-       complain if blob->pointer is not set, since that
-       happens for enum and flag types.  (#308935, Gustavo
-       Carneiro)
-
-       * Commit an autoconf-conversion patch by
-       Gustavo Carneiro (#308708)
-
-2005-05-24  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/compiler.c (main): Use it here to validate
-       the generated metadata.
-
-       * src/gmetadata.[hc]: Add code to validate a
-       metadata blob.
-
-       * metadata-format.txt: Updates
-
-2005-05-22  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/*: Add struct offsets to field and vfunc
-       elements.
-
-       * src/generate.c (write_vfunc_info): Write offset
-       information for vfuncs.
-
-       * src/gidlnode.c (g_idl_node_build_metadata): Write
-       the struct offsets into the metadata.
-
-       * src/gidlparser.c: Parse the offset attributes of
-       field and vfunc elements.
-
-       * src/gidlnode.h: Add offset members to field and
-       vfunc nodes.
-
-2005-05-21  Matthias Clasen  <mclasen@redhat.com>
-
-       * TODO: Updates.
-
-       * gidl.dtd: Updates.
-
-       * src/g-idl-offsets.pl: A perl script which reads a .gidl
-       file, creates, compiles and runs a C file, and folds the
-       resulting struct offsets back into the .gidl file.
-
-2005-05-20  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/gidlparser.c (start_field): Make fields in objects
-       work.
-
-       * src/gidlmodule.c: Include string.h
-
-       * TODO: Updates.
-       :
-
-       * metadata-format.txt: Cleanup basic types.
-       * src/*: Adapt to the changes.
-       * tests/*: Adapt to the changes.
-       * examples/gdk-pixbuf.gidl: Adapt to the changes.
-
-       * src/gidlnode.c (g_idl_node_get_size): Report the correct
-       size for enum blobs.
-       (g_idl_node_get_full_size): Report the correct size for
-       function blobs.
-
-       * src/gidlmodule.c (g_idl_module_build_metadata): Add some
-       error checking for blob sizes.
-
-2005-05-19  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/gidlnode.c (g_idl_node_build_metadata): Correctly handle
-       interface types for which is_pointer is FALSE, e.g. enums.
-
-       * src/gidlnode.c (g_idl_node_get_full_size)
-       * src/gidlparser.c (parse_type_internal):
-       * src/generate.c (write_type_info): Support unspecialized
-       lists, hashtables and errors. Also emit a '*' after these.
-
-       * TODO: Updates
-
-2005-05-17  Matthias Clasen  <mclasen@redhat.com>
-
-       * TODO: Updates
-
-       * metadata-format.txt: Cleanups by Maciej Katafiasz.
-
-2005-05-15  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/*.c: Change the directory to be addressed by
-       1-based indexes, and use an index of zero to mean
-       'no object'.
-
-2005-05-15  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/roundtrips.sh (SIMPLE_TESTS): Add union.test.
-
-       * tests/union.test: Add a union test.
-
-       * src/generate.c: Handle unions.
-
-       * src/girepository.h:
-       * src/ginfo.c: Add GIUnionInfo and functions to access it.
-
-       * src/gidlnode.c: Handle GIdlNodeUnion nodes.
-
-       * src/gidlparser.c (start_union): Parse <union> elements.
-
-       * src/gidlnode.h: Add a GIdlNodeUnion.
-
-       * gidl.dtd: Add a <union> element.
-
-       * src/gmetadata.c (g_metadata_check_sanity): Check
-       union_blob_size.
-
-       * src/gmetadata.h: Add union_blob_size to Header,
-       add a UnionBlob.
-
-       * metadata-format.txt: Add a UnionBlob.
-
-2005-05-13  Matthias Clasen  <mclasen@redhat.com>
-
-       * tests/*: Update testcases.
-
-       * src/generate.c (write_callable_info): Don't forget to
-       write transfer and null-ok attributes for return types
-       and parameters.
-
-       * src/girepository.h:
-       * src/ginfo.c (g_callable_info_may_return_null):
-       New function to find out if a function may return NULL.
-
-       * src/compiler.c (format_output): Make the generated
-       C code compile.
-
-       * README: Point to a recent libffi snapshot.
-
-       * tests/invoke/*: Some invoke tests.
-
-       * src/Makefile: Add ginvoke.c and the necessary
-       libffi information.
-
-       * src/girepository.h (g_function_info_invoke): Add
-       a GError argument.
-
-       * src/ginvoke.c (g_function_info_invoke): Initial
-       implementation of invoke functionality based on libffi.
-
-       * src/gidlnode.c (g_idl_node_build_metadata): Pass the
-       strings and types hash tables in the right order when
-       recursing.
-       (find_entry_node): Free the name parts.
-
-2005-05-12  Johan Dahlin  <johan@gnome.org>
-
-       * src/generate.c: Generate consistent end tags.
-
-       * tests/*: Update
-
-2005-05-12  Matthias Clasen  <mclasen@redhat.com>
-
-       * TODO: Updates
-
-       * src/gidlparser.c (start_function): Actually add
-       methods to objects.  (Steven Walter)
-
-       * src/girepository.h:
-       * src/ginfo.c: Rename Transfer and Direction to
-       GITransfer and GIDirection. (Torsten Schoenfeld)
-
-       * tests/*: Make tests work with the changes in name
-       handling.
-
-       * src/gidlnode.c (find_entry_node): Parse qualified
-       names and generate xref nodes for them if needed. Don't
-       require all modules to be loaded any more.
-
-       * src/gidlmodule.c (g_idl_module_build_metadata): Choke
-       on '.' in names.
-
-       * src/ginfo.c (g_object_info_get_parent): Return NULL
-       if blob->parent is 0. Still need to make sure index
-       0 is not used.
-
-       * src/generate.c: Generate qualified names when
-       referring to non-local types. Emit transfer attribute
-       for return types.
-
-       * src/compiler.c (format_output): Put the function
-       attributes where gcc accepts them.
-
-2005-05-11  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/compiler.c (main): Add a --verbose cmdline option
-       and only log messages if it is specified.
-
-       * src/gidlnode.h:
-       * src/gidlnode.c (init_stats, dump_stats): Collect some
-       statistics on string and type sharing.
-
-       * src/gidlmodule.c (g_idl_module_build_metadata): Use
-       g_message() instead of fprintf().
-
-       * src/gidlnode.c (g_idl_node_free): Make this more robust.
-       (g_idl_node_get_size): Implement for structs.
-       (g_idl_node_get_full_size): Handle parent being NULL.
-       (serialize_type): Handle lookup failures more gracefully.
-
-2005-05-10  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/gidlnode.c (g_idl_node_get_full_size): Correct the
-       size calculation for 2-parameter types and for objects.
-
-       * src/compiler.c: Add a cmdline option for debug output
-       and install a log handler to implement it.
-       * src/gidlnode.c: Add some debug spew.
-
-       * TODO: Updates
-
-       * src/gidlmodule.c (g_idl_module_build_metadata): Don't
-       forget to count the module name when calculating the
-       required size for the metadata.
-
-       * src/gidlnode.c:
-       * src/gidlparser.c: Fix compiler warnings.
-
-2005-05-09  Matthias Clasen  <mclasen@redhat.com>
-
-       * src/compiler.c (main): Free the option context.
-
-       * gidl.dtd: Clean up handling of names. All elements
-       have a "name", only the elements corresponding to
-       actual callable functions (function, method, constructor),
-       have an additional "symbol" attribute holding the
-       dlsym()-able function name.
-
-       * src/generate.c: Adapt to generate xml matching the
-       new dtd.
-
-       * src/gidlparser.c:
-       * src/gidlnode.c: Adapt to parse the new dtd.
-
-       * tests/*.test: Adjust to the new dtd.
-
-       * metadata-format.txt:
-       * src/gmetadata.h: Remove the short_name field
-       from the ValueBlob.
-       * src/gmetadata.c: Shrink size of ValueBlob to 12.
-       * src/girepository.h:
-       * src/ginfo.c (g_value_info_get_short_name): Removed
-
-2005-05-09  Matthias Clasen  <mclasen@redhat.com>
-
-       * gidl.dtd: Allow constructors for boxed types,
-       patch by Jonathan Blandford.
-
-
-2005-05-09  Matthias Clasen  <mclasen@redhat.com>
-
-       * --- Initial import ---