Will Thompson [Mon, 27 Feb 2012 17:52:30 +0000 (17:52 +0000)]
annotationparser: correct "maximium" in error messages
"Maximium" is not an English word. Even if corrected to "maximum" (which
is), "at maximum" is not conventional usage: "at most" is more
idiomatic.
https://bugzilla.gnome.org/show_bug.cgi?id=670985
Will Thompson [Mon, 27 Feb 2012 17:37:35 +0000 (17:37 +0000)]
annotationparser: remove duplication of annotation names
Previously, the validation code compared each option name to a constant
(such as OPT_ALLOW_NONE) which expands to the string used in a source
file, and if they matched it would typically pass that same string to
_validate_option(). But the annotation name was written out longhand
each time, which seemed strange to me.
https://bugzilla.gnome.org/show_bug.cgi?id=670985
Jasper St. Pierre [Tue, 27 Mar 2012 16:18:54 +0000 (13:18 -0300)]
giscanner: Don't run pkg-config when there's no packages specified
This prevents a simple error from pkg-config, "Must specify package names
on command line"
https://bugzilla.gnome.org/show_bug.cgi?id=673668
Pavel Holejsovsky [Sat, 31 Mar 2012 17:12:48 +0000 (19:12 +0200)]
Avoid _get_func() consuming reference from input info
Fix of leak in
4c9424e18d71237f438a99bc5f2d45ae7de60b78 was a bit
overaggressive, stealing also one reference from input 'info'
argument.
Also fixes another bug in that commit - local 'func' shadowing the
return value, causing that function always returned NULL even when
some result was actually found.
https://bugzilla.gnome.org/show_bug.cgi?id=673282
Dieter Verfaillie [Thu, 5 Apr 2012 21:15:31 +0000 (23:15 +0200)]
Split parameter and tag storage in annotationparser parse tree
This avoids tags overwriting parameters if they happen to
share the same name. For example, this was triggered by
valid code in libgnome-keyring.
tests/scanner/regress.c and tests/scanner/regress.h test
written by Colin Walters <walters@verbum.org>.
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Johan Dahlin [Thu, 5 Apr 2012 17:24:33 +0000 (14:24 -0300)]
Don't extract annotations from headers
The headers are already parsed as they are passed
in to g-ir-scanner. This avoids quite a few warnings triggered
with the new annotation parser.
Johan Dahlin [Thu, 5 Apr 2012 17:26:18 +0000 (14:26 -0300)]
Update annotations from git.
This removes also all the headers as it's the first run
with the updated extraction tool.
Johan Dahlin [Thu, 5 Apr 2012 17:12:11 +0000 (14:12 -0300)]
Do the filename filtering in scannerlexer
This avoids a bit of python work and reduces the
amount of allocations.
Johan Dahlin [Thu, 5 Apr 2012 14:23:13 +0000 (11:23 -0300)]
Don't parse doc comments in dependencies
Only parse doc comments for the files we pass in
on the command line to g-ir-scanner, not the included dependencies.
Johan Dahlin [Thu, 5 Apr 2012 13:43:42 +0000 (10:43 -0300)]
Replace ''' with """, to avoid confusing syntax highlightning in emacs
Dieter Verfaillie [Tue, 3 Apr 2012 05:47:48 +0000 (07:47 +0200)]
Fix malformed GTK-Doc comment blocks:
- add missing colons
- invalid annotations
- invalid parameters and tags
- correct parameter name
- preserve description indentation
- no description parts
- comment end marker
- invalid empty lines
- line numbers
AnnotationParser now emits warnings which are considered as
errors by "make check" so fix those warnings...
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Dieter Verfaillie [Tue, 3 Apr 2012 06:08:45 +0000 (08:08 +0200)]
Now make AnnotationParser do what gobject-introspection needs it to do.
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Dieter Verfaillie [Wed, 4 Apr 2012 15:10:40 +0000 (17:10 +0200)]
Update GLib annotations, using the improved annotation parser.
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Dieter Verfaillie [Mon, 2 Apr 2012 15:42:22 +0000 (17:42 +0200)]
update-glib-annotations.py: reduce code duplication
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Dieter Verfaillie [Tue, 3 Apr 2012 05:56:47 +0000 (07:56 +0200)]
Make AnnotationParser._parse_comment() do what gtk-doc does.
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Dieter Verfaillie [Mon, 19 Mar 2012 08:23:22 +0000 (09:23 +0100)]
Don't munch /* and */ comment start and end markers.
In Sandro Sigala's original c-c++-grammars code, this function
was known as "static void skip_comment(void)". It was built this
way instead of a lex pattern because it didn't need to save the
matched comment in the "yytext" buffer. This is still true as
we directly assign the matched comment to the scanner object.
So simply prepend and append the markers back where they belong.
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Dieter Verfaillie [Mon, 19 Mar 2012 08:17:28 +0000 (09:17 +0100)]
Add comment documenting we're ignoring C++ style comments.
https://bugzilla.gnome.org/show_bug.cgi?id=672254
Rico Tzschichholz [Mon, 2 Apr 2012 06:18:02 +0000 (08:18 +0200)]
Update glib annotations from git
Tomeu Vizoso [Tue, 21 Feb 2012 14:28:14 +0000 (15:28 +0100)]
Add tests for vfuncs with callbacks as arguments
https://bugzilla.gnome.org/show_bug.cgi?id=663052
Signed-off-by: Martin Pitt <martinpitt@gnome.org>
Tomeu Vizoso [Sun, 30 Oct 2011 15:31:23 +0000 (16:31 +0100)]
Make g_callable_info_invoke public
So it can be used for invoking callbacks
https://bugzilla.gnome.org/show_bug.cgi?id=663052
Signed-off-by: Martin Pitt <martinpitt@gnome.org>
Alberto Mardegan [Wed, 21 Mar 2012 15:01:31 +0000 (19:01 +0400)]
Add regression tests for GHashTable holding GValue
Add a couple of functions which can be used to test
marshalling/demarshalling of GHashTables having GValue as keys.
This is related to a python-gobject bug:
https://bugzilla.gnome.org/show_bug.cgi?id=668903
Signed-off-by: Martin Pitt <martinpitt@gnome.org>
Colin Walters [Tue, 27 Mar 2012 15:07:42 +0000 (11:07 -0400)]
Release 1.32.0
Colin Walters [Wed, 21 Mar 2012 13:59:03 +0000 (09:59 -0400)]
Release 1.31.22
Rico Tzschichholz [Tue, 20 Mar 2012 18:54:18 +0000 (19:54 +0100)]
Update glib annotations to 2.31.22
Colin Walters [Thu, 15 Mar 2012 15:45:19 +0000 (11:45 -0400)]
configure: Comment why doctool is disabled by default for now
Tomeu Vizoso [Thu, 15 Mar 2012 15:36:39 +0000 (16:36 +0100)]
g-ir-doc-tool: Fix -o option, use abspath instead of dirname
Jesse van den Kieboom [Wed, 11 Jan 2012 15:47:01 +0000 (16:47 +0100)]
scanner: Remove array fields from List.clone()
These were apparently copied by mistake.
https://bugzilla.gnome.org/show_bug.cgi?id=667701
Michel Dänzer [Thu, 8 Mar 2012 12:25:57 +0000 (13:25 +0100)]
repository: Remove extraneous leftover assignment to rvalue.
Signed-off-by: Michel Dänzer <michel@daenzer.net>
https://bugzilla.gnome.org/show_bug.cgi?id=668902
Matthew Booth [Tue, 6 Mar 2012 14:57:01 +0000 (11:57 -0300)]
Fix matching of methods named *_get_type()
The code which heuristically turned functions into class methods would always
ignore any function called *_get_type or *_get_gtype. However, the code which
looked for GI metadata functions to execute them was much more comprehensive,
checking not just the name, but also that it had no parameters and that it
returned a GType.
This change abstracts the more comprehensive check into the Function class, and
uses the same check in both places.
https://bugzilla.gnome.org/show_bug.cgi?id=671218
Colin Walters [Thu, 16 Feb 2012 21:58:59 +0000 (16:58 -0500)]
repository: Add new public gi_type_info_extract_ffi_return_value() API
Dealing with FFI and return values is very tricky; this API allows
sharing the bits to do it between gobject-introspection and gjs (and
potentially other FFI binding consumers).
**NOTE** I swapped the order of the arguments, under the premise that
out arguments should generally be last.
https://bugzilla.gnome.org/show_bug.cgi?id=668902
Michel Dänzer [Thu, 16 Feb 2012 16:25:55 +0000 (11:25 -0500)]
repository: Fix conversion of FFI values on big-endian architectures
Adapted from the fixes for (see bug 665152). It makes sure values are
properly converted between glib and FFI, which is critical for big
endian architectures.
Patch adjusted to use GIArgument instead of custom union types
by Colin Walters <walters@verbum.org>
https://bugzilla.gnome.org/show_bug.cgi?id=668902
Colin Walters [Mon, 5 Mar 2012 14:45:14 +0000 (09:45 -0500)]
Release 2.31.20
Colin Walters [Mon, 5 Mar 2012 14:44:18 +0000 (09:44 -0500)]
Update glib annotations to 2.31.20
Colin Walters [Thu, 23 Feb 2012 16:13:29 +0000 (11:13 -0500)]
introspection.m4: Set enable_introspection to yes/no consistently
Some people want the ability to use it inside their configure scripts.
http://git.gnome.org/browse/totem/commit/?id=
e57d75f555eaad98ec3eee31cf94336ba885174c
Rico Tzschichholz [Wed, 22 Feb 2012 22:41:30 +0000 (23:41 +0100)]
g-ir-doc-tool: Add missing files
Rico Tzschichholz [Tue, 21 Feb 2012 17:45:32 +0000 (18:45 +0100)]
tests: Fix make dist
Tomeu Vizoso [Tue, 21 Feb 2012 17:16:00 +0000 (18:16 +0100)]
g-ir-doc-tool: Remove class structs from Python docs
Tomeu Vizoso [Tue, 21 Feb 2012 17:04:13 +0000 (18:04 +0100)]
g-ir-doc-tool: Add support for virtual functions
Tomeu Vizoso [Tue, 21 Feb 2012 16:17:17 +0000 (17:17 +0100)]
g-ir-doc-tool: Add a method in the tests
Tomeu Vizoso [Tue, 21 Feb 2012 15:54:05 +0000 (16:54 +0100)]
g-ir-doc-tool: Update .gitignore
Tomeu Vizoso [Tue, 21 Feb 2012 15:52:04 +0000 (16:52 +0100)]
g-ir-doc-tool: Remove constructors from python docs
Tomeu Vizoso [Tue, 21 Feb 2012 15:41:21 +0000 (16:41 +0100)]
g-ir-doc-tool: Add class to its own hierarchy tree
Tomeu Vizoso [Tue, 21 Feb 2012 15:36:34 +0000 (16:36 +0100)]
g-ir-doc-tool: Add tests for signals
Tomeu Vizoso [Tue, 21 Feb 2012 15:22:16 +0000 (16:22 +0100)]
g-ir-doc-tool: Add the first argument of signals to the Python docs
Tomeu Vizoso [Tue, 21 Feb 2012 15:17:59 +0000 (16:17 +0100)]
g-ir-doc-tool: Create a GIR file specific for testing doc generation
This will also serve as a reference of the syntax that is currently
supported by g-ir-doc-tool.
Colin Walters [Tue, 21 Feb 2012 15:41:52 +0000 (10:41 -0500)]
build: Add --enable-doctool option
Rico Tzschichholz [Tue, 21 Feb 2012 09:21:25 +0000 (10:21 +0100)]
g-ir-doc-tool: Update expected tests
Rico Tzschichholz [Tue, 21 Feb 2012 09:11:48 +0000 (10:11 +0100)]
Update annotations for GLib 2.31.18
Tomeu Vizoso [Mon, 20 Feb 2012 17:43:01 +0000 (18:43 +0100)]
g-ir-doc-tool: Add enum templates to the Makefile
Tomeu Vizoso [Mon, 20 Feb 2012 17:37:37 +0000 (18:37 +0100)]
g-ir-doc-tool: Add missing file: giscanner/mallard-C-enum.tmpl
Tomeu Vizoso [Mon, 20 Feb 2012 17:37:08 +0000 (18:37 +0100)]
g-ir-doc-tool: Change the -o option to receive a directory
Tomeu Vizoso [Mon, 20 Feb 2012 17:18:04 +0000 (18:18 +0100)]
Merge branch 'mallard-templates'
Tomeu Vizoso [Mon, 20 Feb 2012 17:12:40 +0000 (18:12 +0100)]
g-ir-doc-tool: Update expected tests, some whitespace has been removed
Tomeu Vizoso [Mon, 20 Feb 2012 17:12:23 +0000 (18:12 +0100)]
Mention g-ir-doc-tool in the README
Tomeu Vizoso [Mon, 20 Feb 2012 16:35:08 +0000 (17:35 +0100)]
g-ir-doc-tool: Add some more stuff to Enum pages
Tomeu Vizoso [Mon, 20 Feb 2012 15:57:14 +0000 (16:57 +0100)]
g-ir-doc-tool: Display the hierarchy tree for classes
Tomeu Vizoso [Mon, 20 Feb 2012 14:38:15 +0000 (15:38 +0100)]
g-ir-doc-tool: Install the Mako template files
Tomeu Vizoso [Mon, 20 Feb 2012 14:01:30 +0000 (15:01 +0100)]
g-ir-doc-tool: Add AM_CHECK_PYMOD macro and use it to check for Mako
Tomeu Vizoso [Mon, 20 Feb 2012 13:36:36 +0000 (14:36 +0100)]
g-ir-doc-tool: Remove stale DocBook files
Tomeu Vizoso [Mon, 20 Feb 2012 13:20:22 +0000 (14:20 +0100)]
g-ir-doc-tool: Properly link to property pages
Tomeu Vizoso [Mon, 20 Feb 2012 12:55:37 +0000 (13:55 +0100)]
g-ir-doc-tool: Fix names of xref links
Tomeu Vizoso [Mon, 20 Feb 2012 12:44:00 +0000 (13:44 +0100)]
g-ir-doc-tool: Move constructor example to follow the class doc body
Tomeu Vizoso [Mon, 20 Feb 2012 12:43:30 +0000 (13:43 +0100)]
g-ir-doc-tool: Properly link to signal pages
Tomeu Vizoso [Mon, 20 Feb 2012 12:42:43 +0000 (13:42 +0100)]
g-ir-doc-tool: Fix the id of signal pages for Python
Tomeu Vizoso [Mon, 20 Feb 2012 12:21:40 +0000 (13:21 +0100)]
g-ir-doc-tool: Qualify the class name in the constructor with the module name
Tomeu Vizoso [Mon, 20 Feb 2012 12:16:47 +0000 (13:16 +0100)]
g-ir-doc-tool: Add links to properties in the constructor
Tomeu Vizoso [Mon, 20 Feb 2012 12:16:28 +0000 (13:16 +0100)]
g-ir-doc-tool: Fix link
Tomeu Vizoso [Mon, 20 Feb 2012 11:21:41 +0000 (12:21 +0100)]
g-ir-doc-tool: Show how to construct instances in the Class page
Tomeu Vizoso [Mon, 20 Feb 2012 10:30:21 +0000 (11:30 +0100)]
g-ir-doc-tool: Add details for properties in Python
Tomeu Vizoso [Sun, 19 Feb 2012 16:32:00 +0000 (17:32 +0100)]
g-ir-doc-tool: Add param information to signal pages in Python
Tomeu Vizoso [Sun, 19 Feb 2012 15:35:59 +0000 (16:35 +0100)]
g-ir-doc-tool: Implement intra-namespace cross references
Tomeu Vizoso [Sun, 19 Feb 2012 15:22:23 +0000 (16:22 +0100)]
g-ir-doc-tool: Use instances of MallardFormatter* instead of class methods
Tomeu Vizoso [Sun, 19 Feb 2012 14:33:48 +0000 (15:33 +0100)]
g-ir-doc-tool: Remove some occurrences of empty Returns: lines
Tomeu Vizoso [Sun, 19 Feb 2012 14:27:54 +0000 (15:27 +0100)]
g-ir-doc-tool: use True and False instead of %TRUE and %FALSE
Tomeu Vizoso [Sun, 19 Feb 2012 13:56:03 +0000 (14:56 +0100)]
g-ir-doc-tool: Remove module and class from the function signature
Tomeu Vizoso [Sun, 19 Feb 2012 13:55:14 +0000 (14:55 +0100)]
g-ir-doctool: Use template caching
Tomeu Vizoso [Sun, 19 Feb 2012 10:47:01 +0000 (11:47 +0100)]
g-ir-doc-tool: Use None instead of %NULL
Tomeu Vizoso [Sun, 19 Feb 2012 10:08:40 +0000 (11:08 +0100)]
g-ir-doc-tool: Use the ctype for the return type in signatures
Tomeu Vizoso [Sun, 19 Feb 2012 10:06:35 +0000 (11:06 +0100)]
g-ir-doc-tool: Display Returns: even if there's no args
Tomeu Vizoso [Sat, 18 Feb 2012 16:02:22 +0000 (17:02 +0100)]
g-ir-doc-tool: Update expected, some whitespace was removed
Tomeu Vizoso [Sat, 18 Feb 2012 16:00:51 +0000 (17:00 +0100)]
g-ir-doc-tool: Add Since: tag to classes
Tomeu Vizoso [Sat, 18 Feb 2012 11:17:43 +0000 (12:17 +0100)]
g-ir-doc-tool: Add Since: tag to mallard docs
Tomeu Vizoso [Sat, 18 Feb 2012 11:08:41 +0000 (12:08 +0100)]
g-ir-doctool: Add function argument docs to the C template
Tomeu Vizoso [Sat, 18 Feb 2012 10:59:17 +0000 (11:59 +0100)]
g-ir-doctool: Add argument docs to the Python template
Jean Bréfort [Fri, 17 Feb 2012 16:48:35 +0000 (11:48 -0500)]
repository: Ensure error is set if we're parsing a malformed file
https://bugzilla.gnome.org/show_bug.cgi?id=661951
Tomeu Vizoso [Fri, 17 Feb 2012 12:39:15 +0000 (13:39 +0100)]
g-ir-doctool: Don't instantiate MallardFormatter for unknown languages
Tomeu Vizoso [Fri, 17 Feb 2012 09:43:01 +0000 (10:43 +0100)]
g-ir-doc-tool: Update expected mallard for the doc tests
Shaun McCance [Wed, 24 Aug 2011 15:32:18 +0000 (11:32 -0400)]
g-ir-doc-tool: Consolidating the function templates
Shaun McCance [Tue, 23 Aug 2011 14:43:34 +0000 (10:43 -0400)]
g-ir-doc-tool: Added MallardFormatter class
Shaun McCance [Tue, 23 Aug 2011 13:12:02 +0000 (09:12 -0400)]
g-ir-doc-tool: More Mallard work, using experimantal api extension
Shaun McCance [Thu, 18 Aug 2011 23:47:50 +0000 (19:47 -0400)]
g-ir-doc-tool: Templates for signals/properties, class docs
Tomeu Vizoso [Wed, 17 Aug 2011 08:23:58 +0000 (10:23 +0200)]
g-ir-doctool: Move to Mako templates for generating Mallard
Also removes the docbook writer
Martin Pitt [Thu, 16 Feb 2012 15:12:09 +0000 (16:12 +0100)]
Add test for a GPtrArray return with transfer full
This complements the already existing
regress_test_garray_container_return() test.
Giovanni Campagna [Tue, 14 Feb 2012 18:11:15 +0000 (19:11 +0100)]
Update glib annotations
Updated to glib 2.31.16-56-gd240b88, which includes one change
to GKeyFile.
Giovanni Campagna [Sat, 11 Feb 2012 15:02:40 +0000 (16:02 +0100)]
Add tests for GType of GValue
Some language bindings (like gjs) attempt to automatically infer the
GType from a native object when creating a GValue. This checks that
indeed the GValue has the right GType.
https://bugzilla.gnome.org/show_bug.cgi?id=669848
Jasper St. Pierre [Sun, 12 Feb 2012 23:52:20 +0000 (18:52 -0500)]
giscanner: Add better errors for unknown param names
Exclude the names we've already matched up from the "should be one of..." list
Jasper St. Pierre [Fri, 10 Feb 2012 15:19:17 +0000 (10:19 -0500)]
girffi: Virtual functions are methods
Jasper St. Pierre [Thu, 9 Feb 2012 20:43:23 +0000 (15:43 -0500)]
scanner: Allow adding annotations to vfuncs directly
Some vfuncs may not have public invokers. In these cases, annotations
may still be needed to correctly implement or chain up to a virtual
method from a subclass's implementation.
Thorsten Glaser [Wed, 8 Feb 2012 14:02:37 +0000 (09:02 -0500)]
typelib: Fix invalid alignment assumptions
The current source has invalid assumptions about structure alignment
that break on platforms like m68k where 32-bit integers are aligned to
16-bit only. Fix this by introducing explicit structure padding for
32-bit quantities following odd numbers of 16-bit quantities and
structure trail padding, to make the binary representation generated
by the compiler match the text of the specification exactly.
https://bugzilla.gnome.org/show_bug.cgi?id=661839
Rico Tzschichholz [Mon, 6 Feb 2012 18:57:53 +0000 (19:57 +0100)]
tests/scanner: Update Regress-1.0-expected.gir