Giovanni Campagna [Wed, 1 Jun 2011 14:59:17 +0000 (16:59 +0200)]
Always add a zero-terminated attribute when it cannot be implied
g-ir-compiler assumes that an array is zero terminated when the
attribute is absent and there is no other attribute (length and
fixed-size), but g-ir-scanner only added the attribute when it is 0.
This means that an explicit zero-terminated=1 annotation would have
had no effect.
Fix that and at the same time ensure that all other arrays are not
zero-terminated by default.
https://bugzilla.gnome.org/show_bug.cgi?id=646635
Giovanni Campagna [Fri, 3 Jun 2011 23:10:42 +0000 (19:10 -0400)]
Add boxed types definition for GLib
Use the new glib-boxed.h header from gobject to pair structure
definitions with boxed types in the GLib namespace, improving the
introspection coverage and removing some hacks.
Some fixes from Colin Walters <walters@verbum.org>
https://bugzilla.gnome.org/show_bug.cgi?id=646635
Colin Walters [Fri, 3 Jun 2011 21:32:15 +0000 (17:32 -0400)]
scanner: Support _get_gtype() as a GType creation suffix
Based on a patch by Giovanni Campagna <gcampagna@src.gnome.org>
https://bugzilla.gnome.org/show_bug.cgi?id=646635
Colin Walters [Fri, 3 Jun 2011 20:52:50 +0000 (16:52 -0400)]
Colin Walters [Wed, 1 Jun 2011 22:29:35 +0000 (18:29 -0400)]
scanner: Parse GNUC expression statements
This is needed so we don't fail to parse gatomic.h from GLib.
https://bugzilla.gnome.org/show_bug.cgi?id=651548
Giovanni Campagna [Wed, 25 May 2011 18:32:33 +0000 (20:32 +0200)]
Regress: fix GVariant tests
Functions that return floating GVariants must be marked (transfer
none).
https://bugzilla.gnome.org/show_bug.cgi?id=622344
Colin Walters [Wed, 25 May 2011 15:47:38 +0000 (11:47 -0400)]
Regress: Add GVariant tests
Colin Walters [Mon, 23 May 2011 13:59:02 +0000 (09:59 -0400)]
gifieldinfo.c: Quiet some compiler warnings
John Ralls [Thu, 19 May 2011 18:27:18 +0000 (11:27 -0700)]
Bug 650622: Wrong suffix for CAIRO_SHARED_LIBRARY on OSX
David Zeuthen [Sat, 14 May 2011 00:40:17 +0000 (20:40 -0400)]
Add more coverage for recently added (skip) regress additions
Whilst doing the gjs patch, it turned out this was needed in order to
do a robust test suite - we really want to cover all bases here.
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Fri, 13 May 2011 22:24:50 +0000 (18:24 -0400)]
Move recently added (skip) tests to the regress module
Signed-off-by: David Zeuthen <davidz@redhat.com>
Colin Walters [Fri, 13 May 2011 18:23:05 +0000 (14:23 -0400)]
Add Since: for g_arg_info_is_skip()
Colin Walters [Fri, 13 May 2011 18:06:32 +0000 (14:06 -0400)]
Bump version to 1.29.0
This explicitly matches the GLib we're paired with, which is important
because the annotations need to be in sync.
However, we use a "1" major to show we're still not 100% stable.
David Zeuthen [Fri, 13 May 2011 16:20:05 +0000 (12:20 -0400)]
Add support for the (skip) annotation on parameters or return values
This was discussed in bug 649657.
https://bugzilla.gnome.org/show_bug.cgi?id=649657
Signed-off-by: David Zeuthen <davidz@redhat.com>
Giovanni Campagna [Thu, 12 May 2011 20:47:48 +0000 (22:47 +0200)]
Add tests for returning zero-terminated arrays of non-strings
gjs has always supported zero-terminated arrays of strings, and
nothing else. Now that this changed, we need to test it.
https://bugzilla.gnome.org/show_bug.cgi?id=634253
Giovanni Campagna [Sun, 3 Apr 2011 21:13:09 +0000 (23:13 +0200)]
GScannerParser: recognize character constants
Some enumerations (like GVariantClass) use characters instead of
plain integers, so we need to recognize them.
https://bugzilla.gnome.org/show_bug.cgi?id=646635
Giovanni Campagna [Thu, 21 Apr 2011 20:24:11 +0000 (22:24 +0200)]
giscanner: read (array) and (element-type) annotations for fields
This way fields are no longer limited to basic types, and can be
supported without accessor methods.
https://bugzilla.gnome.org/show_bug.cgi?id=646635
Dan Winship [Thu, 5 May 2011 19:24:59 +0000 (15:24 -0400)]
gio-2.0.c: copy in two annotations from glib
Colin Walters [Thu, 5 May 2011 19:02:49 +0000 (15:02 -0400)]
Update expected gir for previous change
Colin Walters [Wed, 4 May 2011 19:41:53 +0000 (15:41 -0400)]
Add test function regress_test_struct_fixed_array_frob
Maxim Ermilov [Thu, 17 Feb 2011 20:27:09 +0000 (23:27 +0300)]
g_field_info_get_field: return correct pointer for C array
Also add a test case.
https://bugzilla.gnome.org/show_bug.cgi?id=640468
Colin Walters [Mon, 2 May 2011 16:25:10 +0000 (12:25 -0400)]
Add GI_SCANNER_DISABLE_CACHE environment variable
https://bugzilla.gnome.org/show_bug.cgi?id=649054
Colin Walters [Mon, 18 Apr 2011 16:54:38 +0000 (12:54 -0400)]
gimarshallingtests: Remove incorrect cast
Sebastian Pölsterl [Thu, 14 Apr 2011 17:12:42 +0000 (19:12 +0200)]
glib-2.0.c: Added annotation for g_variant_new_variant to mark it as constructor
https://bugzilla.gnome.org/show_bug.cgi?id=647796
Alan Knowles [Fri, 15 Apr 2011 04:38:09 +0000 (12:38 +0800)]
fix #647621 - g_spawn_async_with_pipes annotation corrections
Colin Walters [Fri, 1 Apr 2011 14:56:23 +0000 (10:56 -0400)]
Makefile: Fix release scripts to point to gnome.org
This is where install-module lives now.
Colin Walters [Wed, 30 Mar 2011 20:41:41 +0000 (16:41 -0400)]
configure: Post-release version bump
Colin Walters [Wed, 30 Mar 2011 20:41:09 +0000 (16:41 -0400)]
Makefile: Make release targets depend on Makefile
So they get updated when configure changes.
Joe Shaw [Thu, 31 Mar 2011 14:58:05 +0000 (10:58 -0400)]
glib-2.0.c: add annotations for g_base64_encode and g_base64_decode
Martin Pitt [Wed, 30 Mar 2011 17:56:48 +0000 (19:56 +0200)]
Regenerate gio-2.0.c from glib/master
Colin Walters [Wed, 30 Mar 2011 17:00:08 +0000 (13:00 -0400)]
gio-2.0.c: Update from GLib git as of
92977a221760eb
Serkan Kaba [Sun, 20 Mar 2011 01:00:22 +0000 (03:00 +0200)]
girparser: use c:identifier-prefixes instead of c:prefix
This bug was introduced with
http://git.gnome.org/browse/gobject-introspection/commit/?id=
36aa515f1036978ced8d4ffb808260844f7229e0
due to rename of c:prefix to c:identifier-prefixes.
https://bugzilla.gnome.org/show_bug.cgi?id=640264
Owen W. Taylor [Sat, 26 Mar 2011 00:43:34 +0000 (20:43 -0400)]
configure: Post-release version bump
Owen W. Taylor [Fri, 25 Mar 2011 23:36:36 +0000 (19:36 -0400)]
Fix generation of cairo typelib
By separating out cairo-1.0.gir from gir_DATA, we lost the generation
of the cairo typelib. So instead add cairo-1.0.gir to a new
SUBSTITUTED_GIRSOURCES and include that in gir_DATA.
Fix the rule for generating cairo-1.0.gir for srcdir != builddir.
https://bugzilla.gnome.org/show_bug.cgi?id=645692
Colin Walters [Fri, 25 Mar 2011 22:11:27 +0000 (18:11 -0400)]
configure: Post-release version bump
Colin Walters [Fri, 25 Mar 2011 22:09:36 +0000 (18:09 -0400)]
Makefile-gir: Fix EXTRA_DIST
Colin Walters [Fri, 25 Mar 2011 22:07:06 +0000 (18:07 -0400)]
Don't dist gir/cairo-1.0.gir, it's generated
We should not be disting it, because it contains values derived
from configure. Extract it out of STATIC_GIRSOURCES, and also
move it to a Makefile rule rather than AC_SUBST as it should be
so it gets cleaned properly.
John (J5) Palmieri [Wed, 16 Mar 2011 21:31:47 +0000 (17:31 -0400)]
[tests] add a gclosure_return method to test passing GClosures between methods
John (J5) Palmieri [Mon, 14 Mar 2011 18:18:22 +0000 (14:18 -0400)]
support setting gobjects and ginterfaces in struct fields
https://bugzilla.gnome.org/show_bug.cgi?id=644749
Colin Walters [Thu, 10 Mar 2011 19:47:30 +0000 (14:47 -0500)]
Makefile: Rework release tools
Separate "preparing" a release locally from actually uploading it,
and automate bumping the version in configure.ac.
Colin Walters [Thu, 10 Mar 2011 19:42:56 +0000 (14:42 -0500)]
configure: Post-release version bump
Colin Walters [Wed, 9 Mar 2011 18:01:54 +0000 (13:01 -0500)]
cairo-1.0.gir: Use fully qualified shared library
The .so link is for development, we need to reference the full
soname; otherwise things will break without "cairo-devel"
installed.
Colin Walters [Wed, 23 Feb 2011 15:38:53 +0000 (10:38 -0500)]
configure: Post release version bump
Laszlo Pandy [Tue, 22 Feb 2011 15:02:12 +0000 (16:02 +0100)]
Add "c:identifier" attribute to GIrNodeValue (for flags and enum values).
Flags and enums with a GType have a value_nick and value_name
strings available in the class struct. But for flags and enums
without GType, we need to get this information from introspection.
g_base_info_get_name() gives the string for value_nick. In the GIR,
the attribute "c:identifier" is the string neede for value_name.
This patch adds the "c:identifier" from GIR to the typelib for all
flags and enum values. It can be retireved using
g_base_info_get_attribute(info, "c:identifier").
https://bugzilla.gnome.org/show_bug.cgi?id=642757
Laszlo Pandy [Wed, 23 Feb 2011 12:37:09 +0000 (13:37 +0100)]
Add GIMarshalllingTests function with in parameter as well as GError.
This allows bindings to test the ability to clean up (in)
parameters after a GError is set by the wrapped function.
Laszlo Pandy [Wed, 23 Feb 2011 10:34:13 +0000 (11:34 +0100)]
Add mask flags to GIMarshallingTests to test for flags with the same value.
Glib uses flag aliases, multiple flag names with the same int
value. For example G_IO_FLAG_MASK and G_IO_FLAG_GET_MASK. We need
these flag values to test that gi bindings don't assume that all
flags have the same value.
Tomeu Vizoso [Fri, 4 Feb 2011 12:16:20 +0000 (13:16 +0100)]
Add warnings for the (constructor) annotation
https://bugzilla.gnome.org/show_bug.cgi?id=641347
Tomeu Vizoso [Tue, 22 Feb 2011 16:11:45 +0000 (17:11 +0100)]
Update exact wording of warning in test
Tomeu Vizoso [Fri, 4 Feb 2011 10:33:26 +0000 (11:33 +0100)]
Add warnings for the (method) annotation
https://bugzilla.gnome.org/show_bug.cgi?id=641347
Laszlo Pandy [Tue, 22 Feb 2011 11:15:49 +0000 (12:15 +0100)]
Add non GType flags to GIMarshallingTests.
Giovanni Campagna [Fri, 18 Feb 2011 17:14:25 +0000 (18:14 +0100)]
GIrNode: fix lookup of cached type nodes
Different types of array have different type nodes, so they should
produce different keys in the cache of already seen type nodes, to
avoid turning a GByteArray into a reference to a GPtrArray.
https://bugzilla.gnome.org/show_bug.cgi?id=642300
Laszlo Pandy [Thu, 17 Feb 2011 23:11:30 +0000 (00:11 +0100)]
[tests] Add GIMarshallingTests function for multiple in and multiple out args.
Laszlo Pandy [Thu, 17 Feb 2011 17:01:31 +0000 (18:01 +0100)]
Fix argument name of MISSING_ATTRIBUTE macro ('ctx' => 'context').
The argument was called 'ctx' but the macro was using 'context'.
This wasn't causing the build to fail because the variable
'context' was already defined in all the scopes where this macro
was used.
Simon van der Linden [Fri, 11 Feb 2011 20:43:51 +0000 (21:43 +0100)]
Include cairo.h instead of cairo/cairo.h
The cairo/ directory is searched for header files anyway.
Jonathan Matthew [Sun, 6 Feb 2011 04:48:58 +0000 (14:48 +1000)]
Account for arg direction in g_callable_info_get_ffi_arg_types
https://bugzilla.gnome.org/show_bug.cgi?id=641647
Colin Walters [Mon, 7 Feb 2011 19:53:46 +0000 (14:53 -0500)]
Post release version bump
Colin Walters [Thu, 3 Feb 2011 19:35:32 +0000 (14:35 -0500)]
scanner: Don't fail on mkdir if cachedir already exists
Hit this race in practice with two g-ir-scanner invocations
in Fedora's koji.
Tomeu Vizoso [Fri, 21 Jan 2011 17:07:45 +0000 (18:07 +0100)]
Add (method) overrides
So methods such as gtk_drag_dest_set() can be put inside Gtk.Widget
https://bugzilla.gnome.org/show_bug.cgi?id=639945
Johan Dahlin [Tue, 1 Feb 2011 18:20:44 +0000 (16:20 -0200)]
Update gobject/gio syntax
Now fetches all sections correctly, with updated glib code base
and an updated annotation tool.
Johan Dahlin [Tue, 1 Feb 2011 18:14:00 +0000 (16:14 -0200)]
Preserve gtk-doc section names
Preserve the section names and write them out on the class/record/
interface.
Johan Dahlin [Tue, 1 Feb 2011 18:13:52 +0000 (16:13 -0200)]
Sort gio/gobject annotations
Johan Dahlin [Tue, 1 Feb 2011 18:13:08 +0000 (16:13 -0200)]
Sort output
Johan Dahlin [Tue, 1 Feb 2011 15:20:19 +0000 (13:20 -0200)]
Add missing spaces
Tomeu Vizoso [Fri, 21 Jan 2011 16:32:51 +0000 (17:32 +0100)]
Add (constructor) annotation
https://bugzilla.gnome.org/show_bug.cgi?id=561264
Tomeu Vizoso [Fri, 21 Jan 2011 14:32:52 +0000 (15:32 +0100)]
[scanner] Don't crash if we don't have a ctype in array element types
Tomeu Vizoso [Wed, 19 Jan 2011 15:48:47 +0000 (16:48 +0100)]
Pass shared-library as-is to g_module_open
Because it already has the lib prefix and the .so postfix
https://bugzilla.gnome.org/show_bug.cgi?id=639961
Tomeu Vizoso [Thu, 20 Jan 2011 15:34:45 +0000 (16:34 +0100)]
Preserve the c:type of array elements
So the element type has the correct is_pointer flag
https://bugzilla.gnome.org/show_bug.cgi?id=638929
Johan Dahlin [Thu, 20 Jan 2011 15:52:48 +0000 (13:52 -0200)]
Disable missing class structure warning, add a bug reference
Johan Dahlin [Wed, 19 Jan 2011 13:04:24 +0000 (11:04 -0200)]
ast: cleanup clone() methods
Tomeu Vizoso [Wed, 19 Jan 2011 11:43:13 +0000 (12:43 +0100)]
Depend on cairo-gobject if available
And set library-name and package accordingly in the cairo .gir
https://bugzilla.gnome.org/show_bug.cgi?id=639831
Tomeu Vizoso [Thu, 20 Jan 2011 14:54:41 +0000 (15:54 +0100)]
Add GIMarshallingTests.Interface2
so we can test conflicts when two bases have a vfunc with the
same name.
Pavel Holejsovsky [Thu, 20 Jan 2011 14:07:51 +0000 (15:07 +0100)]
Regenerate gio-2.0.c from glib/master
Tomeu Vizoso [Wed, 19 Jan 2011 18:09:25 +0000 (19:09 +0100)]
Initialize GIMarshallingTestsBoxedStruct so we can test its values
Laszlo Pandy [Wed, 19 Jan 2011 16:31:16 +0000 (17:31 +0100)]
Add GIMarshallingTests function which sets a GError, to test exception handling in bindings.
https://bugzilla.gnome.org/show_bug.cgi?id=639834
Ignacio Casal Quinteiro [Wed, 19 Jan 2011 11:07:49 +0000 (12:07 +0100)]
[tests] add tests for guint8 arrays
* guint8 can be interpreted as array characters that can be memcpyied
during marshalling so add a test to check if we are correctly handling
this codepath
Laszlo Pandy [Mon, 17 Jan 2011 14:09:45 +0000 (15:09 +0100)]
Add a second enum to GIMarshallingTests to support pygi tests for non-gtype enums.
There was a bug in pygi in which non-gtype enums shared values between themselves.
That is, if there was an attribute Enum.THE_VALUE, it would be available on as OtherEnum.THE_VALUE as well.
To make a test case for this bug, we need a second non-gtype enum in GIMarshallingTests to compare with.
Mikkel Kamstrup Erlandsen [Fri, 7 Jan 2011 15:05:07 +0000 (16:05 +0100)]
test: gi_marshalling_tests_array_gvariant_in
A new test to expose a bug in pygobject
https://bugzilla.gnome.org/show_bug.cgi?id=638915
Pavel Holejsovsky [Sun, 9 Jan 2011 15:12:46 +0000 (16:12 +0100)]
Make caller-allocates detection work for struct aliases
Scanner tries to detect caller-allocates attribute automatically if
not explicitly specified by checking that parameter is not double-referenced
and is struct or union. This patch adds resolving of aliases when
checking whether parameter is struct or union.
Also removes old incorrect method transformer.follow_aliases, which
was never used in current code.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=639081
Pavel Holejsovsky [Tue, 14 Dec 2010 15:28:01 +0000 (16:28 +0100)]
Add support for g[u]intptr in scanner and girwriter.
https://bugzilla.gnome.org/show_bug.cgi?id=634838
Colin Walters [Wed, 12 Jan 2011 20:12:33 +0000 (15:12 -0500)]
Post-release version bump
Tomeu Vizoso [Mon, 13 Dec 2010 12:53:55 +0000 (13:53 +0100)]
Add g_vfunc_info_invoke and g_vfunc_info_get_address
for calling the native implementation of a virtual function. Refactors
the code common with g_function_info_invoke in _g_callable_info_invoke.
https://bugzilla.gnome.org/show_bug.cgi?id=637145
Colin Walters [Tue, 11 Jan 2011 15:59:44 +0000 (10:59 -0500)]
tests: Update expected girs for --c-include
Colin Walters [Tue, 11 Jan 2011 15:46:12 +0000 (10:46 -0500)]
Revert "scanner: Stop predeclaring the functions that are to be scanned"
This reverts commit
88553b4cd6776b7eff9a3b1d63eb8e49be0bd8f2.
Colin Walters [Tue, 11 Jan 2011 15:46:01 +0000 (10:46 -0500)]
Revert "scanner: Include all headers when building the dumper binary"
This reverts commit
bedd7dd61508684b78bd1e95fed8025d48661b48.
Benjamin Otte [Tue, 11 Jan 2011 14:25:47 +0000 (15:25 +0100)]
tests: Fix build by including correct headers with --c-include
Benjamin Otte [Tue, 11 Jan 2011 13:26:29 +0000 (14:26 +0100)]
scanner: Rename g_irepository_dump when included from the dumper
This avoids a naming conflict when compiling GiRepository.gir, where
g_irepository_dump() was defined in an included header.
Benjamin Otte [Tue, 11 Jan 2011 13:02:58 +0000 (14:02 +0100)]
gir: Fix build of Gio-2.0.gir
- include gio-unix headers properly into Gio gir
- don't include gsettingsbackend.h
Benjamin Otte [Mon, 10 Jan 2011 17:53:55 +0000 (18:53 +0100)]
scanner: Stop predeclaring the functions that are to be scanned
Instead, rely on the c_includes. See the previous commit for details.
Benjamin Otte [Mon, 10 Jan 2011 17:48:23 +0000 (18:48 +0100)]
scanner: Include all headers when building the dumper binary
This avoids warnings about undefined functions when using init sections
and it removes the requirement to predeclare the get_type functions that
should be called. For an example for this problem with GStreamer, see
https://bugzilla.gnome.org/show_bug.cgi?id=639039
We can now also use gcc's error checking to ensure that users
- specify the correct C includes in the gir file (because otherwise we
get errors when compiling the dumper).
- the types do actually exist (because again, the compiler will
complain).
Benjamin Otte [Mon, 10 Jan 2011 17:15:03 +0000 (18:15 +0100)]
scanner: Use packages from --pkg
Use pkgconfig files from --pkg when compiling the dump binary.
This helps avoiding linker errors when init sections are provided that
use code from those packages.
https://bugzilla.gnome.org/show_bug.cgi?id=639039
Tomeu Vizoso [Fri, 7 Jan 2011 16:15:52 +0000 (17:15 +0100)]
scanner: Make sure that vfuncs made to the GIR
* don't skip those associated to a signal
* don't warn if it doesn't have an invoker
https://bugzilla.gnome.org/show_bug.cgi?id=637215
Colin Walters [Wed, 5 Jan 2011 21:32:44 +0000 (16:32 -0500)]
scanner: Fix handling of property transfer
* gdumpparser.py was incorrectly passing the ctype for transfer
* Property constructor wasn't actually doing anything with passed transfer
* Parse transfer-ownership in girparser
Colin Walters [Wed, 5 Jan 2011 20:56:01 +0000 (15:56 -0500)]
scanner: Properly parse recursive list type nodes
Previously we were just looking for <type> inside a GLib.List,
but it may be <array>.
See bug 637262 for code that triggered this.
Pavel Holejsovsky [Wed, 5 Jan 2011 19:23:49 +0000 (20:23 +0100)]
Regenerate gio-2.0.c
Pavel Holejsovsky [Wed, 29 Dec 2010 15:23:12 +0000 (16:23 +0100)]
Regenerate gio-2.0.c and gobject-2.0.c from current glib HEAD
Kristian Rietveld [Tue, 28 Dec 2010 09:41:16 +0000 (10:41 +0100)]
Avoid using namespace as identifier in public header files
Owen W. Taylor [Wed, 22 Dec 2010 20:53:25 +0000 (15:53 -0500)]
Post-release version bump
Owen W. Taylor [Wed, 22 Dec 2010 20:42:41 +0000 (15:42 -0500)]
Fix srcdir != builddir problems for test cases
Owen W. Taylor [Wed, 22 Dec 2010 20:40:53 +0000 (15:40 -0500)]
Fix error handling when writing out typelib
Return a non-zero result when opening the output file fails and
don't use g_error() for other failures when writing out the file,
since such errors should not produce a core dump.
Pavel Holejsovsky [Tue, 21 Dec 2010 17:22:52 +0000 (18:22 +0100)]
Regenerate gir/gio-2.0.c