After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 663190 - Type: GLib.List<Blob> breaks gtk-doc
Type: GLib.List<Blob> breaks gtk-doc
Status: RESOLVED FIXED
Product: gobject-introspection
Classification: Platform
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gobject-introspection Maintainer(s)
gobject-introspection Maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2011-11-01 20:00 UTC by Olivier Crête
Modified: 2015-02-07 16:58 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Allow using GLib.List(Foo) instead of GLib.List<Foo> (1.44 KB, patch)
2011-12-20 22:46 UTC, Olivier Crête
reviewed Details | Review
Allow using GLib.List(Foo) instead of GLib.List<Foo> (6.20 KB, patch)
2011-12-20 23:22 UTC, Olivier Crête
none Details | Review
Allow using GLib.List(Foo) instead of GLib.List<Foo> (5.84 KB, patch)
2011-12-22 18:20 UTC, Olivier Crête
committed Details | Review

Description Olivier Crête 2011-11-01 20:00:01 UTC
gtk-doc passes this as-is to the docbook machinery and all it sees is an unclosed tag... Can we change the format to GLib.List(Blob) or [Blob] or something that won't break my documentation? I think it's probably pretty trivial to change the scanner to accept both.
Comment 1 Olivier Crête 2011-12-20 22:46:05 UTC
Created attachment 203993 [details] [review]
Allow using GLib.List(Foo) instead of GLib.List<Foo>

The <> was recognized as a tag by gtk-doc causing confusing.
Comment 2 Olivier Crête 2011-12-20 22:47:09 UTC
Might want to use [] or {} too .. but since it's not an array or a block, () sounded more logical to me..
Comment 3 Colin Walters 2011-12-20 22:54:41 UTC
Review of attachment 203993 [details] [review]:

This fixes a real problem, thanks for the patch.

1) This patch should include a regression test (use tests/scanner/regress.[ch])
2) We should update the annotation wiki page
3) The commit message could be better, I'd use:

Using < and > for delimiters is problematic because gtk-doc is Docbook
which in turn is SGML, and those are reserved characters.

::: giscanner/maintransformer.py
@@ +265,3 @@
             args = [resolver(first)]
+            if sep in '<(':
+                while sep not in '>)':

Your patch allows mismatched pairs like "(>".  Maybe not a problem in practice, but it seems better to be restrictive here.
Comment 4 Olivier Crête 2011-12-20 23:22:27 UTC
Created attachment 203994 [details] [review]
Allow using GLib.List(Foo) instead of GLib.List<Foo>

Updated patch, that syntax isn't on the wiki, we should definitely add it there.
Also, while we're at it, Constructor: is also missing from the wiki.

Using < and > for delimiters is problematic because gtk-doc is Docbook
which in turn is SGML, and those are reserved characters.
Comment 5 Johan (not receiving bugmail) Dahlin 2011-12-22 18:06:34 UTC
Review of attachment 203994 [details] [review]:

This should update the annotation docs at the live wiki as well

::: giscanner/maintransformer.py
@@ +291,3 @@
             return combiner(base, *rest)
 
+        print "type_str: " + type_str

leftover?

::: tests/scanner/regress.c
@@ +2049,3 @@
+  pspec = g_param_spec_pointer ("list-old",
+                                "GList property with ()",
+  g_object_class_install_property (gobject_class,

<> and () ?
Comment 6 Olivier Crête 2011-12-22 18:20:07 UTC
Created attachment 204105 [details] [review]
Allow using GLib.List(Foo) instead of GLib.List<Foo>

Oops, removed the leftover print. The reason to allow both <> and () is to
not break existing annotations, but allow new annotations to be replaced by ().
Comment 7 Colin Walters 2012-01-10 20:44:18 UTC
Review of attachment 204105 [details] [review]:

Looks good, thanks.
Comment 8 Olivier Crête 2012-01-10 21:01:59 UTC
Comment on attachment 204105 [details] [review]
Allow using GLib.List(Foo) instead of GLib.List<Foo>

commit bfe51fb9472df24ca21c16f5d2af64f8533807e1
Author: Olivier Crête <olivier.crete@collabora.com>
Date:   Tue Dec 20 17:45:11 2011 -0500

    Allow using GLib.List(Foo) instead of GLib.List<Foo>
    
    Using < and > for delimiters is problematic because gtk-doc is Docbook
    which in turn is SGML, and those are reserved characters.
Comment 9 Olivier Crête 2012-01-10 21:02:13 UTC
Done!
Comment 10 André Klapper 2015-02-07 16:58:19 UTC
[Mass-moving gobject-introspection tickets to its own Bugzilla product - see bug 708029. Mass-filter your bugmail for this message: introspection20150207 ]