diff options
Diffstat (limited to 'devel')
-rw-r--r-- | devel/gobject-introspection/Makefile | 3 | ||||
-rw-r--r-- | devel/gobject-introspection/files/patch-git | 2511 |
2 files changed, 2513 insertions, 1 deletions
diff --git a/devel/gobject-introspection/Makefile b/devel/gobject-introspection/Makefile index 9ea900b8b..13f4df4c5 100644 --- a/devel/gobject-introspection/Makefile +++ b/devel/gobject-introspection/Makefile @@ -3,11 +3,12 @@ # Whom: Alexander Logvinov <avl@FreeBSD.org> # # $FreeBSD$ -# $MCom: ports/devel/gobject-introspection/Makefile,v 1.26 2010/10/07 10:28:00 kwm Exp $ +# $MCom: ports/devel/gobject-introspection/Makefile,v 1.28 2010/12/23 23:55:07 kwm Exp $ # PORTNAME= gobject-introspection PORTVERSION= 0.10.0 +PORTREVISION= 1 CATEGORIES= devel MASTER_SITES= GNOME DIST_SUBDIR= gnome2 diff --git a/devel/gobject-introspection/files/patch-git b/devel/gobject-introspection/files/patch-git new file mode 100644 index 000000000..87d670bc1 --- /dev/null +++ b/devel/gobject-introspection/files/patch-git @@ -0,0 +1,2511 @@ +diff -ru --exclude=.git work/gobject-introspection-0.10.0/gir/gio-2.0.c gobject-introspection/gir/gio-2.0.c +--- work/gobject-introspection-0.10.0/gir/gio-2.0.c 2010-12-21 17:47:12.000000000 +0000 ++++ gir/gio-2.0.c 2011-01-10 10:58:29.000000000 +0000 +@@ -608,7 +608,7 @@ + * g_resolver_lookup_by_address: + * @resolver: a #GResolver + * @address: the address to reverse-resolve +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: return location for a #GError, or %NULL + * + * Synchronously reverse-resolves @address to determine its +@@ -967,9 +967,9 @@ + + /** + * g_memory_input_stream_new_from_data: +- * @data: input data ++ * @data: (array length=len) (element-type guint8): input data + * @len: length of the data, may be -1 if @data is a nul-terminated string +- * @destroy: function that is called to free @data, or %NULL ++ * @destroy: (allow-none): function that is called to free @data, or %NULL + * + * Creates a new #GMemoryInputStream with data in memory of a given size. + * +@@ -1084,7 +1084,7 @@ + + + /** +- * g_inet_address_to_bytes: ++ * g_inet_address_to_bytes: (skip) + * @address: a #GInetAddress + * + * Gets the raw binary address data from @address. +@@ -1269,9 +1269,9 @@ + * @service: the service type to look up (eg, "ldap") + * @protocol: the networking protocol to use for @service (eg, "tcp") + * @domain: the DNS domain to look up the service in +- * @cancellable: a #GCancellable, or %NULL +- * @callback: callback to call after resolution completes +- * @user_data: data for @callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): callback to call after resolution completes ++ * @user_data: (closure): data for @callback + * + * Begins asynchronously performing a DNS SRV lookup for the given + * get the final result. See g_resolver_lookup_service() for more +@@ -1285,7 +1285,7 @@ + * g_proxy_resolver_lookup: + * @resolver: a #GProxyResolver + * @uri: a URI representing the destination to connect to +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: return location for a #GError, or %NULL + * + * Looks into the system proxy configuration to determine what proxy, +@@ -1301,9 +1301,10 @@ + * <literal>direct://</literal> is used when no proxy is needed. + * Direct connection should not be attempted unless it is part of the + * returned array of proxies. +- * g_strfreev(). ++ * NULL-terminated array of proxy URIs. Must be freed ++ * with g_strfreev(). + * +- * Returns: (transfer full) (element-type utf8): A NULL-terminated array of proxy URIs. Must be freed with ++ * Returns: (transfer full) (array zero-terminated=1): A + * Since: 2.26 + */ + +@@ -1447,7 +1448,7 @@ + * @seekable: a #GSeekable. + * @offset: a #goffset. + * @type: a #GSeekType. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: a #GError location to store the error occuring, or %NULL to ignore. + * + * Seeks in the stream by the given @offset, modified by @type. +@@ -1593,7 +1594,7 @@ + * g_socket_client_connect: + * @client: a #GSocketClient. + * @connectable: a #GSocketConnectable specifying the remote address. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: #GError for error reporting, or %NULL to ignore. + * + * Tries to resolve the @connectable and make a network connection to it.. +@@ -1952,10 +1953,10 @@ + + + /** +- * g_socket_create_source: ++ * g_socket_create_source: (skip) + * @socket: a #GSocket + * @condition: a #GIOCondition mask to monitor +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * + * Creates a %GSource that can be attached to a %GMainContext to monitor + * for the availibility of the specified @condition on the socket. +@@ -2427,9 +2428,9 @@ + * @emblem: a #GEmblem from which the icon should be extracted. + * + * Gives back the icon from @emblem. +- * and should not be modified or freed. ++ * the emblem and should not be modified or freed. + * +- * Returns: (transfer full): a #GIcon. The returned object belongs to the emblem ++ * Returns: (transfer none): a #GIcon. The returned object belongs to + * Since: 2.18 + */ + +@@ -2676,7 +2677,7 @@ + + + /** +- * GMemoryOutputStream:realloc-function: ++ * GMemoryOutputStream:realloc-function: (skip) + * + * Function with realloc semantics called to enlarge the buffer. + * +@@ -2813,9 +2814,9 @@ + * g_socket_send_to: + * @socket: a #GSocket + * @address: a #GSocketAddress, or %NULL +- * @buffer: the buffer containing the data to send. ++ * @buffer: (array length=size): the buffer containing the data to send. + * @size: the number of bytes to send +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Tries to send @size bytes from @buffer to @address. If @address is +@@ -3600,7 +3601,7 @@ + /** + * g_unix_fd_list_peek_fds: + * @list: a #GUnixFDList +- * @length: pointer to the length of the returned array, or %NULL ++ * @length: (out) (allow-none): pointer to the length of the returned array, or %NULL + * + * Returns the array of file descriptors that is contained in this + * object. +@@ -3612,8 +3613,9 @@ + * terminated with -1. + * This function never returns %NULL. In case there are no file + * descriptors contained in @list, an empty array is returned. ++ * descriptors + * +- * Returns: an array of file descriptors ++ * Returns: (array length=length) (transfer none): an array of file + * Since: 2.24 + */ + +@@ -3716,6 +3718,9 @@ + * Gets a list of recommended #GAppInfos for a given content type, i.e. + * those applications which claim to support the given content type exactly, + * and not by MIME type subclassing. ++ * Note that the first application of the list is the last used one, i.e. ++ * the last one for which #g_app_info_set_as_last_used_for_type has been ++ * called. + * for given @content_type or %NULL on error. + * + * Returns: (element-type GAppInfo) (transfer full): #GList of #GAppInfos +@@ -3781,7 +3786,7 @@ + * of the URI, up to but not including the ':', e.g. "http", + * "ftp" or "sip". + * +- * Returns: #GAppInfo for given @uri_scheme or %NULL on error. ++ * Returns: (transfer full): #GAppInfo for given @uri_scheme or %NULL on error. + */ + + +@@ -3809,7 +3814,7 @@ + * g_socket_listener_accept: + * @listener: a #GSocketListener + * @source_object: (out) (transfer none) (allow-none): location where #GObject pointer will be stored, or %NULL +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: #GError for error reporting, or %NULL to ignore. + * + * Blocks waiting for a client to connect to any of the sockets added +@@ -3924,9 +3929,9 @@ + * @emblemed: a #GEmblemedIcon + * + * Gets the list of emblems for the @icon. +- * is owned by @emblemed ++ * #GEmblem <!-- -->s that is owned by @emblemed + * +- * Returns: (element-type utf8) (transfer none): a #GList of #GEmblem <!-- -->s that ++ * Returns: (element-type Gio.Emblem) (transfer none): a #GList of + * Since: 2.18 + */ + +@@ -4736,9 +4741,9 @@ + * @proxy: a #GProxy + * @connection: a #GIOStream + * @proxy_address: a #GProxyAddress +- * @cancellable: a #GCancellable +- * @callback: a #GAsyncReadyCallback +- * @user_data: callback data ++ * @cancellable: (allow-none): a #GCancellable ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): callback data + * + * Asynchronous version of g_proxy_connect(). + * +@@ -4747,12 +4752,22 @@ + + + /** ++ * GSettings:delay-apply: ++ * ++ * Whether the #GSettings object is in 'delay-apply' mode. See ++ * g_settings_delay() for details. ++ * ++ * Since: 2.28 ++ */ ++ ++ ++/** + * g_resolver_lookup_service: + * @resolver: a #GResolver + * @service: the service type to look up (eg, "ldap") + * @protocol: the networking protocol to use for @service (eg, "tcp") + * @domain: the DNS domain to look up the service in +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: return location for a #GError, or %NULL + * + * Synchronously performs a DNS SRV lookup for the given @service and +@@ -5045,7 +5060,7 @@ + * @address: a pointer to a #GSocketAddress pointer, or %NULL + * @buffer: a buffer to read data into (which should be at least @size bytes long). + * @size: the number of bytes you want to read from the socket +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Receive data (up to @size bytes) from a socket. +@@ -5378,6 +5393,24 @@ + + + /** ++ * g_settings_list_schemas: ++ * ++ * Gets a list of the #GSettings schemas installed on the system. The ++ * returned list is exactly the list of schemas for which you may call ++ * g_settings_new() without adverse effects. ++ * This function does not list the schemas that do not provide their own ++ * g_settings_new_with_path()). See ++ * g_settings_list_relocatable_schemas() for that. ++ * schemas that are available. The list must not be modified or ++ * freed. ++ * ++ * Paths (ie: schemas for which you must use ++ * Returns: (element-type utf8) (transfer none): a list of #GSettings ++ * Since: 2.26 ++ */ ++ ++ ++/** + * g_file_load_contents: + * @file: input #GFile. + * @cancellable: optional #GCancellable object, %NULL to ignore. +@@ -5571,7 +5604,7 @@ + * g_socket_listener_accept_socket: + * @listener: a #GSocketListener + * @source_object: (out) (transfer none) (allow-none): location where #GObject pointer will be stored, or %NULL. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: #GError for error reporting, or %NULL to ignore. + * + * Blocks waiting for a client to connect to any of the sockets added +@@ -5888,8 +5921,9 @@ + * If your application or library provides one or more #GIcon + * implementations you need to ensure that each #GType is registered + * with the type system prior to calling g_icon_new_for_string(). ++ * interface or %NULL if @error is set. + * +- * Returns: An object implementing the #GIcon interface or %NULL if ++ * Returns: (transfer full): An object implementing the #GIcon + * Since: 2.20 + */ + +@@ -6166,7 +6200,7 @@ + * @level: a socket level + * @type: a socket control message type for the given @level + * @size: the size of the data in bytes +- * @data: pointer to the message data ++ * @data: (array length=size) (element-type guint8): pointer to the message data + * + * Tries to deserialize a socket control message of a given + * of #GSocketControlMessage if they can understand this kind +@@ -6614,7 +6648,7 @@ + /** + * g_file_enumerator_close: + * @enumerator: a #GFileEnumerator. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: location to store the error occuring, or %NULL to ignore + * + * Releases all resources used by this enumerator, making the +@@ -6640,20 +6674,9 @@ + + + /** +- * g_file_io_stream_query_info_async: +- * @stream: a #GFileIOStream. +- * @attributes: a file attribute query string. +- * @io_priority: the <link linkend="gio-GIOScheduler">I/O priority</link> of the request. +- * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. +- * @callback: (scope async): callback to call when the request is satisfied +- * @user_data: (closure): the data to pass to callback function +- * +- * Asynchronously queries the @stream for a #GFileInfo. When completed, +- * finish the operation with g_file_io_stream_query_info_finish(). +- * For the synchronous version of this function, see +- * g_file_io_stream_query_info(). ++ * GThemedIcon:names: + * +- * Since: 2.22 ++ * A %NULL-terminated array of icon names. + */ + + +@@ -6665,14 +6688,14 @@ + + + /** +- * g_memory_output_stream_get_data: (skip) ++ * g_memory_output_stream_get_data: + * @ostream: a #GMemoryOutputStream + * + * Gets any loaded data from the @ostream. + * Note that the returned pointer may become invalid on the next + * write or truncate operation on the stream. + * +- * Returns: pointer to the stream's data ++ * Returns: (transfer none): pointer to the stream's data + */ + + +@@ -6783,7 +6806,7 @@ + * @client: a #GSocketClient + * @uri: A network URI + * @default_port: the default port to connect to +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: a pointer to a #GError, or %NULL + * + * This is a helper function for g_socket_client_connect(). +@@ -6976,8 +6999,9 @@ + * @must_support_uris: if %TRUE, the #GAppInfo is expected to support URIs + * + * Gets the #GAppInfo that corresponds to a given content type. ++ * %NULL on error. + * +- * Returns: #GAppInfo for given @content_type or %NULL on error. ++ * Returns: (transfer full): #GAppInfo for given @content_type or + */ + + +@@ -7070,7 +7094,7 @@ + * @address: a #GSocketAddress + * @type: a #GSocketType + * @protocol: a #GSocketProtocol +- * @source_object: Optional #GObject identifying this source ++ * @source_object: (allow-none): Optional #GObject identifying this source + * @effective_address: (out) (allow-none): location to store the address that was bound to, or %NULL. + * @error: #GError for error reporting, or %NULL to ignore. + * +@@ -7462,9 +7486,20 @@ + + + /** +- * GThemedIcon:names: ++ * g_file_io_stream_query_info_async: ++ * @stream: a #GFileIOStream. ++ * @attributes: a file attribute query string. ++ * @io_priority: the <link linkend="gio-GIOScheduler">I/O priority</link> of the request. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. ++ * @callback: (scope async): callback to call when the request is satisfied ++ * @user_data: (closure): the data to pass to callback function + * +- * A %NULL-terminated array of icon names. ++ * Asynchronously queries the @stream for a #GFileInfo. When completed, ++ * finish the operation with g_file_io_stream_query_info_finish(). ++ * For the synchronous version of this function, see ++ * g_file_io_stream_query_info(). ++ * ++ * Since: 2.22 + */ + + +@@ -7628,7 +7663,7 @@ + + + /** +- * g_memory_output_stream_new: ++ * g_memory_output_stream_new: (skip) + * @data: pointer to a chunk of memory to use, or %NULL + * @size: the size of @data + * @realloc_function: a function with realloc() semantics (like g_realloc()) to be called when @data needs to be grown, or %NULL +@@ -8045,8 +8080,8 @@ + * g_loadable_icon_load: + * @icon: a #GLoadableIcon. + * @size: an integer. +- * @type: a location to store the type of the loaded icon, %NULL to ignore. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @type: (out) (allow-none): a location to store the type of the loaded icon, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: a #GError location to store the error occuring, or %NULL to ignore. + * + * Loads a loadable icon. For the asynchronous version of this function, +@@ -8077,9 +8112,9 @@ + * @client: a #GSocketClient + * @uri: a network uri + * @default_port: the default port to connect to +- * @cancellable: a #GCancellable, or %NULL +- * @callback: a #GAsyncReadyCallback +- * @user_data: user data for the callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): user data for the callback + * + * This is the asynchronous version of g_socket_client_connect_to_uri(). + * When the operation is finished @callback will be +@@ -8684,7 +8719,7 @@ + * + * Gets the origin of the emblem. + * +- * Returns: the origin of the emblem ++ * Returns: (transfer none): the origin of the emblem + * Since: 2.18 + */ + +@@ -8941,6 +8976,18 @@ + + + /** ++ * GDesktopAppLaunchCallback: ++ * @appinfo: a #GDesktopAppInfo ++ * @pid: Process identifier ++ * @user_data: User data ++ * ++ * During invocation, g_desktop_app_info_launch_uris_as_manager() may ++ * create one or more child processes. This callback is invoked once ++ * for each, providing the process ID. ++ */ ++ ++ ++/** + * g_settings_set_flags: + * @settings: a #GSettings object + * @key: a key, within @settings +@@ -9426,7 +9473,7 @@ + + + /** +- * g_cancellable_source_new: ++ * g_cancellable_source_new: (skip) + * @cancellable: a #GCancellable, or %NULL + * + * Creates a source that triggers if @cancellable is cancelled and +@@ -9436,7 +9483,7 @@ + * For convenience, you can call this with a %NULL #GCancellable, + * in which case the source will never trigger. + * +- * Returns: the new #GSource. ++ * Returns: (transfer full): the new #GSource. + * Since: 2.28 + */ + +@@ -9564,9 +9611,9 @@ + /** + * g_pollable_output_stream_write_nonblocking: + * @stream: a #GPollableOutputStream +- * @buffer: a buffer to write data from ++ * @buffer: (array length=size) (element-type guint8): a buffer to write data from + * @size: the number of bytes you want to write +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Attempts to write up to @size bytes from @buffer to @stream, as +@@ -9581,6 +9628,7 @@ + * to having been cancelled. + * %G_IO_ERROR_WOULD_BLOCK). + * ++ * Virtual: write_nonblocking + * Returns: the number of bytes written, or -1 on error (including + */ + +@@ -9777,9 +9825,9 @@ + /** + * g_socket_address_enumerator_next_async: + * @enumerator: a #GSocketAddressEnumerator +- * @cancellable: optional #GCancellable object, %NULL to ignore. +- * @callback: a #GAsyncReadyCallback to call when the request is satisfied +- * @user_data: the data to pass to callback function ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. ++ * @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied ++ * @user_data: (closure): the data to pass to callback function + * + * Asynchronously retrieves the next #GSocketAddress from @enumerator + * and then calls @callback, which must call +@@ -10500,7 +10548,7 @@ + * g_socket_condition_wait: + * @socket: a #GSocket + * @condition: a #GIOCondition mask to wait for +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: a #GError pointer, or %NULL + * + * Waits for @condition to become true on @socket. When the condition +@@ -10550,9 +10598,9 @@ + * @client: a #GSocketClient + * @domain: a domain name + * @service: the name of the service to connect to +- * @cancellable: a #GCancellable, or %NULL +- * @callback: a #GAsyncReadyCallback +- * @user_data: user data for the callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): user data for the callback + * + * This is the asynchronous version of + * g_socket_client_connect_to_service(). +@@ -10599,7 +10647,7 @@ + * @client: a #GSocketConnection + * @domain: a domain name + * @service: the name of the service to connect to +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: a pointer to a #GError, or %NULL + * @returns: (transfer full): a #GSocketConnection if successful, or %NULL on error + * +@@ -10729,9 +10777,9 @@ + * g_resolver_lookup_by_name_async: + * @resolver: a #GResolver + * @hostname: the hostname to look up the address of +- * @cancellable: a #GCancellable, or %NULL +- * @callback: callback to call after resolution completes +- * @user_data: data for @callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): callback to call after resolution completes ++ * @user_data: (closure): data for @callback + * + * Begins asynchronously resolving @hostname to determine its + * associated IP address(es), and eventually calls @callback, which +@@ -10974,7 +11022,7 @@ + * @proxy: a #GProxy + * @connection: a #GIOStream + * @proxy_address: a #GProxyAddress +- * @cancellable: a #GCancellable ++ * @cancellable: (allow-none): a #GCancellable + * @error: return #GError + * + * Given @connection to communicate with a proxy (eg, a +@@ -11178,7 +11226,7 @@ + + + /** +- * GMemoryOutputStream:destroy-function: ++ * GMemoryOutputStream:destroy-function: (skip) + * + * Function called with the buffer as argument when the stream is destroyed. + * +@@ -11697,13 +11745,13 @@ + /** + * g_converter_convert: + * @converter: a #GConverter. +- * @inbuf: the buffer containing the data to convert. ++ * @inbuf: (array length=inbuf_size) (element-type guint8): the buffer containing the data to convert. + * @inbuf_size: the number of bytes in @inbuf + * @outbuf: a buffer to write converted data in. + * @outbuf_size: the number of bytes in @outbuf, must be at least one + * @flags: a #GConvertFlags controlling the conversion details +- * @bytes_read: will be set to the number of bytes read from @inbuf on success +- * @bytes_written: will be set to the number of bytes written to @outbuf on success ++ * @bytes_read: (out): will be set to the number of bytes read from @inbuf on success ++ * @bytes_written: (out): will be set to the number of bytes written to @outbuf on success + * @error: location to store the error occuring, or %NULL to ignore + * + * This is the main operation used when converting data. It is to be called +@@ -11875,7 +11923,7 @@ + * @client: a #GSocketClient + * @host_and_port: the name and optionally port of the host to connect to + * @default_port: the default port to connect to +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: a pointer to a #GError, or %NULL + * + * This is a helper function for g_socket_client_connect(). +@@ -12468,7 +12516,7 @@ + * g_memory_output_stream_get_size: + * @ostream: a #GMemoryOutputStream + * +- * Gets the size of the currently allocated data area (availible from ++ * Gets the size of the currently allocated data area (available from + * g_memory_output_stream_get_data()). If the stream isn't + * growable (no realloc was passed to g_memory_output_stream_new()) then + * this is the maximum size of the stream and further writes +@@ -13126,7 +13174,7 @@ + /** + * g_unix_connection_receive_credentials: + * @connection: A #GUnixConnection. +- * @cancellable: A #GCancellable or %NULL. ++ * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Receives credentials from the sending end of the connection. The +@@ -13153,9 +13201,10 @@ + * Call this function to obtain the array of proxy URIs when + * g_proxy_resolver_lookup_async() is complete. See + * g_proxy_resolver_lookup() for more details. +- * g_strfreev(). ++ * NULL-terminated array of proxy URIs. Must be freed ++ * with g_strfreev(). + * +- * Returns: (transfer full) (element-type utf8): A NULL-terminated array of proxy URIs. Must be freed with ++ * Returns: (transfer full) (array zero-terminated=1): A + * Since: 2.26 + */ + +@@ -13175,9 +13224,9 @@ + * g_socket_client_connect_async: + * @client: a #GTcpClient + * @connectable: a #GSocketConnectable specifying the remote address. +- * @cancellable: a #GCancellable, or %NULL +- * @callback: a #GAsyncReadyCallback +- * @user_data: user data for the callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): user data for the callback + * + * This is the asynchronous version of g_socket_client_connect(). + * When the operation is finished @callback will be +@@ -13495,20 +13544,27 @@ + + + /** +- * g_settings_list_schemas: +- * +- * Gets a list of the #GSettings schemas installed on the system. The +- * returned list is exactly the list of schemas for which you may call +- * g_settings_new() without adverse effects. +- * This function does not list the schemas that do not provide their own +- * g_settings_new_with_path()). See +- * g_settings_list_relocatable_schemas() for that. +- * schemas that are available. The list must not be modified or +- * freed. ++ * g_desktop_app_info_launch_uris_as_manager: ++ * @appinfo: a #GDesktopAppInfo ++ * @uris: (element-type utf8): List of URIs ++ * @launch_context: a #GAppLaunchContext ++ * @spawn_flags: #GSpawnFlags, used for each process ++ * @user_setup: (scope call): a #GSpawnChildSetupFunc, used once for each process. ++ * @user_setup_data: (closure user_setup): User data for @user_setup ++ * @pid_callback: (scope call): Callback for child processes ++ * @pid_callback_data: (closure pid_callback): User data for @callback ++ * @error: a #GError + * +- * Paths (ie: schemas for which you must use +- * Returns: (element-type utf8) (transfer none): a list of #GSettings +- * Since: 2.26 ++ * This function performs the equivalent of g_app_info_launch_uris(), ++ * but is intended primarily for operating system components that ++ * launch applications. Ordinary applications should use ++ * g_app_info_launch_uris(). ++ * In contrast to g_app_info_launch_uris(), all processes created will ++ * always be run directly as children as if by the UNIX fork()/exec() ++ * calls. ++ * This guarantee allows additional control over the exact environment ++ * of the child processes, which is provided via a setup function ++ * semantics of the @setup function. + */ + + +@@ -13692,6 +13748,17 @@ + + + /** ++ * G_TYPE_FROM_INSTANCE: ++ * @instance: Location of a valid #GTypeInstance structure. ++ * ++ * Get the type identifier from a given @instance structure. ++ * This macro should only be used in type implementations. ++ * ++ * Returns: the #GType ++ */ ++ ++ ++/** + * g_file_info_set_is_symlink: + * @info: a #GFileInfo. + * @is_symlink: a #gboolean. +@@ -14169,7 +14236,7 @@ + * + * Gets the main icon for @emblemed. + * +- * Returns: (transfer full): a #GIcon that is owned by @emblemed ++ * Returns: (transfer none): a #GIcon that is owned by @emblemed + * Since: 2.18 + */ + +@@ -14299,8 +14366,9 @@ + * + * Lookup "gio-proxy" extension point for a proxy implementation that supports + * specified protocol. ++ * is not supported. + * +- * Returns: return a #GProxy or NULL if protocol is not supported. ++ * Returns: (transfer full): return a #GProxy or NULL if protocol + * Since: 2.26 + */ + +@@ -14488,7 +14556,7 @@ + * g_socket_listener_accept_socket_finish: + * @listener: a #GSocketListener + * @result: a #GAsyncResult. +- * @source_object: Optional #GObject identifying this source ++ * @source_object: (out) (transfer none) (allow-none): Optional #GObject identifying this source + * @error: a #GError location to store the error occuring, or %NULL to ignore. + * + * Finishes an async accept operation. See g_socket_listener_accept_socket_async() +@@ -14848,7 +14916,7 @@ + * @cancellable: a #GCancellable object + * + * Pushes @cancellable onto the cancellable stack. The current +- * cancllable can then be recieved using g_cancellable_get_current(). ++ * cancellable can then be recieved using g_cancellable_get_current(). + * This is useful when implementing cancellable operations in + * code that does not allow you to pass down the cancellable object. + * This is typically called automatically by e.g. #GFile operations, +@@ -15014,9 +15082,9 @@ + * g_file_enumerator_close_async: + * @enumerator: a #GFileEnumerator. + * @io_priority: the <link linkend="io-priority">I/O priority</link> of the request. +- * @cancellable: optional #GCancellable object, %NULL to ignore. +- * @callback: a #GAsyncReadyCallback to call when the request is satisfied +- * @user_data: the data to pass to callback function ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. ++ * @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied ++ * @user_data: (closure): the data to pass to callback function + * + * Asynchronously closes the file enumerator. + * If @cancellable is not %NULL, then the operation can be cancelled by +@@ -15182,12 +15250,12 @@ + * g_socket_send_message: + * @socket: a #GSocket + * @address: a #GSocketAddress, or %NULL +- * @vectors: an array of #GOutputVector structs ++ * @vectors: (array length=num_vectors): an array of #GOutputVector structs + * @num_vectors: the number of elements in @vectors, or -1 +- * @messages: a pointer to an array of #GSocketControlMessages, or %NULL. ++ * @messages: (array length=num_messages) (allow-none): a pointer to an array of #GSocketControlMessages, or %NULL. + * @num_messages: number of elements in @messages, or -1. + * @flags: an int containing #GSocketMsgFlags flags +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Send data to @address on @socket. This is the most complicated and +@@ -15773,7 +15841,7 @@ + * g_socket_listener_accept_finish: + * @listener: a #GSocketListener + * @result: a #GAsyncResult. +- * @source_object: Optional #GObject identifying this source ++ * @source_object: (out) (transfer none) (allow-none): Optional #GObject identifying this source + * @error: a #GError location to store the error occuring, or %NULL to ignore. + * + * Finishes an async accept operation. See g_socket_listener_accept_async() +@@ -16357,7 +16425,7 @@ + * g_resolver_lookup_by_name: + * @resolver: a #GResolver + * @hostname: the hostname to look up +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: return location for a #GError, or %NULL + * + * Synchronously resolves @hostname to determine its associated IP +@@ -16388,9 +16456,9 @@ + /** + * g_socket_listener_accept_async: + * @listener: a #GSocketListener +- * @cancellable: a #GCancellable, or %NULL +- * @callback: a #GAsyncReadyCallback +- * @user_data: user data for the callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): user data for the callback + * + * This is the asynchronous version of g_socket_listener_accept(). + * When the operation is finished @callback will be +@@ -16616,7 +16684,7 @@ + * g_seekable_truncate: + * @seekable: a #GSeekable. + * @offset: a #goffset. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: a #GError location to store the error occuring, or %NULL to ignore. + * + * Truncates a stream with a given #offset. +@@ -16698,9 +16766,9 @@ + * @client: a #GTcpClient + * @host_and_port: the name and optionally the port of the host to connect to + * @default_port: the default port to connect to +- * @cancellable: a #GCancellable, or %NULL +- * @callback: a #GAsyncReadyCallback +- * @user_data: user data for the callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): user data for the callback + * + * This is the asynchronous version of g_socket_client_connect_to_host(). + * When the operation is finished @callback will be +@@ -16752,7 +16820,7 @@ + + /** + * g_unix_fd_list_new_from_array: +- * @fds: the initial list of file descriptors ++ * @fds: (array length=n_fds): the initial list of file descriptors + * @n_fds: the length of #fds, or -1 + * + * Creates a new #GUnixFDList containing the file descriptors given in +@@ -16770,9 +16838,9 @@ + * g_loadable_icon_load_async: + * @icon: a #GLoadableIcon. + * @size: an integer. +- * @cancellable: optional #GCancellable object, %NULL to ignore. +- * @callback: a #GAsyncReadyCallback to call when the request is satisfied +- * @user_data: the data to pass to callback function ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. ++ * @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied ++ * @user_data: (closure): the data to pass to callback function + * + * Loads an icon asynchronously. To finish this function, see + * g_loadable_icon_load_finish(). For the synchronous, blocking +@@ -17101,7 +17169,7 @@ + + + /** +- * g_pollable_source_new: ++ * g_pollable_source_new: (skip) + * @pollable_stream: the stream associated with the new source + * + * Utility method for #GPollableInputStream and #GPollableOutputStream +@@ -17110,7 +17178,7 @@ + * anything on its own; use g_source_add_child_source() to add other + * sources to it to cause it to trigger. + * +- * Returns: the new #GSource. ++ * Returns: (transfer full): the new #GSource. + * Since: 2.28 + */ + +@@ -18311,9 +18379,9 @@ + /** + * g_socket_listener_accept_socket_async: + * @listener: a #GSocketListener +- * @cancellable: a #GCancellable, or %NULL +- * @callback: a #GAsyncReadyCallback +- * @user_data: user data for the callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): a #GAsyncReadyCallback ++ * @user_data: (closure): user data for the callback + * + * This is the asynchronous version of g_socket_listener_accept_socket(). + * When the operation is finished @callback will be +@@ -18426,7 +18494,7 @@ + /** + * g_unix_fd_list_steal_fds: + * @list: a #GUnixFDList +- * @length: pointer to the length of the returned array, or %NULL ++ * @length: (out) (allow-none): pointer to the length of the returned array, or %NULL + * + * Returns the array of file descriptors that is contained in this + * object. +@@ -18441,8 +18509,9 @@ + * terminated with -1. + * This function never returns %NULL. In case there are no file + * descriptors contained in @list, an empty array is returned. ++ * descriptors + * +- * Returns: an array of file descriptors ++ * Returns: (array length=length) (transfer full): an array of file + * Since: 2.24 + */ + +@@ -19902,7 +19971,7 @@ + * @socket: a #GSocket + * @buffer: a buffer to read data into (which should be at least @size bytes long). + * @size: the number of bytes you want to read from the socket +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Receive data (up to @size bytes) from a socket. This is mainly used by +@@ -19947,7 +20016,7 @@ + * g_socket_connect: + * @socket: a #GSocket. + * @address: a #GSocketAddress specifying the remote address. +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Connect the socket to the specified remote address. +@@ -20349,9 +20418,9 @@ + * g_resolver_lookup_by_address_async: + * @resolver: a #GResolver + * @address: the address to reverse-resolve +- * @cancellable: a #GCancellable, or %NULL +- * @callback: callback to call after resolution completes +- * @user_data: data for @callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): callback to call after resolution completes ++ * @user_data: (closure): data for @callback + * + * Begins asynchronously reverse-resolving @address to determine its + * associated hostname, and eventually calls @callback, which must +@@ -20431,7 +20500,7 @@ + * g_socket_listener_add_socket: + * @listener: a #GSocketListener + * @socket: a listening #GSocket +- * @source_object: Optional #GObject identifying this source ++ * @source_object: (allow-none): Optional #GObject identifying this source + * @error: #GError for error reporting, or %NULL to ignore. + * + * Adds @socket to the set of sockets that we try to accept +@@ -21484,9 +21553,9 @@ + /** + * g_memory_input_stream_add_data: + * @stream: a #GMemoryInputStream +- * @data: input data ++ * @data: (array length=len) (element-type guint8): input data + * @len: length of the data, may be -1 if @data is a nul-terminated string +- * @destroy: function that is called to free @data, or %NULL ++ * @destroy: (allow-none): function that is called to free @data, or %NULL + * + * Appends @data to data that can be read from the input stream + */ +@@ -22345,9 +22414,9 @@ + /** + * g_socket_send: + * @socket: a #GSocket +- * @buffer: the buffer containing the data to send. ++ * @buffer: (array length=size): the buffer containing the data to send. + * @size: the number of bytes to send +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Tries to send @size bytes from @buffer on the socket. This is +@@ -23189,9 +23258,9 @@ + * specification for more on x-content types. + * This function is useful in the implementation of + * g_mount_guess_content_type(). +- * or %NULL. Free with g_strfreev() ++ * array of zero or more content types, or %NULL. Free with g_strfreev() + * +- * Returns: (transfer full): an %NULL-terminated array of zero or more content types, ++ * Returns: (transfer full) (array zero-terminated=1): an %NULL-terminated + * Since: 2.18 + */ + +@@ -23419,7 +23488,7 @@ + /** + * g_app_info_launch_uris: + * @appinfo: a #GAppInfo +- * @uris: (element-type char*): a #GList containing URIs to launch. ++ * @uris: (element-type utf8): a #GList containing URIs to launch. + * @launch_context: (allow-none): a #GAppLaunchContext or %NULL + * @error: a #GError + * +@@ -23481,13 +23550,17 @@ + + + /** +- * G_TYPE_FROM_INSTANCE: +- * @instance: Location of a valid #GTypeInstance structure. ++ * g_app_info_set_as_last_used_for_type: ++ * @appinfo: a #GAppInfo. ++ * @content_type: the content type. ++ * @error: a #GError. + * +- * Get the type identifier from a given @instance structure. +- * This macro should only be used in type implementations. ++ * Sets the application as the last used application for a given type. ++ * This will make the application appear as first in the list returned by ++ * #g_app_info_get_recommended_for_type, regardless of the default application ++ * for that content type. + * +- * Returns: the #GType ++ * Returns: %TRUE on success, %FALSE on error. + */ + + +@@ -23508,7 +23581,7 @@ + + /** + * g_themed_icon_new_from_names: +- * @iconnames: an array of strings containing icon names. ++ * @iconnames: (array length=len): an array of strings containing icon names. + * @len: the length of the @iconnames array, or -1 if @iconnames is %NULL-terminated + * + * Creates a new themed icon for @iconnames. +@@ -23572,7 +23645,7 @@ + /** + * g_socket_accept: + * @socket: a #GSocket. +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Accept incoming connections on a connection-based socket. This removes +@@ -23906,9 +23979,9 @@ + + + /** +- * g_pollable_output_stream_create_source: ++ * g_pollable_output_stream_create_source: (skip) + * @stream: a #GPollableOutputStream. +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * + * Creates a #GSource that triggers when @stream can be written, or + * source is of the #GPollableSourceFunc type. +@@ -23917,7 +23990,7 @@ + * triggers, so you should use g_pollable_output_stream_write_nonblocking() + * rather than g_output_stream_write() from the callback. + * +- * Returns: a new #GSource ++ * Returns: (transfer full): a new #GSource + * Since: 2.28 + */ + +@@ -24038,9 +24111,9 @@ + * @enumerator: a #GFileEnumerator. + * @num_files: the number of file info objects to request + * @io_priority: the <link linkend="gioscheduler">io priority</link> of the request. +- * @cancellable: optional #GCancellable object, %NULL to ignore. +- * @callback: a #GAsyncReadyCallback to call when the request is satisfied +- * @user_data: the data to pass to callback function ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. ++ * @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied ++ * @user_data: (closure): the data to pass to callback function + * + * Request information for a number of files from the enumerator asynchronously. + * When all i/o for the operation is finished the @callback will be called with +@@ -24690,10 +24763,10 @@ + /** + * g_socket_send_with_blocking: + * @socket: a #GSocket +- * @buffer: the buffer containing the data to send. ++ * @buffer: (array length=size): the buffer containing the data to send. + * @size: the number of bytes to send + * @blocking: whether to do blocking or non-blocking I/O +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * This behaves exactly the same as g_socket_send(), except that +@@ -25048,7 +25121,7 @@ + /** + * g_socket_address_enumerator_next: + * @enumerator: a #GSocketAddressEnumerator +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: a #GError. + * + * Retrieves the next #GSocketAddress from @enumerator. Note that this +@@ -26094,7 +26167,7 @@ + /** + * g_app_info_launch_default_for_uri: + * @uri: the uri to show +- * @launch_context: an optional #GAppLaunchContext. ++ * @launch_context: (allow-none): an optional #GAppLaunchContext. + * @error: a #GError. + * + * Utility function that launches the default application +@@ -26312,7 +26385,7 @@ + /** + * g_unix_fd_message_steal_fds: + * @message: a #GUnixFDMessage +- * @length: pointer to the length of the returned array, or %NULL ++ * @length: (out) (allow-none): pointer to the length of the returned array, or %NULL + * + * Returns the array of file descriptors that is contained in this + * object. +@@ -26326,8 +26399,9 @@ + * terminated with -1. + * This function never returns %NULL. In case there are no file + * descriptors contained in @message, an empty array is returned. ++ * descriptors + * +- * Returns: an array of file descriptors ++ * Returns: (array length=length) (transfer full): an array of file + * Since: 2.22 + */ + +@@ -26357,7 +26431,7 @@ + /** + * g_file_enumerator_next_file: + * @enumerator: a #GFileEnumerator. +- * @cancellable: optional #GCancellable object, %NULL to ignore. ++ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore. + * @error: location to store the error occuring, or %NULL to ignore + * + * Returns information for the next file in the enumerated object. +@@ -26751,7 +26825,7 @@ + /** + * g_unix_connection_send_credentials: + * @connection: A #GUnixConnection. +- * @cancellable: A #GCancellable or %NULL. ++ * @cancellable: (allow-none): A #GCancellable or %NULL. + * @error: Return location for error or %NULL. + * + * Passes the credentials of the current user the receiving side +@@ -27622,7 +27696,7 @@ + /** + * g_socket_listener_add_any_inet_port: + * @listener: a #GSocketListener +- * @source_object: Optional #GObject identifying this source ++ * @source_object: (allow-none): Optional #GObject identifying this source + * @error: a #GError location to store the error occuring, or %NULL to ignore. + * + * Listens for TCP connections on any available port number for both +@@ -27788,7 +27862,7 @@ + + /** + * g_simple_async_report_gerror_in_idle: +- * @object: a #GObject. ++ * @object: (allow-none): a #GObject, or %NULL + * @callback: (scope async): a #GAsyncReadyCallback. + * @user_data: (closure): user data passed to @callback. + * @error: the #GError to report +@@ -27921,7 +27995,7 @@ + + /** + * g_unix_socket_address_new_abstract: +- * @path: the abstract name ++ * @path: (array length=path_len) (element-type gchar): the abstract name + * @path_len: the length of @path, or -1 + * + * Creates a new %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED +@@ -28214,7 +28288,11 @@ + * that the server will accept client certificates signed by. If the + * server requests a client certificate during the handshake, then + * this property will be set after the handshake completes. ++ * Each item in the list is a #GByteArray which contains the complete ++ * subject DN of the certificate authority. + * ++ * Type: GList<GByteArray> ++ * Transfer: full + * Since: 2.28 + */ + +@@ -28646,7 +28724,7 @@ + * @stream: a #GPollableInputStream + * @buffer: a buffer to read data into (which should be at least @size bytes long). + * @size: the number of bytes you want to read +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * Attempts to read up to @size bytes from @stream into @buffer, as +@@ -28661,6 +28739,7 @@ + * to having been cancelled. + * %G_IO_ERROR_WOULD_BLOCK). + * ++ * Virtual: read_nonblocking + * Returns: the number of bytes read, or -1 on error (including + */ + +@@ -28999,7 +29078,7 @@ + * Gets @address's #GInetAddress. + * g_object_ref()'d if it will be stored + * +- * Returns: (transfer full): the #GInetAddress for @address, which must be ++ * Returns: (transfer none): the #GInetAddress for @address, which must be + * Since: 2.22 + */ + +@@ -29167,7 +29246,7 @@ + + /** + * g_unix_socket_address_new_with_type: +- * @path: the name ++ * @path: (array length=path_len) (element-type gchar): the name + * @path_len: the length of @path, or -1 + * @type: a #GUnixSocketAddressType + * +@@ -29743,8 +29822,8 @@ + * @protocol: The proxy protocol to support, in lower case (e.g. socks, http). + * @dest_hostname: The destination hostname the the proxy should tunnel to. + * @dest_port: The destination port to tunnel to. +- * @username: The username to authenticate to the proxy server (or %NULL). +- * @password: The password to authenticate to the proxy server (or %NULL). ++ * @username: (allow-none): The username to authenticate to the proxy server (or %NULL). ++ * @password: (allow-none): The password to authenticate to the proxy server (or %NULL). + * + * Creates a new #GProxyAddress for @inetaddr with @protocol that should + * tunnel through @dest_hostname and @dest_port. +@@ -29787,7 +29866,7 @@ + * @buffer: a buffer to read data into (which should be at least @size bytes long). + * @size: the number of bytes you want to read from the socket + * @blocking: whether to do blocking or non-blocking I/O +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: #GError for error reporting, or %NULL to ignore. + * + * This behaves exactly the same as g_socket_receive(), except that +@@ -30034,7 +30113,7 @@ + * g_socket_listener_add_inet_port: + * @listener: a #GSocketListener + * @port: an IP port number (non-zero) +- * @source_object: Optional #GObject identifying this source ++ * @source_object: (allow-none): Optional #GObject identifying this source + * @error: #GError for error reporting, or %NULL to ignore. + * + * Helper function for g_socket_listener_add_address() that +@@ -30073,9 +30152,12 @@ + * that the server will accept certificates from. This will be set + * during the TLS handshake if the server requests a certificate. + * Otherwise, it will be %NULL. +- * of CA names, which you must free (eg, with g_strfreev()). ++ * Each item in the list is a #GByteArray which contains the complete ++ * subject DN of the certificate authority. ++ * CA DNs. You should unref each element with g_byte_array_unref() and then ++ * the free the list with g_list_free(). + * +- * Returns: (transfer full) (array zero-terminated=1): the list ++ * Returns: (element-type GByteArray) (transfer full): the list of + * Since: 2.28 + */ + +@@ -30098,9 +30180,9 @@ + * g_proxy_resolver_lookup_async: + * @resolver: a #GProxyResolver + * @uri: a URI representing the destination to connect to +- * @cancellable: a #GCancellable, or %NULL +- * @callback: callback to call after resolution completes +- * @user_data: data for @callback ++ * @cancellable: (allow-none): a #GCancellable, or %NULL ++ * @callback: (scope async): callback to call after resolution completes ++ * @user_data: (closure): data for @callback + * + * Asynchronous lookup of proxy. See g_proxy_resolver_lookup() for more + * details. +@@ -30668,9 +30750,9 @@ + + + /** +- * g_pollable_input_stream_create_source: ++ * g_pollable_input_stream_create_source: (skip) + * @stream: a #GPollableInputStream. +- * @cancellable: a #GCancellable, or %NULL ++ * @cancellable: (allow-none): a #GCancellable, or %NULL + * + * Creates a #GSource that triggers when @stream can be read, or + * source is of the #GPollableSourceFunc type. +@@ -30679,7 +30761,7 @@ + * triggers, so you should use g_pollable_input_stream_read_nonblocking() + * rather than g_input_stream_read() from the callback. + * +- * Returns: a new #GSource ++ * Returns: (transfer full): a new #GSource + * Since: 2.28 + */ + +@@ -30819,12 +30901,12 @@ + * g_socket_receive_message: + * @socket: a #GSocket + * @address: a pointer to a #GSocketAddress pointer, or %NULL +- * @vectors: an array of #GInputVector structs ++ * @vectors: (array length=num_vectors): an array of #GInputVector structs + * @num_vectors: the number of elements in @vectors, or -1 +- * @messages: a pointer which may be filled with an array of #GSocketControlMessages, or %NULL ++ * @messages: (array length=num_messages) (allow-none): a pointer which may be filled with an array of #GSocketControlMessages, or %NULL + * @num_messages: a pointer which will be filled with the number of elements in @messages, or %NULL + * @flags: a pointer to an int containing #GSocketMsgFlags flags +- * @cancellable: a %GCancellable or %NULL ++ * @cancellable: (allow-none): a %GCancellable or %NULL + * @error: a #GError pointer, or %NULL + * + * Receive data from a socket. This is the most complicated and +diff -ru --exclude=.git work/gobject-introspection-0.10.0/gir/gobject-2.0.c gobject-introspection/gir/gobject-2.0.c +--- work/gobject-introspection-0.10.0/gir/gobject-2.0.c 2010-12-20 19:28:43.000000000 +0000 ++++ gir/gobject-2.0.c 2011-01-10 10:58:29.000000000 +0000 +@@ -22,7 +22,7 @@ + + + /** +- * g_type_remove_class_cache_func: ++ * g_type_remove_class_cache_func: (skip) + * @cache_data: data that was given when adding @cache_func + * @cache_func: a #GTypeClassCacheFunc + * +@@ -322,7 +322,7 @@ + + + /** +- * g_type_create_instance: ++ * g_type_create_instance: (skip) + * @type: An instantiatable type to create an instance for. + * + * Creates and initializes an instance of @type if @type is valid and +@@ -347,13 +347,14 @@ + /** + * g_type_interface_prerequisites: + * @interface_type: an interface type +- * @n_prerequisites: location to return the number of prerequisites, or %NULL ++ * @n_prerequisites: (out) (allow-none): location to return the number of prerequisites, or %NULL + * + * Returns the prerequisites of an interfaces type. ++ * newly-allocated zero-terminated array of #GType containing + * the prerequisites of @interface_type + * + * Since: 2.2 +- * Returns: a newly-allocated zero-terminated array of #GType containing ++ * Returns: (array length=n_prerequisites) (transfer full): a + */ + + +@@ -693,7 +694,7 @@ + + + /** +- * g_object_set_data_full: ++ * g_object_set_data_full: (skip) + * @object: #GObject containing the associations + * @key: name of the key + * @data: data to associate with that key +@@ -773,8 +774,9 @@ + * + * Get the contents of a %G_TYPE_OBJECT derived #GValue, increasing + * its reference count. ++ * should be unreferenced when no longer needed. + * +- * Returns: (type GObject.Object) (transfer full): object content of ++ * Returns: (type GObject.Object) (transfer full): object content of @value, + */ + + +@@ -812,7 +814,7 @@ + + + /** +- * g_object_get_valist: ++ * g_object_get_valist: (skip) + * @object: a #GObject + * @first_property_name: name of the first property to get + * @var_args: return location for the first property, followed optionally by more name/return location pairs, followed by %NULL +@@ -862,7 +864,7 @@ + + + /** +- * g_clear_object: ++ * g_clear_object: (skip) + * @object_ptr: a pointer to a #GObject reference + * + * Clears a reference to a #GObject. +@@ -897,7 +899,7 @@ + + + /** +- * g_object_set: ++ * g_object_set: (skip) + * @object: a #GObject + * @first_property_name: name of the first property to set + * @...: value for the first property, followed optionally by more name/value pairs, followed by %NULL +@@ -918,7 +920,7 @@ + + /** + * g_object_is_floating: +- * @object: a #GObject ++ * @object: (type GObject.Object): a #GObject + * + * Checks wether @object has a <link linkend="floating-ref">floating</link> + * reference. +@@ -962,8 +964,9 @@ + * + * Increments the reference count of the class structure belonging to + * exist already. ++ * structure for the given type ID. + * +- * Returns: The #GTypeClass structure for the given type ID. ++ * Returns: (type GObject.TypeClass) (transfer none): The #GTypeClass + */ + + +@@ -1007,16 +1010,17 @@ + + /** + * g_type_interface_peek_parent: +- * @g_iface: A #GTypeInterface structure. ++ * @g_iface: (type GObject.TypeInterface): A #GTypeInterface structure. + * + * Returns the corresponding #GTypeInterface structure of the parent type + * of the instance type to which @g_iface belongs. This is useful when + * deriving the implementation of an interface from the parent type and + * then possibly overriding some methods. +- * type of the instance type to which @g_iface belongs, or +- * %NULL if the parent type doesn't conform to the interface. ++ * corresponding #GTypeInterface structure of the parent type of the ++ * instance type to which @g_iface belongs, or %NULL if the parent ++ * type doesn't conform to the interface. + * +- * Returns: The corresponding #GTypeInterface structure of the parent ++ * Returns: (transfer none) (type GObject.TypeInterface): The + */ + + +@@ -1119,7 +1123,7 @@ + + + /** +- * g_object_new: ++ * g_object_new: (skip) + * @object_type: the type id of the #GObject subtype to instantiate + * @first_property_name: the name of the first property + * @...: the value of the first property, followed optionally by more name/value pairs, followed by %NULL +@@ -1128,7 +1132,7 @@ + * Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY) + * which are not explicitly specified are set to their default values. + * +- * Returns: a new instance of @object_type ++ * Returns: (transfer full): a new instance of @object_type + */ + + +@@ -1173,12 +1177,13 @@ + /** + * g_type_children: + * @type: The parent type. +- * @n_children: Optional #guint pointer to contain the number of child types. ++ * @n_children: (out) (allow-none): Optional #guint pointer to contain the number of child types. + * + * Return a newly allocated and 0-terminated array of type IDs, listing the + * child types of @type. The return value has to be g_free()ed after use. ++ * and 0-terminated array of child types. + * +- * Returns: Newly allocated and 0-terminated array of child types. ++ * Returns: (array length=n_children) (transfer full): Newly allocated + */ + + +@@ -1212,7 +1217,7 @@ + + /** + * g_type_default_interface_unref: +- * @g_iface: the default vtable structure for a interface, as returned by g_type_default_interface_ref() ++ * @g_iface: (type GObject.TypeInterface): the default vtable structure for a interface, as returned by g_type_default_interface_ref() + * + * Decrements the reference count for the type corresponding to the + * interface default vtable @g_iface. If the type is dynamic, then +@@ -1235,7 +1240,7 @@ + + + /** +- * g_param_spec_int64: ++ * g_param_spec_int64: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -1587,7 +1592,7 @@ + * A variant of g_closure_new_simple() which stores @object in the + * when implementing new types of closures. + * +- * Returns: a newly allocated #GClosure ++ * Returns: (transfer full): a newly allocated #GClosure + */ + + +@@ -1736,7 +1741,7 @@ + + + /** +- * g_param_spec_param: ++ * g_param_spec_param: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -1752,7 +1757,7 @@ + + + /** +- * g_param_spec_ulong: ++ * g_param_spec_ulong: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -1956,7 +1961,7 @@ + * Obtains data which has previously been attached to @type + * with g_type_set_qdata(). + * +- * Returns: the data, or %NULL if no data was found ++ * Returns: (transfer none): the data, or %NULL if no data was found + */ + + +@@ -2057,7 +2062,7 @@ + + + /** +- * g_param_spec_gtype: ++ * g_param_spec_gtype: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -2215,12 +2220,12 @@ + /** + * g_object_class_list_properties: + * @oclass: a #GObjectClass +- * @n_properties: return location for the length of the returned array ++ * @n_properties: (out): return location for the length of the returned array + * + * Get an array of #GParamSpec* for all properties of a class. + * #GParamSpec* which should be freed after use + * +- * Returns: (array length=n_properties) (transfer full): an array of ++ * Returns: (array length=n_properties) (transfer container): an array of + */ + + +@@ -2257,8 +2262,9 @@ + * @walk_ancestors: If %TRUE, also try to find a #GParamSpec with @param_name owned by an ancestor of @owner_type. + * + * Looks up a #GParamSpec in the pool. ++ * matching #GParamSpec was found. + * +- * Returns: The found #GParamSpec, or %NULL if no matching #GParamSpec was found. ++ * Returns: (transfer none): The found #GParamSpec, or %NULL if no + */ + + +@@ -2371,7 +2377,7 @@ + + + /** +- * g_param_spec_enum: ++ * g_param_spec_enum: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -2431,7 +2437,7 @@ + + + /** +- * g_object_set_valist: ++ * g_object_set_valist: (skip) + * @object: a #GObject + * @first_property_name: name of the first property to set + * @var_args: value for the first property, followed optionally by more name/value pairs, followed by %NULL +@@ -2540,7 +2546,7 @@ + + + /** +- * g_param_spec_ref_sink: ++ * g_param_spec_ref_sink: (skip) + * @pspec: a valid #GParamSpec + * + * Convenience function to ref and sink a #GParamSpec. +@@ -2583,7 +2589,7 @@ + + + /** +- * g_param_spec_uint64: ++ * g_param_spec_uint64: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -2601,7 +2607,7 @@ + + + /** +- * g_object_remove_weak_pointer: ++ * g_object_remove_weak_pointer: (skip) + * @object: The object that is weak referenced. + * @weak_pointer_location: (inout): The memory address of a pointer. + * +@@ -2621,7 +2627,7 @@ + + + /** +- * g_param_spec_boxed: ++ * g_param_spec_boxed: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -2686,7 +2692,7 @@ + + + /** +- * g_param_spec_pointer: ++ * g_param_spec_pointer: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -2872,7 +2878,7 @@ + + /** + * g_type_class_peek_parent: +- * @g_class: The #GTypeClass structure to retrieve the parent class for. ++ * @g_class: (type GObject.TypeClass): The #GTypeClass structure to retrieve the parent class for. + * + * This is a convenience function often needed in class initializers. + * It returns the class structure of the immediate parent type of the +@@ -2883,8 +2889,9 @@ + * <programlisting> + * g_type_class_peek (g_type_parent (G_TYPE_FROM_CLASS (g_class))); + * </programlisting> ++ * of @g_class. + * +- * Returns: The parent class of @g_class. ++ * Returns: (type GObject.TypeClass) (transfer none): The parent class + */ + + +@@ -3024,7 +3031,7 @@ + + + /** +- * g_param_spec_set_qdata_full: ++ * g_param_spec_set_qdata_full: (skip) + * @pspec: the #GParamSpec to set store a user data pointer + * @quark: a #GQuark, naming the user data pointer + * @data: an opaque user data pointer +@@ -3275,14 +3282,14 @@ + * @property_name: the name of the property to look up + * + * Looks up the #GParamSpec for a property of a class. +- * doesn't have a property of that name ++ * %NULL if the class doesn't have a property of that name + * +- * Returns: the #GParamSpec for the property, or %NULL if the class ++ * Returns: (transfer none): the #GParamSpec for the property, or + */ + + + /** +- * g_value_take_param: ++ * g_value_take_param: (skip) + * @value: a valid #GValue of type %G_TYPE_PARAM + * @param: the #GParamSpec to be set + * +@@ -3426,13 +3433,14 @@ + /** + * g_type_interfaces: + * @type: The type to list interface types for. +- * @n_interfaces: Optional #guint pointer to contain the number of interface types. ++ * @n_interfaces: (out) (allow-none): Optional #guint pointer to contain the number of interface types. + * + * Return a newly allocated and 0-terminated array of type IDs, listing the + * interface types that @type conforms to. The return value has to be + * g_free()ed after use. ++ * allocated and 0-terminated array of interface types. + * +- * Returns: Newly allocated and 0-terminated array of interface types. ++ * Returns: (array length=n_interfaces) (transfer full): Newly + */ + + +@@ -3617,13 +3625,14 @@ + * g_param_spec_pool_list: + * @pool: a #GParamSpecPool + * @owner_type: the owner to look for +- * @n_pspecs_p: return location for the length of the returned array ++ * @n_pspecs_p: (out): return location for the length of the returned array + * + * Gets an array of all #GParamSpec<!-- -->s owned by @owner_type in + * the pool. +- * #GParamSpec<!-- -->s owned by @owner_type in the pool ++ * allocated array containing pointers to all #GParamSpecs ++ * owned by @owner_type in the pool + * +- * Returns: a newly allocated array containing pointers to all ++ * Returns: (array length=n_pspecs_p) (transfer container): a newly + */ + + +@@ -3849,7 +3858,7 @@ + + + /** +- * g_param_spec_uchar: ++ * g_param_spec_uchar: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -3929,9 +3938,10 @@ + * the classes reference count isn't incremented. As a consequence, this function + * may return %NULL if the class of the type passed in does not currently + * exist (hasn't been referenced before). +- * if the class does not currently exist. ++ * structure for the given type ID or %NULL if the class does not ++ * currently exist. + * +- * Returns: The #GTypeClass structure for the given type ID or %NULL ++ * Returns: (type GObject.TypeClass) (transfer none): The #GTypeClass + */ + + +@@ -3942,9 +3952,10 @@ + * + * Gets an #GList of all #GParamSpec<!-- -->s owned by @owner_type in + * the pool. +- * in the pool#GParamSpec<!-- -->s. ++ * #GList of all #GParamSpec<!-- -->s owned by @owner_type in ++ * the pool#GParamSpec<!-- -->s. + * +- * Returns: a #GList of all #GParamSpec<!-- -->s owned by @owner_type ++ * Returns: (transfer container) (element-type GObject.ParamSpec): a + */ + + +@@ -3985,7 +3996,7 @@ + + + /** +- * g_param_spec_uint: ++ * g_param_spec_uint: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -4165,7 +4176,7 @@ + /** + * g_type_query: + * @type: the #GType value of a static, classed type. +- * @query: A user provided structure that is filled in with constant values upon success. ++ * @query: (out caller-allocates): A user provided structure that is filled in with constant values upon success. + * + * Queries the type system for information about a specific type. + * This function will fill in a user-provided structure to hold +@@ -4261,7 +4272,7 @@ + * This function gets back user data pointers stored via + * g_object_set_qdata(). + * +- * Returns: The user data pointer set, or %NULL ++ * Returns: (transfer none): The user data pointer set, or %NULL + */ + + +@@ -4303,7 +4314,7 @@ + + + /** +- * g_object_weak_ref: ++ * g_object_weak_ref: (skip) + * @object: #GObject to reference weakly + * @notify: callback to invoke before the object is freed + * @data: extra data to pass to notify +@@ -4403,7 +4414,7 @@ + + + /** +- * g_param_spec_ref: ++ * g_param_spec_ref: (skip) + * @pspec: a valid #GParamSpec + * + * Increments the reference count of @pspec. +@@ -4472,10 +4483,11 @@ + * + * A more efficient version of g_type_class_peek() which works only for + * static types. +- * if the class does not currently exist or is dynamically loaded. ++ * structure for the given type ID or %NULL if the class does not ++ * currently exist or is dynamically loaded. + * + * Since: 2.4 +- * Returns: The #GTypeClass structure for the given type ID or %NULL ++ * Returns: (type GObject.TypeClass) (transfer none): The #GTypeClass + */ + + +@@ -4491,7 +4503,7 @@ + + + /** +- * g_param_spec_boolean: ++ * g_param_spec_boolean: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -4665,7 +4677,7 @@ + * function (if any was set). Usually, calling this function is only + * required to update user data pointers with a destroy notifier. + * +- * Returns: the user data pointer set, or %NULL ++ * Returns: (transfer none): the user data pointer set, or %NULL + */ + + +@@ -4699,7 +4711,7 @@ + + + /** +- * g_object_weak_unref: ++ * g_object_weak_unref: (skip) + * @object: #GObject to remove a weak reference from + * @notify: callback to search for + * @data: data to search for +@@ -5091,7 +5103,7 @@ + * + * Gets back user data pointers stored via g_param_spec_set_qdata(). + * +- * Returns: the user data pointer set, or %NULL ++ * Returns: (transfer none): the user data pointer set, or %NULL + */ + + +@@ -5283,7 +5295,7 @@ + /** + * g_value_set_object: + * @value: a valid #GValue of %G_TYPE_OBJECT derived type +- * @v_object: object value to be set ++ * @v_object: (type GObject.Object): object value to be set + * + * Set the contents of a %G_TYPE_OBJECT derived #GValue to @v_object. + * g_value_set_object() increases the reference count of @v_object +@@ -5512,7 +5524,7 @@ + + + /** +- * g_object_add_toggle_ref: ++ * g_object_add_toggle_ref: (skip) + * @object: a #GObject + * @notify: a function to call when this reference is the last reference to the object, or is no longer the last reference. + * @data: data to pass to @notify +@@ -5599,7 +5611,7 @@ + + + /** +- * g_type_register_static_simple: ++ * g_type_register_static_simple: (skip) + * @parent_type: Type from which this type will be derived. + * @type_name: 0-terminated string used as the name of the new type. + * @class_size: Size of the class structure (see #GTypeInfo) +@@ -5630,7 +5642,7 @@ + + + /** +- * g_param_spec_float: ++ * g_param_spec_float: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -5800,7 +5812,7 @@ + + + /** +- * g_param_spec_unref: ++ * g_param_spec_unref: (skip) + * @pspec: a valid #GParamSpec + * + * Decrements the reference count of a @pspec. +@@ -6172,7 +6184,7 @@ + + + /** +- * g_param_spec_flags: ++ * g_param_spec_flags: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -6232,7 +6244,7 @@ + + + /** +- * g_object_add_weak_pointer: ++ * g_object_add_weak_pointer: (skip) + * @object: The object that should be weak referenced. + * @weak_pointer_location: (inout): The memory address of a pointer. + * +@@ -6263,7 +6275,7 @@ + + + /** +- * g_param_spec_value_array: ++ * g_param_spec_value_array: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -6305,7 +6317,7 @@ + + + /** +- * g_param_spec_variant: ++ * g_param_spec_variant: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -6395,7 +6407,7 @@ + + + /** +- * g_param_spec_unichar: ++ * g_param_spec_unichar: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -6421,7 +6433,7 @@ + + + /** +- * g_object_get: ++ * g_object_get: (skip) + * @object: a #GObject + * @first_property_name: name of the first property to get + * @...: return location for the first property, followed optionally by more name/return location pairs, followed by %NULL +@@ -6535,7 +6547,7 @@ + * + * Gets a named field from the objects table of associations (see g_object_set_data()). + * +- * Returns: the data if found, or %NULL if no such data exists. ++ * Returns: (transfer none): the data if found, or %NULL if no such data exists. + */ + + +@@ -6655,7 +6667,7 @@ + + + /** +- * g_object_new_valist: ++ * g_object_new_valist: (skip) + * @object_type: the type id of the #GObject subtype to instantiate + * @first_property_name: the name of the first property + * @var_args: the value of the first property, followed optionally by more name/value pairs, followed by %NULL +@@ -6811,7 +6823,7 @@ + + + /** +- * g_value_set_param_take_ownership: ++ * g_value_set_param_take_ownership: (skip) + * @value: a valid #GValue of type %G_TYPE_PARAM + * @param: the #GParamSpec to be set + * +@@ -6832,8 +6844,8 @@ + + + /** +- * g_type_class_unref_uncached: +- * @g_class: The #GTypeClass structure to unreference. ++ * g_type_class_unref_uncached: (skip) ++ * @g_class: (type GObject.TypeClass): The #GTypeClass structure to unreference. + * + * A variant of g_type_class_unref() for use in #GTypeClassCacheFunc + * implementations. It unreferences a class without consulting the chain +@@ -6852,7 +6864,7 @@ + * property name, like "GtkContainer:border-width". This feature is + * deprecated, so you should always set @type_prefixing to %FALSE. + * +- * Returns: a newly allocated #GParamSpecPool. ++ * Returns: (transfer none): a newly allocated #GParamSpecPool. + */ + + +@@ -6989,7 +7001,7 @@ + + + /** +- * g_cclosure_new_object: ++ * g_cclosure_new_object: (skip) + * @callback_func: the function to invoke + * @object: a #GObject pointer to pass to @callback_func + * +@@ -7015,7 +7027,7 @@ + + + /** +- * g_object_remove_toggle_ref: ++ * g_object_remove_toggle_ref: (skip) + * @object: a #GObject + * @notify: a function to call when this reference is the last reference to the object, or is no longer the last reference. + * @data: data to pass to @notify +@@ -7119,7 +7131,7 @@ + + /** + * g_type_class_unref: +- * @g_class: The #GTypeClass structure to unreference. ++ * @g_class: (type GObject.TypeClass): The #GTypeClass structure to unreference. + * + * Decrements the reference count of the class structure being passed in. + * Once the last reference count of a class has been released, classes +@@ -7138,7 +7150,7 @@ + + + /** +- * g_param_spec_long: ++ * g_param_spec_long: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -7172,7 +7184,7 @@ + + + /** +- * g_value_set_object_take_ownership: ++ * g_value_set_object_take_ownership: (skip) + * @value: a valid #GValue of %G_TYPE_OBJECT derived type + * @v_object: object value to be set + * +@@ -7296,9 +7308,9 @@ + * + * Returns the #GTypePlugin structure for @type or + * %NULL if @type does not have a #GTypePlugin structure. +- * %NULL otherwise. ++ * dynamic type, %NULL otherwise. + * +- * Returns: The corresponding plugin if @type is a dynamic type, ++ * Returns: (transfer none): The corresponding plugin if @type is a + */ + + +@@ -7334,7 +7346,7 @@ + + + /** +- * g_param_spec_int: ++ * g_param_spec_int: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -7465,7 +7477,7 @@ + + + /** +- * g_object_connect: ++ * g_object_connect: (skip) + * @object: a #GObject + * @signal_spec: the spec for the first signal + * @...: #GCallback for the first signal, followed by data for the first signal, followed optionally by more signal spec/callback/data triples, followed by %NULL +@@ -7541,7 +7553,7 @@ + * NULL); + * ]| + * +- * Returns: @object ++ * Returns: (transfer none): @object + */ + + +@@ -7699,7 +7711,7 @@ + + + /** +- * g_type_add_class_cache_func: ++ * g_type_add_class_cache_func: (skip) + * @cache_data: data to be passed to @cache_func + * @cache_func: a #GTypeClassCacheFunc + * +@@ -7733,10 +7745,11 @@ + * will be the default vtable from g_type_default_interface_ref(), or, + * if you know the interface has already been loaded, + * g_type_default_interface_peek(). +- * name @property_name, or %NULL if no such property exists. ++ * interface with the name @property_name, or %NULL if no ++ * such property exists. + * + * Since: 2.4 +- * Returns: the #GParamSpec for the property of the interface with the ++ * Returns: (transfer none): the #GParamSpec for the property of the + */ + + +@@ -7990,7 +8003,7 @@ + + + /** +- * g_object_set_qdata_full: ++ * g_object_set_qdata_full: (skip) + * @object: The GObject to set store a user data pointer + * @quark: A #GQuark, naming the user data pointer + * @data: An opaque user data pointer +@@ -8021,13 +8034,14 @@ + * g_object_newv: + * @object_type: the type id of the #GObject subtype to instantiate + * @n_parameters: the length of the @parameters array +- * @parameters: an array of #GParameter ++ * @parameters: (array length=n_parameters): an array of #GParameter + * + * Creates a new instance of a #GObject subtype and sets its properties. + * Construction parameters (see #G_PARAM_CONSTRUCT, #G_PARAM_CONSTRUCT_ONLY) + * which are not explicitly specified are set to their default values. + * +- * Returns: a new instance of @object_type ++ * Rename to: g_object_new ++ * Returns: (type GObject.Object) (transfer full): a new instance of + */ + + +@@ -8038,9 +8052,9 @@ + * + * Returns the #GTypePlugin structure for the dynamic interface + * have a #GTypePlugin structure. See g_type_add_interface_dynamic(). +- * of @instance_type. ++ * interface @interface_type of @instance_type. + * +- * Returns: the #GTypePlugin for the dynamic interface @interface_type ++ * Returns: (transfer none): the #GTypePlugin for the dynamic + */ + + +@@ -8118,12 +8132,12 @@ + * and thus the partial string list would have been freed upon + * g_object_set_qdata_full(). + * +- * Returns: The user data pointer set, or %NULL ++ * Returns: (transfer full): The user data pointer set, or %NULL + */ + + + /** +- * g_object_set_qdata: ++ * g_object_set_qdata: (skip) + * @object: The GObject to set store a user data pointer + * @quark: A #GQuark, naming the user data pointer + * @data: An opaque user data pointer +@@ -8140,7 +8154,7 @@ + + + /** +- * g_type_add_interface_check: ++ * g_type_add_interface_check: (skip) + * @check_data: data to pass to @check_func + * @check_func: function to be called after each interface is initialized. + * +@@ -8238,11 +8252,11 @@ + + /** + * g_object_ref: +- * @object: a #GObject ++ * @object: (type GObject.Object): a #GObject + * + * Increases the reference count of @object. + * +- * Returns: the same @object ++ * Returns: (type GObject.Object) (transfer none): the same @object + */ + + +@@ -8281,7 +8295,7 @@ + + + /** +- * g_type_remove_interface_check: ++ * g_type_remove_interface_check: (skip) + * @check_data: callback data passed to g_type_add_interface_check() + * @check_func: callback function passed to g_type_add_interface_check() + * +@@ -8357,11 +8371,11 @@ + * Calling g_type_default_interface_ref() is useful when you + * want to make sure that signals and properties for an interface + * have been installed. +- * g_type_default_interface_unref() when you are done using +- * the interface. ++ * vtable for the interface; call g_type_default_interface_unref() ++ * when you are done using the interface. + * + * Since: 2.4 +- * Returns: the default vtable for the interface; call ++ * Returns: (type GObject.TypeInterface) (transfer none): the default + */ + + +@@ -8377,7 +8391,7 @@ + + /** + * g_object_unref: +- * @object: a #GObject ++ * @object: (type GObject.Object): a #GObject + * + * Decreases the reference count of @object. When its reference count + * drops to 0, the object is finalized (i.e. its memory is freed). +@@ -8405,7 +8419,7 @@ + + + /** +- * g_value_take_object: ++ * g_value_take_object: (skip) + * @value: a valid #GValue of %G_TYPE_OBJECT derived type + * @v_object: object value to be set + * +@@ -8597,7 +8611,7 @@ + * Remove a specified datum from the object's data associations, + * without invoking the association's destroy handler. + * +- * Returns: the data if found, or %NULL if no such data exists. ++ * Returns: (transfer full): the data if found, or %NULL if no such data exists. + */ + + +@@ -8624,7 +8638,7 @@ + + /** + * g_object_ref_sink: +- * @object: a #GObject ++ * @object: (type GObject.Object): a #GObject + * + * Increase the reference count of @object, and possibly remove the + * <link linkend="floating-ref">floating</link> reference, if @object +@@ -8636,7 +8650,7 @@ + * adds a new normal reference increasing the reference count by one. + * + * Since: 2.10 +- * Returns: @object ++ * Returns: (type GObject.Object) (transfer none): @object + */ + + +@@ -8709,7 +8723,7 @@ + + + /** +- * g_param_spec_char: ++ * g_param_spec_char: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -8864,23 +8878,24 @@ + /** + * g_object_interface_list_properties: + * @g_iface: any interface vtable for the interface, or the default vtable for the interface +- * @n_properties_p: location to store number of properties returned. ++ * @n_properties_p: (out): location to store number of properties returned. + * + * Lists the properties of an interface.Generally, the interface + * vtable passed in as @g_iface will be the default vtable from + * g_type_default_interface_ref(), or, if you know the interface has + * already been loaded, g_type_default_interface_peek(). ++ * pointer to an array of pointers to #GParamSpec + * structures. The paramspecs are owned by GLib, but the + * array should be freed with g_free() when you are done with + * it. + * + * Since: 2.4 +- * Returns: a pointer to an array of pointers to #GParamSpec ++ * Returns: (array length=n_properties_p) (transfer container): a + */ + + + /** +- * g_signal_connect_object: ++ * g_signal_connect_object: (skip) + * @instance: the instance to connect to. + * @detailed_signal: a string of the form "signal-name::detail". + * @c_handler: the #GCallback to connect. +@@ -9256,14 +9271,15 @@ + + /** + * g_type_interface_peek: +- * @instance_class: A #GTypeClass structure. ++ * @instance_class: (type GObject.TypeClass): A #GTypeClass structure. + * @iface_type: An interface ID which this class conforms to. + * + * Returns the #GTypeInterface structure of an interface to which the + * passed in class conforms. +- * by @instance_class, %NULL otherwise ++ * structure of iface_type if implemented by @instance_class, %NULL ++ * otherwise + * +- * Returns: The GTypeInterface structure of iface_type if implemented ++ * Returns: (type GObject.TypeInterface) (transfer none): The GTypeInterface + */ + + +@@ -9432,7 +9448,7 @@ + + + /** +- * g_param_spec_internal: ++ * g_param_spec_internal: (skip) + * @param_type: the #GType for the property; must be derived from #G_TYPE_PARAM + * @name: the canonical name of the property + * @nick: the nickname of the property +@@ -9495,10 +9511,10 @@ + * type. Redirection is established by creating a property + * of type #GParamSpecOverride. See g_object_class_override_property() + * for an example of the use of this capability. +- * be redirected, or %NULL if none. ++ * paramspec should be redirected, or %NULL if none. + * + * Since: 2.4 +- * Returns: paramspec to which requests on this paramspec should ++ * Returns: (transfer none): paramspec to which requests on this + */ + + +@@ -9751,7 +9767,7 @@ + + + /** +- * g_param_spec_override: ++ * g_param_spec_override: (skip) + * @name: the name of the property. + * @overridden: The property that is being overridden + * +@@ -9765,7 +9781,7 @@ + + + /** +- * g_type_value_table_peek: ++ * g_type_value_table_peek: (skip) + * @type: A #GType value. + * + * Returns the location of the #GTypeValueTable associated with @type. +@@ -9783,10 +9799,11 @@ + * + * If the interface type @g_type is currently in use, returns its + * default interface vtable. +- * if the type is not currently in use. ++ * vtable for the interface, or %NULL if the type is not currently in ++ * use. + * + * Since: 2.4 +- * Returns: the default vtable for the interface, or %NULL ++ * Returns: (type GObject.TypeInterface) (transfer none): the default + */ + + +@@ -10044,7 +10061,7 @@ + + + /** +- * g_param_spec_double: ++ * g_param_spec_double: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -10135,7 +10152,7 @@ + + + /** +- * g_param_spec_object: ++ * g_param_spec_object: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -10237,7 +10254,7 @@ + + + /** +- * g_param_spec_string: ++ * g_param_spec_string: (skip) + * @name: canonical name of the property specified + * @nick: nick name for the property specified + * @blurb: description of the property specified +@@ -10328,7 +10345,7 @@ + + + /** +- * g_object_disconnect: ++ * g_object_disconnect: (skip) + * @object: a #GObject + * @signal_spec: the spec for the first signal + * @...: #GCallback for the first signal, followed by data for the first signal, followed optionally by more signal spec/callback/data triples, followed by %NULL +diff -ru --exclude=.git work/gobject-introspection-0.10.0/girepository/girepository.h gobject-introspection/girepository/girepository.h +--- work/gobject-introspection-0.10.0/girepository/girepository.h 2010-09-07 21:40:59.000000000 +0000 ++++ girepository/girepository.h 2011-01-10 10:58:29.000000000 +0000 +@@ -110,7 +110,7 @@ + GError **error); + GITypelib * g_irepository_require_private (GIRepository *repository, + const gchar *typelib_dir, +- const gchar *namespace, ++ const gchar *namespace_, + const gchar *version, + GIRepositoryLoadFlags flags, + GError **error); +diff -ru --exclude=.git work/gobject-introspection-0.10.0/giscanner/ast.py gobject-introspection/giscanner/ast.py +--- work/gobject-introspection-0.10.0/giscanner/ast.py 2010-10-23 17:23:57.000000000 +0000 ++++ giscanner/ast.py 2011-01-10 10:58:29.000000000 +0000 +@@ -947,7 +947,10 @@ + self.writable = writable + self.construct = construct + self.construct_only = construct_only +- self.transfer = PARAM_TRANSFER_NONE ++ if transfer is None: ++ self.transfer = PARAM_TRANSFER_NONE ++ else: ++ self.transfer = transfer + + + class Callback(Callable): +diff -ru --exclude=.git work/gobject-introspection-0.10.0/giscanner/gdumpparser.py gobject-introspection/giscanner/gdumpparser.py +--- work/gobject-introspection-0.10.0/giscanner/gdumpparser.py 2010-12-08 19:50:39.000000000 +0000 ++++ giscanner/gdumpparser.py 2011-01-10 10:58:29.000000000 +0000 +@@ -419,9 +419,7 @@ + node.properties.append(ast.Property( + pspec.attrib['name'], + ast.Type.create_from_gtype_name(ctype), +- readable, writable, construct, construct_only, +- ctype, +- )) ++ readable, writable, construct, construct_only)) + node.properties = node.properties + + def _introspect_signals(self, node, xmlnode): +diff -ru --exclude=.git work/gobject-introspection-0.10.0/giscanner/girparser.py gobject-introspection/giscanner/girparser.py +--- work/gobject-introspection-0.10.0/giscanner/girparser.py 2010-09-25 13:15:20.000000000 +0000 ++++ giscanner/girparser.py 2011-01-10 10:58:29.000000000 +0000 +@@ -95,10 +95,15 @@ + + # Private + +- def _find_first_child(self, node, name): +- for child in node.getchildren(): +- if child.tag == name: +- return child ++ def _find_first_child(self, node, name_or_names): ++ if isinstance(name_or_names, str): ++ for child in node.getchildren(): ++ if child.tag == name_or_names: ++ return child ++ else: ++ for child in node.getchildren(): ++ if child.tag in name_or_names: ++ return child + return None + + def _find_children(self, node, name): +@@ -410,7 +415,8 @@ + return ast.TypeUnknown() + return ast.Type(ctype=ctype) + elif name in ['GLib.List', 'GLib.SList']: +- subchild = self._find_first_child(typenode, _corens('type')) ++ subchild = self._find_first_child(typenode, ++ map(_corens, ('callback', 'array', 'varargs', 'type'))) + if subchild is not None: + element_type = self._parse_type(typenode) + else: +@@ -504,7 +510,8 @@ + node.attrib.get('readable') != '0', + node.attrib.get('writable') == '1', + node.attrib.get('construct') == '1', +- node.attrib.get('construct-only') == '1') ++ node.attrib.get('construct-only') == '1', ++ node.attrib.get('transfer-ownership')) + self._parse_generic_attribs(node, prop) + return prop + +diff -ru --exclude=.git work/gobject-introspection-0.10.0/giscanner/introspectablepass.py gobject-introspection/giscanner/introspectablepass.py +--- work/gobject-introspection-0.10.0/giscanner/introspectablepass.py 2010-12-17 17:03:58.000000000 +0000 ++++ giscanner/introspectablepass.py 2011-01-10 10:58:29.000000000 +0000 +@@ -38,14 +38,6 @@ + self._namespace.walk(self._introspectable_callable_analysis) + self._namespace.walk(self._introspectable_pass3) + +- def _interface_vfunc_check(self, node, stack): +- if isinstance(node, ast.Interface): +- for vfunc in node.virtual_methods: +- if not vfunc.invoker: +- message.warn_node(vfunc, +-"""Virtual function %r has no known invoker""" % (vfunc.name, ), +- context=node) +- + def _parameter_warning(self, parent, param, text, position=None): + # Suppress VFunctions and Callbacks warnings for now + # they cause more problems then they are worth +@@ -183,8 +175,6 @@ + def _analyze_node(self, obj, stack): + if obj.skip: + return False +- # Combine one-pass checks here +- self._interface_vfunc_check(obj, stack) + # Our first pass for scriptability + if isinstance(obj, ast.Callable): + for param in obj.parameters: +diff -ru --exclude=.git work/gobject-introspection-0.10.0/giscanner/maintransformer.py gobject-introspection/giscanner/maintransformer.py +--- work/gobject-introspection-0.10.0/giscanner/maintransformer.py 2010-12-21 17:47:12.000000000 +0000 ++++ giscanner/maintransformer.py 2011-01-10 10:58:29.000000000 +0000 +@@ -1035,10 +1035,6 @@ + if isinstance(field, ast.Field): + field.writable = False + +- # Loop through fields to determine which are virtual +- # functions and which are signal slots by +- # assuming everything that doesn't share a name +- # with a known signal is a virtual slot. + for field in class_struct.fields: + if not isinstance(field.anonymous_node, ast.Callback): + continue +@@ -1049,15 +1045,6 @@ + firstparam_type = callback.parameters[0].type + if firstparam_type != node_type: + continue +- # Also double check we don't have a signal with this +- # name. +- matched_signal = False +- for signal in node.signals: +- if signal.name.replace('-', '_') == callback.name: +- matched_signal = True +- break +- if matched_signal: +- continue + vfunc = ast.VFunction.from_callback(callback) + vfunc.instance_parameter = callback.parameters[0] + vfunc.inherit_file_positions(callback) +diff -ru --exclude=.git work/gobject-introspection-0.10.0/tests/scanner/Foo-1.0-expected.gir gobject-introspection/tests/scanner/Foo-1.0-expected.gir +--- work/gobject-introspection-0.10.0/tests/scanner/Foo-1.0-expected.gir 2010-09-17 12:31:58.000000000 +0000 ++++ tests/scanner/Foo-1.0-expected.gir 2011-01-10 10:58:29.000000000 +0000 +@@ -664,6 +664,11 @@ + glib:get-type="foo_sub_interface_get_type" + glib:type-struct="SubInterfaceIface"> + <prerequisite name="Interface"/> ++ <virtual-method name="destroy_event"> ++ <return-value transfer-ownership="none"> ++ <type name="none" c:type="void"/> ++ </return-value> ++ </virtual-method> + <virtual-method name="do_bar" invoker="do_bar"> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> |