[glibmm] Glib, Gio: Regenerate .defs and docs.xml files



commit 51a5e47c7f8cb12b0756d0a81845746c218eb227
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date:   Fri Mar 15 15:26:44 2019 +0100

    Glib, Gio: Regenerate .defs and docs.xml files

 gio/src/gio_docs.xml            | 1094 ++++++++++++++++++++++++++++++++++++++-
 gio/src/gio_enums.defs          |   35 ++
 gio/src/gio_methods.defs        |  715 ++++++++++++++++++++++++-
 gio/src/gio_signals.defs        |   21 +-
 glib/src/glib_docs.xml          |  316 +++++++++--
 glib/src/glib_functions.defs    |   40 ++
 glib/src/gmodule_functions.defs |    4 +
 glib/src/gobject_functions.defs |   48 ++
 8 files changed, 2193 insertions(+), 80 deletions(-)
---
diff --git a/gio/src/gio_docs.xml b/gio/src/gio_docs.xml
index e90e13e7..37cc29a5 100644
--- a/gio/src/gio_docs.xml
+++ b/gio/src/gio_docs.xml
@@ -2651,8 +2651,8 @@ the user before returning from the signal handler. If you want to
 let the user decide whether or not to accept the certificate, you
 would have to return %FALSE from the signal handler on the first
 attempt, and then after the connection attempt returns a
-%G_TLS_ERROR_HANDSHAKE, you can interact with the user, and if
-the user decides to accept the certificate, remember that fact,
+%G_TLS_ERROR_BAD_CERTIFICATE, you can interact with the user, and
+if the user decides to accept the certificate, remember that fact,
 create a new connection, and return %TRUE from the signal handler
 the next time.
 
@@ -2685,6 +2685,17 @@ no one else overrides it.
 </return>
 </signal>
 
+<property name="GDtlsConnection:advertised-protocols">
+<description>
+The list of application-layer protocols that the connection
+advertises that it is willing to speak. See
+g_dtls_connection_set_advertised_protocols().
+
+Since: 2.60
+
+</description>
+</property>
+
 <property name="GDtlsConnection:base-socket">
 <description>
 The #GDatagramBased that the connection wraps. Note that this may be any
@@ -2727,6 +2738,16 @@ Since: 2.48
 </description>
 </property>
 
+<property name="GDtlsConnection:negotiated-protocol">
+<description>
+The application-layer protocol negotiated during the TLS
+handshake. See g_dtls_connection_get_negotiated_protocol().
+
+Since: 2.60
+
+</description>
+</property>
+
 <property name="GDtlsConnection:peer-certificate">
 <description>
 The connection's peer's certificate, after the TLS handshake has
@@ -3274,6 +3295,9 @@ if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_FAILED))
 but should instead treat all unrecognized error codes the same as
 #G_IO_ERROR_FAILED.
 
+See also #GPollableReturn for a cheaper way of returning
+%G_IO_ERROR_WOULD_BLOCK to callers without allocating a #GError.
+
 </description>
 <parameters>
 <parameter name="G_IO_ERROR_FAILED">
@@ -3644,6 +3668,45 @@ Since: 2.32
 </description>
 </property>
 
+<property name="GKeyfileSettingsBackend:default-dir">
+<description>
+The directory where the system defaults and locks are located.
+
+Defaults to `/etc/glib-2.0/settings`.
+
+</description>
+</property>
+
+<property name="GKeyfileSettingsBackend:filename">
+<description>
+The location where the settings are stored on disk.
+
+Defaults to `$XDG_CONFIG_HOME/glib-2.0/settings/keyfile`.
+
+</description>
+</property>
+
+<property name="GKeyfileSettingsBackend:root-group">
+<description>
+If @root_group is non-%NULL then it specifies the name of the keyfile
+group used for keys that are written directly below the root path.
+
+Defaults to NULL.
+
+</description>
+</property>
+
+<property name="GKeyfileSettingsBackend:root-path">
+<description>
+All settings read to or written from the backend must fall under the
+path given in @root_path (which must start and end with a slash and
+not contain two consecutive slashes).  @root_path may be &quot;/&quot;.
+
+Defaults to &quot;/&quot;.
+
+</description>
+</property>
+
 <signal name="GListModel::items-changed">
 <description>
 This signal is emitted whenever items were added or removed to
@@ -4360,6 +4423,37 @@ g_permission_release().
 </description>
 </property>
 
+<enum name="GPollableReturn">
+<description>
+Return value for various IO operations that signal errors via the
+return value and not necessarily via a #GError.
+
+This enum exists to be able to return errors to callers without having to
+allocate a #GError. Allocating #GErrors can be quite expensive for
+regularly happening errors like %G_IO_ERROR_WOULD_BLOCK.
+
+In case of %G_POLLABLE_RETURN_FAILED a #GError should be set for the
+operation to give details about the error that happened.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="G_POLLABLE_RETURN_FAILED">
+<parameter_description> Generic error condition for when an operation fails.
+</parameter_description>
+</parameter>
+<parameter name="G_POLLABLE_RETURN_OK">
+<parameter_description> The operation was successfully finished.
+</parameter_description>
+</parameter>
+<parameter name="G_POLLABLE_RETURN_WOULD_BLOCK">
+<parameter_description> The operation would block.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <property name="GPropertyAction:enabled">
 <description>
 If @action is currently enabled.
@@ -4524,6 +4618,29 @@ be looked up due to a network error or similar problem
 </parameters>
 </enum>
 
+<enum name="GResolverNameLookupFlags">
+<description>
+Flags to modify lookup behavior.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT">
+<parameter_description> default behavior (same as g_resolver_lookup_by_name())
+</parameter_description>
+</parameter>
+<parameter name="G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY">
+<parameter_description> only resolve ipv4 addresses
+</parameter_description>
+</parameter>
+<parameter name="G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY">
+<parameter_description> only resolve ipv6 addresses
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GResolverRecordType">
 <description>
 The type of record that g_resolver_lookup_records() or
@@ -5918,8 +6035,8 @@ the user before returning from the signal handler. If you want to
 let the user decide whether or not to accept the certificate, you
 would have to return %FALSE from the signal handler on the first
 attempt, and then after the connection attempt returns a
-%G_TLS_ERROR_HANDSHAKE, you can interact with the user, and if
-the user decides to accept the certificate, remember that fact,
+%G_TLS_ERROR_BAD_CERTIFICATE, you can interact with the user, and
+if the user decides to accept the certificate, remember that fact,
 create a new connection, and return %TRUE from the signal handler
 the next time.
 
@@ -5952,6 +6069,17 @@ no one else overrides it.
 </return>
 </signal>
 
+<property name="GTlsConnection:advertised-protocols">
+<description>
+The list of application-layer protocols that the connection
+advertises that it is willing to speak. See
+g_tls_connection_set_advertised_protocols().
+
+Since: 2.60
+
+</description>
+</property>
+
 <property name="GTlsConnection:base-io-stream">
 <description>
 The #GIOStream that the connection wraps. The connection holds a reference
@@ -5997,6 +6125,16 @@ Since: 2.30
 </description>
 </property>
 
+<property name="GTlsConnection:negotiated-protocol">
+<description>
+The application-layer protocol negotiated during the TLS
+handshake. See g_tls_connection_get_negotiated_protocol().
+
+Since: 2.60
+
+</description>
+</property>
+
 <property name="GTlsConnection:peer-certificate">
 <description>
 The connection's peer's certificate, after the TLS handshake has
@@ -6112,7 +6250,8 @@ Since: 2.28
 </parameter_description>
 </parameter>
 <parameter name="G_TLS_ERROR_BAD_CERTIFICATE">
-<parameter_description> A certificate could not be parsed
+<parameter_description> The certificate presented could not
+be parsed or failed validation.
 </parameter_description>
 </parameter>
 <parameter name="G_TLS_ERROR_NOT_TLS">
@@ -8172,6 +8311,10 @@ registered to handle the specified uri. Synchronous I/O
 is done on the uri to detect the type of the file if
 required.
 
+The D-Bus–activated applications don't have to be started if your application
+terminates too soon after this function. To prevent this, use
+g_app_info_launch_default_for_uri() instead.
+
 
 </description>
 <parameters>
@@ -8201,6 +8344,10 @@ error information in the case where the application is
 sandboxed and the portal may present an application chooser
 dialog to the user.
 
+This is also useful if you want to be sure that the D-Bus–activated
+applications are really started before termination and if you are interested
+in receiving error information from their activation.
+
 Since: 2.50
 
 </description>
@@ -8288,6 +8435,73 @@ no way to detect this.
 </return>
 </function>
 
+<function name="g_app_info_launch_uris_async">
+<description>
+Async version of g_app_info_launch_uris().
+
+The @callback is invoked immediately after the application launch, but it
+waits for activation in case of D-Bus–activated applications and also provides
+extended error information for sandboxed applications, see notes for
+g_app_info_launch_default_for_uri_async().
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
+</parameter_description>
+</parameter>
+<parameter name="uris">
+<parameter_description> a #GList containing URIs to launch.
+</parameter_description>
+</parameter>
+<parameter name="context">
+<parameter_description> a #GAppLaunchContext or %NULL
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is done
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data to pass to @callback
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_app_info_launch_uris_finish">
+<description>
+Finishes a g_app_info_launch_uris_async() operation.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="appinfo">
+<parameter_description> a #GAppInfo
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE on successful launch, %FALSE otherwise.
+
+</return>
+</function>
+
 <function name="g_app_info_monitor_get">
 <description>
 Gets the #GAppInfoMonitor for the current thread-default main
@@ -12104,6 +12318,22 @@ object with g_object_unref()
 </return>
 </function>
 
+<function name="g_content_type_get_mime_dirs">
+<description>
+Get the list of directories which MIME data is loaded from. See
+g_content_type_set_mime_dirs() for details.
+
+Since: 2.60
+
+</description>
+<parameters>
+</parameters>
+<return> %NULL-terminated list of
+directories to load MIME data from, including any `mime/` subdirectory,
+and with the first directory to try listed first
+</return>
+</function>
+
 <function name="g_content_type_get_mime_type">
 <description>
 Gets the mime type for the content type, if one is registered.
@@ -12267,11 +12497,51 @@ or octet-stream.
 </return>
 </function>
 
+<function name="g_content_type_set_mime_dirs">
+<description>
+Set the list of directories used by GIO to load the MIME database.
+If @dirs is %NULL, the directories used are the default:
+
+- the `mime` subdirectory of the directory in `$XDG_DATA_HOME`
+- the `mime` subdirectory of every directory in `$XDG_DATA_DIRS`
+
+This function is intended to be used when writing tests that depend on
+information stored in the MIME database, in order to control the data.
+
+Typically, in case your tests use %G_TEST_OPTION_ISOLATE_DIRS, but they
+depend on the system’s MIME database, you should call this function
+with @dirs set to %NULL before calling g_test_init(), for instance:
+
+|[&lt;!-- language=&quot;C&quot; --&gt;
+// Load MIME data from the system
+g_content_type_set_mime_dirs (NULL);
+// Isolate the environment
+g_test_init (&amp;argc, &amp;argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
+
+…
+
+return g_test_run ();
+]|
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="dirs">
+<parameter_description> %NULL-terminated list of
+directories to load MIME data from, including any `mime/` subdirectory,
+and with the first directory to try listed first
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="g_content_types_get_registered">
 <description>
 Gets a list of strings containing all the registered content types
 known to the system. The list and its data should be freed using
-g_list_free_full (list, g_free).
+`g_list_free_full (list, g_free)`.
 
 
 </description>
@@ -15293,6 +15563,24 @@ closed by the remote peer
 </return>
 </function>
 
+<function name="g_dbus_connection_get_flags">
+<description>
+Gets the flags used to construct this connection
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="connection">
+<parameter_description> a #GDBusConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> zero or more flags from the #GDBusConnectionFlags enumeration
+
+</return>
+</function>
+
 <function name="g_dbus_connection_get_guid">
 <description>
 The GUID of the peer performing the role of server when
@@ -22912,6 +23200,30 @@ Since: 2.48
 </return>
 </function>
 
+<function name="g_dtls_connection_get_negotiated_protocol">
+<description>
+Gets the name of the application-layer protocol negotiated during
+the handshake.
+
+If the peer did not use the ALPN extension, or did not advertise a
+protocol that matched one of @conn's protocols, or the TLS backend
+does not support ALPN, then this will be %NULL. See
+g_dtls_connection_set_advertised_protocols().
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GDtlsConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> the negotiated protocol, or %NULL
+
+</return>
+</function>
+
 <function name="g_dtls_connection_get_peer_certificate">
 <description>
 Gets @conn's peer's certificate after the handshake has completed.
@@ -23106,6 +23418,36 @@ case @error will be set.
 </return>
 </function>
 
+<function name="g_dtls_connection_set_advertised_protocols">
+<description>
+Sets the list of application-layer protocols to advertise that the
+caller is willing to speak on this connection. The
+Application-Layer Protocol Negotiation (ALPN) extension will be
+used to negotiate a compatible protocol with the peer; use
+g_dtls_connection_get_negotiated_protocol() to find the negotiated
+protocol after the handshake.  Specifying %NULL for the the value
+of @protocols will disable ALPN negotiation.
+
+See [IANA TLS ALPN Protocol 
IDs](https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids)
+for a list of registered protocol IDs.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GDtlsConnection
+</parameter_description>
+</parameter>
+<parameter name="protocols">
+<parameter_description> a %NULL-terminated
+array of ALPN protocol names (eg, &quot;http/1.1&quot;, &quot;h2&quot;), or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="g_dtls_connection_set_certificate">
 <description>
 This sets the certificate that @conn will present to its peer
@@ -26754,7 +27096,8 @@ Sinze: 2.22
 </parameter_description>
 </parameter>
 <parameter name="attr_value">
-<parameter_description> a %NULL terminated array of UTF-8 strings.
+<parameter_description> a %NULL
+terminated array of UTF-8 strings.
 </parameter_description>
 </parameter>
 </parameters>
@@ -28975,6 +29318,62 @@ When you are done with it, release it with g_object_unref()
 </return>
 </function>
 
+<function name="g_file_query_default_handler_async">
+<description>
+Async version of g_file_query_default_handler().
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> a #GFile to open
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> a #GAsyncReadyCallback to call when the request is done
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data to pass to @callback
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_file_query_default_handler_finish">
+<description>
+Finishes a g_file_query_default_handler_async() operation.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="file">
+<parameter_description> a #GFile to open
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GAppInfo if the handle was found,
+%NULL if there were errors.
+When you are done with it, release it with g_object_unref()
+
+</return>
+</function>
+
 <function name="g_file_query_exists">
 <description>
 Utility function to check if a particular file exists. This is
@@ -33891,6 +34290,11 @@ syntax of the key file format.  For example, if you have '[' or ']'
 characters in your path names or '=' in your key names you may be in
 trouble.
 
+The backend reads default values from a keyfile called `defaults` in
+the directory specified by the #GKeyfileSettingsBackend:defaults-dir property,
+and a list of locked keys from a text file with the name `locks` in
+the same location.
+
 
 </description>
 <parameters>
@@ -39144,6 +39548,323 @@ ignore.
 </return>
 </function>
 
+<function name="g_output_stream_writev">
+<description>
+Tries to write the bytes contained in the @n_vectors @vectors into the
+stream. Will block during the operation.
+
+If @n_vectors is 0 or the sum of all bytes in @vectors is 0, returns 0 and
+does nothing.
+
+On success, the number of bytes written to the stream is returned.
+It is not an error if this is not the same as the requested size, as it
+can happen e.g. on a partial I/O error, or if there is not enough
+storage in the stream. All writes block until at least one byte
+is written or an error occurs; 0 is never returned (unless
+@n_vectors is 0 or the sum of all bytes in @vectors is 0).
+
+If @cancellable is not %NULL, then the operation can be cancelled by
+triggering the cancellable object from another thread. If the operation
+was cancelled, the error %G_IO_ERROR_CANCELLED will be returned. If an
+operation was partially finished when the operation was cancelled the
+partial result will be returned, without an error.
+
+Some implementations of g_output_stream_writev() may have limitations on the
+aggregate buffer size, and will return %G_IO_ERROR_INVALID_ARGUMENT if these
+are exceeded. For example, when writing to a local file on UNIX platforms,
+the aggregate buffer size must not exceed %G_MAXSSIZE bytes.
+
+Virtual: writev_fn
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> the buffer containing the #GOutputVectors to write.
+</parameter_description>
+</parameter>
+<parameter name="n_vectors">
+<parameter_description> the number of vectors to write
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that were
+written to the stream
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional cancellable object
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occurring, or %NULL to ignore
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE on success, %FALSE if there was an error
+
+</return>
+</function>
+
+<function name="g_output_stream_writev_all">
+<description>
+Tries to write the bytes contained in the @n_vectors @vectors into the
+stream. Will block during the operation.
+
+This function is similar to g_output_stream_writev(), except it tries to
+write as many bytes as requested, only stopping on an error.
+
+On a successful write of all @n_vectors vectors, %TRUE is returned, and
+@bytes_written is set to the sum of all the sizes of @vectors.
+
+If there is an error during the operation %FALSE is returned and @error
+is set to indicate the error status.
+
+As a special exception to the normal conventions for functions that
+use #GError, if this function returns %FALSE (and sets @error) then
+@bytes_written will be set to the number of bytes that were
+successfully written before the error was encountered.  This
+functionality is only available from C. If you need it from another
+language then you must write your own loop around
+g_output_stream_write().
+
+The content of the individual elements of @vectors might be changed by this
+function.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> the buffer containing the #GOutputVectors to write.
+</parameter_description>
+</parameter>
+<parameter name="n_vectors">
+<parameter_description> the number of vectors to write
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that were
+written to the stream
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> location to store the error occurring, or %NULL to ignore
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE on success, %FALSE if there was an error
+
+</return>
+</function>
+
+<function name="g_output_stream_writev_all_async">
+<description>
+Request an asynchronous write of the bytes contained in the @n_vectors @vectors into
+the stream. When the operation is finished @callback will be called.
+You can then call g_output_stream_writev_all_finish() to get the result of the
+operation.
+
+This is the asynchronous version of g_output_stream_writev_all().
+
+Call g_output_stream_writev_all_finish() to collect the result.
+
+Any outstanding I/O request with higher priority (lower numerical
+value) will be executed before an outstanding request with lower
+priority. Default priority is %G_PRIORITY_DEFAULT.
+
+Note that no copy of @vectors will be made, so it must stay valid
+until @callback is called. The content of the individual elements
+of @vectors might be changed by this function.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> A #GOutputStream
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> the buffer containing the #GOutputVectors to write.
+</parameter_description>
+</parameter>
+<parameter name="n_vectors">
+<parameter_description> the number of vectors to write
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the I/O priority of the request
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_output_stream_writev_all_finish">
+<description>
+Finishes an asynchronous stream write operation started with
+g_output_stream_writev_all_async().
+
+As a special exception to the normal conventions for functions that
+use #GError, if this function returns %FALSE (and sets @error) then
+@bytes_written will be set to the number of bytes that were
+successfully written before the error was encountered.  This
+functionality is only available from C.  If you need it from another
+language then you must write your own loop around
+g_output_stream_writev_async().
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GOutputStream
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that were written to the stream
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occurring, or %NULL to ignore.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE on success, %FALSE if there was an error
+
+</return>
+</function>
+
+<function name="g_output_stream_writev_async">
+<description>
+Request an asynchronous write of the bytes contained in @n_vectors @vectors into
+the stream. When the operation is finished @callback will be called.
+You can then call g_output_stream_writev_finish() to get the result of the
+operation.
+
+During an async request no other sync and async calls are allowed,
+and will result in %G_IO_ERROR_PENDING errors.
+
+On success, the number of bytes written will be passed to the
+@callback. It is not an error if this is not the same as the
+requested size, as it can happen e.g. on a partial I/O error,
+but generally we try to write as many bytes as requested.
+
+You are guaranteed that this method will never fail with
+%G_IO_ERROR_WOULD_BLOCK — if @stream can't accept more data, the
+method will just wait until this changes.
+
+Any outstanding I/O request with higher priority (lower numerical
+value) will be executed before an outstanding request with lower
+priority. Default priority is %G_PRIORITY_DEFAULT.
+
+The asynchronous methods have a default fallback that uses threads
+to implement asynchronicity, so they are optional for inheriting
+classes. However, if you override one you must override all.
+
+For the synchronous, blocking version of this function, see
+g_output_stream_writev().
+
+Note that no copy of @vectors will be made, so it must stay valid
+until @callback is called.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> A #GOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> the buffer containing the #GOutputVectors to write.
+</parameter_description>
+</parameter>
+<parameter name="n_vectors">
+<parameter_description> the number of vectors to write
+</parameter_description>
+</parameter>
+<parameter name="io_priority">
+<parameter_description> the I/O priority of the request.
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> optional #GCancellable object, %NULL to ignore.
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call when the request is satisfied
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> the data to pass to callback function
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_output_stream_writev_finish">
+<description>
+Finishes a stream writev operation.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GOutputStream.
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> a #GAsyncResult.
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that were written to the stream
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError location to store the error occurring, or %NULL to
+ignore.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE on success, %FALSE if there was an error
+
+</return>
+</function>
+
 <function name="g_permission_acquire">
 <description>
 Attempts to acquire the permission represented by @permission.
@@ -39660,7 +40381,8 @@ may happen if you call this method after a source triggers due
 to having been cancelled.
 
 Also note that if %G_IO_ERROR_WOULD_BLOCK is returned some underlying
-transports like D/TLS require that you send the same @buffer and @count.
+transports like D/TLS require that you re-send the same @buffer and
+@count in the next write call.
 
 Virtual: write_nonblocking
 
@@ -39693,6 +40415,65 @@ data from
 </return>
 </function>
 
+<function name="g_pollable_output_stream_writev_nonblocking">
+<description>
+Attempts to write the bytes contained in the @n_vectors @vectors to @stream,
+as with g_output_stream_writev(). If @stream is not currently writable,
+this will immediately return %@G_POLLABLE_RETURN_WOULD_BLOCK, and you can
+use g_pollable_output_stream_create_source() to create a #GSource
+that will be triggered when @stream is writable. @error will *not* be
+set in that case.
+
+Note that since this method never blocks, you cannot actually
+use @cancellable to cancel it. However, it will return an error
+if @cancellable has already been cancelled when you call, which
+may happen if you call this method after a source triggers due
+to having been cancelled.
+
+Also note that if %G_POLLABLE_RETURN_WOULD_BLOCK is returned some underlying
+transports like D/TLS require that you re-send the same @vectors and
+@n_vectors in the next write call.
+
+Virtual: writev_nonblocking
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="stream">
+<parameter_description> a #GPollableOutputStream
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> the buffer containing the #GOutputVectors to write.
+</parameter_description>
+</parameter>
+<parameter name="n_vectors">
+<parameter_description> the number of vectors to write
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that were
+written to the stream
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %@G_POLLABLE_RETURN_OK on success, %G_POLLABLE_RETURN_WOULD_BLOCK
+if the stream is not currently writable (and @error is *not* set), or
+%G_POLLABLE_RETURN_FAILED if there was an error in which case @error will
+be set.
+
+</return>
+</function>
+
 <function name="g_pollable_source_new">
 <description>
 Utility method for #GPollableInputStream and #GPollableOutputStream
@@ -40771,6 +41552,117 @@ for more details.
 </return>
 </function>
 
+<function name="g_resolver_lookup_by_name_with_flags">
+<description>
+This differs from g_resolver_lookup_by_name() in that you can modify
+the lookup behavior with @flags. For example this can be used to limit
+results with #G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="resolver">
+<parameter_description> a #GResolver
+</parameter_description>
+</parameter>
+<parameter name="hostname">
+<parameter_description> the hostname to look up
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> extra #GResolverNameLookupFlags for the lookup
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> a non-empty #GList
+of #GInetAddress, or %NULL on error. You
+must unref each of the addresses and free the list when you are
+done with it. (You can use g_resolver_free_addresses() to do this.)
+
+</return>
+</function>
+
+<function name="g_resolver_lookup_by_name_with_flags_async">
+<description>
+Begins asynchronously resolving @hostname to determine its
+associated IP address(es), and eventually calls @callback, which
+must call g_resolver_lookup_by_name_with_flags_finish() to get the result.
+See g_resolver_lookup_by_name() for more details.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="resolver">
+<parameter_description> a #GResolver
+</parameter_description>
+</parameter>
+<parameter name="hostname">
+<parameter_description> the hostname to look up the address of
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> extra #GResolverNameLookupFlags for the lookup
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a #GCancellable, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> callback to call after resolution completes
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data for @callback
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_resolver_lookup_by_name_with_flags_finish">
+<description>
+Retrieves the result of a call to
+g_resolver_lookup_by_name_with_flags_async().
+
+If the DNS resolution failed, @error (if non-%NULL) will be set to
+a value from #GResolverError. If the operation was cancelled,
+@error will be set to %G_IO_ERROR_CANCELLED.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="resolver">
+<parameter_description> a #GResolver
+</parameter_description>
+</parameter>
+<parameter name="result">
+<parameter_description> the result passed to your #GAsyncReadyCallback
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GList
+of #GInetAddress, or %NULL on error. See g_resolver_lookup_by_name()
+for more details.
+
+</return>
+</function>
+
 <function name="g_resolver_lookup_records">
 <description>
 Synchronously performs a DNS record lookup for the given @rrname and returns
@@ -45242,6 +46134,8 @@ Asynchronously retrieves the next #GSocketAddress from @enumerator
 and then calls @callback, which must call
 g_socket_address_enumerator_next_finish() to get the result.
 
+It is an error to call this multiple times before the previous callback has finished.
+
 </description>
 <parameters>
 <parameter name="enumerator">
@@ -46496,21 +47390,21 @@ Since: 2.22
 
 <function name="g_socket_condition_timed_wait">
 <description>
-Waits for up to @timeout microseconds for @condition to become true
+Waits for up to @timeout_us microseconds for @condition to become true
 on @socket. If the condition is met, %TRUE is returned.
 
 If @cancellable is cancelled before the condition is met, or if
-@timeout (or the socket's #GSocket:timeout) is reached before the
+@timeout_us (or the socket's #GSocket:timeout) is reached before the
 condition is met, then %FALSE is returned and @error, if non-%NULL,
 is set to the appropriate value (%G_IO_ERROR_CANCELLED or
 %G_IO_ERROR_TIMED_OUT).
 
 If you don't want a timeout, use g_socket_condition_wait().
-(Alternatively, you can pass -1 for @timeout.)
+(Alternatively, you can pass -1 for @timeout_us.)
 
-Note that although @timeout is in microseconds for consistency with
+Note that although @timeout_us is in microseconds for consistency with
 other GLib APIs, this function actually only has millisecond
-resolution, and the behavior is undefined if @timeout is not an
+resolution, and the behavior is undefined if @timeout_us is not an
 exact number of milliseconds.
 
 Since: 2.32
@@ -46525,7 +47419,7 @@ Since: 2.32
 <parameter_description> a #GIOCondition mask to wait for
 </parameter_description>
 </parameter>
-<parameter name="timeout">
+<parameter name="timeout_us">
 <parameter_description> the maximum time (in microseconds) to wait, or -1
 </parameter_description>
 </parameter>
@@ -48770,6 +49664,73 @@ on error
 </return>
 </function>
 
+<function name="g_socket_send_message_with_timeout">
+<description>
+This behaves exactly the same as g_socket_send_message(), except that
+the choice of timeout behavior is determined by the @timeout_us argument
+rather than by @socket's properties.
+
+On error %G_POLLABLE_RETURN_FAILED is returned and @error is set accordingly, or
+if the socket is currently not writable %G_POLLABLE_RETURN_WOULD_BLOCK is
+returned. @bytes_written will contain 0 in both cases.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="socket">
+<parameter_description> a #GSocket
+</parameter_description>
+</parameter>
+<parameter name="address">
+<parameter_description> a #GSocketAddress, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="vectors">
+<parameter_description> an array of #GOutputVector structs
+</parameter_description>
+</parameter>
+<parameter name="num_vectors">
+<parameter_description> the number of elements in @vectors, or -1
+</parameter_description>
+</parameter>
+<parameter name="messages">
+<parameter_description> a pointer to an
+array of #GSocketControlMessages, or %NULL.
+</parameter_description>
+</parameter>
+<parameter name="num_messages">
+<parameter_description> number of elements in @messages, or -1.
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> an int containing #GSocketMsgFlags flags
+</parameter_description>
+</parameter>
+<parameter name="timeout_us">
+<parameter_description> the maximum time (in microseconds) to wait, or -1
+</parameter_description>
+</parameter>
+<parameter name="bytes_written">
+<parameter_description> location to store the number of bytes that were written to the socket
+</parameter_description>
+</parameter>
+<parameter name="cancellable">
+<parameter_description> a %GCancellable or %NULL
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> #GError for error reporting, or %NULL to ignore.
+</parameter_description>
+</parameter>
+</parameters>
+<return> %G_POLLABLE_RETURN_OK if all data was successfully written,
+%G_POLLABLE_RETURN_WOULD_BLOCK if the socket is currently not writable, or
+%G_POLLABLE_RETURN_FAILED if an error happened and @error is set.
+
+</return>
+</function>
+
 <function name="g_socket_send_messages">
 <description>
 Send multiple data messages from @socket in one go.  This is the most
@@ -49722,6 +50683,9 @@ Complete an invocation of g_subprocess_communicate_async().
 Like g_subprocess_communicate(), but validates the output of the
 process as UTF-8, and returns it as a regular NUL terminated string.
 
+On error, @stdout_buf and @stderr_buf will be set to undefined values and
+should not be used.
+
 </description>
 <parameters>
 <parameter name="subprocess">
@@ -50866,6 +51830,9 @@ to wait for a #GSource to trigger. Attaches @source to @task's
 #GMainContext with @task's [priority][io-priority], and sets @source's
 callback to @callback, with @task as the callback's `user_data`.
 
+It will set the @source’s name to the task’s name (as set with
+g_task_set_name()), if one has been set.
+
 This takes a reference on @task until @source is destroyed.
 
 Since: 2.36
@@ -50967,6 +51934,23 @@ Since: 2.36
 </return>
 </function>
 
+<function name="g_task_get_name">
+<description>
+Gets @task’s name. See g_task_set_name().
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="task">
+<parameter_description> a #GTask
+</parameter_description>
+</parameter>
+</parameters>
+<return> @task’s name, or %NULL
+</return>
+</function>
+
 <function name="g_task_get_priority">
 <description>
 Gets @task's priority
@@ -51599,6 +52583,34 @@ its #GCancellable for you.
 <return></return>
 </function>
 
+<function name="g_task_set_name">
+<description>
+Sets @task’s name, used in debugging and profiling. The name defaults to
+%NULL.
+
+The task name should describe in a human readable way what the task does.
+For example, ‘Open file’ or ‘Connect to network host’. It is used to set the
+name of the #GSource used for idle completion of the task.
+
+This function may only be called before the @task is first used in a thread
+other than the one it was constructed in.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="task">
+<parameter_description> a #GTask
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> a human readable name for the task, or %NULL to unset it
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="g_task_set_priority">
 <description>
 Sets @task's priority. If you do not call this, it will default to
@@ -52888,6 +53900,30 @@ Since: 2.30
 </return>
 </function>
 
+<function name="g_tls_connection_get_negotiated_protocol">
+<description>
+Gets the name of the application-layer protocol negotiated during
+the handshake.
+
+If the peer did not use the ALPN extension, or did not advertise a
+protocol that matched one of @conn's protocols, or the TLS backend
+does not support ALPN, then this will be %NULL. See
+g_tls_connection_set_advertised_protocols().
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
+</parameter_description>
+</parameter>
+</parameters>
+<return> the negotiated protocol, or %NULL
+
+</return>
+</function>
+
 <function name="g_tls_connection_get_peer_certificate">
 <description>
 Gets @conn's peer's certificate after the handshake has completed.
@@ -53106,6 +54142,36 @@ case @error will be set.
 </return>
 </function>
 
+<function name="g_tls_connection_set_advertised_protocols">
+<description>
+Sets the list of application-layer protocols to advertise that the
+caller is willing to speak on this connection. The
+Application-Layer Protocol Negotiation (ALPN) extension will be
+used to negotiate a compatible protocol with the peer; use
+g_tls_connection_get_negotiated_protocol() to find the negotiated
+protocol after the handshake.  Specifying %NULL for the the value
+of @protocols will disable ALPN negotiation.
+
+See [IANA TLS ALPN Protocol 
IDs](https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids)
+for a list of registered protocol IDs.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GTlsConnection
+</parameter_description>
+</parameter>
+<parameter name="protocols">
+<parameter_description> a %NULL-terminated
+array of ALPN protocol names (eg, &quot;http/1.1&quot;, &quot;h2&quot;), or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="g_tls_connection_set_certificate">
 <description>
 This sets the certificate that @conn will present to its peer
diff --git a/gio/src/gio_enums.defs b/gio/src/gio_enums.defs
index b4e01467..1043c019 100644
--- a/gio/src/gio_enums.defs
+++ b/gio/src/gio_enums.defs
@@ -1646,6 +1646,41 @@
   )
 )
 
+;; Original typedef:
+;; typedef enum {
+;;   G_POLLABLE_RETURN_FAILED       = 0,
+;;   G_POLLABLE_RETURN_OK           = 1,
+;;   G_POLLABLE_RETURN_WOULD_BLOCK  = -G_IO_ERROR_WOULD_BLOCK
+;; } GPollableReturn;
+
+(define-enum-extended PollableReturn
+  (in-module "G")
+  (c-name "GPollableReturn")
+  (values
+    '("failed" "G_POLLABLE_RETURN_FAILED" "0")
+    '("ok" "G_POLLABLE_RETURN_OK" "1")
+  )
+)
+
+;; From gresolver.h
+
+;; Original typedef:
+;; typedef enum {
+;;   G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT = 0,
+;;   G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY = 1 << 0,
+;;   G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY = 1 << 1,
+;; } GResolverNameLookupFlags;
+
+(define-flags-extended ResolverNameLookupFlags
+  (in-module "G")
+  (c-name "GResolverNameLookupFlags")
+  (values
+    '("default" "G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT" "0x0")
+    '("ipv4-only" "G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY" "1 << 0")
+    '("ipv6-only" "G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY" "1 << 1")
+  )
+)
+
 ;; From gsettings.h
 
 ;; Original typedef:
diff --git a/gio/src/gio_methods.defs b/gio/src/gio_methods.defs
index 832d592c..c8570555 100644
--- a/gio/src/gio_methods.defs
+++ b/gio/src/gio_methods.defs
@@ -1563,6 +1563,8 @@
     '("send-environment" "G_APPLICATION_SEND_ENVIRONMENT")
     '("non-unique" "G_APPLICATION_NON_UNIQUE")
     '("can-override-app-id" "G_APPLICATION_CAN_OVERRIDE_APP_ID")
+    '("allow-replacement" "G_APPLICATION_ALLOW_REPLACEMENT")
+    '("replace" "G_APPLICATION_REPLACE")
   )
 )
 
@@ -1768,6 +1770,28 @@
   )
 )
 
+(define-enum Return
+  (in-module "GPollable")
+  (c-name "GPollableReturn")
+  (gtype-id "G_TYPE_POLLABLE_RETURN")
+  (values
+    '("failed" "G_POLLABLE_RETURN_FAILED")
+    '("ok" "G_POLLABLE_RETURN_OK")
+    '("would-block" "G_POLLABLE_RETURN_WOULD_BLOCK")
+  )
+)
+
+(define-flags NameLookupFlags
+  (in-module "GResolver")
+  (c-name "GResolverNameLookupFlags")
+  (gtype-id "G_TYPE_RESOLVER_NAME_LOOKUP_FLAGS")
+  (values
+    '("default" "G_RESOLVER_NAME_LOOKUP_FLAGS_DEFAULT")
+    '("ipv4-only" "G_RESOLVER_NAME_LOOKUP_FLAGS_IPV4_ONLY")
+    '("ipv6-only" "G_RESOLVER_NAME_LOOKUP_FLAGS_IPV6_ONLY")
+  )
+)
+
 (define-flags BindFlags
   (in-module "GSettings")
   (c-name "GSettingsBindFlags")
@@ -2195,6 +2219,29 @@
   )
 )
 
+(define-method launch_uris_async
+  (of-object "GAppInfo")
+  (c-name "g_app_info_launch_uris_async")
+  (return-type "none")
+  (parameters
+    '("GList*" "uris")
+    '("GAppLaunchContext*" "context")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-method launch_uris_finish
+  (of-object "GAppInfo")
+  (c-name "g_app_info_launch_uris_finish")
+  (return-type "gboolean")
+  (parameters
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
+  )
+)
+
 (define-method should_show
   (of-object "GAppInfo")
   (c-name "g_app_info_should_show")
@@ -3507,6 +3554,19 @@
   (return-type "GList*")
 )
 
+(define-function g_content_type_get_mime_dirs
+  (c-name "g_content_type_get_mime_dirs")
+  (return-type "const-gchar*-const*")
+)
+
+(define-function g_content_type_set_mime_dirs
+  (c-name "g_content_type_set_mime_dirs")
+  (return-type "none")
+  (parameters
+    '("const-gchar*-const*" "dirs")
+  )
+)
+
 
 
 ;; From gcontextspecificgroup.h
@@ -4454,6 +4514,12 @@
   (return-type "GDBusCapabilityFlags")
 )
 
+(define-method get_flags
+  (of-object "GDBusConnection")
+  (c-name "g_dbus_connection_get_flags")
+  (return-type "GDBusConnectionFlags")
+)
+
 (define-method close
   (of-object "GDBusConnection")
   (c-name "g_dbus_connection_close")
@@ -6940,15 +7006,6 @@
 
 ;; From gdocumentportal.h
 
-(define-function g_document_portal_add_document
-  (c-name "g_document_portal_add_document")
-  (return-type "char*")
-  (parameters
-    '("GFile*" "file")
-    '("GError**" "error")
-  )
-)
-
 (define-function g_document_portal_add_documents
   (c-name "g_document_portal_add_documents")
   (return-type "GList*")
@@ -7453,6 +7510,21 @@
   )
 )
 
+(define-method set_advertised_protocols
+  (of-object "GDtlsConnection")
+  (c-name "g_dtls_connection_set_advertised_protocols")
+  (return-type "none")
+  (parameters
+    '("const-gchar*-const*" "protocols")
+  )
+)
+
+(define-method get_negotiated_protocol
+  (of-object "GDtlsConnection")
+  (c-name "g_dtls_connection_get_negotiated_protocol")
+  (return-type "const-gchar*")
+)
+
 
 
 ;; From gdtlsserverconnection.h
@@ -9023,6 +9095,28 @@
   )
 )
 
+(define-method query_default_handler_async
+  (of-object "GFile")
+  (c-name "g_file_query_default_handler_async")
+  (return-type "none")
+  (parameters
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-method query_default_handler_finish
+  (of-object "GFile")
+  (c-name "g_file_query_default_handler_finish")
+  (return-type "GAppInfo*")
+  (parameters
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
+  )
+)
+
 (define-method load_contents
   (of-object "GFile")
   (c-name "g_file_load_contents")
@@ -13078,6 +13172,32 @@
   )
 )
 
+(define-method writev
+  (of-object "GOutputStream")
+  (c-name "g_output_stream_writev")
+  (return-type "gboolean")
+  (parameters
+    '("const-GOutputVector*" "vectors")
+    '("gsize" "n_vectors")
+    '("gsize*" "bytes_written")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
+  )
+)
+
+(define-method writev_all
+  (of-object "GOutputStream")
+  (c-name "g_output_stream_writev_all")
+  (return-type "gboolean")
+  (parameters
+    '("GOutputVector*" "vectors")
+    '("gsize" "n_vectors")
+    '("gsize*" "bytes_written")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
+  )
+)
+
 (define-method printf
   (of-object "GOutputStream")
   (c-name "g_output_stream_printf")
@@ -13196,6 +13316,56 @@
   )
 )
 
+(define-method writev_async
+  (of-object "GOutputStream")
+  (c-name "g_output_stream_writev_async")
+  (return-type "none")
+  (parameters
+    '("const-GOutputVector*" "vectors")
+    '("gsize" "n_vectors")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-method writev_finish
+  (of-object "GOutputStream")
+  (c-name "g_output_stream_writev_finish")
+  (return-type "gboolean")
+  (parameters
+    '("GAsyncResult*" "result")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
+  )
+)
+
+(define-method writev_all_async
+  (of-object "GOutputStream")
+  (c-name "g_output_stream_writev_all_async")
+  (return-type "none")
+  (parameters
+    '("GOutputVector*" "vectors")
+    '("gsize" "n_vectors")
+    '("int" "io_priority")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-method writev_all_finish
+  (of-object "GOutputStream")
+  (c-name "g_output_stream_writev_all_finish")
+  (return-type "gboolean")
+  (parameters
+    '("GAsyncResult*" "result")
+    '("gsize*" "bytes_written")
+    '("GError**" "error")
+  )
+)
+
 (define-method write_bytes_async
   (of-object "GOutputStream")
   (c-name "g_output_stream_write_bytes_async")
@@ -13504,6 +13674,19 @@
   )
 )
 
+(define-method writev_nonblocking
+  (of-object "GPollableOutputStream")
+  (c-name "g_pollable_output_stream_writev_nonblocking")
+  (return-type "GPollableReturn")
+  (parameters
+    '("const-GOutputVector*" "vectors")
+    '("gsize" "n_vectors")
+    '("gsize*" "bytes_written")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
+  )
+)
+
 
 
 ;; From gpollableutils.h
@@ -13893,6 +14076,41 @@
   )
 )
 
+(define-method lookup_by_name_with_flags_async
+  (of-object "GResolver")
+  (c-name "g_resolver_lookup_by_name_with_flags_async")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "hostname")
+    '("GResolverNameLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GAsyncReadyCallback" "callback")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-method lookup_by_name_with_flags_finish
+  (of-object "GResolver")
+  (c-name "g_resolver_lookup_by_name_with_flags_finish")
+  (return-type "GList*")
+  (parameters
+    '("GAsyncResult*" "result")
+    '("GError**" "error")
+  )
+)
+
+(define-method lookup_by_name_with_flags
+  (of-object "GResolver")
+  (c-name "g_resolver_lookup_by_name_with_flags")
+  (return-type "GList*")
+  (parameters
+    '("const-gchar*" "hostname")
+    '("GResolverNameLookupFlags" "flags")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
+  )
+)
+
 (define-function g_resolver_free_addresses
   (c-name "g_resolver_free_addresses")
   (return-type "none")
@@ -14474,6 +14692,11 @@
   (return-type "GType")
 )
 
+(define-function g_keyfile_settings_backend_get_type
+  (c-name "g_keyfile_settings_backend_get_type")
+  (return-type "GType")
+)
+
 (define-function g_nextstep_settings_backend_get_type
   (c-name "g_nextstep_settings_backend_get_type")
   (return-type "GType")
@@ -16581,7 +16804,7 @@
   (return-type "gboolean")
   (parameters
     '("GIOCondition" "condition")
-    '("gint64" "timeout")
+    '("gint64" "timeout_us")
     '("GCancellable*" "cancellable")
     '("GError**" "error")
   )
@@ -16791,6 +17014,24 @@
   )
 )
 
+(define-method send_message_with_timeout
+  (of-object "GSocket")
+  (c-name "g_socket_send_message_with_timeout")
+  (return-type "GPollableReturn")
+  (parameters
+    '("GSocketAddress*" "address")
+    '("const-GOutputVector*" "vectors")
+    '("gint" "num_vectors")
+    '("GSocketControlMessage**" "messages")
+    '("gint" "num_messages")
+    '("gint" "flags")
+    '("gint64" "timeout_us")
+    '("gsize*" "bytes_written")
+    '("GCancellable*" "cancellable")
+    '("GError**" "error")
+  )
+)
+
 (define-method get_option
   (of-object "GSocket")
   (c-name "g_socket_get_option")
@@ -17572,6 +17813,15 @@
   )
 )
 
+(define-method set_name
+  (of-object "GTask")
+  (c-name "g_task_set_name")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+  )
+)
+
 (define-method get_source_object
   (of-object "GTask")
   (c-name "g_task_get_source_object")
@@ -17614,6 +17864,12 @@
   (return-type "gpointer")
 )
 
+(define-method get_name
+  (of-object "GTask")
+  (c-name "g_task_get_name")
+  (return-type "const-gchar*")
+)
+
 (define-function g_task_is_valid
   (c-name "g_task_is_valid")
   (return-type "gboolean")
@@ -18297,6 +18553,21 @@
   (return-type "GTlsRehandshakeMode")
 )
 
+(define-method set_advertised_protocols
+  (of-object "GTlsConnection")
+  (c-name "g_tls_connection_set_advertised_protocols")
+  (return-type "none")
+  (parameters
+    '("const-gchar*-const*" "protocols")
+  )
+)
+
+(define-method get_negotiated_protocol
+  (of-object "GTlsConnection")
+  (c-name "g_tls_connection_get_negotiated_protocol")
+  (return-type "const-gchar*")
+)
+
 (define-method handshake
   (of-object "GTlsConnection")
   (c-name "g_tls_connection_handshake")
@@ -18749,6 +19020,19 @@
 
 
 
+;; From gtrashportal.h
+
+(define-function g_trash_portal_trash_file
+  (c-name "g_trash_portal_trash_file")
+  (return-type "gboolean")
+  (parameters
+    '("GFile*" "file")
+    '("GError**" "error")
+  )
+)
+
+
+
 ;; From gunionvolumemonitor.h
 
 
@@ -20238,3 +20522,414 @@
 )
 
 
+
+;; From gconstructor_as_data.h
+
+
+
+;; From gdbus-daemon-generated.h
+
+
+
+;; From gioenumtypes.h
+
+(define-function g_app_info_create_flags_get_type
+  (c-name "g_app_info_create_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_converter_flags_get_type
+  (c-name "g_converter_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_converter_result_get_type
+  (c-name "g_converter_result_get_type")
+  (return-type "GType")
+)
+
+(define-function g_data_stream_byte_order_get_type
+  (c-name "g_data_stream_byte_order_get_type")
+  (return-type "GType")
+)
+
+(define-function g_data_stream_newline_type_get_type
+  (c-name "g_data_stream_newline_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_attribute_type_get_type
+  (c-name "g_file_attribute_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_attribute_info_flags_get_type
+  (c-name "g_file_attribute_info_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_attribute_status_get_type
+  (c-name "g_file_attribute_status_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_query_info_flags_get_type
+  (c-name "g_file_query_info_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_create_flags_get_type
+  (c-name "g_file_create_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_measure_flags_get_type
+  (c-name "g_file_measure_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_mount_mount_flags_get_type
+  (c-name "g_mount_mount_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_mount_unmount_flags_get_type
+  (c-name "g_mount_unmount_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_drive_start_flags_get_type
+  (c-name "g_drive_start_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_drive_start_stop_type_get_type
+  (c-name "g_drive_start_stop_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_copy_flags_get_type
+  (c-name "g_file_copy_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_monitor_flags_get_type
+  (c-name "g_file_monitor_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_type_get_type
+  (c-name "g_file_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_filesystem_preview_type_get_type
+  (c-name "g_filesystem_preview_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_file_monitor_event_get_type
+  (c-name "g_file_monitor_event_get_type")
+  (return-type "GType")
+)
+
+(define-function g_io_error_enum_get_type
+  (c-name "g_io_error_enum_get_type")
+  (return-type "GType")
+)
+
+(define-function g_ask_password_flags_get_type
+  (c-name "g_ask_password_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_password_save_get_type
+  (c-name "g_password_save_get_type")
+  (return-type "GType")
+)
+
+(define-function g_mount_operation_result_get_type
+  (c-name "g_mount_operation_result_get_type")
+  (return-type "GType")
+)
+
+(define-function g_output_stream_splice_flags_get_type
+  (c-name "g_output_stream_splice_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_io_stream_splice_flags_get_type
+  (c-name "g_io_stream_splice_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_emblem_origin_get_type
+  (c-name "g_emblem_origin_get_type")
+  (return-type "GType")
+)
+
+(define-function g_resolver_error_get_type
+  (c-name "g_resolver_error_get_type")
+  (return-type "GType")
+)
+
+(define-function g_resolver_record_type_get_type
+  (c-name "g_resolver_record_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_resource_error_get_type
+  (c-name "g_resource_error_get_type")
+  (return-type "GType")
+)
+
+(define-function g_resource_flags_get_type
+  (c-name "g_resource_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_resource_lookup_flags_get_type
+  (c-name "g_resource_lookup_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_socket_family_get_type
+  (c-name "g_socket_family_get_type")
+  (return-type "GType")
+)
+
+(define-function g_socket_type_get_type
+  (c-name "g_socket_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_socket_msg_flags_get_type
+  (c-name "g_socket_msg_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_socket_protocol_get_type
+  (c-name "g_socket_protocol_get_type")
+  (return-type "GType")
+)
+
+(define-function g_zlib_compressor_format_get_type
+  (c-name "g_zlib_compressor_format_get_type")
+  (return-type "GType")
+)
+
+(define-function g_unix_socket_address_type_get_type
+  (c-name "g_unix_socket_address_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_bus_type_get_type
+  (c-name "g_bus_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_bus_name_owner_flags_get_type
+  (c-name "g_bus_name_owner_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_bus_name_watcher_flags_get_type
+  (c-name "g_bus_name_watcher_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_proxy_flags_get_type
+  (c-name "g_dbus_proxy_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_error_get_type
+  (c-name "g_dbus_error_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_connection_flags_get_type
+  (c-name "g_dbus_connection_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_capability_flags_get_type
+  (c-name "g_dbus_capability_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_call_flags_get_type
+  (c-name "g_dbus_call_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_message_type_get_type
+  (c-name "g_dbus_message_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_message_flags_get_type
+  (c-name "g_dbus_message_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_message_header_field_get_type
+  (c-name "g_dbus_message_header_field_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_property_info_flags_get_type
+  (c-name "g_dbus_property_info_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_subtree_flags_get_type
+  (c-name "g_dbus_subtree_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_server_flags_get_type
+  (c-name "g_dbus_server_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_signal_flags_get_type
+  (c-name "g_dbus_signal_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_send_message_flags_get_type
+  (c-name "g_dbus_send_message_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_credentials_type_get_type
+  (c-name "g_credentials_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_message_byte_order_get_type
+  (c-name "g_dbus_message_byte_order_get_type")
+  (return-type "GType")
+)
+
+(define-function g_application_flags_get_type
+  (c-name "g_application_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_error_get_type
+  (c-name "g_tls_error_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_certificate_flags_get_type
+  (c-name "g_tls_certificate_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_authentication_mode_get_type
+  (c-name "g_tls_authentication_mode_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_rehandshake_mode_get_type
+  (c-name "g_tls_rehandshake_mode_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_password_flags_get_type
+  (c-name "g_tls_password_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_interaction_result_get_type
+  (c-name "g_tls_interaction_result_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_interface_skeleton_flags_get_type
+  (c-name "g_dbus_interface_skeleton_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_dbus_object_manager_client_flags_get_type
+  (c-name "g_dbus_object_manager_client_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_database_verify_flags_get_type
+  (c-name "g_tls_database_verify_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_database_lookup_flags_get_type
+  (c-name "g_tls_database_lookup_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_tls_certificate_request_flags_get_type
+  (c-name "g_tls_certificate_request_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_io_module_scope_flags_get_type
+  (c-name "g_io_module_scope_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_socket_client_event_get_type
+  (c-name "g_socket_client_event_get_type")
+  (return-type "GType")
+)
+
+(define-function g_socket_listener_event_get_type
+  (c-name "g_socket_listener_event_get_type")
+  (return-type "GType")
+)
+
+(define-function g_test_dbus_flags_get_type
+  (c-name "g_test_dbus_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_subprocess_flags_get_type
+  (c-name "g_subprocess_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_notification_priority_get_type
+  (c-name "g_notification_priority_get_type")
+  (return-type "GType")
+)
+
+(define-function g_network_connectivity_get_type
+  (c-name "g_network_connectivity_get_type")
+  (return-type "GType")
+)
+
+(define-function g_pollable_return_get_type
+  (c-name "g_pollable_return_get_type")
+  (return-type "GType")
+)
+
+(define-function g_resolver_name_lookup_flags_get_type
+  (c-name "g_resolver_name_lookup_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function g_settings_bind_flags_get_type
+  (c-name "g_settings_bind_flags_get_type")
+  (return-type "GType")
+)
+
+
+
+;; From gnetworking.h
+
+(define-function g_networking_init
+  (c-name "g_networking_init")
+  (return-type "none")
+)
+
+
diff --git a/gio/src/gio_signals.defs b/gio/src/gio_signals.defs
index 13d7aa08..8a49e6fb 100644
--- a/gio/src/gio_signals.defs
+++ b/gio/src/gio_signals.defs
@@ -2434,6 +2434,25 @@
   (default-value "0")
 )
 
+(define-property advertised-protocols
+  (of-object "GTlsConnection")
+  (prop-type "GParamBoxed")
+  (docs "Application-layer protocols available on this connection")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property negotiated-protocol
+  (of-object "GTlsConnection")
+  (prop-type "GParamString")
+  (docs "Application-layer protocol negotiated for this connection")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+  (default-value "")
+)
+
 ;; From GTlsDatabase
 
 ;; From GTlsFileDatabase
@@ -2618,7 +2637,7 @@
   (of-object "GDBusConnection")
   (prop-type "GParamFlags")
   (docs "Flags")
-  (readable #f)
+  (readable #t)
   (writable #t)
   (construct-only #t)
   (default-value "G_DBUS_CONNECTION_FLAGS_NONE")
diff --git a/glib/src/glib_docs.xml b/glib/src/glib_docs.xml
index 63d0eed6..2358f9db 100644
--- a/glib/src/glib_docs.xml
+++ b/glib/src/glib_docs.xml
@@ -4993,7 +4993,8 @@ This function assumes that @str contains only a number of the given
 @base that is within inclusive bounds limited by @min and @max. If
 this is true, then the converted number is stored in @out_num. An
 empty string is not a valid input. A string with leading or
-trailing whitespace is also an invalid input.
+trailing whitespace is also an invalid input. A string with a leading sign
+(`-` or `+`) is not a valid input for the unsigned parser.
 
 @base can be between 2 and 36 inclusive. Hexadecimal numbers must
 not be prefixed with &quot;0x&quot; or &quot;0X&quot;. Such a problem does not exist
@@ -5171,6 +5172,11 @@ does in the C locale. It does this without actually
 changing the current locale, since that would not be
 thread-safe.
 
+Note that input with a leading minus sign (`-`) is accepted, and will return
+the negation of the parsed number, unless that would overflow a #guint64.
+Critically, this means you cannot assume that a short fixed length input will
+never result in a low return value, as the input could have a leading `-`.
+
 This function is typically used when reading configuration
 files or other non-user input that should be locale independent.
 To handle input from the user you should normally use the
@@ -5341,7 +5347,7 @@ Since: 2.16
 </parameter>
 <parameter name="cmp">
 <parameter_description> The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
+One of `==`, `!=`, `&lt;`, `&gt;`, `&lt;=`, `&gt;=`.
 </parameter_description>
 </parameter>
 <parameter name="n2">
@@ -5399,7 +5405,7 @@ Since: 2.16
 </parameter>
 <parameter name="cmp">
 <parameter_description> The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
+One of `==`, `!=`, `&lt;`, `&gt;`, `&lt;=`, `&gt;=`.
 </parameter_description>
 </parameter>
 <parameter name="n2">
@@ -5429,7 +5435,7 @@ Since: 2.16
 </parameter>
 <parameter name="cmp">
 <parameter_description> The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
+One of `==`, `!=`, `&lt;`, `&gt;`, `&lt;=`, `&gt;=`.
 </parameter_description>
 </parameter>
 <parameter name="n2">
@@ -5505,7 +5511,7 @@ Since: 2.16
 </parameter>
 <parameter name="cmp">
 <parameter_description> The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
+One of `==`, `!=`, `&lt;`, `&gt;`, `&lt;=`, `&gt;=`.
 </parameter_description>
 </parameter>
 <parameter name="s2">
@@ -5535,7 +5541,7 @@ Since: 2.16
 </parameter>
 <parameter name="cmp">
 <parameter_description> The comparison operator to use.
-One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
+One of `==`, `!=`, `&lt;`, `&gt;`, `&lt;=`, `&gt;=`.
 </parameter_description>
 </parameter>
 <parameter name="n2">
@@ -5546,6 +5552,33 @@ One of ==, !=, &lt;, &gt;, &lt;=, &gt;=.
 <return></return>
 </function>
 
+<function name="g_assert_cmpvariant">
+<description>
+Debugging macro to compare two #GVariants. If the comparison fails,
+an error message is logged and the application is either terminated
+or the testcase marked as failed. The variants are compared using
+g_variant_equal().
+
+The effect of `g_assert_cmpvariant (v1, v2)` is the same as
+`g_assert_true (g_variant_equal (v1, v2))`. The advantage of this macro is
+that it can produce a message that includes the actual values of @v1 and @v2.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="v1">
+<parameter_description> pointer to a #GVariant
+</parameter_description>
+</parameter>
+<parameter name="v2">
+<parameter_description> pointer to another #GVariant
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="g_assert_error">
 <description>
 Debugging macro to check that a method has returned
@@ -5559,7 +5592,7 @@ error message and code.
 
 This can only be used to test for a specific error. If you want to
 test that @err is set, but don't care what it's set to, just use
-`g_assert (err != NULL)`
+`g_assert_nonnull (err)`.
 
 Since: 2.20
 
@@ -5724,27 +5757,29 @@ Since: 2.38
 
 <function name="g_assertion_message_expr">
 <description>
+Internal function used to print messages from the public g_assert() and
+g_assert_not_reached() macros.
 
 </description>
 <parameters>
 <parameter name="domain">
-<parameter_description>
+<parameter_description> log domain
 </parameter_description>
 </parameter>
 <parameter name="file">
-<parameter_description>
+<parameter_description> file containing the assertion
 </parameter_description>
 </parameter>
 <parameter name="line">
-<parameter_description>
+<parameter_description> line number of the assertion
 </parameter_description>
 </parameter>
 <parameter name="func">
-<parameter_description>
+<parameter_description> function containing the assertion
 </parameter_description>
 </parameter>
 <parameter name="expr">
-<parameter_description>
+<parameter_description> expression which failed
 </parameter_description>
 </parameter>
 </parameters>
@@ -6938,6 +6973,9 @@ reference counting semantics to it.
 The data will be freed when its reference count drops to
 zero.
 
+The allocated data is guaranteed to be suitably aligned for any
+built-in type.
+
 Since: 2.58
 
 </description>
@@ -6962,6 +7000,9 @@ The contents of the returned data is set to zero.
 The data will be freed when its reference count drops to
 zero.
 
+The allocated data is guaranteed to be suitably aligned for any
+built-in type.
+
 Since: 2.58
 
 </description>
@@ -7170,7 +7211,7 @@ Since: 2.58
 
 <function name="g_atomic_ref_count_init">
 <description>
-Atomically initializes a reference count variable.
+Initializes a reference count variable.
 
 Since: 2.58
 
@@ -8562,8 +8603,8 @@ loaded in memory
 <function name="g_bookmark_file_load_from_data_dirs">
 <description>
 This function looks for a desktop bookmark file named @file in the
-paths returned from g_get_user_data_dir() and g_get_system_data_dirs(), 
-loads the file into @bookmark and returns the file's full path in 
+paths returned from g_get_user_data_dir() and g_get_system_data_dirs(),
+loads the file into @bookmark and returns the file's full path in
 @full_path.  If the file could not be loaded then @error is
 set to either a #GFileError or #GBookmarkFileError.
 
@@ -9081,7 +9122,7 @@ Sets the time the bookmark for @uri was last visited.
 
 If no bookmark for @uri is found then it is created.
 
-The &quot;visited&quot; time should only be set if the bookmark was launched, 
+The &quot;visited&quot; time should only be set if the bookmark was launched,
 either using the command line retrieved by g_bookmark_file_get_app_info()
 or by the default application for the bookmark's MIME type, retrieved
 using g_bookmark_file_get_mime_type().  Changing the &quot;visited&quot; time
@@ -18975,7 +19016,9 @@ an error occurred
 Formats a size (for example the size of a file) into a human readable
 string.  Sizes are rounded to the nearest size prefix (kB, MB, GB)
 and are displayed rounded to the nearest tenth. E.g. the file size
-3292528 bytes will be converted into the string &quot;3.2 MB&quot;.
+3292528 bytes will be converted into the string &quot;3.2 MB&quot;. The returned string
+is UTF-8, and may use a non-breaking space to separate the number and units,
+to ensure they aren’t separated when line wrapped.
 
 The prefix units base is 1000 (i.e. 1 kB is 1000 bytes).
 
@@ -23100,7 +23143,9 @@ If @key is %NULL then @comment will be read from above
 @group_name. If both @key and @group_name are %NULL, then
 @comment will be read from above the first group in the file.
 
-Note that the returned string includes the '#' comment markers.
+Note that the returned string does not include the '#' comment markers,
+but does include any whitespace after them (on each line). It includes
+the line breaks between lines, but does not include the final line break.
 
 Since: 2.6
 
@@ -30505,9 +30550,11 @@ will be updated as well. The @transform_from function is only used in case
 of bidirectional bindings, otherwise it will be ignored
 
 The binding will automatically be removed when either the @source or the
-@target instances are finalized. To remove the binding without affecting the
-@source and the @target you can just call g_object_unref() on the returned
-#GBinding instance.
+@target instances are finalized. This will release the reference that is
+being held on the #GBinding instance; if you want to hold on to the
+#GBinding instance, you will need to hold a reference to it.
+
+To remove the binding, call g_binding_unbind().
 
 A #GObject can have multiple bindings.
 
@@ -36124,6 +36171,27 @@ Since: 2.14
 <return></return>
 </function>
 
+<function name="g_queue_clear_full">
+<description>
+Convenience method, which frees all the memory used by a #GQueue,
+and calls the provided @free_func on each item in the #GQueue.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="queue">
+<parameter_description> a pointer to a #GQueue
+</parameter_description>
+</parameter>
+<parameter name="free_func">
+<parameter_description> the function to be called to free memory allocated
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="g_queue_copy">
 <description>
 Copies a @queue. Note that is a shallow copy. If the elements in the
@@ -37309,6 +37377,9 @@ counting semantics to it.
 The data will be freed when its reference count drops to
 zero.
 
+The allocated data is guaranteed to be suitably aligned for any
+built-in type.
+
 Since: 2.58
 
 </description>
@@ -37333,6 +37404,9 @@ The contents of the returned data is set to zero.
 The data will be freed when its reference count drops to
 zero.
 
+The allocated data is guaranteed to be suitably aligned for any
+built-in type.
+
 Since: 2.58
 
 </description>
@@ -37616,6 +37690,70 @@ Since: 2.32
 <return></return>
 </function>
 
+<function name="g_rec_mutex_locker_free">
+<description>
+Unlock @locker's recursive mutex. See g_rec_mutex_locker_new() for details.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="locker">
+<parameter_description> a GRecMutexLocker
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="g_rec_mutex_locker_new">
+<description>
+Lock @rec_mutex and return a new #GRecMutexLocker. Unlock with
+g_rec_mutex_locker_free(). Using g_rec_mutex_unlock() on @rec_mutex
+while a #GRecMutexLocker exists can lead to undefined behaviour.
+
+This is intended to be used with g_autoptr().  Note that g_autoptr()
+is only available when using GCC or clang, so the following example
+will only work with those compilers:
+|[
+typedef struct
+{
+...
+GRecMutex rec_mutex;
+...
+} MyObject;
+
+static void
+my_object_do_stuff (MyObject *self)
+{
+g_autoptr(GRecMutexLocker) locker = g_rec_mutex_locker_new (&amp;self-&gt;rec_mutex);
+
+// Code with rec_mutex locked here
+
+if (cond)
+// No need to unlock
+return;
+
+// Optionally early unlock
+g_clear_pointer (&amp;locker, g_rec_mutex_locker_free);
+
+// Code with rec_mutex unlocked here
+}
+]|
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="rec_mutex">
+<parameter_description> a recursive mutex to lock
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GRecMutexLocker
+</return>
+</function>
+
 <function name="g_rec_mutex_trylock">
 <description>
 Tries to lock @rec_mutex. If @rec_mutex is already locked
@@ -39080,7 +39218,7 @@ Resets the cache used for g_get_user_special_dir(), so
 that the latest on-disk version is used. Call this only
 if you just changed the data on disk yourself.
 
-Due to threadsafety issues this may cause leaking of strings
+Due to thread safety issues this may cause leaking of strings
 that were previously returned from g_get_user_special_dir()
 that can't be freed. We ensure to only leak the data for
 the directories that actually changed value though.
@@ -39224,19 +39362,21 @@ Any unrelated failures can be skipped over in
 
 <function name="g_return_if_fail_warning">
 <description>
+Internal function used to print messages from the public g_return_if_fail()
+and g_return_val_if_fail() macros.
 
 </description>
 <parameters>
 <parameter name="log_domain">
-<parameter_description>
+<parameter_description> log domain
 </parameter_description>
 </parameter>
 <parameter name="pretty_function">
-<parameter_description>
+<parameter_description> function containing the assertion
 </parameter_description>
 </parameter>
 <parameter name="expression">
-<parameter_description>
+<parameter_description> expression which failed
 </parameter_description>
 </parameter>
 </parameters>
@@ -45335,7 +45475,7 @@ eventually calls) paste the argument vector elements together into
 a command line, and the C runtime startup code does a corresponding
 reconstruction of an argument vector from the command line, to be
 passed to main(). Complications arise when you have argument vector
-elements that contain spaces of double quotes. The spawn*() functions
+elements that contain spaces or double quotes. The `spawn*()` functions
 don't do any quoting or escaping, but on the other hand the startup
 code does do unquoting and unescaping in order to enable receiving
 arguments with embedded spaces or double quotes. To work around this
@@ -47130,13 +47270,15 @@ it if necessary.
 
 <function name="g_string_append_len">
 <description>
-Appends @len bytes of @val to @string. Because @len is
-provided, @val may contain embedded nuls and need not
-be nul-terminated.
+Appends @len bytes of @val to @string.
 
-Since this function does not stop at nul bytes, it is
-the caller's responsibility to ensure that @val has at
-least @len addressable bytes.
+If @len is positive, @val may contain embedded nuls and need
+not be nul-terminated. It is the caller's responsibility to
+ensure that @val has at least @len addressable bytes.
+
+If @len is negative, @val must be nul-terminated and @len
+is considered to request the entire string length. This
+makes g_string_append_len() equivalent to g_string_append().
 
 
 </description>
@@ -47150,7 +47292,7 @@ least @len addressable bytes.
 </parameter_description>
 </parameter>
 <parameter name="len">
-<parameter_description> number of bytes of @val to use
+<parameter_description> number of bytes of @val to use, or -1 for all of @val
 </parameter_description>
 </parameter>
 </parameters>
@@ -47658,13 +47800,15 @@ Inserts a byte into a #GString, expanding it if necessary.
 <function name="g_string_insert_len">
 <description>
 Inserts @len bytes of @val into @string at @pos.
-Because @len is provided, @val may contain embedded
-nuls and need not be nul-terminated. If @pos is -1,
-bytes are inserted at the end of the string.
 
-Since this function does not stop at nul bytes, it is
-the caller's responsibility to ensure that @val has at
-least @len addressable bytes.
+If @len is positive, @val may contain embedded nuls and need
+not be nul-terminated. It is the caller's responsibility to
+ensure that @val has at least @len addressable bytes.
+
+If @len is negative, @val must be nul-terminated and @len
+is considered to request the entire string length.
+
+If @pos is -1, bytes are inserted at the end of the string.
 
 
 </description>
@@ -47683,7 +47827,7 @@ happen, or -1 for at the end
 </parameter_description>
 </parameter>
 <parameter name="len">
-<parameter_description> number of bytes of @val to insert
+<parameter_description> number of bytes of @val to insert, or -1 for all of @val
 </parameter_description>
 </parameter>
 </parameters>
@@ -47862,12 +48006,14 @@ expanding it if necessary.
 <function name="g_string_prepend_len">
 <description>
 Prepends @len bytes of @val to @string.
-Because @len is provided, @val may contain
-embedded nuls and need not be nul-terminated.
 
-Since this function does not stop at nul bytes,
-it is the caller's responsibility to ensure that
-@val has at least @len addressable bytes.
+If @len is positive, @val may contain embedded nuls and need
+not be nul-terminated. It is the caller's responsibility to
+ensure that @val has at least @len addressable bytes.
+
+If @len is negative, @val must be nul-terminated and @len
+is considered to request the entire string length. This
+makes g_string_prepend_len() equivalent to g_string_prepend().
 
 
 </description>
@@ -47881,7 +48027,7 @@ it is the caller's responsibility to ensure that
 </parameter_description>
 </parameter>
 <parameter name="len">
-<parameter_description> number of bytes in @val to prepend
+<parameter_description> number of bytes in @val to prepend, or -1 for all of @val
 </parameter_description>
 </parameter>
 </parameters>
@@ -48643,6 +48789,32 @@ Since: 2.44
 </return>
 </function>
 
+<function name="g_strv_equal">
+<description>
+Checks if @strv1 and @strv2 contain exactly the same elements in exactly the
+same order. Elements are compared using g_str_equal(). To match independently
+of order, sort the arrays first (using g_qsort_with_data() or similar).
+
+Two empty arrays are considered equal. Neither @strv1 not @strv2 may be
+%NULL.
+
+Since: 2.60
+
+</description>
+<parameters>
+<parameter name="strv1">
+<parameter_description> a %NULL-terminated array of strings
+</parameter_description>
+</parameter>
+<parameter name="strv2">
+<parameter_description> another %NULL-terminated array of strings
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if @strv1 and @strv2 are equal
+</return>
+</function>
+
 <function name="g_strv_length">
 <description>
 Returns the length of the given %NULL-terminated
@@ -48716,6 +48888,10 @@ If @testpath includes the component &quot;subprocess&quot; anywhere in it,
 the test will be skipped by default, and only run if explicitly
 required via the `-p` command-line option or g_test_trap_subprocess().
 
+No component of @testpath may start with a dot (`.`) if the
+%G_TEST_OPTION_ISOLATE_DIRS option is being used; and it is recommended to
+do so even if it isn’t.
+
 Since: 2.16
 
 </description>
@@ -48776,6 +48952,10 @@ If @testpath includes the component &quot;subprocess&quot; anywhere in it,
 the test will be skipped by default, and only run if explicitly
 required via the `-p` command-line option or g_test_trap_subprocess().
 
+No component of @testpath may start with a dot (`.`) if the
+%G_TEST_OPTION_ISOLATE_DIRS option is being used; and it is recommended to
+do so even if it isn’t.
+
 Since: 2.16
 
 </description>
@@ -49209,6 +49389,14 @@ that appropriate assertions or warnings are given (the default).
 
 - `--debug-log`: Debug test logging output.
 
+Options which can be passed to @... are:
+
+- `&quot;no_g_set_prgname&quot;`: Causes g_test_init() to not call g_set_prgname().
+- %G_TEST_OPTION_ISOLATE_DIRS: Creates a unique temporary directory for each
+unit test and uses g_set_user_dirs() to set XDG directories to point into
+that temporary directory for the duration of the unit test. See the
+documentation for %G_TEST_OPTION_ISOLATE_DIRS.
+
 Since 2.58, if tests are compiled with `G_DISABLE_ASSERT` defined,
 g_test_init() will print an error and exit. This is to prevent no-op tests
 from being executed, as g_assert() is commonly (erroneously) used in unit
@@ -49230,9 +49418,7 @@ Any parameters understood by g_test_init() stripped before return.
 </parameter_description>
 </parameter>
 <parameter name="Varargs">
-<parameter_description> %NULL-terminated list of special options. Currently the only
-defined option is `&quot;no_g_set_prgname&quot;`, which
-will cause g_test_init() to not call g_set_prgname().
+<parameter_description> %NULL-terminated list of special options, documented below.
 </parameter_description>
 </parameter>
 </parameters>
@@ -60529,7 +60715,7 @@ In the event that @dictionary has the type a{sv}, the @expected_type
 string specifies what type of value is expected to be inside of the
 variant. If the value inside the variant has a different type then
 %NULL is returned. In the event that @dictionary has a value type other
-than v then @expected_type must directly match the key type and it is
+than v then @expected_type must directly match the value type and it is
 used to unpack the value directly or an error occurs.
 
 In either case, if @key is not found in @dictionary, %NULL is returned.
@@ -60860,6 +61046,10 @@ called from various functions in gvariant.c.
 
 A reference is taken on @bytes.
 
+The data in @bytes must be aligned appropriately for the @type being loaded.
+Otherwise this function will internally create a copy of the memory (since
+GLib 2.60) or (in older versions) fail and exit the process.
+
 Since: 2.36
 
 </description>
@@ -60909,6 +61099,11 @@ endianness. g_variant_byteswap() can be used to recover the original values.
 needed.  The exact time of this call is unspecified and might even be
 before this function returns.
 
+Note: @data must be backed by memory that is aligned appropriately for the
+@type being loaded. Otherwise this function will internally create a copy of
+the memory (since GLib 2.60) or (in older versions) fail and exit the
+process.
+
 Since: 2.24
 
 </description>
@@ -62800,27 +62995,29 @@ Since: 2.16
 
 <function name="g_warn_message">
 <description>
+Internal function used to print messages from the public g_warn_if_reached()
+and g_warn_if_fail() macros.
 
 </description>
 <parameters>
 <parameter name="domain">
-<parameter_description>
+<parameter_description> log domain
 </parameter_description>
 </parameter>
 <parameter name="file">
-<parameter_description>
+<parameter_description> file containing the warning
 </parameter_description>
 </parameter>
 <parameter name="line">
-<parameter_description>
+<parameter_description> line number of the warning
 </parameter_description>
 </parameter>
 <parameter name="func">
-<parameter_description>
+<parameter_description> function containing the warning
 </parameter_description>
 </parameter>
 <parameter name="warnexpr">
-<parameter_description>
+<parameter_description> expression which failed
 </parameter_description>
 </parameter>
 </parameters>
@@ -63327,6 +63524,15 @@ A standard boolean type.
 Variables of this type should only contain the value
 %TRUE or %FALSE.
 
+Never directly compare the contents of a #gboolean variable with the values
+%TRUE or %FALSE. Use `if (condition)` to check a #gboolean is &quot;true&quot;, instead
+of `if (condition == TRUE)`. Likewise use `if (!condition)` to check a
+#gboolean is &quot;false&quot;.
+
+There is no validation when assigning to a #gboolean variable and so it could
+contain any value represented by a #gint. This is why the use of `if
+(condition)` is recommended. All non-zero values in C evaluate to &quot;true&quot;.
+
 </description>
 <parameters>
 </parameters>
diff --git a/glib/src/glib_functions.defs b/glib/src/glib_functions.defs
index f8091db1..22f9c2a1 100644
--- a/glib/src/glib_functions.defs
+++ b/glib/src/glib_functions.defs
@@ -8745,6 +8745,15 @@
   (return-type "gboolean")
 )
 
+(define-method clear_full
+  (of-object "GQueue")
+  (c-name "g_queue_clear_full")
+  (return-type "none")
+  (parameters
+    '("GDestroyNotify" "free_func")
+  )
+)
+
 (define-method get_length
   (of-object "GQueue")
   (c-name "g_queue_get_length")
@@ -11389,6 +11398,15 @@
   )
 )
 
+(define-function g_strv_equal
+  (c-name "g_strv_equal")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*-const*" "strv1")
+    '("const-gchar*-const*" "strv2")
+  )
+)
+
 (define-function g_number_parser_error_quark
   (c-name "g_number_parser_error_quark")
   (return-type "GQuark")
@@ -12543,6 +12561,18 @@
   (return-type "none")
 )
 
+(define-method locker_new
+  (of-object "GRecMutex")
+  (c-name "g_rec_mutex_locker_new")
+  (return-type "GRecMutexLocker*")
+)
+
+(define-method free
+  (of-object "GRecMutexLocker")
+  (c-name "g_rec_mutex_locker_free")
+  (return-type "none")
+)
+
 
 
 ;; From gthreadpool.h
@@ -14931,6 +14961,12 @@
   )
 )
 
+(define-method check
+  (of-object "GVariantSerialised")
+  (c-name "g_variant_serialised_check")
+  (return-type "gboolean")
+)
+
 (define-method is_normal
   (of-object "GVariantSerialised")
   (c-name "g_variant_serialised_is_normal")
@@ -16058,3 +16094,7 @@
 )
 
 
+
+;; From glibconfig.h
+
+
diff --git a/glib/src/gmodule_functions.defs b/glib/src/gmodule_functions.defs
index 853bd0bd..831b300f 100644
--- a/glib/src/gmodule_functions.defs
+++ b/glib/src/gmodule_functions.defs
@@ -73,3 +73,7 @@
 )
 
 
+
+;; From gmoduleconf.h
+
+
diff --git a/glib/src/gobject_functions.defs b/glib/src/gobject_functions.defs
index 05c7a094..154968e0 100644
--- a/glib/src/gobject_functions.defs
+++ b/glib/src/gobject_functions.defs
@@ -4193,3 +4193,51 @@
 )
 
 
+
+;; From glib-enumtypes.h
+
+(define-function g_unicode_type_get_type
+  (c-name "g_unicode_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_unicode_break_type_get_type
+  (c-name "g_unicode_break_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_unicode_script_get_type
+  (c-name "g_unicode_script_get_type")
+  (return-type "GType")
+)
+
+(define-function g_normalize_mode_get_type
+  (c-name "g_normalize_mode_get_type")
+  (return-type "GType")
+)
+
+
+
+;; From gobjectenumtypes.h
+
+(define-function g_unicode_type_get_type
+  (c-name "g_unicode_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_unicode_break_type_get_type
+  (c-name "g_unicode_break_type_get_type")
+  (return-type "GType")
+)
+
+(define-function g_unicode_script_get_type
+  (c-name "g_unicode_script_get_type")
+  (return-type "GType")
+)
+
+(define-function g_normalize_mode_get_type
+  (c-name "g_normalize_mode_get_type")
+  (return-type "GType")
+)
+
+



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]