[vala] gio-2.0: switch to GIR



commit 132d0a4eae887462d1f8fc885c3d9a66ef383d78
Author: Evan Nemerson <evan coeus-group com>
Date:   Wed Jan 11 22:41:43 2012 -0800

    gio-2.0: switch to GIR

 vapi/Makefile.am                  |    2 +-
 vapi/gio-2.0.vapi                 | 1736 +++++++++++++++++++++++--------------
 vapi/metadata/Gio-2.0-custom.vala |  629 ++++++++++++++
 vapi/metadata/Gio-2.0.metadata    |  293 +++++++
 4 files changed, 1992 insertions(+), 668 deletions(-)
---
diff --git a/vapi/Makefile.am b/vapi/Makefile.am
index b2823e2..88e22f2 100644
--- a/vapi/Makefile.am
+++ b/vapi/Makefile.am
@@ -307,7 +307,7 @@ gedit:
 	$(GENVAPI) --library $(srcdir)/gedit --metadatadir $(METADATADIR) $(GEDIT_GIRDIR)/Gedit-3.0.gir
 
 gio-2.0:
-	$(GENVAPI) --library $(srcdir)/gio-2.0 $(PACKAGESDIR)/gio-2.0/gio-2.0-custom.vala $(PACKAGESDIR)/gio-2.0/gio-2.0.gi
+	$(GENVAPI) --library $(srcdir)/gio-2.0 --metadatadir $(METADATADIR) $(METADATADIR)/Gio-2.0-custom.vala $(GIRDIR)/Gio-2.0.gir
 
 gio-unix-2.0:
 	$(GENVAPI) --library $(srcdir)/gio-unix-2.0 $(PACKAGESDIR)/gio-unix-2.0/gio-unix-2.0-custom.vala $(PACKAGESDIR)/gio-unix-2.0/gio-unix-2.0.gi
diff --git a/vapi/gio-2.0.vapi b/vapi/gio-2.0.vapi
index 36ddc8a..320a14a 100644
--- a/vapi/gio-2.0.vapi
+++ b/vapi/gio-2.0.vapi
@@ -12,17 +12,17 @@ namespace GLib {
 		[CCode (cheader_filename = "gio/gio.h")]
 		public static GLib.DBusConnection get_sync (GLib.BusType bus_type, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		[CCode (cheader_filename = "gio/gio.h", cname = "g_bus_own_name_with_closures")]
-		public static uint own_name (GLib.BusType bus_type, string name, GLib.BusNameOwnerFlags flags, [CCode (type = "GClosure*")] owned GLib.BusAcquiredCallback? bus_acquired_handler = null, [CCode (type = "GClosure*")] owned GLib.BusNameAcquiredCallback? name_acquired_handler = null, [CCode (type = "GClosure*")] owned GLib.BusNameLostCallback? name_lost_handler = null);
+		public static uint own_name (GLib.BusType bus_type, string name, GLib.BusNameOwnerFlags flags, [CCode (type = "GClosure*")] owned GLib.BusAcquiredCallback? bus_acquired_closure = null, [CCode (type = "GClosure*")] owned GLib.BusNameAcquiredCallback? name_acquired_closure = null, [CCode (type = "GClosure*")] owned GLib.BusNameLostCallback? name_lost_closure = null);
 		[CCode (cheader_filename = "gio/gio.h", cname = "g_bus_own_name_on_connection_with_closures")]
-		public static uint own_name_on_connection (GLib.DBusConnection connection, string name, GLib.BusNameOwnerFlags flags, [CCode (type = "GClosure*")] owned GLib.BusNameAcquiredCallback? name_acquired_handler = null, [CCode (type = "GClosure*")] owned GLib.BusNameLostCallback? name_lost_handler = null);
+		public static uint own_name_on_connection (GLib.DBusConnection connection, string name, GLib.BusNameOwnerFlags flags, [CCode (type = "GClosure*")] owned GLib.BusNameAcquiredCallback? name_acquired_closure = null, [CCode (type = "GClosure*")] owned GLib.BusNameLostCallback? name_lost_closure = null);
 		[CCode (cheader_filename = "gio/gio.h")]
 		public static void unown_name (uint owner_id);
 		[CCode (cheader_filename = "gio/gio.h")]
 		public static void unwatch_name (uint watcher_id);
 		[CCode (cheader_filename = "gio/gio.h", cname = "g_bus_watch_name_with_closures")]
-		public static uint watch_name (GLib.BusType bus_type, string name, GLib.BusNameWatcherFlags flags, [CCode (type = "GClosure*")] owned GLib.BusNameAppearedCallback? name_appeared_handler, [CCode (type = "GClosure*")] owned GLib.BusNameVanishedCallback? name_vanished_handler);
+		public static uint watch_name (GLib.BusType bus_type, string name, GLib.BusNameWatcherFlags flags, [CCode (type = "GClosure*")] owned GLib.BusNameAppearedCallback? name_appeared_closure = null, [CCode (type = "GClosure*")] owned GLib.BusNameVanishedCallback? name_vanished_closure = null);
 		[CCode (cheader_filename = "gio/gio.h", cname = "g_bus_watch_name_on_connection_with_closures")]
-		public static uint watch_name_on_connection (GLib.DBusConnection connection, string name, GLib.BusNameWatcherFlags flags, [CCode (type = "GClosure*")] owned GLib.BusNameAppearedCallback? name_appeared_handler, [CCode (type = "GClosure*")] owned GLib.BusNameVanishedCallback? name_vanished_handler);
+		public static uint watch_name_on_connection (GLib.DBusConnection connection, string name, GLib.BusNameWatcherFlags flags, [CCode (type = "GClosure*")] owned GLib.BusNameAppearedCallback? name_appeared_closure = null, [CCode (type = "GClosure*")] owned GLib.BusNameVanishedCallback? name_vanished_closure = null);
 	}
 	namespace ContentType {
 		[CCode (cheader_filename = "gio/gio.h")]
@@ -36,28 +36,225 @@ namespace GLib {
 		[CCode (cheader_filename = "gio/gio.h")]
 		public static GLib.Icon get_icon (string type);
 		[CCode (cheader_filename = "gio/gio.h")]
-		public static string? get_mime_type (string type);
+		public static string get_mime_type (string type);
 		[CCode (cheader_filename = "gio/gio.h")]
-		public static string guess (string? filename, uchar[]? data, out bool result_uncertain);
+		public static string guess (string? filename, [CCode (array_length_cname = "data_size", array_length_pos = 2.5, array_length_type = "gsize")] uint8[]? data, out bool result_uncertain);
 		[CCode (array_length = false, array_null_terminated = true, cheader_filename = "gio/gio.h")]
 		public static string[] guess_for_tree (GLib.File root);
 		[CCode (cheader_filename = "gio/gio.h")]
 		public static bool is_a (string type, string supertype);
 		[CCode (cheader_filename = "gio/gio.h")]
 		public static bool is_unknown (string type);
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_content_types_get_registered")]
+		public static GLib.List<string> list_registered ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	namespace DBus {
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static async GLib.IOStream address_get_stream (string address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static GLib.IOStream address_get_stream_sync (string address, string out_guid, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static unowned string annotation_info_lookup ([CCode (array_length = false, array_null_terminated = true)] GLib.DBusAnnotationInfo[] annotations, string name);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static string generate_guid ();
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static GLib.Variant gvalue_to_gvariant (GLib.Value gvalue, GLib.VariantType type);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static void gvariant_to_gvalue (GLib.Variant value, GLib.Value out_gvalue);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_address (string string);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_guid (string string);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_interface_name (string string);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_member_name (string string);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_name (string string);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_supported_address (string string) throws GLib.Error;
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_unique_name (string string);
+	}
+	namespace FileAttribute {
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ACCESS_CAN_DELETE")]
+		public const string ACCESS_CAN_DELETE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE")]
+		public const string ACCESS_CAN_EXECUTE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ACCESS_CAN_READ")]
+		public const string ACCESS_CAN_READ;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ACCESS_CAN_RENAME")]
+		public const string ACCESS_CAN_RENAME;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ACCESS_CAN_TRASH")]
+		public const string ACCESS_CAN_TRASH;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE")]
+		public const string ACCESS_CAN_WRITE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_DOS_IS_ARCHIVE")]
+		public const string DOS_IS_ARCHIVE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_DOS_IS_SYSTEM")]
+		public const string DOS_IS_SYSTEM;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ETAG_VALUE")]
+		public const string ETAG_VALUE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_FILESYSTEM_FREE")]
+		public const string FILESYSTEM_FREE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_FILESYSTEM_READONLY")]
+		public const string FILESYSTEM_READONLY;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_FILESYSTEM_SIZE")]
+		public const string FILESYSTEM_SIZE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_FILESYSTEM_TYPE")]
+		public const string FILESYSTEM_TYPE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_FILESYSTEM_USED")]
+		public const string FILESYSTEM_USED;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW")]
+		public const string FILESYSTEM_USE_PREVIEW;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_GVFS_BACKEND")]
+		public const string GVFS_BACKEND;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ID_FILE")]
+		public const string ID_FILE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_ID_FILESYSTEM")]
+		public const string ID_FILESYSTEM;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT")]
+		public const string MOUNTABLE_CAN_EJECT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT")]
+		public const string MOUNTABLE_CAN_MOUNT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL")]
+		public const string MOUNTABLE_CAN_POLL;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START")]
+		public const string MOUNTABLE_CAN_START;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED")]
+		public const string MOUNTABLE_CAN_START_DEGRADED;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP")]
+		public const string MOUNTABLE_CAN_STOP;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT")]
+		public const string MOUNTABLE_CAN_UNMOUNT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI")]
+		public const string MOUNTABLE_HAL_UDI;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC")]
+		public const string MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE")]
+		public const string MOUNTABLE_START_STOP_TYPE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE")]
+		public const string MOUNTABLE_UNIX_DEVICE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE")]
+		public const string MOUNTABLE_UNIX_DEVICE_FILE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_OWNER_GROUP")]
+		public const string OWNER_GROUP;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_OWNER_USER")]
+		public const string OWNER_USER;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_OWNER_USER_REAL")]
+		public const string OWNER_USER_REAL;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_PREVIEW_ICON")]
+		public const string PREVIEW_ICON;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_SELINUX_CONTEXT")]
+		public const string SELINUX_CONTEXT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE")]
+		public const string STANDARD_ALLOCATED_SIZE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE")]
+		public const string STANDARD_CONTENT_TYPE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_COPY_NAME")]
+		public const string STANDARD_COPY_NAME;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_DESCRIPTION")]
+		public const string STANDARD_DESCRIPTION;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME")]
+		public const string STANDARD_DISPLAY_NAME;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME")]
+		public const string STANDARD_EDIT_NAME;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE")]
+		public const string STANDARD_FAST_CONTENT_TYPE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_ICON")]
+		public const string STANDARD_ICON;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_IS_BACKUP")]
+		public const string STANDARD_IS_BACKUP;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_IS_HIDDEN")]
+		public const string STANDARD_IS_HIDDEN;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_IS_SYMLINK")]
+		public const string STANDARD_IS_SYMLINK;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL")]
+		public const string STANDARD_IS_VIRTUAL;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_NAME")]
+		public const string STANDARD_NAME;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_SIZE")]
+		public const string STANDARD_SIZE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_SORT_ORDER")]
+		public const string STANDARD_SORT_ORDER;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET")]
+		public const string STANDARD_SYMLINK_TARGET;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_TARGET_URI")]
+		public const string STANDARD_TARGET_URI;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_STANDARD_TYPE")]
+		public const string STANDARD_TYPE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_THUMBNAILING_FAILED")]
+		public const string THUMBNAILING_FAILED;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_THUMBNAIL_PATH")]
+		public const string THUMBNAIL_PATH;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_ACCESS")]
+		public const string TIME_ACCESS;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_ACCESS_USEC")]
+		public const string TIME_ACCESS_USEC;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_CHANGED")]
+		public const string TIME_CHANGED;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_CHANGED_USEC")]
+		public const string TIME_CHANGED_USEC;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_CREATED")]
+		public const string TIME_CREATED;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_CREATED_USEC")]
+		public const string TIME_CREATED_USEC;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_MODIFIED")]
+		public const string TIME_MODIFIED;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC")]
+		public const string TIME_MODIFIED_USEC;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TRASH_DELETION_DATE")]
+		public const string TRASH_DELETION_DATE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TRASH_ITEM_COUNT")]
+		public const string TRASH_ITEM_COUNT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_TRASH_ORIG_PATH")]
+		public const string TRASH_ORIG_PATH;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_BLOCKS")]
+		public const string UNIX_BLOCKS;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_BLOCK_SIZE")]
+		public const string UNIX_BLOCK_SIZE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_DEVICE")]
+		public const string UNIX_DEVICE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_GID")]
+		public const string UNIX_GID;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_INODE")]
+		public const string UNIX_INODE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT")]
+		public const string UNIX_IS_MOUNTPOINT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_MODE")]
+		public const string UNIX_MODE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_NLINK")]
+		public const string UNIX_NLINK;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_RDEV")]
+		public const string UNIX_RDEV;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_FILE_ATTRIBUTE_UNIX_UID")]
+		public const string UNIX_UID;
+	}
+	namespace VolumeIdentifier {
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VOLUME_IDENTIFIER_KIND_HAL_UDI")]
+		public const string HAL_UDI;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VOLUME_IDENTIFIER_KIND_LABEL")]
+		public const string LABEL;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VOLUME_IDENTIFIER_KIND_NFS_MOUNT")]
+		public const string NFS_MOUNT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE")]
+		public const string UNIX_DEVICE;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VOLUME_IDENTIFIER_KIND_UUID")]
+		public const string UUID;
+	}
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_app_launch_context_get_type ()")]
 	public class AppLaunchContext : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public AppLaunchContext ();
 		public virtual string get_display (GLib.AppInfo info, GLib.List<GLib.File> files);
-		public unowned string get_environment ();
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] get_environment ();
 		public virtual string get_startup_notify_id (GLib.AppInfo info, GLib.List<GLib.File> files);
 		public virtual void launch_failed (string startup_notify_id);
 		public void setenv (string variable, string value);
 		public void unsetenv (string variable);
 	}
-	[CCode (cheader_filename = "gio/gio.h", cname = "GApplication")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_application_get_type ()")]
 	public class Application : GLib.Object, GLib.ActionGroup, GLib.ActionMap {
 		[CCode (has_construct_function = false)]
 		public Application (string application_id, GLib.ApplicationFlags flags);
@@ -76,17 +273,15 @@ namespace GLib {
 		public void hold ();
 		public static bool id_is_valid (string application_id);
 		[NoWrapper]
-		public virtual bool local_command_line ([CCode (array_length = false, array_null_terminated = true)] ref unowned string[] arguments, out int exit_status);
-		[CCode (cname = "g_application_quit_with_data")]
-		public bool quit (GLib.Variant? platform_data = null);
+		public virtual bool local_command_line ([CCode (array_length = false, type = "gchar***")] ref unowned string[] arguments, out int exit_status);
 		[NoWrapper]
 		public virtual void quit_mainloop ();
 		public bool register (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void release ();
-		public int run ([CCode (array_length_pos = 0.9)] string[]? argv = null);
+		public int run ([CCode (array_length_cname = "argc", array_length_pos = 0.5)] string[]? argv = null);
 		[NoWrapper]
 		public virtual void run_mainloop ();
-		public void set_action_group (GLib.ActionGroup action_group);
+		public void set_action_group (GLib.ActionGroup? action_group);
 		public void set_application_id (string application_id);
 		public void set_default ();
 		public void set_flags (GLib.ApplicationFlags flags);
@@ -105,17 +300,19 @@ namespace GLib {
 		public virtual signal void activate ();
 		public virtual signal int command_line (GLib.ApplicationCommandLine command_line);
 		[HasEmitter]
-		public virtual signal void open (GLib.File[] files, string hint);
+		public virtual signal void open ([CCode (array_length_cname = "n_files", array_length_pos = 1.5)] GLib.File[] files, string hint);
 		public virtual signal void shutdown ();
 		public virtual signal void startup ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_application_command_line_get_type ()")]
 	public class ApplicationCommandLine : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected ApplicationCommandLine ();
+		[CCode (array_length_pos = 0.1)]
 		public string[] get_arguments ();
 		public unowned string get_cwd ();
-		public unowned string get_environ ();
+		[CCode (array_length = false, array_null_terminated = true)]
+		public unowned string[] get_environ ();
 		public int get_exit_status ();
 		public bool get_is_remote ();
 		public GLib.Variant? get_platform_data ();
@@ -133,7 +330,7 @@ namespace GLib {
 		public bool is_remote { get; }
 		public GLib.Variant platform_data { construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_buffered_input_stream_get_type ()")]
 	public class BufferedInputStream : GLib.FilterInputStream {
 		[CCode (has_construct_function = false, type = "GInputStream*")]
 		public BufferedInputStream (GLib.InputStream base_stream);
@@ -141,8 +338,8 @@ namespace GLib {
 		public virtual async ssize_t fill_async (ssize_t count, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public size_t get_available ();
 		public size_t get_buffer_size ();
-		public size_t peek ([CCode (array_length_pos = 2.9, array_length_type = "gsize")] uint8[] buffer, size_t offset = 0);
-		[CCode (array_length_type = "gsize")]
+		public size_t peek ([CCode (array_length_cname = "count", array_length_pos = 2.1, array_length_type = "gsize")] uint8[] buffer, size_t offset = 0);
+		[CCode (array_length_pos = 0.1, array_length_type = "gsize")]
 		public unowned uint8[] peek_buffer ();
 		public int read_byte (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void set_buffer_size (size_t size);
@@ -150,7 +347,7 @@ namespace GLib {
 		public BufferedInputStream.sized (GLib.InputStream base_stream, size_t size);
 		public uint buffer_size { get; set construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_buffered_output_stream_get_type ()")]
 	public class BufferedOutputStream : GLib.FilterOutputStream {
 		[CCode (has_construct_function = false, type = "GOutputStream*")]
 		public BufferedOutputStream (GLib.OutputStream base_stream);
@@ -168,7 +365,7 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public Cancellable ();
 		public void cancel ();
-		public ulong connect ([CCode (type = "GCallback*")] owned GLib.Func<GLib.Cancellable> callback);
+		public ulong connect ([CCode (type = "GCallback")] owned GLib.Func<GLib.Cancellable> callback);
 		public void disconnect (ulong handler_id);
 		public static unowned GLib.Cancellable? get_current ();
 		public int get_fd ();
@@ -179,10 +376,16 @@ namespace GLib {
 		public void release_fd ();
 		public void reset ();
 		public bool set_error_if_cancelled () throws GLib.IOError;
-		public unowned GLib.TimeoutSource source_new ();
+		public GLib.CancellableSource source_new ();
 		public virtual signal void cancelled ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "GSource", ref_function = "g_source_ref", unref_function = "g_source_unref")]
+	[Compact]
+	public class CancellableSource : GLib.Source {
+		[CCode (cname = "g_source_set_callback")]
+		public void set_callback ([CCode (type = "GSourceFunc")] owned GLib.CancellableSourceFunc func);
+	}
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_charset_converter_get_type ()")]
 	public class CharsetConverter : GLib.Object, GLib.Converter, GLib.Initable {
 		[CCode (has_construct_function = false)]
 		public CharsetConverter (string to_charset, string from_charset) throws GLib.Error;
@@ -195,21 +398,21 @@ namespace GLib {
 		public string to_charset { owned get; construct; }
 		public bool use_fallback { get; set construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_converter_input_stream_get_type ()")]
 	public class ConverterInputStream : GLib.FilterInputStream {
 		[CCode (has_construct_function = false, type = "GInputStream*")]
 		public ConverterInputStream (GLib.InputStream base_stream, GLib.Converter converter);
 		public unowned GLib.Converter get_converter ();
 		public GLib.Converter converter { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_converter_output_stream_get_type ()")]
 	public class ConverterOutputStream : GLib.FilterOutputStream {
 		[CCode (has_construct_function = false, type = "GOutputStream*")]
 		public ConverterOutputStream (GLib.OutputStream base_stream, GLib.Converter converter);
 		public unowned GLib.Converter get_converter ();
 		public GLib.Converter converter { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_credentials_get_type ()")]
 	public class Credentials : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public Credentials ();
@@ -218,13 +421,9 @@ namespace GLib {
 		public bool is_same_user (GLib.Credentials other_credentials) throws GLib.Error;
 		public void set_native (GLib.CredentialsType native_type, void* native);
 		public bool set_unix_user (uint uid) throws GLib.Error;
-		public unowned string to_string ();
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class CredentialsClass {
+		public string to_string ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_action_group_get_type ()")]
 	public class DBusActionGroup : GLib.Object, GLib.ActionGroup, GLib.RemoteActionGroup {
 		[CCode (has_construct_function = false)]
 		protected DBusActionGroup ();
@@ -234,46 +433,40 @@ namespace GLib {
 	[Compact]
 	public class DBusAnnotationInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
-		public weak string key;
+		public GLib.DBusAnnotationInfo[] annotations;
+		public string key;
 		public int ref_count;
-		public weak string value;
-		public unowned string lookup (string name);
+		public string value;
 	}
 	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_arg_info_ref", type_id = "g_dbus_arg_info_get_type ()", unref_function = "g_dbus_arg_info_unref")]
 	[Compact]
 	public class DBusArgInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
-		public weak string name;
+		public GLib.DBusAnnotationInfo[] annotations;
+		public string name;
 		public int ref_count;
-		public weak string signature;
+		public string signature;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_auth_observer_get_type ()")]
 	public class DBusAuthObserver : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public DBusAuthObserver ();
-		[HasEmitter]
-		public virtual signal bool authorize_authenticated_peer (GLib.IOStream p0, GLib.Credentials p1);
+		public virtual signal bool authorize_authenticated_peer (GLib.IOStream stream, GLib.Credentials credentials);
 	}
-	[CCode (cheader_filename = "gio/gio.h", cname = "GDBusConnection")]
-	public class DBusConnection : GLib.Object, GLib.Initable, GLib.AsyncInitable {
-		[CCode (has_construct_function = false, type = "void")]
-		public async DBusConnection (GLib.IOStream stream, string guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+	[CCode (cheader_filename = "gio/gio.h")]
+	public class DBusConnection : GLib.Object, GLib.AsyncInitable, GLib.Initable, GLib.AsyncInitable, GLib.Initable {
+		[CCode (has_construct_function = false)]
+		protected DBusConnection ();
 		public uint add_filter (owned GLib.DBusMessageFilterFunction filter_function);
-		public async GLib.Variant call (string bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.Variant call (string? bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public GLib.Variant call_sync (string bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async GLib.Variant call_with_unix_fd_list (string bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.UnixFDList? fd_list, GLib.Cancellable? cancellable = null, out GLib.UnixFDList? out_fd_list) throws GLib.Error;
-		public GLib.Variant call_with_unix_fd_list_sync (string bus_name, string object_path, string interface_name, string method_name, GLib.Variant? parameters, GLib.VariantType? reply_type, GLib.DBusCallFlags flags, int timeout_msec, GLib.UnixFDList? fd_list, out GLib.UnixFDList? out_fd_list, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public async bool close (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool close_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public bool emit_signal (string? destination_bus_name, string object_path, string interface_name, string signal_name, GLib.Variant parameters) throws GLib.Error;
+		public bool emit_signal (string? destination_bus_name, string object_path, string interface_name, string signal_name, GLib.Variant? parameters) throws GLib.Error;
 		public uint export_action_group (string object_path, GLib.ActionGroup action_group) throws GLib.Error;
 		public uint export_menu_model (string object_path, GLib.MenuModel menu) throws GLib.Error;
 		public async bool flush (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool flush_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		[CCode (has_construct_function = false, type = "void")]
-		public async DBusConnection.for_address (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[CCode (has_construct_function = false)]
 		public DBusConnection.for_address_sync (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public GLib.DBusCapabilityFlags get_capabilities ();
@@ -285,18 +478,22 @@ namespace GLib {
 		public unowned GLib.IOStream get_stream ();
 		public unowned string get_unique_name ();
 		public bool is_closed ();
+		[CCode (cname = "g_dbus_connection_new", finish_function = "g_dbus_connection_new_finish")]
+		public static async GLib.DBusConnection @new (GLib.IOStream stream, string guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (cname = "g_dbus_connection_new_for_address", finish_function = "g_dbus_connection_new_for_address_finish")]
+		public static async GLib.DBusConnection new_for_address (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public uint register_object<T> (string object_path, T object) throws GLib.IOError;
-		public uint register_subtree (string object_path, GLib.DBusSubtreeVTable vtable, GLib.DBusSubtreeFlags flags, GLib.DestroyNotify user_data_free_func) throws GLib.Error;
+		public uint register_subtree (string object_path, GLib.DBusSubtreeVTable vtable, GLib.DBusSubtreeFlags flags, void* user_data, GLib.DestroyNotify user_data_free_func) throws GLib.Error;
 		public void remove_filter (uint filter_id);
 		public bool send_message (GLib.DBusMessage message, GLib.DBusSendMessageFlags flags, out uint32 out_serial) throws GLib.Error;
-		public async GLib.DBusMessage send_message_with_reply (GLib.DBusMessage message, GLib.DBusSendMessageFlags flags, int timeout_msec, uint32* out_serial = null, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public async GLib.DBusMessage send_message_with_reply (GLib.DBusMessage message, GLib.DBusSendMessageFlags flags, int timeout_msec, out uint32 out_serial, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public GLib.DBusMessage send_message_with_reply_sync (GLib.DBusMessage message, GLib.DBusSendMessageFlags flags, int timeout_msec, out uint32 out_serial, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public void set_exit_on_close (bool exit_on_close);
 		public uint signal_subscribe (string? sender, string? interface_name, string? member, string? object_path, string? arg0, GLib.DBusSignalFlags flags, owned GLib.DBusSignalCallback callback);
 		public void signal_unsubscribe (uint subscription_id);
 		public void start_message_processing ();
 		[CCode (has_construct_function = false)]
-		public DBusConnection.sync (GLib.IOStream stream, string guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public DBusConnection.sync (GLib.IOStream stream, string? guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void unexport_action_group (uint export_id);
 		public void unexport_menu_model (uint export_id);
 		public bool unregister_object (uint registration_id);
@@ -304,32 +501,27 @@ namespace GLib {
 		public string address { construct; }
 		public GLib.DBusAuthObserver authentication_observer { construct; }
 		public GLib.DBusCapabilityFlags capabilities { get; }
+		[NoAccessorMethod]
+		public bool closed { get; }
 		public bool exit_on_close { get; set; }
 		public GLib.DBusConnectionFlags flags { construct; }
 		public string guid { get; construct; }
 		public GLib.IOStream stream { get; construct; }
 		public string unique_name { get; }
-		public virtual signal void closed (bool p0, GLib.Error p1);
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class DBusErrorEntry {
-		public weak string dbus_error_name;
-		public int error_code;
 	}
 	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_interface_info_ref", type_id = "g_dbus_interface_info_get_type ()", unref_function = "g_dbus_interface_info_unref")]
 	[Compact]
 	public class DBusInterfaceInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
+		public GLib.DBusAnnotationInfo[] annotations;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusMethodInfo[] methods;
-		public weak string name;
+		public GLib.DBusMethodInfo[] methods;
+		public string name;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusPropertyInfo[] properties;
+		public GLib.DBusPropertyInfo[] properties;
 		public int ref_count;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusSignalInfo[] signals;
+		public GLib.DBusSignalInfo[] signals;
 		public void cache_build ();
 		public void cache_release ();
 		public void generate_xml (uint indent, GLib.StringBuilder string_builder);
@@ -337,19 +529,19 @@ namespace GLib {
 		public unowned GLib.DBusPropertyInfo lookup_property (string name);
 		public unowned GLib.DBusSignalInfo lookup_signal (string name);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class DBusInterfaceSkeleton : GLib.Object, GLib.DBusInterface {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_interface_skeleton_get_type ()")]
+	public abstract class DBusInterfaceSkeleton : GLib.Object, GLib.DBusInterface {
 		[CCode (has_construct_function = false)]
 		protected DBusInterfaceSkeleton ();
 		public bool export (GLib.DBusConnection connection, string object_path) throws GLib.Error;
 		public virtual void flush ();
 		public unowned GLib.DBusConnection get_connection ();
-		public unowned GLib.List get_connections ();
+		public GLib.List<GLib.DBusConnection> get_connections ();
 		public GLib.DBusInterfaceSkeletonFlags get_flags ();
 		public virtual unowned GLib.DBusInterfaceInfo get_info ();
 		public unowned string get_object_path ();
-		public virtual unowned GLib.Variant get_properties ();
-		public virtual unowned GLib.DBusInterfaceVTable get_vtable ();
+		public virtual GLib.Variant get_properties ();
+		public virtual GLib.DBusInterfaceVTable? get_vtable ();
 		public bool has_connection (GLib.DBusConnection connection);
 		public void set_flags (GLib.DBusInterfaceSkeletonFlags flags);
 		public void unexport ();
@@ -358,15 +550,7 @@ namespace GLib {
 		public GLib.DBusInterfaceSkeletonFlags g_flags { get; set; }
 		public virtual signal bool g_authorize_method (GLib.DBusMethodInvocation invocation);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class DBusInterfaceVTable {
-		public weak GLib.DBusInterfaceGetPropertyFunc get_property;
-		public weak GLib.DBusInterfaceMethodCallFunc method_call;
-		public void* padding;
-		public weak GLib.DBusInterfaceSetPropertyFunc set_property;
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_menu_model_get_type ()")]
 	public class DBusMenuModel : GLib.MenuModel {
 		[CCode (has_construct_function = false)]
 		protected DBusMenuModel ();
@@ -376,18 +560,19 @@ namespace GLib {
 	public class DBusMessage : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public DBusMessage ();
-		public static ssize_t bytes_needed (uchar[] blob, size_t blob_len) throws GLib.Error;
-		public unowned GLib.DBusMessage copy () throws GLib.Error;
+		public static ssize_t bytes_needed ([CCode (array_length_cname = "blob_len", array_length_pos = 1.1, array_length_type = "gsize")] uint8[] blob) throws GLib.Error;
+		public GLib.DBusMessage copy () throws GLib.Error;
 		[CCode (has_construct_function = false)]
-		public DBusMessage.from_blob (uchar[] blob, size_t blob_len, GLib.DBusCapabilityFlags capabilities) throws GLib.Error;
+		public DBusMessage.from_blob ([CCode (array_length_cname = "blob_len", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] blob, GLib.DBusCapabilityFlags capabilities) throws GLib.Error;
 		public unowned string get_arg0 ();
-		public unowned GLib.Variant get_body ();
+		public GLib.Variant get_body ();
 		public GLib.DBusMessageByteOrder get_byte_order ();
 		public unowned string get_destination ();
 		public unowned string get_error_name ();
 		public GLib.DBusMessageFlags get_flags ();
-		public unowned GLib.Variant get_header (GLib.DBusMessageHeaderField header_field);
-		public unowned uchar[] get_header_fields ();
+		public GLib.Variant get_header (GLib.DBusMessageHeaderField header_field);
+		[CCode (array_length = false, array_null_terminated = true)]
+		public uchar[] get_header_fields ();
 		public unowned string get_interface ();
 		public bool get_locked ();
 		public unowned string get_member ();
@@ -398,19 +583,18 @@ namespace GLib {
 		public unowned string get_sender ();
 		public uint32 get_serial ();
 		public unowned string get_signature ();
-		public unowned GLib.UnixFDList get_unix_fd_list ();
 		public void @lock ();
-		[CCode (has_construct_function = false)]
 		public DBusMessage.method_call (string name, string path, string interface_, string method);
 		[CCode (has_construct_function = false)]
-		public DBusMessage.method_error (GLib.DBusMessage method_call_message, string error_name, string error_message_format);
+		[PrintfFormat]
+		public DBusMessage.method_error (GLib.DBusMessage method_call_message, string error_name, string error_message_format, ...);
 		[CCode (has_construct_function = false)]
 		public DBusMessage.method_error_literal (GLib.DBusMessage method_call_message, string error_name, string error_message);
 		[CCode (has_construct_function = false)]
-		public DBusMessage.method_error_valist (GLib.DBusMessage method_call_message, string error_name, string error_message_format, void* var_args);
+		public DBusMessage.method_error_valist (GLib.DBusMessage method_call_message, string error_name, string error_message_format, va_list var_args);
 		[CCode (has_construct_function = false)]
 		public DBusMessage.method_reply (GLib.DBusMessage method_call_message);
-		public unowned string print (uint indent = 0);
+		public string print (uint indent = 0);
 		public void set_body (GLib.Variant body);
 		public void set_byte_order (GLib.DBusMessageByteOrder byte_order);
 		public void set_destination (string value);
@@ -426,10 +610,10 @@ namespace GLib {
 		public void set_sender (string value);
 		public void set_serial (uint32 serial);
 		public void set_signature (string value);
-		public void set_unix_fd_list (GLib.UnixFDList fd_list);
 		[CCode (has_construct_function = false)]
 		public DBusMessage  signal (string path, string interface_, string @signal);
-		public unowned uchar[] to_blob (size_t out_size, GLib.DBusCapabilityFlags capabilities) throws GLib.Error;
+		[CCode (array_length_pos = 0.5, array_length_type = "gsize")]
+		public uint8[] to_blob (GLib.DBusCapabilityFlags capabilities) throws GLib.Error;
 		public bool to_gerror () throws GLib.Error;
 		public bool locked { get; }
 	}
@@ -437,15 +621,15 @@ namespace GLib {
 	[Compact]
 	public class DBusMethodInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
+		public GLib.DBusAnnotationInfo[] annotations;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusArgInfo[] in_args;
-		public weak string name;
+		public GLib.DBusArgInfo[] in_args;
+		public string name;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusArgInfo[] out_args;
+		public GLib.DBusArgInfo[] out_args;
 		public int ref_count;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_method_invocation_get_type ()")]
 	public class DBusMethodInvocation : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected DBusMethodInvocation ();
@@ -459,48 +643,45 @@ namespace GLib {
 		public unowned string get_sender ();
 		public void* get_user_data ();
 		public void return_dbus_error (string error_name, string error_message);
-		public void return_error (GLib.Quark domain, int code, string format);
+		public void return_error (GLib.Quark domain, int code, string format, ...);
 		public void return_error_literal (GLib.Quark domain, int code, string message);
-		public void return_error_valist (GLib.Quark domain, int code, string format, void* var_args);
+		public void return_error_valist (GLib.Quark domain, int code, string format, [CCode (type = "va_list")] va_list var_args);
 		public void return_gerror (GLib.Error error);
 		public void return_value (GLib.Variant? parameters);
-		public void return_value_with_unix_fd_list (GLib.Variant? parameters, GLib.UnixFDList? fd_list);
-		public void take_error (GLib.Error error);
+		public void take_error (owned GLib.Error error);
 	}
 	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_node_info_ref", type_id = "g_dbus_node_info_get_type ()", unref_function = "g_dbus_node_info_unref")]
 	[Compact]
 	public class DBusNodeInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
+		public GLib.DBusAnnotationInfo[] annotations;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusInterfaceInfo[] interfaces;
+		public GLib.DBusInterfaceInfo[] interfaces;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusNodeInfo[] nodes;
-		public weak string path;
+		public GLib.DBusNodeInfo[] nodes;
+		public string path;
 		public int ref_count;
 		[CCode (has_construct_function = false)]
 		public DBusNodeInfo.for_xml (string xml_data) throws GLib.Error;
 		public void generate_xml (uint indent, GLib.StringBuilder string_builder);
 		public unowned GLib.DBusInterfaceInfo lookup_interface (string name);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class DBusObjectManagerClient : GLib.Object, GLib.Initable, GLib.AsyncInitable, GLib.DBusObjectManager {
-		[CCode (has_construct_function = false, type = "void")]
-		public DBusObjectManagerClient (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, GLib.DBusProxyTypeFunc get_proxy_type_func, void* get_proxy_type_user_data, GLib.DestroyNotify get_proxy_type_destroy_notify, GLib.Cancellable? cancellable = null, GLib.AsyncReadyCallback callback);
-		[CCode (has_construct_function = false, type = "GDBusObjectManager*")]
-		public DBusObjectManagerClient.finish (GLib.AsyncResult res) throws GLib.Error;
-		[CCode (has_construct_function = false, type = "void")]
-		public DBusObjectManagerClient.for_bus (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, GLib.DBusProxyTypeFunc get_proxy_type_func, void* get_proxy_type_user_data, GLib.DestroyNotify get_proxy_type_destroy_notify, GLib.Cancellable? cancellable = null, GLib.AsyncReadyCallback callback);
-		[CCode (has_construct_function = false, type = "GDBusObjectManager*")]
-		public DBusObjectManagerClient.for_bus_finish (GLib.AsyncResult res) throws GLib.Error;
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_manager_client_get_type ()")]
+	public class DBusObjectManagerClient : GLib.Object, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable {
+		[CCode (has_construct_function = false)]
+		protected DBusObjectManagerClient ();
 		[CCode (has_construct_function = false, type = "GDBusObjectManager*")]
-		public DBusObjectManagerClient.for_bus_sync (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, GLib.DBusProxyTypeFunc get_proxy_type_func, void* get_proxy_type_user_data, GLib.DestroyNotify get_proxy_type_destroy_notify, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public DBusObjectManagerClient.for_bus_sync (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public unowned GLib.DBusConnection get_connection ();
 		public GLib.DBusObjectManagerClientFlags get_flags ();
 		public unowned string get_name ();
-		public unowned string get_name_owner ();
+		public string? get_name_owner ();
+		[CCode (cname = "g_dbus_object_manager_client_new", finish_function = "g_dbus_object_manager_client_new_finish")]
+		public static async GLib.DBusObjectManagerClient @new (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null);
+		[CCode (cname = "g_dbus_object_manager_client_new_for_bus", finish_function = "g_dbus_object_manager_client_new_for_bus_finish")]
+		public static async GLib.DBusObjectManagerClient new_for_bus (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null);
 		[CCode (has_construct_function = false, type = "GDBusObjectManager*")]
-		public DBusObjectManagerClient.sync (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, GLib.DBusProxyTypeFunc get_proxy_type_func, void* get_proxy_type_user_data, GLib.DestroyNotify get_proxy_type_destroy_notify, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public DBusObjectManagerClient.sync (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public GLib.BusType bus_type { construct; }
 		public GLib.DBusConnection connection { get; construct; }
 		public GLib.DBusObjectManagerClientFlags flags { get; construct; }
@@ -511,26 +692,26 @@ namespace GLib {
 		[NoAccessorMethod]
 		public void* get_proxy_type_user_data { get; construct; }
 		public string name { get; construct; }
-		public string name_owner { get; }
+		public string? name_owner { owned get; }
 		[NoAccessorMethod]
 		public string object_path { owned get; construct; }
-		public virtual signal void interface_proxy_properties_changed (GLib.DBusObjectProxy object_proxy, GLib.DBusProxy interface_proxy, GLib.Variant changed_properties, string[] invalidated_properties);
+		public virtual signal void interface_proxy_properties_changed (GLib.DBusObjectProxy object_proxy, GLib.DBusProxy interface_proxy, GLib.Variant changed_properties, [CCode (array_length = false, array_null_terminated = true)] string[] invalidated_properties);
 		public virtual signal void interface_proxy_signal (GLib.DBusObjectProxy object_proxy, GLib.DBusProxy interface_proxy, string sender_name, string signal_name, GLib.Variant parameters);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_manager_server_get_type ()")]
 	public class DBusObjectManagerServer : GLib.Object, GLib.DBusObjectManager {
 		[CCode (has_construct_function = false)]
 		public DBusObjectManagerServer (string object_path);
 		public void export (GLib.DBusObjectSkeleton object);
 		public void export_uniquely (GLib.DBusObjectSkeleton object);
-		public unowned GLib.DBusConnection get_connection ();
-		public void set_connection (GLib.DBusConnection connection);
+		public GLib.DBusConnection get_connection ();
+		public void set_connection (GLib.DBusConnection? connection);
 		public bool unexport (string object_path);
-		public GLib.DBusConnection connection { get; set; }
+		public GLib.DBusConnection connection { owned get; set; }
 		[NoAccessorMethod]
 		public string object_path { owned get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_proxy_get_type ()")]
 	public class DBusObjectProxy : GLib.Object, GLib.DBusObject {
 		[CCode (has_construct_function = false)]
 		public DBusObjectProxy (GLib.DBusConnection connection, string object_path);
@@ -540,7 +721,7 @@ namespace GLib {
 		[NoAccessorMethod]
 		public string g_object_path { owned get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_skeleton_get_type ()")]
 	public class DBusObjectSkeleton : GLib.Object, GLib.DBusObject {
 		[CCode (has_construct_function = false)]
 		public DBusObjectSkeleton (string object_path);
@@ -553,43 +734,44 @@ namespace GLib {
 		public string g_object_path { owned get; set construct; }
 		public virtual signal bool authorize_method (GLib.DBusInterfaceSkeleton interface_, GLib.DBusMethodInvocation invocation);
 	}
-	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_property_info_ref", type_id = "g_dbus_property_info_get_type ()", unref_function = "g_dbus_property_info_unref")]
+	[CCode (cheader_filename = "gio/gio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "g_dbus_property_info_get_type ()")]
 	[Compact]
 	public class DBusPropertyInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
+		public GLib.DBusAnnotationInfo[] annotations;
 		public GLib.DBusPropertyInfoFlags flags;
-		public weak string name;
+		public string name;
 		public int ref_count;
-		public weak string signature;
+		public string signature;
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
-	public class DBusProxy : GLib.Object, GLib.DBusInterface, GLib.Initable, GLib.AsyncInitable {
-		[CCode (has_construct_function = false, type = "void")]
-		public async DBusProxy (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
+	public class DBusProxy : GLib.Object, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable {
+		[CCode (has_construct_function = false)]
+		protected DBusProxy ();
 		public async GLib.Variant call (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public GLib.Variant call_sync (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async GLib.Variant call_with_unix_fd_list (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.UnixFDList? fd_list, GLib.Cancellable? cancellable = null, out GLib.UnixFDList? out_fd_list) throws GLib.Error;
-		public GLib.Variant call_with_unix_fd_list_sync (string method_name, GLib.Variant? parameters, GLib.DBusCallFlags flags, int timeout_msec, GLib.UnixFDList? fd_list, out GLib.UnixFDList? out_fd_list, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		[CCode (has_construct_function = false, type = "void")]
-		public async DBusProxy.for_bus (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (cname = "g_dbus_proxy_new_for_bus", finish_function = "g_dbus_proxy_new_for_bus_finish")]
+		public static async GLib.DBusProxy create_for_bus (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null);
 		[CCode (has_construct_function = false)]
 		public DBusProxy.for_bus_sync (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public unowned GLib.Variant get_cached_property (string property_name);
-		public unowned string get_cached_property_names ();
+		public GLib.Variant get_cached_property (string property_name);
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] get_cached_property_names ();
 		public unowned GLib.DBusConnection get_connection ();
 		public int get_default_timeout ();
 		public GLib.DBusProxyFlags get_flags ();
-		public unowned GLib.DBusInterfaceInfo get_interface_info ();
+		public GLib.DBusInterfaceInfo get_interface_info ();
 		public unowned string get_interface_name ();
 		public unowned string get_name ();
-		public unowned string get_name_owner ();
+		public string get_name_owner ();
 		public unowned string get_object_path ();
-		public void set_cached_property (string property_name, GLib.Variant value);
+		[CCode (cname = "g_dbus_proxy_new", finish_function = "g_dbus_proxy_new_finish")]
+		public static async GLib.DBusProxy @new (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string? name, string object_path, string interface_name, GLib.Cancellable? cancellable = null);
+		public void set_cached_property (string property_name, GLib.Variant? value);
 		public void set_default_timeout (int timeout_msec);
-		public void set_interface_info (GLib.DBusInterfaceInfo info);
+		public void set_interface_info (GLib.DBusInterfaceInfo? info);
 		[CCode (has_construct_function = false)]
-		public DBusProxy.sync (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public DBusProxy.sync (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string? name, string object_path, string interface_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public GLib.BusType g_bus_type { construct; }
 		[NoAccessorMethod]
 		public GLib.DBusConnection g_connection { owned get; construct; }
@@ -610,7 +792,7 @@ namespace GLib {
 		public virtual signal void g_properties_changed (GLib.Variant changed_properties, [CCode (array_length = false, array_null_terminated = true)] string[] invalidated_properties);
 		public virtual signal void g_signal (string sender_name, string signal_name, GLib.Variant parameters);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_server_get_type ()")]
 	public class DBusServer : GLib.Object, GLib.Initable {
 		[CCode (has_construct_function = false)]
 		protected DBusServer ();
@@ -631,33 +813,25 @@ namespace GLib {
 		public string client_address { get; }
 		public GLib.DBusServerFlags flags { get; construct; }
 		public string guid { get; construct; }
-		public virtual signal bool new_connection (GLib.DBusConnection p0);
+		public signal bool new_connection (GLib.DBusConnection connection);
 	}
 	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_signal_info_ref", type_id = "g_dbus_signal_info_get_type ()", unref_function = "g_dbus_signal_info_unref")]
 	[Compact]
 	public class DBusSignalInfo {
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusAnnotationInfo[] annotations;
+		public GLib.DBusAnnotationInfo[] annotations;
 		[CCode (array_length = false, array_null_terminated = true)]
-		public weak GLib.DBusArgInfo[] args;
-		public weak string name;
+		public GLib.DBusArgInfo[] args;
+		public string name;
 		public int ref_count;
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class DBusSubtreeVTable {
-		public weak GLib.DBusSubtreeDispatchFunc dispatch;
-		public weak GLib.DBusSubtreeEnumerateFunc enumerate;
-		public weak GLib.DBusSubtreeIntrospectFunc introspect;
-		public void* padding;
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
 	public class DataInputStream : GLib.BufferedInputStream {
 		[CCode (has_construct_function = false)]
 		public DataInputStream (GLib.InputStream base_stream);
 		public GLib.DataStreamByteOrder get_byte_order ();
 		public GLib.DataStreamNewlineType get_newline_type ();
-		public uchar read_byte (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public uint8 read_byte (GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public int16 read_int16 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public int32 read_int32 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public int64 read_int64 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
@@ -682,7 +856,7 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public DataOutputStream (GLib.OutputStream base_stream);
 		public GLib.DataStreamByteOrder get_byte_order ();
-		public bool put_byte (uchar data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_byte (uint8 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public bool put_int16 (int16 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public bool put_int32 (int32 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public bool put_int64 (int64 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
@@ -693,7 +867,7 @@ namespace GLib {
 		public void set_byte_order (GLib.DataStreamByteOrder order);
 		public GLib.DataStreamByteOrder byte_order { get; set; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_emblem_get_type ()")]
 	public class Emblem : GLib.Object, GLib.Icon {
 		[CCode (has_construct_function = false)]
 		public Emblem (GLib.Icon icon);
@@ -704,14 +878,10 @@ namespace GLib {
 		public GLib.Object icon { get; construct; }
 		public GLib.EmblemOrigin origin { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class EmblemClass {
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_emblemed_icon_get_type ()")]
 	public class EmblemedIcon : GLib.Object, GLib.Icon {
 		[CCode (has_construct_function = false, type = "GIcon*")]
-		public EmblemedIcon (GLib.Icon icon, GLib.Emblem emblem);
+		public EmblemedIcon (GLib.Icon icon, GLib.Emblem? emblem);
 		public void add_emblem (GLib.Emblem emblem);
 		public void clear_emblems ();
 		public unowned GLib.List<GLib.Emblem> get_emblems ();
@@ -734,7 +904,7 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public FileAttributeInfoList ();
 		public void add (string name, GLib.FileAttributeType type, GLib.FileAttributeInfoFlags flags);
-		public unowned GLib.FileAttributeInfoList dup ();
+		public GLib.FileAttributeInfoList dup ();
 		public unowned GLib.FileAttributeInfo lookup (string name);
 	}
 	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_file_attribute_matcher_ref", type_id = "g_file_attribute_matcher_get_type ()", unref_function = "g_file_attribute_matcher_unref")]
@@ -746,10 +916,10 @@ namespace GLib {
 		public unowned string enumerate_next ();
 		public bool matches (string attribute);
 		public bool matches_only (string attribute);
-		public unowned GLib.FileAttributeMatcher subtract (GLib.FileAttributeMatcher subtract);
-		public unowned string to_string ();
+		public GLib.FileAttributeMatcher subtract (GLib.FileAttributeMatcher subtract);
+		public string to_string ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_enumerator_get_type ()")]
 	public class FileEnumerator : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected FileEnumerator ();
@@ -765,7 +935,7 @@ namespace GLib {
 		public void set_pending (bool pending);
 		public GLib.File container { construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_io_stream_get_type ()")]
 	public class FileIOStream : GLib.IOStream, GLib.Seekable {
 		[CCode (has_construct_function = false)]
 		protected FileIOStream ();
@@ -773,9 +943,9 @@ namespace GLib {
 		public virtual bool can_seek ();
 		[NoWrapper]
 		public virtual bool can_truncate ();
-		public virtual unowned string get_etag ();
-		public virtual unowned GLib.FileInfo query_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async unowned GLib.FileInfo query_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual string get_etag ();
+		public virtual GLib.FileInfo query_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.FileInfo query_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[NoWrapper]
 		public virtual bool seek (int64 offset, GLib.SeekType type, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[NoWrapper]
@@ -783,34 +953,31 @@ namespace GLib {
 		[NoWrapper]
 		public virtual bool truncate_fn (int64 size, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_icon_get_type ()")]
 	public class FileIcon : GLib.Object, GLib.Icon, GLib.LoadableIcon {
 		[CCode (has_construct_function = false, type = "GIcon*")]
 		public FileIcon (GLib.File file);
 		public unowned GLib.File get_file ();
 		public GLib.File file { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class FileIconClass {
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_info_get_type ()")]
 	public class FileInfo : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public FileInfo ();
 		public void clear_status ();
 		public void copy_into (GLib.FileInfo dest_info);
-		public unowned GLib.FileInfo dup ();
-		public unowned string get_attribute_as_string (string attribute);
+		public GLib.FileInfo dup ();
+		public string get_attribute_as_string (string attribute);
 		public bool get_attribute_boolean (string attribute);
 		public unowned string get_attribute_byte_string (string attribute);
-		public bool get_attribute_data (string attribute, GLib.FileAttributeType? type, void* value_pp, GLib.FileAttributeStatus? status);
+		public bool get_attribute_data (string attribute, out GLib.FileAttributeType type, out void* value_pp, out GLib.FileAttributeStatus status);
 		public int32 get_attribute_int32 (string attribute);
 		public int64 get_attribute_int64 (string attribute);
 		public unowned GLib.Object get_attribute_object (string attribute);
 		public GLib.FileAttributeStatus get_attribute_status (string attribute);
 		public unowned string get_attribute_string (string attribute);
-		public unowned string get_attribute_stringv (string attribute);
+		[CCode (array_length = false, array_null_terminated = true)]
+		public unowned string[] get_attribute_stringv (string attribute);
 		public GLib.FileAttributeType get_attribute_type (string attribute);
 		public uint32 get_attribute_uint32 (string attribute);
 		public uint64 get_attribute_uint64 (string attribute);
@@ -823,14 +990,15 @@ namespace GLib {
 		public bool get_is_backup ();
 		public bool get_is_hidden ();
 		public bool get_is_symlink ();
-		public void get_modification_time (out GLib.TimeVal _result);
+		public GLib.TimeVal get_modification_time ();
 		public unowned string get_name ();
 		public int64 get_size ();
 		public int32 get_sort_order ();
 		public unowned string get_symlink_target ();
 		public bool has_attribute (string attribute);
 		public bool has_namespace (string name_space);
-		public unowned string list_attributes (string name_space);
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] list_attributes (string name_space);
 		public void remove_attribute (string attribute);
 		public void set_attribute (string attribute, GLib.FileAttributeType type, void* value_p);
 		public void set_attribute_boolean (string attribute, bool attr_value);
@@ -841,7 +1009,7 @@ namespace GLib {
 		public void set_attribute_object (string attribute, GLib.Object attr_value);
 		public bool set_attribute_status (string attribute, GLib.FileAttributeStatus status);
 		public void set_attribute_string (string attribute, string attr_value);
-		public void set_attribute_stringv (string attribute, out unowned string attr_value);
+		public void set_attribute_stringv (string attribute, [CCode (array_length = false)] string[] attr_value);
 		public void set_attribute_uint32 (string attribute, uint32 attr_value);
 		public void set_attribute_uint64 (string attribute, uint64 attr_value);
 		public void set_content_type (string content_type);
@@ -858,25 +1026,21 @@ namespace GLib {
 		public void set_symlink_target (string symlink_target);
 		public void unset_attribute_mask ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class FileInfoClass {
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_input_stream_get_type ()")]
 	public class FileInputStream : GLib.InputStream, GLib.Seekable {
 		[CCode (has_construct_function = false)]
 		protected FileInputStream ();
 		[NoWrapper]
 		public virtual bool can_seek ();
-		public virtual unowned GLib.FileInfo query_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async unowned GLib.FileInfo query_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual GLib.FileInfo query_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.FileInfo query_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[NoWrapper]
 		public virtual bool seek (int64 offset, GLib.SeekType type, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[NoWrapper]
 		public virtual int64 tell ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class FileMonitor : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_monitor_get_type ()")]
+	public abstract class FileMonitor : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected FileMonitor ();
 		public virtual bool cancel ();
@@ -889,7 +1053,7 @@ namespace GLib {
 		public int rate_limit { get; set; }
 		public virtual signal void changed (GLib.File file, GLib.File? other_file, GLib.FileMonitorEvent event_type);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_file_output_stream_get_type ()")]
 	public class FileOutputStream : GLib.OutputStream, GLib.Seekable {
 		[CCode (has_construct_function = false)]
 		protected FileOutputStream ();
@@ -897,9 +1061,9 @@ namespace GLib {
 		public virtual bool can_seek ();
 		[NoWrapper]
 		public virtual bool can_truncate ();
-		public virtual unowned string get_etag ();
-		public virtual unowned GLib.FileInfo query_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async unowned GLib.FileInfo query_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual string get_etag ();
+		public virtual GLib.FileInfo query_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.FileInfo query_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[NoWrapper]
 		public virtual bool seek (int64 offset, GLib.SeekType type, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[NoWrapper]
@@ -907,17 +1071,18 @@ namespace GLib {
 		[NoWrapper]
 		public virtual bool truncate_fn (int64 size, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_filename_completer_get_type ()")]
 	public class FilenameCompleter : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public FilenameCompleter ();
-		public unowned string get_completion_suffix (string initial_text);
-		public unowned string get_completions (string initial_text);
+		public string get_completion_suffix (string initial_text);
+		[CCode (array_length = false, array_null_terminated = true)]
+		public string[] get_completions (string initial_text);
 		public void set_dirs_only (bool dirs_only);
 		public virtual signal void got_completion_data ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class FilterInputStream : GLib.InputStream {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_filter_input_stream_get_type ()")]
+	public abstract class FilterInputStream : GLib.InputStream {
 		[CCode (has_construct_function = false)]
 		protected FilterInputStream ();
 		public unowned GLib.InputStream get_base_stream ();
@@ -926,8 +1091,8 @@ namespace GLib {
 		public GLib.InputStream base_stream { get; construct; }
 		public bool close_base_stream { get; set construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class FilterOutputStream : GLib.OutputStream {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_filter_output_stream_get_type ()")]
+	public abstract class FilterOutputStream : GLib.OutputStream {
 		[CCode (has_construct_function = false)]
 		protected FilterOutputStream ();
 		public unowned GLib.OutputStream get_base_stream ();
@@ -936,39 +1101,62 @@ namespace GLib {
 		public GLib.OutputStream base_stream { get; construct; }
 		public bool close_base_stream { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h", cname = "GIOExtension")]
+	[CCode (cheader_filename = "gio/gio.h")]
 	[Compact]
 	public class IOExtension {
 		public unowned string get_name ();
 		public int get_priority ();
 		public GLib.Type get_type ();
-		public unowned GLib.TypeClass ref_class ();
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	[Compact]
 	public class IOExtensionPoint {
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME")]
+		public const string DESKTOP_APP_INFO_LOOKUP;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME")]
+		public const string NATIVE_VOLUME_MONITOR;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_NETWORK_MONITOR_EXTENSION_POINT_NAME")]
+		public const string NETWORK_MONITOR;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_PROXY_EXTENSION_POINT_NAME")]
+		public const string PROXY;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_PROXY_RESOLVER_EXTENSION_POINT_NAME")]
+		public const string PROXY_RESOLVER;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_TLS_BACKEND_EXTENSION_POINT_NAME")]
+		public const string TLS_BACKEND;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VFS_EXTENSION_POINT_NAME")]
+		public const string VFS;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_VOLUME_MONITOR_EXTENSION_POINT_NAME")]
+		public const string VOLUME_MONITOR;
 		public unowned GLib.IOExtension get_extension_by_name (string name);
 		public unowned GLib.List<GLib.IOExtension> get_extensions ();
 		public GLib.Type get_required_type ();
+		[CCode (cheader_filename = "gio/gio.h")]
 		public static unowned GLib.IOExtension implement (string extension_point_name, GLib.Type type, string extension_name, int priority);
+		[CCode (cheader_filename = "gio/gio.h")]
 		public static unowned GLib.IOExtensionPoint lookup (string name);
+		[CCode (cheader_filename = "gio/gio.h")]
 		public static unowned GLib.IOExtensionPoint register (string name);
 		public void set_required_type (GLib.Type type);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_io_module_get_type ()")]
 	public class IOModule : GLib.TypeModule, GLib.TypePlugin {
 		[CCode (has_construct_function = false)]
 		public IOModule (string filename);
 		public void load ();
-		public static unowned string query ();
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_load_all_in_directory")]
+		public static GLib.List<GLib.IOModule> load_all_in_directory (string dirname);
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_load_all_in_directory_with_scope")]
+		public static GLib.List<GLib.IOModule> load_all_in_directory_with_scope (string dirname, GLib.IOModuleScope scope);
+		[CCode (array_length = false, array_null_terminated = true)]
+		public static string[] query ();
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_scan_all_in_directory")]
+		public static void scan_all_in_directory (string dirname);
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_scan_all_in_directory_with_scope")]
+		public static void scan_all_in_directory_with_scope (string dirname, GLib.IOModuleScope scope);
 		public void unload ();
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	[Compact]
-	public class IOModuleClass {
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
 	public class IOModuleScope {
 		[CCode (has_construct_function = false)]
 		public IOModuleScope (GLib.IOModuleScopeFlags flags);
@@ -977,6 +1165,10 @@ namespace GLib {
 	[CCode (cheader_filename = "gio/gio.h")]
 	[Compact]
 	public class IOSchedulerJob {
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_io_scheduler_cancel_all_jobs")]
+		public static void cancel_all ();
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_io_scheduler_push_job")]
+		public static void push ([CCode (delegate_target_pos = 1.33333, destroy_notify_pos = 1.66667)] owned GLib.IOSchedulerJobFunc job_func, int io_priority, GLib.Cancellable? cancellable = null);
 		public bool send_to_mainloop (owned GLib.SourceFunc func);
 		public void send_to_mainloop_async (owned GLib.SourceFunc func);
 	}
@@ -987,24 +1179,20 @@ namespace GLib {
 		public void clear_pending ();
 		public bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public virtual async bool close_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
-		[NoWrapper]
-		public virtual bool close_fn (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public virtual unowned GLib.InputStream get_input_stream ();
 		public virtual unowned GLib.OutputStream get_output_stream ();
 		public bool has_pending ();
 		public bool is_closed ();
 		public bool set_pending () throws GLib.Error;
 		public async bool splice_async (GLib.IOStream stream2, GLib.IOStreamSpliceFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		[NoAccessorMethod]
-		public bool closed { get; }
-		public abstract GLib.InputStream input_stream { get; }
-		public abstract GLib.OutputStream output_stream { get; }
+		public GLib.InputStream input_stream { get; }
+		public GLib.OutputStream output_stream { get; }
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	[Compact]
 	public class IOStreamAdapter {
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_inet_address_get_type ()")]
 	public class InetAddress : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected InetAddress ();
@@ -1014,7 +1202,7 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public InetAddress.from_bytes ([CCode (array_length = false)] uint8[] bytes, GLib.SocketFamily family);
 		[CCode (has_construct_function = false)]
-		public InetAddress.from_string (string str);
+		public InetAddress.from_string (string string);
 		public GLib.SocketFamily get_family ();
 		public bool get_is_any ();
 		public bool get_is_link_local ();
@@ -1046,7 +1234,7 @@ namespace GLib {
 		public bool is_multicast { get; }
 		public bool is_site_local { get; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_inet_address_mask_get_type ()")]
 	public class InetAddressMask : GLib.Object, GLib.Initable {
 		[CCode (has_construct_function = false)]
 		public InetAddressMask (GLib.InetAddress addr, uint length) throws GLib.Error;
@@ -1057,14 +1245,14 @@ namespace GLib {
 		public GLib.SocketFamily get_family ();
 		public uint get_length ();
 		public bool matches (GLib.InetAddress address);
-		public unowned string to_string ();
+		public string to_string ();
 		[NoAccessorMethod]
 		public GLib.InetAddress address { owned get; set; }
 		public GLib.SocketFamily family { get; }
 		[NoAccessorMethod]
 		public uint length { get; set; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_inet_socket_address_get_type ()")]
 	public class InetSocketAddress : GLib.SocketAddress, GLib.SocketConnectable {
 		[CCode (has_construct_function = false, type = "GSocketAddress*")]
 		public InetSocketAddress (GLib.InetAddress address, uint16 port);
@@ -1078,10 +1266,9 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		protected InputStream ();
 		public void clear_pending ();
-		public bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		[CCode (vfunc_name = "close_fn")]
+		public abstract bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public virtual async bool close_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
-		[NoWrapper]
-		public virtual bool close_fn (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool has_pending ();
 		public bool is_closed ();
 		[CCode (vfunc_name = "read_fn")]
@@ -1092,22 +1279,16 @@ namespace GLib {
 		public virtual ssize_t skip (size_t count, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public virtual async ssize_t skip_async (size_t count, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class InputVector {
-		[CCode (array_length_cname = "size", array_length_type = "gsize")]
-		public uint8[] buffer;
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_memory_input_stream_get_type ()")]
 	public class MemoryInputStream : GLib.InputStream, GLib.Seekable {
 		[CCode (has_construct_function = false, type = "GInputStream*")]
 		public MemoryInputStream ();
-		public void add_data ([CCode (array_length_type = "gsize")] owned uint8[] data, GLib.DestroyNotify? destroy);
+		public void add_data ([CCode (array_length_cname = "len", array_length_pos = 1.5, array_length_type = "gssize")] owned uint8[] data, GLib.DestroyNotify? destroy);
 		[CCode (has_construct_function = false, type = "GInputStream*")]
-		public MemoryInputStream.from_data ([CCode (array_length_type = "gsize")] owned uint8[] data, GLib.DestroyNotify? destroy);
+		public MemoryInputStream.from_data ([CCode (array_length_cname = "len", array_length_pos = 1.5, array_length_type = "gssize")] owned uint8[] data, GLib.DestroyNotify? destroy);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
-	public class MemoryOutputStream : GLib.OutputStream, GLib.Seekable {
+	public class MemoryOutputStream : GLib.OutputStream, GLib.Seekable, GLib.Seekable {
 		[CCode (has_construct_function = false, type = "GOutputStream*")]
 		public MemoryOutputStream ([CCode (array_length_type = "gsize")] owned uint8[]? data, GLib.ReallocFunc? realloc_function, GLib.DestroyNotify? destroy_function);
 		[CCode (array_length = false)]
@@ -1119,13 +1300,23 @@ namespace GLib {
 		public void* data { get; construct; }
 		public ulong data_size { get; }
 		[NoAccessorMethod]
-		public void* destroy_function { get; construct; }
+		public GLib.DestroyNotify? destroy_function { get; construct; }
 		[NoAccessorMethod]
-		public void* realloc_function { get; construct; }
+		public GLib.ReallocFunc? realloc_function { get; construct; }
 		public ulong size { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_menu_get_type ()")]
 	public class Menu : GLib.MenuModel {
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_MENU_ATTRIBUTE_ACTION")]
+		public const string ATTRIBUTE_ACTION;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_MENU_ATTRIBUTE_LABEL")]
+		public const string ATTRIBUTE_LABEL;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_MENU_ATTRIBUTE_TARGET")]
+		public const string ATTRIBUTE_TARGET;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_MENU_LINK_SECTION")]
+		public const string LINK_SECTION;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_MENU_LINK_SUBMENU")]
+		public const string LINK_SUBMENU;
 		[CCode (has_construct_function = false)]
 		public Menu ();
 		public void append (string? label, string? detailed_action);
@@ -1137,36 +1328,34 @@ namespace GLib {
 		public void insert_item (int position, GLib.MenuItem item);
 		public void insert_section (int position, string? label, GLib.MenuModel section);
 		public void insert_submenu (int position, string? label, GLib.MenuModel submenu);
-		public static unowned GLib.HashTable markup_parser_end (GLib.MarkupParseContext context);
-		public static unowned GLib.Menu markup_parser_end_menu (GLib.MarkupParseContext context);
-		public static void markup_parser_start (GLib.MarkupParseContext context, string domain, GLib.HashTable objects);
-		public static void markup_parser_start_menu (GLib.MarkupParseContext context, string domain, GLib.HashTable objects);
+		public static GLib.HashTable<void*,void*> markup_parser_end (GLib.MarkupParseContext context);
+		public static GLib.Menu markup_parser_end_menu (GLib.MarkupParseContext context);
+		public static void markup_parser_start (GLib.MarkupParseContext context, string? domain, GLib.HashTable<void*,void*>? objects);
+		public static void markup_parser_start_menu (GLib.MarkupParseContext context, string? domain, GLib.HashTable<void*,void*>? objects);
 		public static void markup_print_stderr (GLib.MenuModel model);
-		public static unowned GLib.StringBuilder markup_print_string (GLib.StringBuilder str, GLib.MenuModel model, int indent, int tabstop);
+		public static GLib.StringBuilder markup_print_string (GLib.StringBuilder string, GLib.MenuModel model, int indent, int tabstop);
 		public void prepend (string? label, string? detailed_action);
 		public void prepend_item (GLib.MenuItem item);
 		public void prepend_section (string? label, GLib.MenuModel section);
 		public void prepend_submenu (string? label, GLib.MenuModel submenu);
 		public void remove (int position);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class MenuAttributeIter : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_menu_attribute_iter_get_type ()")]
+	public abstract class MenuAttributeIter : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected MenuAttributeIter ();
 		public unowned string get_name ();
-		public virtual bool get_next (string out_name, out unowned GLib.Variant value);
+		public virtual bool get_next (string out_type, out GLib.Variant value);
 		public GLib.Variant get_value ();
 		public bool next ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_menu_item_get_type ()")]
 	public class MenuItem : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public MenuItem (string? label, string? detailed_action);
 		[CCode (has_construct_function = false)]
 		public MenuItem.section (string? label, GLib.MenuModel section);
-		public void set_action_and_target (string? action, string? format_string);
 		public void set_action_and_target_value (string? action, GLib.Variant? target_value);
-		public void set_attribute (string attribute, string? format_string);
 		public void set_attribute_value (string attribute, GLib.Variant? value);
 		public void set_detailed_action (string detailed_action);
 		public void set_label (string? label);
@@ -1176,34 +1365,34 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public MenuItem.submenu (string? label, GLib.MenuModel submenu);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class MenuLinkIter : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_menu_link_iter_get_type ()")]
+	public abstract class MenuLinkIter : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected MenuLinkIter ();
 		public unowned string get_name ();
-		public virtual bool get_next (string out_link, out unowned GLib.MenuModel value);
+		public virtual bool get_next (string out_name, out GLib.MenuModel value);
 		public GLib.MenuModel get_value ();
 		public bool next ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class MenuModel : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_menu_model_get_type ()")]
+	public abstract class MenuModel : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected MenuModel ();
-		public bool get_item_attribute (int item_index, string attribute, string format_string);
-		public virtual GLib.Variant get_item_attribute_value (int item_index, string attribute, GLib.VariantType expected_type);
+		public bool get_item_attribute (int item_index, string attribute, string format_string, ...);
+		public virtual GLib.Variant get_item_attribute_value (int item_index, string attribute, GLib.VariantType? expected_type);
 		[NoWrapper]
-		public virtual void get_item_attributes (int item_index, GLib.HashTable attributes);
+		public virtual void get_item_attributes (int item_index, GLib.HashTable<void*,void*> attributes);
 		public virtual GLib.MenuModel get_item_link (int item_index, string link);
 		[NoWrapper]
-		public virtual void get_item_links (int item_index, GLib.HashTable links);
+		public virtual void get_item_links (int item_index, GLib.HashTable<void*,void*> links);
 		public virtual int get_n_items ();
 		public virtual bool is_mutable ();
 		public virtual GLib.MenuAttributeIter iterate_item_attributes (int item_index);
 		public virtual GLib.MenuLinkIter iterate_item_links (int item_index);
 		[HasEmitter]
-		public virtual signal void items_changed (int p0, int p1, int p2);
+		public signal void items_changed (int position, int removed, int added);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_mount_operation_get_type ()")]
 	public class MountOperation : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public MountOperation ();
@@ -1233,26 +1422,26 @@ namespace GLib {
 		public virtual signal void show_processes (string message, GLib.Array<GLib.Pid> processes, [CCode (array_length = false, array_null_terminated = true)] string[] choices);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
-	public class NativeVolumeMonitor : GLib.VolumeMonitor {
+	public abstract class NativeVolumeMonitor : GLib.VolumeMonitor {
 		[CCode (has_construct_function = false)]
 		protected NativeVolumeMonitor ();
 		[NoWrapper]
-		public virtual unowned GLib.Mount get_mount_for_mount_path (string mount_path, GLib.Cancellable? cancellable = null);
+		public abstract GLib.Mount get_mount_for_mount_path (string mount_path, GLib.Cancellable? cancellable = null);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_network_address_get_type ()")]
 	public class NetworkAddress : GLib.Object, GLib.SocketConnectable {
 		[CCode (has_construct_function = false, type = "GSocketConnectable*")]
 		public NetworkAddress (string hostname, uint16 port);
 		public unowned string get_hostname ();
 		public uint16 get_port ();
 		public unowned string get_scheme ();
-		public static unowned GLib.SocketConnectable parse (string host_and_port, uint16 default_port) throws GLib.Error;
-		public static unowned GLib.SocketConnectable parse_uri (string uri, uint16 default_port) throws GLib.Error;
+		public static GLib.SocketConnectable parse (string host_and_port, uint16 default_port) throws GLib.Error;
+		public static GLib.SocketConnectable parse_uri (string uri, uint16 default_port) throws GLib.Error;
 		public string hostname { get; construct; }
 		public uint port { get; construct; }
 		public string scheme { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_network_service_get_type ()")]
 	public class NetworkService : GLib.Object, GLib.SocketConnectable {
 		[CCode (has_construct_function = false, type = "GSocketConnectable*")]
 		public NetworkService (string service, string protocol, string domain);
@@ -1271,10 +1460,9 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		protected OutputStream ();
 		public void clear_pending ();
-		public bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		[CCode (vfunc_name = "close_fn")]
+		public abstract bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public virtual async bool close_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
-		[NoWrapper]
-		public virtual bool close_fn (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public virtual bool flush (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public virtual async bool flush_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool has_pending ();
@@ -1288,14 +1476,8 @@ namespace GLib {
 		public bool write_all ([CCode (array_length_type = "gsize")] uint8[] buffer, out size_t bytes_written, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public virtual async ssize_t write_async ([CCode (array_length_type = "gsize")] uint8[] buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class OutputVector {
-		[CCode (array_length_cname = "size", array_length_type = "gsize")]
-		public uint8[] buffer;
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class Permission : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_permission_get_type ()")]
+	public abstract class Permission : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected Permission ();
 		public virtual bool acquire (GLib.Cancellable? cancellable = null) throws GLib.Error;
@@ -1310,10 +1492,18 @@ namespace GLib {
 		public bool can_acquire { get; }
 		public bool can_release { get; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "GSource", ref_function = "g_source_ref", unref_function = "g_source_unref")]
+	[Compact]
+	public class PollableSource : GLib.Source {
+		[CCode (type = "GSource*")]
+		public PollableSource (GLib.Object pollable_stream);
+		[CCode (cname = "g_source_set_callback")]
+		public void set_callback ([CCode (type = "GSourceFunc")] owned GLib.PollableSourceFunc func);
+	}
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_proxy_address_get_type ()")]
 	public class ProxyAddress : GLib.InetSocketAddress, GLib.SocketConnectable {
 		[CCode (has_construct_function = false, type = "GSocketAddress*")]
-		public ProxyAddress (GLib.InetAddress inetaddr, uint16 port, string protocol, string dest_hostname, uint16 dest_port, string username, string password);
+		public ProxyAddress (GLib.InetAddress inetaddr, uint16 port, string protocol, string dest_hostname, uint16 dest_port, string? username, string? password);
 		public unowned string get_destination_hostname ();
 		public uint16 get_destination_port ();
 		public unowned string get_password ();
@@ -1325,7 +1515,7 @@ namespace GLib {
 		public string protocol { get; construct; }
 		public string username { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_proxy_address_enumerator_get_type ()")]
 	public class ProxyAddressEnumerator : GLib.SocketAddressEnumerator {
 		[CCode (has_construct_function = false)]
 		protected ProxyAddressEnumerator ();
@@ -1338,14 +1528,19 @@ namespace GLib {
 	public class Resolver : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected Resolver ();
-		public static GLib.Quark error_quark ();
-		public static unowned GLib.Resolver get_default ();
-		public virtual unowned string lookup_by_address (GLib.InetAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async unowned string lookup_by_address_async (GLib.InetAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public static GLib.Resolver get_default ();
+		public virtual string lookup_by_address (GLib.InetAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async string lookup_by_address_async (GLib.InetAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public virtual GLib.List<GLib.InetAddress> lookup_by_name (string hostname, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public virtual async GLib.List<GLib.InetAddress> lookup_by_name_async (string hostname, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual GLib.List<GLib.SrvTarget> lookup_service (string service, string protocol, string domain, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async GLib.List<GLib.SrvTarget> lookup_service_async (string service, string protocol, string domain, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public GLib.List<GLib.SrvTarget> lookup_service (string service, string protocol, string domain, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (finish_function = "g_resolver_lookup_service_finish")]
+		public async GLib.List<GLib.SrvTarget> lookup_service_async (string service, string protocol, string domain, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[NoWrapper]
+		public virtual GLib.List<GLib.SrvTarget> lookup_service_fn (string rrname, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (finish_function = "g_resolver_lookup_service_finish", vfunc_name = "lookup_service_async")]
+		[NoWrapper]
+		public virtual async GLib.List<GLib.SrvTarget> lookup_service_fn_async (string rrname, GLib.Cancellable? cancellable = null);
 		public void set_default ();
 		public virtual signal void reload ();
 	}
@@ -1354,23 +1549,23 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public Settings (string schema_id);
 		public void apply ();
-		public void bind (string key, void* object, string property, GLib.SettingsBindFlags flags);
-		public void bind_with_mapping (string key, void* object, string property, GLib.SettingsBindFlags flags, GLib.SettingsBindGetMapping get_mapping, GLib.SettingsBindSetMapping set_mapping, GLib.DestroyNotify destroy);
-		public void bind_writable (string key, void* object, string property, bool inverted);
+		public void bind (string key, GLib.Object object, string property, GLib.SettingsBindFlags flags);
+		public void bind_with_mapping (string key, GLib.Object object, string property, GLib.SettingsBindFlags flags, GLib.SettingsBindGetMapping get_mapping, owned GLib.SettingsBindSetMapping set_mapping);
+		public void bind_writable (string key, GLib.Object object, string property, bool inverted);
 		public void delay ();
 		[CCode (has_construct_function = false)]
-		public Settings.full (GLib.SettingsSchema schema, GLib.SettingsBackend backend, string path);
+		public Settings.full (GLib.SettingsSchema schema, GLib.SettingsBackend? backend, string? path);
 		[CCode (sentinel = "")]
 		public void @get (string key, string format, ...);
 		public bool get_boolean (string key);
-		public unowned GLib.Settings get_child (string name);
+		public GLib.Settings get_child (string name);
 		public double get_double (string key);
 		public int get_enum (string key);
 		public uint get_flags (string key);
 		public bool get_has_unapplied ();
 		public int get_int (string key);
 		public void* get_mapped (string key, GLib.SettingsGetMapping mapping);
-		public unowned GLib.Variant get_range (string key);
+		public GLib.Variant get_range (string key);
 		public string get_string (string key);
 		[CCode (array_length = false, array_null_terminated = true)]
 		public string[] get_strv (string key);
@@ -1381,7 +1576,8 @@ namespace GLib {
 		public string[] list_children ();
 		[CCode (array_length = false, array_null_terminated = true)]
 		public string[] list_keys ();
-		public static unowned string list_relocatable_schemas ();
+		[CCode (array_length = false, array_null_terminated = true)]
+		public static unowned string[] list_relocatable_schemas ();
 		[CCode (array_length = false, array_null_terminated = true)]
 		public static unowned string[] list_schemas ();
 		public bool range_check (string key, GLib.Variant value);
@@ -1395,7 +1591,7 @@ namespace GLib {
 		public bool set_flags (string key, uint value);
 		public bool set_int (string key, int value);
 		public bool set_string (string key, string value);
-		public bool set_strv (string key, [CCode (array_length = false)] string[] value);
+		public bool set_strv (string key, [CCode (array_length = false, array_null_terminated = true)] string[]? value);
 		public bool set_uint (string key, uint value);
 		public bool set_value (string key, GLib.Variant value);
 		public static void sync ();
@@ -1419,29 +1615,36 @@ namespace GLib {
 		public string schema_id { owned get; construct; }
 		[NoAccessorMethod]
 		public GLib.SettingsSchema settings_schema { owned get; construct; }
-		public virtual signal bool change_event (void* keys, int n_keys);
+		public virtual signal bool change_event (GLib.Quark[]? keys);
 		public virtual signal void changed (string key);
 		public virtual signal bool writable_change_event (uint key);
 		public virtual signal void writable_changed (string key);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	public class SettingsBackend : GLib.Object {
+		[CCode (has_construct_function = false)]
+		protected SettingsBackend ();
 	}
-	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_settings_schema_ref", type_id = "g_settings_schema_get_type ()", unref_function = "g_settings_schema_unref")]
+	[CCode (cheader_filename = "gio/gio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "g_settings_schema_get_type ()")]
 	[Compact]
 	public class SettingsSchema {
 		public unowned string get_id ();
 		public unowned string get_path ();
+		public GLib.SettingsSchema @ref ();
+		public void unref ();
 	}
-	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_settings_schema_source_ref", type_id = "g_settings_schema_source_get_type ()", unref_function = "g_settings_schema_source_unref")]
+	[CCode (cheader_filename = "gio/gio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "g_settings_schema_source_get_type ()")]
 	[Compact]
 	public class SettingsSchemaSource {
 		[CCode (has_construct_function = false)]
-		public SettingsSchemaSource.from_directory (string directory, GLib.SettingsSchemaSource parent, bool trusted) throws GLib.Error;
+		public SettingsSchemaSource.from_directory (string directory, GLib.SettingsSchemaSource? parent, bool trusted) throws GLib.Error;
+		[CCode (cheader_filename = "gio/gio.h")]
 		public static unowned GLib.SettingsSchemaSource get_default ();
-		public unowned GLib.SettingsSchema lookup (string schema_id, bool recursive);
+		public GLib.SettingsSchema lookup (string schema_id, bool recursive);
+		public GLib.SettingsSchemaSource @ref ();
+		public void unref ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_simple_action_get_type ()")]
 	public class SimpleAction : GLib.Object, GLib.Action {
 		[CCode (has_construct_function = false)]
 		public SimpleAction (string name, GLib.VariantType? parameter_type);
@@ -1449,65 +1652,54 @@ namespace GLib {
 		public void set_state (GLib.Variant value);
 		[CCode (has_construct_function = false)]
 		public SimpleAction.stateful (string name, GLib.VariantType? parameter_type, GLib.Variant state);
-		[NoAccessorMethod]
-		public bool enabled { get; set; }
-		[NoAccessorMethod]
-		public string name { owned get; construct; }
-		[NoAccessorMethod]
-		public GLib.VariantType parameter_type { owned get; construct; }
-		[NoAccessorMethod]
-		public GLib.Variant state { owned get; set; }
-		[NoAccessorMethod]
-		public GLib.VariantType state_type { owned get; }
-		public virtual signal void activate (GLib.Variant? p0);
-		public virtual signal void change_state (GLib.Variant? p0);
+		public signal void activate (GLib.Variant? parameter);
+		public signal void change_state (GLib.Variant? value);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_simple_action_group_get_type ()")]
 	public class SimpleActionGroup : GLib.Object, GLib.ActionGroup, GLib.ActionMap {
 		[CCode (has_construct_function = false)]
 		public SimpleActionGroup ();
-		public void add_entries (GLib.ActionEntry[] entries);
+		public void add_entries ([CCode (array_length_cname = "n_entries", array_length_pos = 1.5)] GLib.ActionEntry[] entries, void* user_data);
 		public void insert (GLib.Action action);
 		public unowned GLib.Action lookup (string action_name);
 		public void remove (string action_name);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
-	public class SimpleAsyncResult : GLib.Object, GLib.AsyncResult {
-		[CCode (has_construct_function = false)]
-		public SimpleAsyncResult (GLib.Object? source_object, GLib.AsyncReadyCallback callback, void* source_tag);
+	public class SimpleAsyncResult : GLib.Object, GLib.AsyncResult, GLib.AsyncResult {
+		public SimpleAsyncResult (GLib.Object? source_object, void* source_tag);
 		public void complete ();
 		public void complete_in_idle ();
-		[CCode (has_construct_function = false)]
-		public SimpleAsyncResult.error (GLib.Object source_object, GLib.AsyncReadyCallback callback, GLib.Quark domain, int code, string format);
-		[CCode (has_construct_function = false)]
-		public SimpleAsyncResult.from_error (GLib.Object source_object, GLib.AsyncReadyCallback callback, GLib.Error error);
+		[PrintfFormat]
+		public SimpleAsyncResult.error (GLib.Object? source_object, GLib.Quark domain, int code, string format, ...);
+		public SimpleAsyncResult.from_error (GLib.Object? source_object, GLib.Error error);
 		public bool get_op_res_gboolean ();
-		public void* get_op_res_gpointer ();
+		[CCode (simple_generics = true)]
+		public unowned T get_op_res_gpointer<T> ();
 		public ssize_t get_op_res_gssize ();
 		public void* get_source_tag ();
-		public static bool is_valid (GLib.AsyncResult _result, GLib.Object source, void* source_tag);
+		public static bool is_valid (GLib.AsyncResult result, GLib.Object source, void* source_tag);
 		public bool propagate_error () throws GLib.Error;
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_gerror_in_idle")]
+		public static async void report_gerror_in_idle (GLib.Object? object, GLib.Error error);
 		public void run_in_thread (GLib.SimpleAsyncThreadFunc func, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
-		public void set_error (GLib.Quark domain, int code, string format);
-		public void set_error_va (GLib.Quark domain, int code, string format, void* args);
+		[PrintfFormat]
+		public void set_error (GLib.Quark domain, int code, string format, ...);
+		public void set_error_va (GLib.Quark domain, int code, string format, va_list args);
 		public void set_from_error (GLib.Error error);
 		public void set_handle_cancellation (bool handle_cancellation);
 		public void set_op_res_gboolean (bool op_res);
-		public void set_op_res_gpointer (void* op_res, GLib.DestroyNotify destroy_op_res);
+		[CCode (simple_generics = true)]
+		public void set_op_res_gpointer<T> (owned T op_res);
 		public void set_op_res_gssize (ssize_t op_res);
 		public void take_error (GLib.Error error);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class SimpleAsyncResultClass {
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_simple_permission_get_type ()")]
 	public class SimplePermission : GLib.Permission {
 		[CCode (has_construct_function = false, type = "GPermission*")]
 		public SimplePermission (bool allowed);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
-	public class Socket : GLib.Object, GLib.Initable {
+	public class Socket : GLib.Object, GLib.Initable, GLib.Initable {
 		[CCode (has_construct_function = false)]
 		public Socket (GLib.SocketFamily family, GLib.SocketType type, GLib.SocketProtocol protocol) throws GLib.Error;
 		public GLib.Socket accept (GLib.Cancellable? cancellable = null) throws GLib.Error;
@@ -1521,27 +1713,27 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public Socket.from_fd (int fd) throws GLib.Error;
 		public bool get_blocking ();
-		public unowned GLib.Credentials get_credentials () throws GLib.Error;
+		public GLib.Credentials get_credentials () throws GLib.Error;
 		public GLib.SocketFamily get_family ();
 		public int get_fd ();
 		public bool get_keepalive ();
 		public int get_listen_backlog ();
-		public unowned GLib.SocketAddress get_local_address () throws GLib.Error;
+		public GLib.SocketAddress get_local_address () throws GLib.Error;
 		public GLib.SocketProtocol get_protocol ();
-		public unowned GLib.SocketAddress get_remote_address () throws GLib.Error;
+		public GLib.SocketAddress get_remote_address () throws GLib.Error;
 		public GLib.SocketType get_socket_type ();
 		public uint get_timeout ();
 		public bool is_closed ();
 		public bool is_connected ();
 		public bool listen () throws GLib.Error;
-		public ssize_t receive (uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t receive_from (out unowned GLib.SocketAddress address, uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t receive_message (out unowned GLib.SocketAddress address, GLib.InputVector vectors, int num_vectors, out unowned GLib.SocketControlMessage messages, int num_messages, int flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t receive_with_blocking (uint8[] buffer, bool blocking, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t send (uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t send_message (GLib.SocketAddress address, GLib.OutputVector vectors, int num_vectors, out unowned GLib.SocketControlMessage messages, int num_messages, int flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t send_to (GLib.SocketAddress address, uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public ssize_t send_with_blocking (uint8[] buffer, bool blocking, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t receive (string buffer, size_t size, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t receive_from (out GLib.SocketAddress address, [CCode (array_length_cname = "size", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t receive_message (out GLib.SocketAddress address, [CCode (array_length_cname = "num_vectors", array_length_pos = 2.5)] GLib.InputVector[] vectors, [CCode (array_length_cname = "num_messages", array_length_pos = 3.5)] GLib.SocketControlMessage[]? messages, int flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t receive_with_blocking (string buffer, size_t size, bool blocking, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t send ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t send_message (GLib.SocketAddress address, [CCode (array_length_cname = "num_vectors", array_length_pos = 2.5)] GLib.OutputVector[] vectors, [CCode (array_length_cname = "num_messages", array_length_pos = 3.5)] GLib.SocketControlMessage[]? messages, int flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t send_to (GLib.SocketAddress address, [CCode (array_length_cname = "size", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t send_with_blocking ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] buffer, bool blocking, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void set_blocking (bool blocking);
 		public void set_keepalive (bool keepalive);
 		public void set_listen_backlog (int backlog);
@@ -1553,15 +1745,15 @@ namespace GLib {
 		public int fd { get; construct; }
 		public bool keepalive { get; set; }
 		public int listen_backlog { get; set; }
-		public GLib.SocketAddress local_address { get; }
+		public GLib.SocketAddress local_address { owned get; }
 		public GLib.SocketProtocol protocol { get; construct; }
-		public GLib.SocketAddress remote_address { get; }
+		public GLib.SocketAddress remote_address { owned get; }
 		public uint timeout { get; set; }
 		[NoAccessorMethod]
 		public GLib.SocketType type { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class SocketAddress : GLib.Object, GLib.SocketConnectable {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_address_get_type ()")]
+	public abstract class SocketAddress : GLib.Object, GLib.SocketConnectable {
 		[CCode (has_construct_function = false)]
 		protected SocketAddress ();
 		[CCode (has_construct_function = false)]
@@ -1571,26 +1763,26 @@ namespace GLib {
 		public virtual bool to_native (void* dest, size_t destlen) throws GLib.Error;
 		public GLib.SocketFamily family { get; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class SocketAddressEnumerator : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_address_enumerator_get_type ()")]
+	public abstract class SocketAddressEnumerator : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected SocketAddressEnumerator ();
-		public virtual unowned GLib.SocketAddress next (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async unowned GLib.SocketAddress next_async (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual GLib.SocketAddress next (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.SocketAddress next_async (GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_client_get_type ()")]
 	public class SocketClient : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public SocketClient ();
 		public void add_application_proxy (string protocol);
-		public unowned GLib.SocketConnection connect (GLib.SocketConnectable connectable, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async unowned GLib.SocketConnection connect_async (GLib.SocketConnectable connectable, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public unowned GLib.SocketConnection connect_to_host (string host_and_port, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async unowned GLib.SocketConnection connect_to_host_async (string host_and_port, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public unowned GLib.SocketConnection connect_to_service (string domain, string service, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async unowned GLib.SocketConnection connect_to_service_async (string domain, string service, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public unowned GLib.SocketConnection connect_to_uri (string uri, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async unowned GLib.SocketConnection connect_to_uri_async (string uri, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public GLib.SocketConnection connect (GLib.SocketConnectable connectable, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.SocketConnection connect_async (GLib.SocketConnectable connectable, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public GLib.SocketConnection connect_to_host (string host_and_port, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.SocketConnection connect_to_host_async (string host_and_port, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public GLib.SocketConnection connect_to_service (string domain, string service, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.SocketConnection connect_to_service_async (string domain, string service, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public GLib.SocketConnection connect_to_uri (string uri, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.SocketConnection connect_to_uri_async (string uri, uint16 default_port, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool get_enable_proxy ();
 		public GLib.SocketFamily get_family ();
 		public unowned GLib.SocketAddress get_local_address ();
@@ -1616,41 +1808,45 @@ namespace GLib {
 		public GLib.TlsCertificateFlags tls_validation_flags { get; set construct; }
 		[NoAccessorMethod]
 		public GLib.SocketType type { get; set construct; }
+		public virtual signal void event (GLib.SocketClientEvent event, GLib.SocketConnectable connectable, GLib.IOStream connection);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	public class SocketConnection : GLib.IOStream {
 		[CCode (has_construct_function = false)]
 		protected SocketConnection ();
-		public static unowned GLib.SocketConnection factory_create_connection (GLib.Socket socket);
+		public bool connect (GLib.SocketAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async bool connect_async (GLib.SocketAddress address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public static GLib.SocketConnection factory_create_connection (GLib.Socket socket);
 		public static GLib.Type factory_lookup_type (GLib.SocketFamily family, GLib.SocketType type, int protocol_id);
 		public static void factory_register_type (GLib.Type g_type, GLib.SocketFamily family, GLib.SocketType type, int protocol);
-		public unowned GLib.SocketAddress get_local_address () throws GLib.Error;
-		public unowned GLib.SocketAddress get_remote_address () throws GLib.Error;
+		public GLib.SocketAddress get_local_address () throws GLib.Error;
+		public GLib.SocketAddress get_remote_address () throws GLib.Error;
 		public unowned GLib.Socket get_socket ();
+		public bool is_connected ();
 		public GLib.Socket socket { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class SocketControlMessage : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_control_message_get_type ()")]
+	public abstract class SocketControlMessage : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected SocketControlMessage ();
-		public virtual GLib.SocketControlMessage deserialize (int level, int type, [CCode (array_length_pos = 2.9, array_length_type = "gsize")] uint8[] data);
+		public static GLib.SocketControlMessage deserialize (int level, int type, [CCode (array_length_cname = "size", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] data);
 		public virtual int get_level ();
 		public int get_msg_type ();
 		public virtual size_t get_size ();
 		[NoWrapper]
 		public virtual int get_type ();
-		public virtual void serialize ([CCode (array_length = false)] uint8[] data);
+		public virtual void serialize ([CCode (array_length = false, type = "gpointer")] uint8[] data);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_listener_get_type ()")]
 	public class SocketListener : GLib.Object {
 		[CCode (has_construct_function = false)]
 		public SocketListener ();
-		public unowned GLib.SocketConnection accept (out unowned GLib.Object source_object, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async unowned GLib.SocketConnection accept_async (GLib.Cancellable? cancellable = null, out GLib.Object? source_object = null) throws GLib.Error;
-		public unowned GLib.Socket accept_socket (out unowned GLib.Object source_object, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async unowned GLib.Socket accept_socket_async (GLib.Cancellable? cancellable = null, out GLib.Object? source_object = null) throws GLib.Error;
-		public bool add_address (GLib.SocketAddress address, GLib.SocketType type, GLib.SocketProtocol protocol, GLib.Object? source_object, out unowned GLib.SocketAddress effective_address) throws GLib.Error;
-		public uint16 add_any_inet_port (GLib.Object source_object) throws GLib.Error;
+		public GLib.SocketConnection accept (out unowned GLib.Object source_object = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.SocketConnection accept_async (GLib.Cancellable? cancellable = null, out unowned GLib.Object source_object = null) throws GLib.Error;
+		public GLib.Socket accept_socket (out unowned GLib.Object source_object = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async GLib.Socket accept_socket_async (GLib.Cancellable? cancellable = null, out unowned GLib.Object source_object = null) throws GLib.Error;
+		public bool add_address (GLib.SocketAddress address, GLib.SocketType type, GLib.SocketProtocol protocol, GLib.Object? source_object, out GLib.SocketAddress effective_address) throws GLib.Error;
+		public uint16 add_any_inet_port (GLib.Object? source_object) throws GLib.Error;
 		public bool add_inet_port (uint16 port, GLib.Object? source_object) throws GLib.Error;
 		public bool add_socket (GLib.Socket socket, GLib.Object? source_object) throws GLib.Error;
 		[NoWrapper]
@@ -1660,7 +1856,7 @@ namespace GLib {
 		[NoAccessorMethod]
 		public int listen_backlog { get; set construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_service_get_type ()")]
 	public class SocketService : GLib.SocketListener {
 		[CCode (has_construct_function = false)]
 		public SocketService ();
@@ -1675,7 +1871,7 @@ namespace GLib {
 		[CCode (cname = "g_source_set_callback")]
 		public void set_callback ([CCode (type = "GSourceFunc")] owned GLib.SocketSourceFunc func);
 	}
-	[CCode (cheader_filename = "gio/gio.h", copy_function = "g_srv_target_copy", type_id = "g_srv_target_get_type ()")]
+	[CCode (cheader_filename = "gio/gio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "g_srv_target_get_type ()")]
 	[Compact]
 	public class SrvTarget {
 		[CCode (has_construct_function = false)]
@@ -1685,9 +1881,10 @@ namespace GLib {
 		public uint16 get_port ();
 		public uint16 get_priority ();
 		public uint16 get_weight ();
+		[CCode (cheader_filename = "gio/gio.h")]
 		public static GLib.List<GLib.SrvTarget> list_sort (owned GLib.List<GLib.SrvTarget> targets);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_tcp_connection_get_type ()")]
 	public class TcpConnection : GLib.SocketConnection {
 		[CCode (has_construct_function = false)]
 		protected TcpConnection ();
@@ -1695,20 +1892,20 @@ namespace GLib {
 		public void set_graceful_disconnect (bool graceful_disconnect);
 		public bool graceful_disconnect { get; set; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_tcp_wrapper_connection_get_type ()")]
 	public class TcpWrapperConnection : GLib.TcpConnection {
 		[CCode (has_construct_function = false, type = "GSocketConnection*")]
 		public TcpWrapperConnection (GLib.IOStream base_io_stream, GLib.Socket socket);
 		public unowned GLib.IOStream get_base_io_stream ();
 		public GLib.IOStream base_io_stream { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_themed_icon_get_type ()")]
 	public class ThemedIcon : GLib.Object, GLib.Icon {
 		[CCode (has_construct_function = false, type = "GIcon*")]
 		public ThemedIcon (string iconname);
 		public void append_name (string iconname);
 		[CCode (has_construct_function = false, type = "GIcon*")]
-		public ThemedIcon.from_names (string[] iconnames);
+		public ThemedIcon.from_names ([CCode (array_length_cname = "len", array_length_pos = 1.1)] string[] iconnames);
 		[CCode (array_length = false, array_null_terminated = true)]
 		public unowned string[] get_names ();
 		public void prepend_name (string iconname);
@@ -1720,11 +1917,7 @@ namespace GLib {
 		[NoAccessorMethod]
 		public bool use_default_fallbacks { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class ThemedIconClass {
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_threaded_socket_service_get_type ()")]
 	public class ThreadedSocketService : GLib.SocketService {
 		[CCode (has_construct_function = false, type = "GSocketService*")]
 		public ThreadedSocketService (int max_threads);
@@ -1732,8 +1925,8 @@ namespace GLib {
 		public int max_threads { get; construct; }
 		public virtual signal bool run (GLib.SocketConnection connection, GLib.Object source_object);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class TlsCertificate : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_tls_certificate_get_type ()")]
+	public abstract class TlsCertificate : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected TlsCertificate ();
 		[CCode (has_construct_function = false)]
@@ -1743,8 +1936,8 @@ namespace GLib {
 		[CCode (has_construct_function = false)]
 		public TlsCertificate.from_pem (string data, ssize_t length) throws GLib.Error;
 		public unowned GLib.TlsCertificate get_issuer ();
-		public static unowned GLib.List list_new_from_file (string file) throws GLib.Error;
-		public virtual GLib.TlsCertificateFlags verify (GLib.SocketConnectable identity, GLib.TlsCertificate trusted_ca);
+		public static GLib.List<GLib.TlsCertificate> list_new_from_file (string file) throws GLib.Error;
+		public virtual GLib.TlsCertificateFlags verify (GLib.SocketConnectable? identity, GLib.TlsCertificate? trusted_ca);
 		[NoAccessorMethod]
 		public GLib.ByteArray certificate { owned get; construct; }
 		[NoAccessorMethod]
@@ -1753,8 +1946,8 @@ namespace GLib {
 		public GLib.ByteArray private_key { construct; }
 		public string private_key_pem { construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class TlsConnection : GLib.IOStream {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_tls_connection_get_type ()")]
+	public abstract class TlsConnection : GLib.IOStream {
 		[CCode (has_construct_function = false)]
 		protected TlsConnection ();
 		public bool emit_accept_certificate (GLib.TlsCertificate peer_cert, GLib.TlsCertificateFlags errors);
@@ -1765,14 +1958,16 @@ namespace GLib {
 		public GLib.TlsCertificateFlags get_peer_certificate_errors ();
 		public GLib.TlsRehandshakeMode get_rehandshake_mode ();
 		public bool get_require_close_notify ();
+		[Deprecated (since = "2.30")]
 		public bool get_use_system_certdb ();
 		public virtual bool handshake (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public virtual async bool handshake_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void set_certificate (GLib.TlsCertificate certificate);
 		public void set_database (GLib.TlsDatabase database);
-		public void set_interaction (GLib.TlsInteraction interaction);
+		public void set_interaction (GLib.TlsInteraction? interaction);
 		public void set_rehandshake_mode (GLib.TlsRehandshakeMode mode);
 		public void set_require_close_notify (bool require_close_notify);
+		[Deprecated (since = "2.30")]
 		public void set_use_system_certdb (bool use_system_certdb);
 		[NoAccessorMethod]
 		public GLib.IOStream base_io_stream { owned get; construct; }
@@ -1783,24 +1978,29 @@ namespace GLib {
 		public GLib.TlsCertificateFlags peer_certificate_errors { get; }
 		public GLib.TlsRehandshakeMode rehandshake_mode { get; set construct; }
 		public bool require_close_notify { get; set construct; }
+		[Deprecated (since = "2.30")]
 		public bool use_system_certdb { get; set construct; }
 		public virtual signal bool accept_certificate (GLib.TlsCertificate peer_cert, GLib.TlsCertificateFlags errors);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public class TlsDatabase : GLib.Object {
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_tls_database_get_type ()")]
+	public abstract class TlsDatabase : GLib.Object {
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT")]
+		public const string PURPOSE_AUTHENTICATE_CLIENT;
+		[CCode (cheader_filename = "gio/gio.h", cname = "G_TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER")]
+		public const string PURPOSE_AUTHENTICATE_SERVER;
 		[CCode (has_construct_function = false)]
 		protected TlsDatabase ();
 		public virtual string? create_certificate_handle (GLib.TlsCertificate certificate);
-		public virtual GLib.TlsCertificate lookup_certificate_for_handle (string handle, GLib.TlsInteraction interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async GLib.TlsCertificate lookup_certificate_for_handle_async (string handle, GLib.TlsInteraction interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual GLib.TlsCertificate lookup_certificate_issuer (GLib.TlsCertificate certificate, GLib.TlsInteraction interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async GLib.TlsCertificate lookup_certificate_issuer_async (GLib.TlsCertificate certificate, GLib.TlsInteraction interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual GLib.List<GLib.TlsCertificate> lookup_certificates_issued_by (GLib.ByteArray issuer_raw_dn, GLib.TlsInteraction interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async GLib.List<GLib.TlsCertificate> lookup_certificates_issued_by_async (GLib.ByteArray issuer_raw_dn, GLib.TlsInteraction interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual GLib.TlsCertificateFlags verify_chain (GLib.TlsCertificate chain, string purpose, GLib.SocketConnectable identity, GLib.TlsInteraction interaction, GLib.TlsDatabaseVerifyFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual async GLib.TlsCertificateFlags verify_chain_async (GLib.TlsCertificate chain, string purpose, GLib.SocketConnectable identity, GLib.TlsInteraction interaction, GLib.TlsDatabaseVerifyFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+		public virtual GLib.TlsCertificate lookup_certificate_for_handle (string handle, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.TlsCertificate lookup_certificate_for_handle_async (string handle, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual GLib.TlsCertificate lookup_certificate_issuer (GLib.TlsCertificate certificate, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.TlsCertificate lookup_certificate_issuer_async (GLib.TlsCertificate certificate, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual GLib.List<GLib.TlsCertificate> lookup_certificates_issued_by (GLib.ByteArray issuer_raw_dn, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async void lookup_certificates_issued_by_async (GLib.ByteArray issuer_raw_dn, GLib.TlsInteraction? interaction, GLib.TlsDatabaseLookupFlags flags, GLib.Cancellable? cancellable = null);
+		public virtual GLib.TlsCertificateFlags verify_chain (GLib.TlsCertificate chain, string purpose, GLib.SocketConnectable? identity, GLib.TlsInteraction? interaction, GLib.TlsDatabaseVerifyFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public virtual async GLib.TlsCertificateFlags verify_chain_async (GLib.TlsCertificate chain, string purpose, GLib.SocketConnectable? identity, GLib.TlsInteraction? interaction, GLib.TlsDatabaseVerifyFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+	}
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_tls_interaction_get_type ()")]
 	public class TlsInteraction : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected TlsInteraction ();
@@ -1816,32 +2016,20 @@ namespace GLib {
 		public virtual unowned string get_default_warning ();
 		public unowned string get_description ();
 		public GLib.TlsPasswordFlags get_flags ();
-		public virtual unowned uchar[] get_value (size_t length);
+		[CCode (array_length_pos = 0.1)]
+		public virtual unowned uint8[] get_value ();
 		public unowned string get_warning ();
 		public void set_description (string description);
 		public void set_flags (GLib.TlsPasswordFlags flags);
-		public virtual void set_value (uchar[] value, ssize_t length);
-		public void set_value_full (uchar[] value, ssize_t length, GLib.DestroyNotify destroy);
+		public void set_value ([CCode (array_length_cname = "length", array_length_pos = 1.1, array_length_type = "gssize", type = "guchar*")] uint8[] value);
+		[CCode (vfunc_name = "set_value")]
+		public virtual void set_value_full ([CCode (array_length_cname = "length", array_length_pos = 1.5, array_length_type = "gssize", type = "guchar*")] owned uint8[] value, GLib.DestroyNotify? notify = GLib.free);
 		public void set_warning (string warning);
 		public string description { get; set; }
 		public GLib.TlsPasswordFlags flags { get; set; }
 		public string warning { get; set; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	[Compact]
-	public class UnixCredentialsMessage {
-	}
-	[CCode (cheader_filename = "gio/gunixfdlist.h")]
-	public class UnixFDList : GLib.Object {
-		public UnixFDList ();
-		public int append (int fd) throws GLib.IOError;
-		public UnixFDList.from_array (int[] fds);
-		public int @get (int index) throws GLib.IOError;
-		public unowned int[] peek_fds ();
-		public int[] steal_fds ();
-		public int length { get; }
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_vfs_get_type ()")]
 	public class Vfs : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected Vfs ();
@@ -1851,6 +2039,7 @@ namespace GLib {
 		public virtual GLib.File get_file_for_path (string path);
 		public virtual GLib.File get_file_for_uri (string uri);
 		public static unowned GLib.Vfs get_local ();
+		[CCode (array_length = false, array_null_terminated = true)]
 		public virtual unowned string[] get_supported_uri_schemes ();
 		public virtual bool is_active ();
 		[NoWrapper]
@@ -1861,13 +2050,14 @@ namespace GLib {
 		public virtual void local_file_removed (string filename);
 		[NoWrapper]
 		public virtual bool local_file_set_attributes (string filename, GLib.FileInfo info, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public virtual unowned GLib.File parse_name (string parse_name);
+		public virtual GLib.File parse_name (string parse_name);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	public class VolumeMonitor : GLib.Object {
 		[CCode (has_construct_function = false)]
 		protected VolumeMonitor ();
-		public virtual unowned GLib.Volume adopt_orphan_mount (GLib.Mount mount);
+		[Deprecated (since = "2.20")]
+		public static GLib.Volume adopt_orphan_mount (GLib.Mount mount);
 		public static GLib.VolumeMonitor @get ();
 		public virtual GLib.List<GLib.Drive> get_connected_drives ();
 		public virtual GLib.Mount get_mount_for_uuid (string uuid);
@@ -1889,19 +2079,19 @@ namespace GLib {
 		public virtual signal void volume_changed (GLib.Volume volume);
 		public virtual signal void volume_removed (GLib.Volume volume);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_zlib_compressor_get_type ()")]
 	public class ZlibCompressor : GLib.Object, GLib.Converter {
 		[CCode (has_construct_function = false)]
 		public ZlibCompressor (GLib.ZlibCompressorFormat format, int level = -1);
 		public unowned GLib.FileInfo get_file_info ();
-		public void set_file_info (GLib.FileInfo file_info);
+		public void set_file_info (GLib.FileInfo? file_info);
 		public GLib.FileInfo file_info { get; set; }
 		[NoAccessorMethod]
 		public GLib.ZlibCompressorFormat format { get; construct; }
 		[NoAccessorMethod]
 		public int level { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_zlib_decompressor_get_type ()")]
 	public class ZlibDecompressor : GLib.Object, GLib.Converter {
 		[CCode (has_construct_function = false)]
 		public ZlibDecompressor (GLib.ZlibCompressorFormat format);
@@ -1910,78 +2100,77 @@ namespace GLib {
 		[NoAccessorMethod]
 		public GLib.ZlibCompressorFormat format { get; construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GActionInterface", type_id = "g_action_get_type ()")]
 	public interface Action : GLib.Object {
-		public abstract void activate (GLib.Variant parameter);
+		public abstract void activate (GLib.Variant? parameter);
 		public abstract void change_state (GLib.Variant value);
 		public abstract bool get_enabled ();
 		public abstract unowned string get_name ();
 		public abstract unowned GLib.VariantType get_parameter_type ();
-		public abstract unowned GLib.Variant get_state ();
-		public abstract unowned GLib.Variant get_state_hint ();
+		public abstract GLib.Variant get_state ();
+		public abstract GLib.Variant get_state_hint ();
 		public abstract unowned GLib.VariantType get_state_type ();
-		public bool enabled { get; }
-		public string name { get; }
-		public GLib.VariantType parameter_type { get; }
-		public GLib.Variant state { get; }
-		public GLib.VariantType state_type { get; }
+		public abstract bool enabled { get; }
+		public abstract string name { get; }
+		public abstract GLib.VariantType parameter_type { get; }
+		public abstract GLib.Variant state { owned get; }
+		public abstract GLib.VariantType state_type { get; }
 	}
-	[CCode (cheader_filename = "gio/gio.h", type_cname = "GActionGroupInterface")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GActionGroupInterface", type_id = "g_action_group_get_type ()")]
 	public interface ActionGroup : GLib.Object {
 		public abstract void activate_action (string action_name, GLib.Variant? parameter);
 		public abstract void change_action_state (string action_name, GLib.Variant value);
 		public abstract bool get_action_enabled (string action_name);
-		public abstract unowned GLib.VariantType? get_action_parameter_type (string action_name);
-		public abstract GLib.Variant? get_action_state (string action_name);
-		public abstract GLib.Variant? get_action_state_hint (string action_name);
-		public abstract unowned GLib.VariantType? get_action_state_type (string action_name);
+		public abstract unowned GLib.VariantType get_action_parameter_type (string action_name);
+		public abstract GLib.Variant get_action_state (string action_name);
+		public abstract GLib.Variant get_action_state_hint (string action_name);
+		public abstract GLib.VariantType get_action_state_type (string action_name);
 		public abstract bool has_action (string action_name);
 		[CCode (array_length = false, array_null_terminated = true)]
 		public abstract string[] list_actions ();
-		public virtual bool query_action (string action_name, bool enabled, out unowned GLib.VariantType parameter_type, out unowned GLib.VariantType state_type, out GLib.Variant state_hint, out GLib.Variant state);
+		public abstract bool query_action (string action_name, out bool enabled, out GLib.VariantType parameter_type, out GLib.VariantType state_type, out GLib.Variant state_hint, out GLib.Variant state);
 		[HasEmitter]
-		public signal void action_added (string action_name);
+		public virtual signal void action_added (string action_name);
 		[HasEmitter]
-		public signal void action_enabled_changed (string action_name, bool enabled);
+		public virtual signal void action_enabled_changed (string action_name, bool enabled);
 		[HasEmitter]
-		public signal void action_removed (string action_name);
+		public virtual signal void action_removed (string action_name);
 		[HasEmitter]
-		public signal void action_state_changed (string action_name, GLib.Variant state);
+		public virtual signal void action_state_changed (string action_name, GLib.Variant state);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GActionMapInterface", type_id = "g_action_map_get_type ()")]
 	public interface ActionMap : GLib.ActionGroup, GLib.Object {
 		public abstract void add_action (GLib.Action action);
-		public void add_action_entries (GLib.ActionEntry[] entries, void* user_data);
+		public void add_action_entries ([CCode (array_length_cname = "n_entries", array_length_pos = 1.5, type = "GActionEntry*")] GLib.ActionEntry[] entries, void* user_data);
 		public abstract unowned GLib.Action lookup_action (string action_name);
 		public abstract void remove_action (string action_name);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_app_info_get_type ()")]
 	public interface AppInfo : GLib.Object {
 		public abstract bool add_supports_type (string content_type) throws GLib.Error;
 		public abstract bool can_delete ();
 		public abstract bool can_remove_supports_type ();
-		public static unowned GLib.AppInfo create_from_commandline (string commandline, string? application_name, GLib.AppInfoCreateFlags flags) throws GLib.Error;
-		public bool @delete ();
-		[NoWrapper]
-		public abstract bool do_delete ();
-		public abstract unowned GLib.AppInfo dup ();
+		public static GLib.AppInfo create_from_commandline (string commandline, string? application_name, GLib.AppInfoCreateFlags flags) throws GLib.Error;
+		[CCode (vfunc_name = "do_delete")]
+		public abstract bool @delete ();
+		public abstract GLib.AppInfo dup ();
 		public abstract bool equal (GLib.AppInfo appinfo2);
 		public static GLib.List<GLib.AppInfo> get_all ();
 		public static GLib.List<GLib.AppInfo> get_all_for_type (string content_type);
 		public abstract unowned string get_commandline ();
-		public static unowned GLib.AppInfo get_default_for_type (string content_type, bool must_support_uris);
-		public static unowned GLib.AppInfo get_default_for_uri_scheme (string uri_scheme);
+		public static GLib.AppInfo get_default_for_type (string content_type, bool must_support_uris);
+		public static GLib.AppInfo get_default_for_uri_scheme (string uri_scheme);
 		public abstract unowned string get_description ();
 		public abstract unowned string get_display_name ();
 		public abstract unowned string get_executable ();
-		public static unowned GLib.List get_fallback_for_type (string content_type);
+		public static GLib.List<GLib.AppInfo> get_fallback_for_type (string content_type);
 		public abstract unowned GLib.Icon get_icon ();
 		public abstract unowned string get_id ();
 		public abstract unowned string get_name ();
-		public static unowned GLib.List get_recommended_for_type (string content_type);
-		public abstract bool launch (GLib.List<GLib.File>? files, GLib.AppLaunchContext? launch_context) throws GLib.Error;
+		public static GLib.List<GLib.AppInfo> get_recommended_for_type (string content_type);
+		public abstract bool launch (GLib.List<GLib.File> files, GLib.AppLaunchContext? launch_context) throws GLib.Error;
 		public static bool launch_default_for_uri (string uri, GLib.AppLaunchContext? launch_context) throws GLib.Error;
-		public abstract bool launch_uris (GLib.List<string>? uris, GLib.AppLaunchContext launch_context) throws GLib.Error;
+		public abstract bool launch_uris (GLib.List<string> uris, GLib.AppLaunchContext? launch_context) throws GLib.Error;
 		public abstract bool remove_supports_type (string content_type) throws GLib.Error;
 		public static void reset_type_associations (string content_type);
 		public abstract bool set_as_default_for_extension (string extension) throws GLib.Error;
@@ -1993,59 +2182,64 @@ namespace GLib {
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	public interface AsyncInitable : GLib.Object {
-		public virtual async bool init_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public static async unowned GLib.Object new_async (GLib.Type object_type, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable, ...) throws GLib.Error;
-		public static async void new_valist_async (GLib.Type object_type, string first_property_name, void* var_args, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
-		public static async void newv_async (GLib.Type object_type, uint n_parameters, GLib.Parameter parameters, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
-	}
-	[CCode (cheader_filename = "gio/gio.h")]
+		public abstract async bool init_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (finish_function = "g_async_initable_new_finish")]
+		public static async GLib.Object new_async (GLib.Type object_type, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable, ...) throws GLib.Error;
+		[CCode (finish_function = "g_async_initable_new_finish")]
+		public static async GLib.Object new_valist_async (GLib.Type object_type, string first_property_name, va_list var_args, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
+		[CCode (finish_function = "g_async_initable_new_finish")]
+		public static async GLib.Object newv_async (GLib.Type object_type, [CCode (array_length_pos = 1.1)] GLib.Parameter[] parameters, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
+	}
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_async_result_get_type ()")]
 	public interface AsyncResult : GLib.Object {
-		public abstract unowned GLib.Object get_source_object ();
+		public abstract GLib.Object get_source_object ();
 		public abstract void* get_user_data ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_converter_get_type ()")]
 	public interface Converter : GLib.Object {
-		public abstract GLib.ConverterResult convert ([CCode (array_length_type = "gsize")] uint8[] inbuf, [CCode (array_length_type = "gsize")] uint8[] outbuf, GLib.ConverterFlags flags, out size_t bytes_read, out size_t bytes_written) throws GLib.Error;
+		public abstract GLib.ConverterResult convert ([CCode (array_length_cname = "inbuf_size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] inbuf, [CCode (array_length_cname = "outbuf_size", array_length_pos = 2.5, array_length_type = "gsize", type = "void*")] uint8[] outbuf, GLib.ConverterFlags flags, out size_t bytes_read, out size_t bytes_written) throws GLib.Error;
 		public abstract void reset ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_interface_get_type ()")]
 	public interface DBusInterface : GLib.Object {
 		public abstract unowned GLib.DBusInterfaceInfo get_info ();
 		public abstract unowned GLib.DBusObject get_object ();
 		public abstract void set_object (GLib.DBusObject object);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_get_type ()")]
 	public interface DBusObject : GLib.Object {
-		public abstract unowned GLib.DBusInterface get_interface (string interface_name);
+		public abstract GLib.DBusInterface get_interface (string interface_name);
 		public abstract GLib.List<GLib.DBusInterface> get_interfaces ();
 		public abstract unowned string get_object_path ();
-		public signal void interface_added (GLib.DBusInterface interface_);
-		public signal void interface_removed (GLib.DBusInterface interface_);
+		public virtual signal void interface_added (GLib.DBusInterface interface_);
+		public virtual signal void interface_removed (GLib.DBusInterface interface_);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_manager_get_type ()")]
 	public interface DBusObjectManager : GLib.Object {
-		public abstract unowned GLib.DBusInterface get_interface (string object_path, string interface_name);
-		public abstract unowned GLib.DBusObject get_object (string object_path);
+		public abstract GLib.DBusInterface get_interface (string object_path, string interface_name);
+		public abstract GLib.DBusObject get_object (string object_path);
 		public abstract unowned string get_object_path ();
-		public abstract unowned GLib.List get_objects ();
-		public signal void interface_added (GLib.DBusObject object, GLib.DBusInterface interface_);
-		public signal void interface_removed (GLib.DBusObject object, GLib.DBusInterface interface_);
-		public signal void object_added (GLib.DBusObject object);
-		public signal void object_removed (GLib.DBusObject object);
+		public abstract GLib.List<GLib.DBusObject> get_objects ();
+		public virtual signal void interface_added (GLib.DBusObject object, GLib.DBusInterface interface_);
+		public virtual signal void interface_removed (GLib.DBusObject object, GLib.DBusInterface interface_);
+		public virtual signal void object_added (GLib.DBusObject object);
+		public virtual signal void object_removed (GLib.DBusObject object);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_drive_get_type ()")]
 	public interface Drive : GLib.Object {
 		public abstract bool can_eject ();
 		public abstract bool can_poll_for_media ();
 		public abstract bool can_start ();
 		public abstract bool can_start_degraded ();
 		public abstract bool can_stop ();
+		[Deprecated (since = "2.22")]
 		public abstract async bool eject (GLib.MountUnmountFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool eject_with_operation (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned string enumerate_identifiers ();
-		public abstract unowned GLib.Icon get_icon ();
-		public abstract unowned string get_identifier (string kind);
-		public abstract unowned string get_name ();
+		[CCode (array_length = false, array_null_terminated = true)]
+		public abstract string[] enumerate_identifiers ();
+		public abstract GLib.Icon get_icon ();
+		public abstract string get_identifier (string kind);
+		public abstract string get_name ();
 		public abstract unowned string get_sort_key ();
 		public abstract GLib.DriveStartStopType get_start_stop_type ();
 		public abstract GLib.List<GLib.Volume> get_volumes ();
@@ -2056,12 +2250,12 @@ namespace GLib {
 		public abstract async bool poll_for_media (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool start (GLib.DriveStartFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool stop (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public signal void changed ();
-		public signal void disconnected ();
-		public signal void eject_button ();
-		public signal void stop_button ();
+		public virtual signal void changed ();
+		public virtual signal void disconnected ();
+		public virtual signal void eject_button ();
+		public virtual signal void stop_button ();
 	}
-	[CCode (cheader_filename = "gio/gio.h", cname = "GFile")]
+	[CCode (cheader_filename = "gio/gio.h")]
 	public interface File : GLib.Object {
 		public abstract GLib.FileOutputStream append_to (GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async GLib.FileOutputStream append_to_async (GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
@@ -2070,12 +2264,12 @@ namespace GLib {
 		public bool copy_attributes (GLib.File destination, GLib.FileCopyFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract GLib.FileOutputStream create (GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async GLib.FileOutputStream create_async (GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned GLib.FileIOStream create_readwrite (GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.FileIOStream create_readwrite_async (GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public bool @delete (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		[NoWrapper]
-		public abstract bool delete_file (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned GLib.File dup ();
+		public abstract GLib.FileIOStream create_readwrite (GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.FileIOStream create_readwrite_async (GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (vfunc_name = "delete_file")]
+		public abstract bool @delete (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract GLib.File dup ();
+		[Deprecated (since = "2.22")]
 		public abstract async bool eject_mountable (GLib.MountUnmountFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool eject_mountable_with_operation (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract GLib.FileEnumerator enumerate_children (string attributes, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
@@ -2093,52 +2287,56 @@ namespace GLib {
 		public abstract string get_uri ();
 		public abstract string get_uri_scheme ();
 		public bool has_parent (GLib.File? parent);
-		public bool has_prefix (GLib.File prefix);
+		[CCode (vfunc_name = "prefix_matches")]
+		public abstract bool has_prefix (GLib.File file);
 		public abstract bool has_uri_scheme (string uri_scheme);
 		public abstract uint hash ();
 		public abstract bool is_native ();
-		public bool load_contents (GLib.Cancellable? cancellable = null, out uint8[] contents, out string etag_out = null) throws GLib.Error;
-		public async bool load_contents_async (GLib.Cancellable? cancellable = null, out uint8[] contents, out string etag_out = null) throws GLib.Error;
-		public async bool load_partial_contents_async (GLib.Cancellable? cancellable, GLib.FileReadMoreCallback read_more_callback, out uint8[] contents, out string etag_out = null) throws GLib.Error;
+		public bool load_contents (GLib.Cancellable? cancellable = null, [CCode (array_length_cname = "length", array_length_pos = 2.5, array_length_type = "gsize")] out uint8[] contents, out string etag_out) throws GLib.Error;
+		public async bool load_contents_async (GLib.Cancellable? cancellable = null, [CCode (array_length_cname = "length", array_length_pos = 2.5, array_length_type = "gsize")] out uint8[] contents, out string etag_out) throws GLib.Error;
+		public async bool load_partial_contents_async (GLib.Cancellable? cancellable = null, GLib.FileReadMoreCallback read_more_callback, [CCode (array_length_cname = "length", array_length_pos = 2.5, array_length_type = "gsize")] out uint8[] contents, out string etag_out) throws GLib.Error;
 		public abstract bool make_directory (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool make_directory_with_parents (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract bool make_symbolic_link (string symlink_value, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public unowned GLib.FileMonitor monitor (GLib.FileMonitorFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public GLib.FileMonitor monitor (GLib.FileMonitorFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		[CCode (vfunc_name = "monitor_dir")]
 		public abstract GLib.FileMonitor monitor_directory (GLib.FileMonitorFlags flags, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public abstract GLib.FileMonitor monitor_file (GLib.FileMonitorFlags flags, GLib.Cancellable? cancellable = null) throws GLib.IOError;
 		public abstract async bool mount_enclosing_volume (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.File mount_mountable (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.File mount_mountable (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract bool move (GLib.File destination, GLib.FileCopyFlags flags, GLib.Cancellable? cancellable = null, GLib.FileProgressCallback? progress_callback = null) throws GLib.Error;
 		public static GLib.File new_for_commandline_arg (string arg);
 		public static GLib.File new_for_path (string path);
 		public static GLib.File new_for_uri (string uri);
-		public static unowned GLib.File new_tmp (string tmpl, out unowned GLib.FileIOStream iostream) throws GLib.Error;
-		public abstract unowned GLib.FileIOStream open_readwrite (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.FileIOStream open_readwrite_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public static GLib.File new_tmp (string? tmpl, out GLib.FileIOStream iostream) throws GLib.Error;
+		public abstract GLib.FileIOStream open_readwrite (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.FileIOStream open_readwrite_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public static GLib.File parse_name (string parse_name);
 		public abstract async bool poll_mountable (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[Deprecated (replacement = "has_prefix", since = "vala-0.16")]
 		[NoWrapper]
 		public abstract bool prefix_matches (GLib.File file);
 		public GLib.AppInfo query_default_handler (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool query_exists (GLib.Cancellable? cancellable = null);
 		public GLib.FileType query_file_type (GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null);
 		public abstract GLib.FileInfo query_filesystem_info (string attributes, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.FileInfo query_filesystem_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.FileInfo query_filesystem_info_async (string attributes, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract GLib.FileInfo query_info (string attributes, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async GLib.FileInfo query_info_async (string attributes, GLib.FileQueryInfoFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned GLib.FileAttributeInfoList query_settable_attributes (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned GLib.FileAttributeInfoList query_writable_namespaces (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public GLib.FileInputStream read (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract GLib.FileAttributeInfoList query_settable_attributes (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract GLib.FileAttributeInfoList query_writable_namespaces (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (vfunc_name = "read_fn")]
+		public abstract GLib.FileInputStream read (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async GLib.FileInputStream read_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[Deprecated (replacement = "read", since = "vala-0.16")]
 		[NoWrapper]
 		public abstract unowned GLib.FileInputStream read_fn (GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract GLib.FileOutputStream replace (string? etag, bool make_backup, GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async GLib.FileOutputStream replace_async (string? etag, bool make_backup, GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public bool replace_contents (string contents, size_t length, string? etag, bool make_backup, GLib.FileCreateFlags flags, out string? new_etag, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public async bool replace_contents_async (string contents, size_t length, string? etag, bool make_backup, GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null, out string? new_etag = null) throws GLib.Error;
-		public abstract unowned GLib.FileIOStream replace_readwrite (string? etag, bool make_backup, GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.FileIOStream replace_readwrite_async (string? etag, bool make_backup, GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public bool replace_contents ([CCode (array_length_cname = "length", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] contents, string? etag, bool make_backup, GLib.FileCreateFlags flags, out string new_etag, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async bool replace_contents_async ([CCode (array_length_cname = "length", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] contents, string? etag, bool make_backup, GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null, out string new_etag) throws GLib.Error;
+		public abstract GLib.FileIOStream replace_readwrite (string? etag, bool make_backup, GLib.FileCreateFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.FileIOStream replace_readwrite_async (string? etag, bool make_backup, GLib.FileCreateFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract GLib.File resolve_relative_path (string relative_path);
 		public abstract bool set_attribute (string attribute, GLib.FileAttributeType type, void* value_p, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool set_attribute_byte_string (string attribute, string value, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
@@ -2147,14 +2345,15 @@ namespace GLib {
 		public bool set_attribute_string (string attribute, string value, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool set_attribute_uint32 (string attribute, uint32 value, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool set_attribute_uint64 (string attribute, uint64 value, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async bool set_attributes_async (GLib.FileInfo info, GLib.FileQueryInfoFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable, out unowned GLib.FileInfo info_out) throws GLib.Error;
+		public abstract async bool set_attributes_async (GLib.FileInfo info, GLib.FileQueryInfoFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null, out FileInfo info_out) throws GLib.Error;
 		public abstract bool set_attributes_from_info (GLib.FileInfo info, GLib.FileQueryInfoFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned GLib.File set_display_name (string display_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.File set_display_name_async (string display_name, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async bool start_mountable (GLib.DriveStartFlags flags, GLib.MountOperation start_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract GLib.File set_display_name (string display_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.File set_display_name_async (string display_name, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async bool start_mountable (GLib.DriveStartFlags flags, GLib.MountOperation? start_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool stop_mountable (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool supports_thread_contexts ();
 		public abstract bool trash (GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[Deprecated (since = "2.22")]
 		public abstract async bool unmount_mountable (GLib.MountUnmountFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool unmount_mountable_with_operation (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
@@ -2167,89 +2366,98 @@ namespace GLib {
 		public static GLib.Icon? new_for_string (string str) throws GLib.Error;
 		public string? to_string ();
 		[NoWrapper]
-		public virtual bool to_tokens (GLib.PtrArray tokens, out int out_version);
+		public virtual bool to_tokens (GLib.GenericArray<string> tokens, out int out_version);
 	}
 	[CCode (cheader_filename = "gio/gio.h")]
 	public interface Initable : GLib.Object {
 		public abstract bool init (GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public static void* @new (GLib.Type object_type, GLib.Cancellable? cancellable, ...) throws GLib.Error;
-		public static unowned GLib.Object new_valist (GLib.Type object_type, string first_property_name, void* var_args, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public static void* newv (GLib.Type object_type, uint n_parameters, GLib.Parameter parameters, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public static GLib.Object @new (GLib.Type object_type, GLib.Cancellable? cancellable = null, ...) throws GLib.Error;
+		public static GLib.Object new_valist (GLib.Type object_type, string first_property_name, va_list var_args, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public static GLib.Object newv (GLib.Type object_type, [CCode (array_length_cname = "n_parameters", array_length_pos = 1.5, array_length_type = "guint")] GLib.Parameter[] parameters, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_loadable_icon_get_type ()")]
 	public interface LoadableIcon : GLib.Icon, GLib.Object {
 		public abstract GLib.InputStream load (int size, out string? type, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async GLib.InputStream load_async (int size, GLib.Cancellable? cancellable, out string? type) throws GLib.Error;
+		public abstract async GLib.InputStream load_async (int size, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_mount_get_type ()")]
 	public interface Mount : GLib.Object {
 		public abstract bool can_eject ();
 		public abstract bool can_unmount ();
+		[Deprecated (since = "2.22")]
 		public abstract async bool eject (GLib.MountUnmountFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool eject_with_operation (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned GLib.File get_default_location ();
-		public abstract unowned GLib.Drive get_drive ();
-		public abstract unowned GLib.Icon get_icon ();
-		public abstract unowned string get_name ();
-		public abstract unowned GLib.File get_root ();
+		public abstract GLib.File get_default_location ();
+		public abstract GLib.Drive get_drive ();
+		public abstract GLib.Icon get_icon ();
+		public abstract string get_name ();
+		public abstract GLib.File get_root ();
 		public abstract unowned string get_sort_key ();
-		public abstract unowned string get_uuid ();
-		public abstract unowned GLib.Volume get_volume ();
-		public abstract async unowned string guess_content_type (bool force_rescan, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned string guess_content_type_sync (bool force_rescan, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract string get_uuid ();
+		public abstract GLib.Volume get_volume ();
+		[CCode (array_length = false, array_null_terminated = true)]
+		public abstract async string[] guess_content_type (bool force_rescan, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (array_length = false, array_null_terminated = true)]
+		public abstract string[] guess_content_type_sync (bool force_rescan, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public bool is_shadowed ();
 		public abstract async bool remount (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void shadow ();
+		[Deprecated (since = "2.22")]
 		public abstract async bool unmount (GLib.MountUnmountFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool unmount_with_operation (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public void unshadow ();
-		public signal void changed ();
-		public signal void pre_unmount ();
-		public signal void unmounted ();
+		public virtual signal void changed ();
+		public virtual signal void pre_unmount ();
+		public virtual signal void unmounted ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GNetworkMonitorInterface", type_id = "g_network_monitor_get_type ()")]
 	public interface NetworkMonitor : GLib.Initable, GLib.Object {
 		public abstract bool can_reach (GLib.SocketConnectable connectable, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool can_reach_async (GLib.SocketConnectable connectable, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public static unowned GLib.NetworkMonitor get_default ();
 		public bool get_network_available ();
-		public bool network_available { get; }
-		public signal void network_changed (bool available);
+		[NoAccessorMethod]
+		public abstract bool network_available { get; }
+		public virtual signal void network_changed (bool available);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GPollableInputStreamInterface", type_id = "g_pollable_input_stream_get_type ()")]
 	public interface PollableInputStream : GLib.InputStream {
 		public abstract bool can_poll ();
-		public abstract GLib.TimeoutSource create_source (GLib.Cancellable? cancellable = null);
+		public abstract GLib.PollableSource create_source (GLib.Cancellable? cancellable = null);
 		public abstract bool is_readable ();
-		public abstract ssize_t read_nonblocking ([CCode (array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public ssize_t read_nonblocking ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize", type = "void*")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (vfunc_name = "read_nonblocking")]
+		public abstract ssize_t read_nonblocking_fn ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "gsize", type = "void*")] uint8[] buffer) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GPollableOutputStreamInterface", type_id = "g_pollable_output_stream_get_type ()")]
 	public interface PollableOutputStream : GLib.OutputStream {
 		public abstract bool can_poll ();
-		public abstract GLib.TimeoutSource create_source (GLib.Cancellable? cancellable = null);
+		public abstract GLib.PollableSource create_source (GLib.Cancellable? cancellable = null);
 		public abstract bool is_writable ();
-		public abstract ssize_t write_nonblocking ([CCode (array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract ssize_t write_nonblocking ([CCode (array_length_cname = "size", array_length_pos = 1.1, array_length_type = "gsize")] uint8[] buffer) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GProxyInterface", type_id = "g_proxy_get_type ()")]
 	public interface Proxy : GLib.Object {
-		public abstract unowned GLib.IOStream connect (GLib.IOStream connection, GLib.ProxyAddress proxy_address, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned GLib.IOStream connect_async (GLib.IOStream connection, GLib.ProxyAddress proxy_address, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public static unowned GLib.Proxy get_default_for_protocol (string protocol);
+		public abstract GLib.IOStream connect (GLib.IOStream connection, GLib.ProxyAddress proxy_address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public abstract async GLib.IOStream connect_async (GLib.IOStream connection, GLib.ProxyAddress proxy_address, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public static GLib.Proxy get_default_for_protocol (string protocol);
 		public abstract bool supports_hostname ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GProxyResolverInterface", type_id = "g_proxy_resolver_get_type ()")]
 	public interface ProxyResolver : GLib.Object {
 		public static unowned GLib.ProxyResolver get_default ();
 		public abstract bool is_supported ();
-		public abstract unowned string lookup (string uri, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract async unowned string lookup_async (string uri, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (array_length = false, array_null_terminated = true)]
+		public abstract string[] lookup (string uri, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (array_length = false, array_null_terminated = true)]
+		public abstract async string[] lookup_async (string uri, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GRemoteActionGroupInterface", type_id = "g_remote_action_group_get_type ()")]
 	public interface RemoteActionGroup : GLib.ActionGroup, GLib.Object {
 		public abstract void activate_action_full (string action_name, GLib.Variant parameter, GLib.Variant platform_data);
 		public abstract void change_action_state_full (string action_name, GLib.Variant value, GLib.Variant platform_data);
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_seekable_get_type ()")]
 	public interface Seekable : GLib.Object {
 		public abstract bool can_seek ();
 		public abstract bool can_truncate ();
@@ -2258,79 +2466,108 @@ namespace GLib {
 		[CCode (vfunc_name = "truncate_fn")]
 		public abstract bool truncate (int64 offset, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_socket_connectable_get_type ()")]
 	public interface SocketConnectable : GLib.Object {
-		public abstract unowned GLib.SocketAddressEnumerator enumerate ();
-		public abstract unowned GLib.SocketAddressEnumerator proxy_enumerate ();
+		public abstract GLib.SocketAddressEnumerator enumerate ();
+		public abstract GLib.SocketAddressEnumerator proxy_enumerate ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GTlsBackendInterface", type_id = "g_tls_backend_get_type ()")]
 	public interface TlsBackend : GLib.Object {
-		public abstract GLib.Type get_certificate_type ();
-		public abstract GLib.Type get_client_connection_type ();
+		public GLib.Type get_certificate_type ();
+		public GLib.Type get_client_connection_type ();
 		public static unowned GLib.TlsBackend get_default ();
-		public abstract unowned GLib.TlsDatabase get_default_database ();
-		public abstract GLib.Type get_file_database_type ();
-		public abstract GLib.Type get_server_connection_type ();
+		public abstract GLib.TlsDatabase get_default_database ();
+		public GLib.Type get_file_database_type ();
+		public GLib.Type get_server_connection_type ();
 		public abstract bool supports_tls ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GTlsClientConnectionInterface", type_id = "g_tls_client_connection_get_type ()")]
 	public interface TlsClientConnection : GLib.TlsConnection {
-		public unowned GLib.List get_accepted_cas ();
+		public GLib.List<GLib.ByteArray> get_accepted_cas ();
 		public unowned GLib.SocketConnectable get_server_identity ();
 		public bool get_use_ssl3 ();
 		public GLib.TlsCertificateFlags get_validation_flags ();
-		public static unowned GLib.IOStream @new (GLib.IOStream base_io_stream, GLib.SocketConnectable server_identity) throws GLib.Error;
+		public static GLib.TlsClientConnection? @new (GLib.IOStream base_io_stream, GLib.SocketConnectable? server_identity) throws GLib.Error;
 		public void set_server_identity (GLib.SocketConnectable identity);
 		public void set_use_ssl3 (bool use_ssl3);
 		public void set_validation_flags (GLib.TlsCertificateFlags flags);
-		public void* accepted_cas { get; }
-		public GLib.SocketConnectable server_identity { get; set construct; }
-		public bool use_ssl3 { get; set construct; }
-		public GLib.TlsCertificateFlags validation_flags { get; set construct; }
+		[NoAccessorMethod]
+		public abstract GLib.List<GLib.ByteArray> accepted_cas { owned get; }
+		[NoAccessorMethod]
+		public abstract GLib.SocketConnectable server_identity { owned get; set construct; }
+		[NoAccessorMethod]
+		public abstract bool use_ssl3 { get; set construct; }
+		[NoAccessorMethod]
+		public abstract GLib.TlsCertificateFlags validation_flags { get; set construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GTlsFileDatabaseInterface", type_id = "g_tls_file_database_get_type ()")]
 	public interface TlsFileDatabase : GLib.TlsDatabase {
-		public static unowned GLib.TlsDatabase @new (string anchors) throws GLib.Error;
+		public static GLib.TlsFileDatabase? @new (string anchors) throws GLib.Error;
 		[NoAccessorMethod]
-		public string anchors { owned get; set construct; }
+		public abstract string anchors { owned get; set construct; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_cname = "GTlsServerConnectionInterface", type_id = "g_tls_server_connection_get_type ()")]
 	public interface TlsServerConnection : GLib.TlsConnection {
-		public static unowned GLib.IOStream @new (GLib.IOStream base_io_stream, GLib.TlsCertificate certificate) throws GLib.Error;
+		public static GLib.TlsServerConnection? @new (GLib.IOStream base_io_stream, GLib.TlsCertificate? certificate) throws GLib.Error;
 		[NoAccessorMethod]
-		public GLib.TlsAuthenticationMode authentication_mode { get; set; }
+		public abstract GLib.TlsAuthenticationMode authentication_mode { get; set; }
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_volume_get_type ()")]
 	public interface Volume : GLib.Object {
 		public abstract bool can_eject ();
 		public abstract bool can_mount ();
+		[Deprecated (since = "2.22")]
 		public abstract async bool eject (GLib.MountUnmountFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract async bool eject_with_operation (GLib.MountUnmountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		public abstract unowned string enumerate_identifiers ();
-		public abstract unowned GLib.File get_activation_root ();
-		public abstract unowned GLib.Drive get_drive ();
-		public abstract unowned GLib.Icon get_icon ();
-		public abstract unowned string get_identifier (string kind);
-		public abstract unowned GLib.Mount get_mount ();
-		public abstract unowned string get_name ();
+		[CCode (array_length = false, array_null_terminated = true)]
+		public abstract string[] enumerate_identifiers ();
+		public abstract GLib.File get_activation_root ();
+		public abstract GLib.Drive get_drive ();
+		public abstract GLib.Icon get_icon ();
+		public abstract string get_identifier (string kind);
+		public abstract GLib.Mount get_mount ();
+		public abstract string get_name ();
 		public abstract unowned string get_sort_key ();
-		public abstract unowned string get_uuid ();
-		public async bool mount (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
-		[NoWrapper]
-		public abstract void mount_fn (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable, GLib.AsyncReadyCallback callback);
+		public abstract string get_uuid ();
+		[CCode (vfunc_name = "mount_fn")]
+		public abstract async bool mount (GLib.MountMountFlags flags, GLib.MountOperation? mount_operation, GLib.Cancellable? cancellable = null) throws GLib.Error;
 		public abstract bool should_automount ();
-		public signal void changed ();
-		public signal void removed ();
+		public virtual signal void changed ();
+		public virtual signal void removed ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", has_type_id = false)]
 	public struct ActionEntry {
 		public weak string name;
-		public GLib.SimpleActionActivateCallback activate;
+		public GLib.Callback activate;
 		public weak string parameter_type;
 		public weak string state;
-		public GLib.SimpleActionChangeStateCallback change_state;
-		[CCode (array_length = false)]
-		public weak size_t[] padding;
+		public GLib.Callback change_state;
+	}
+	[CCode (cheader_filename = "gio/gio.h", has_type_id = false)]
+	public struct DBusErrorEntry {
+		public int error_code;
+		public weak string dbus_error_name;
+	}
+	[CCode (cheader_filename = "gio/gio.h", has_type_id = false)]
+	public struct DBusInterfaceVTable {
+		public weak GLib.DBusInterfaceMethodCallFunc method_call;
+		public weak GLib.DBusInterfaceGetPropertyFunc get_property;
+		public weak GLib.DBusInterfaceSetPropertyFunc set_property;
+	}
+	[CCode (cheader_filename = "gio/gio.h", has_type_id = false)]
+	public struct DBusSubtreeVTable {
+		public weak GLib.DBusSubtreeIntrospectFunc introspect;
+		public weak GLib.DBusSubtreeDispatchFunc dispatch;
+	}
+	[CCode (cheader_filename = "gio/gio.h", has_type_id = false)]
+	public struct InputVector {
+		public void* buffer;
+		public size_t size;
+	}
+	[CCode (cheader_filename = "gio/gio.h", has_type_id = false)]
+	public struct OutputVector {
+		public void* buffer;
+		public size_t size;
 	}
 	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_APP_INFO_CREATE_")]
 	[Flags]
@@ -2378,12 +2615,17 @@ namespace GLib {
 		STARTER,
 		NONE,
 		SYSTEM,
-		SESSION
+		SESSION;
+		[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_for_bus_sync")]
+		public static string get_address_sync (GLib.BusType bus_type, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	}
 	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_CONVERTER_")]
 	[Flags]
 	public enum ConverterFlags {
+		[Deprecated (replacement = "ConverterFlags.NONE", since = "vala-0.16")]
 		NO_FLAGS,
+		[CCode (cname = "G_CONVERTER_NO_FLAGS")]
+		NONE,
 		INPUT_AT_END,
 		FLUSH
 	}
@@ -2676,6 +2918,18 @@ namespace GLib {
 		GET_NO_CHANGES,
 		INVERT_BOOLEAN
 	}
+	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_SOCKET_CLIENT_")]
+	public enum SocketClientEvent {
+		RESOLVING,
+		RESOLVED,
+		CONNECTING,
+		CONNECTED,
+		PROXY_NEGOTIATING,
+		PROXY_NEGOTIATED,
+		TLS_HANDSHAKING,
+		TLS_HANDSHAKED,
+		COMPLETE
+	}
 	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_SOCKET_FAMILY_")]
 	public enum SocketFamily {
 		INVALID,
@@ -2732,16 +2986,6 @@ namespace GLib {
 	public enum TlsDatabaseVerifyFlags {
 		NONE
 	}
-	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_TLS_ERROR_")]
-	public enum TlsError {
-		UNAVAILABLE,
-		MISC,
-		BAD_CERTIFICATE,
-		NOT_TLS,
-		HANDSHAKE,
-		CERTIFICATE_REQUIRED,
-		EOF
-	}
 	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_TLS_INTERACTION_")]
 	public enum TlsInteractionResult {
 		UNHANDLED,
@@ -2762,14 +3006,6 @@ namespace GLib {
 		SAFELY,
 		UNSAFELY
 	}
-	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_UNIX_SOCKET_ADDRESS_")]
-	public enum UnixSocketAddressType {
-		INVALID,
-		ANONYMOUS,
-		PATH,
-		ABSTRACT,
-		ABSTRACT_PADDED
-	}
 	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_ZLIB_COMPRESSOR_FORMAT_")]
 	public enum ZlibCompressorFormat {
 		ZLIB,
@@ -2818,9 +3054,28 @@ namespace GLib {
 		INVALID_FILE_CONTENT,
 		SELINUX_SECURITY_CONTEXT_UNKNOWN,
 		ADT_AUDIT_DATA_UNKNOWN,
-		OBJECT_PATH_IN_USE
+		OBJECT_PATH_IN_USE;
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static string encode_gerror (GLib.Error error);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static string get_remote_error (GLib.Error error);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool is_remote_error (GLib.Error error);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static GLib.Error new_for_dbus_error (string dbus_error_name, string dbus_error_message);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static GLib.Quark quark ();
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool register_error (GLib.Quark error_domain, int error_code, string dbus_error_name);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static void register_error_domain (string error_domain_quark_name, size_t quark_volatile, GLib.DBusErrorEntry entries, uint num_entries);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool strip_remote_error (GLib.Error error);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static bool unregister_error (GLib.Quark error_domain, int error_code, string dbus_error_name);
 	}
-	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_IO_ERROR_")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "GIOErrorEnum", cprefix = "G_IO_ERROR_")]
+	[GIR (name = "IOErrorEnum")]
 	public errordomain IOError {
 		FAILED,
 		NOT_FOUND,
@@ -2865,261 +3120,369 @@ namespace GLib {
 		PROXY_FAILED,
 		PROXY_AUTH_FAILED,
 		PROXY_NEED_AUTH,
-		PROXY_NOT_ALLOWED
+		PROXY_NOT_ALLOWED;
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static unowned GLib.IOError from_errno (int err_no);
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static GLib.Quark quark ();
 	}
 	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_RESOLVER_ERROR_")]
 	public errordomain ResolverError {
 		NOT_FOUND,
 		TEMPORARY_FAILURE,
-		INTERNAL
+		INTERNAL;
+		[CCode (cheader_filename = "gio/gio.h")]
+		public static GLib.Quark quark ();
 	}
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate void AsyncReadyCallback (GLib.Object? source_object, GLib.AsyncResult res);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", cprefix = "G_TLS_ERROR_")]
+	public errordomain TlsError {
+		UNAVAILABLE,
+		MISC,
+		BAD_CERTIFICATE,
+		NOT_TLS,
+		HANDSHAKE,
+		CERTIFICATE_REQUIRED,
+		EOF
+	}
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
+	public delegate void AsyncReadyCallback (GLib.Object source_object, GLib.AsyncResult res);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate void BusAcquiredCallback (GLib.DBusConnection connection, string name);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate void BusNameAcquiredCallback (GLib.DBusConnection connection, string name);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 3.9)]
 	public delegate void BusNameAppearedCallback (GLib.DBusConnection connection, string name, string name_owner);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate void BusNameLostCallback (GLib.DBusConnection connection, string name);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate void BusNameVanishedCallback (GLib.DBusConnection connection, string name);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate bool CancellableSourceFunc (GLib.Cancellable? cancellable);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate unowned GLib.Variant DBusInterfaceGetPropertyFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string property_name) throws GLib.Error;
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 1.9)]
+	public delegate bool CancellableSourceFunc (GLib.Cancellable? cancellable = null);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 6.9)]
+	public delegate GLib.Variant DBusInterfaceGetPropertyFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string property_name) throws GLib.Error;
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 7.9)]
 	public delegate void DBusInterfaceMethodCallFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string method_name, GLib.Variant parameters, GLib.DBusMethodInvocation invocation);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 7.9)]
 	public delegate bool DBusInterfaceSetPropertyFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string property_name, GLib.Variant value) throws GLib.Error;
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate unowned GLib.DBusMessage DBusMessageFilterFunction (GLib.DBusConnection connection, GLib.DBusMessage message, bool incoming);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate GLib.Type DBusProxyTypeFunc (GLib.DBusObjectManagerClient manager, string object_path, string interface_name);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 3.9)]
+	public delegate GLib.DBusMessage DBusMessageFilterFunction (GLib.DBusConnection connection, owned GLib.DBusMessage message, bool incoming);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 3.9)]
+	public delegate GLib.Type DBusProxyTypeFunc (GLib.DBusObjectManagerClient manager, string object_path, string? interface_name);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 6.9)]
 	public delegate void DBusSignalCallback (GLib.DBusConnection connection, string sender_name, string object_path, string interface_name, string signal_name, GLib.Variant parameters);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate unowned GLib.DBusInterfaceVTable DBusSubtreeDispatchFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string node, void* out_user_data);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate unowned string DBusSubtreeEnumerateFunc (GLib.DBusConnection connection, string sender, string object_path);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate unowned GLib.DBusInterfaceInfo DBusSubtreeIntrospectFunc (GLib.DBusConnection connection, string sender, string object_path, string node);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 6.9)]
+	public delegate GLib.DBusInterfaceVTable DBusSubtreeDispatchFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string node, void* out_user_data);
+	[CCode (array_length = false, array_null_terminated = true, cheader_filename = "gio/gio.h", instance_pos = 3.9)]
+	public delegate string[] DBusSubtreeEnumerateFunc (GLib.DBusConnection connection, string sender, string object_path);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 4.9)]
+	public delegate GLib.DBusInterfaceInfo DBusSubtreeIntrospectFunc (GLib.DBusConnection connection, string sender, string object_path, string node);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate void FileProgressCallback (int64 current_num_bytes, int64 total_num_bytes);
 	[CCode (cheader_filename = "gio/gio.h", has_target = false)]
 	public delegate bool FileReadMoreCallback (string file_contents, int64 file_size, void* callback_data);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate bool IOSchedulerJobFunc (GLib.IOSchedulerJob job, GLib.Cancellable? cancellable);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
+	public delegate bool IOSchedulerJobFunc (GLib.IOSchedulerJob job, GLib.Cancellable? cancellable = null);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 1.9)]
 	public delegate bool PollableSourceFunc (GLib.Object pollable_stream);
 	[CCode (cheader_filename = "gio/gio.h", has_target = false)]
 	public delegate void* ReallocFunc (void* data, size_t size);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate bool SettingsBindGetMapping (GLib.Value value, GLib.Variant variant);
-	[CCode (cheader_filename = "gio/gio.h")]
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate GLib.Variant SettingsBindSetMapping (GLib.Value value, GLib.VariantType expected_type);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate bool SettingsGetMapping (GLib.Variant value, void* result);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate void SimpleActionActivateCallback (GLib.SimpleAction action, GLib.Variant? parameter);
-	[CCode (cheader_filename = "gio/gio.h")]
-	public delegate void SimpleActionChangeStateCallback (GLib.SimpleAction action, GLib.Variant value);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
+	public delegate bool SettingsGetMapping (GLib.Variant value, out void* result);
 	[CCode (cheader_filename = "gio/gio.h", has_target = false)]
-	public delegate void SimpleAsyncThreadFunc (GLib.SimpleAsyncResult res, GLib.Object object, GLib.Cancellable? cancellable);
-	[CCode (cheader_filename = "gio/gio.h")]
+	public delegate void SimpleAsyncThreadFunc (GLib.SimpleAsyncResult res, GLib.Object object, GLib.Cancellable? cancellable = null);
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 2.9)]
 	public delegate bool SocketSourceFunc (GLib.Socket socket, GLib.IOCondition condition);
-	[CCode (cheader_filename = "gio/gio.h", cname = "g_file_equal")]
+	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "File.equal", since = "vala-0.16")]
 	public static GLib.EqualFunc file_equal;
-	[CCode (cheader_filename = "gio/gio.h", cname = "g_file_hash")]
+	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "File.hash", since = "vala-0.16")]
 	public static GLib.HashFunc file_hash;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ACCESS_CAN_DELETE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ACCESS_CAN_DELETE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ACCESS_CAN_EXECUTE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ACCESS_CAN_READ", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ACCESS_CAN_READ;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ACCESS_CAN_RENAME", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ACCESS_CAN_RENAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ACCESS_CAN_TRASH", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ACCESS_CAN_TRASH;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ACCESS_CAN_WRITE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ACCESS_CAN_WRITE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.DOS_IS_ARCHIVE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_DOS_IS_ARCHIVE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.DOS_IS_SYSTEM", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_DOS_IS_SYSTEM;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ETAG_VALUE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ETAG_VALUE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.FILESYSTEM_FREE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_FILESYSTEM_FREE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.FILESYSTEM_READONLY", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_FILESYSTEM_READONLY;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.FILESYSTEM_SIZE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_FILESYSTEM_SIZE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.FILESYSTEM_TYPE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_FILESYSTEM_TYPE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.FILESYSTEM_USE_PREVIEW", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.GVFS_BACKEND", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_GVFS_BACKEND;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ID_FILE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ID_FILE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.ID_FILESYSTEM", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_ID_FILESYSTEM;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_EJECT", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_MOUNT", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_POLL", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_START", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_START;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_START_DEGRADED", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_STOP", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_CAN_UNMOUNT", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_HAL_UDI", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_START_STOP_TYPE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_UNIX_DEVICE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.MOUNTABLE_UNIX_DEVICE_FILE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.OWNER_GROUP", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_OWNER_GROUP;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.OWNER_USER", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_OWNER_USER;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.OWNER_USER_REAL", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_OWNER_USER_REAL;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.PREVIEW_ICON", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_PREVIEW_ICON;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.SELINUX_CONTEXT", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_SELINUX_CONTEXT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_ALLOCATED_SIZE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_CONTENT_TYPE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_COPY_NAME", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_COPY_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_DESCRIPTION", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_DESCRIPTION;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_DISPLAY_NAME", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_EDIT_NAME", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_EDIT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_FAST_CONTENT_TYPE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_ICON", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_ICON;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_IS_BACKUP", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_IS_BACKUP;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_IS_HIDDEN", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_IS_HIDDEN;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_IS_SYMLINK", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_IS_SYMLINK;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_IS_VIRTUAL", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_NAME", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_SIZE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_SIZE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_SORT_ORDER", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_SORT_ORDER;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_SYMLINK_TARGET", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_TARGET_URI", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_TARGET_URI;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.STANDARD_TYPE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_STANDARD_TYPE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.THUMBNAILING_FAILED", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_THUMBNAILING_FAILED;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.THUMBNAIL_PATH", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_THUMBNAIL_PATH;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_ACCESS", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_ACCESS;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_ACCESS_USEC", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_ACCESS_USEC;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_CHANGED", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_CHANGED;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_CHANGED_USEC", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_CHANGED_USEC;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_CREATED", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_CREATED;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_CREATED_USEC", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_CREATED_USEC;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_MODIFIED", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_MODIFIED;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TIME_MODIFIED_USEC", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TIME_MODIFIED_USEC;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TRASH_DELETION_DATE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TRASH_DELETION_DATE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TRASH_ITEM_COUNT", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TRASH_ITEM_COUNT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.TRASH_ORIG_PATH", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_TRASH_ORIG_PATH;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_BLOCKS", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_BLOCKS;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_BLOCK_SIZE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_BLOCK_SIZE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_DEVICE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_DEVICE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_GID", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_GID;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_INODE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_INODE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_IS_MOUNTPOINT", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_MODE", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_MODE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_NLINK", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_NLINK;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_RDEV", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_RDEV;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "FileAttribute.UNIX_UID", since = "vala-0.16")]
 	public const string FILE_ATTRIBUTE_UNIX_UID;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "Menu.ATTRIBUTE_ACTION", since = "vala-0.16")]
 	public const string MENU_ATTRIBUTE_ACTION;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "Menu.ATTRIBUTE_LABEL", since = "vala-0.16")]
 	public const string MENU_ATTRIBUTE_LABEL;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "Menu.ATTRIBUTE_TARGET", since = "vala-0.16")]
 	public const string MENU_ATTRIBUTE_TARGET;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "Menu.LINK_SECTION_SECTION", since = "vala-0.16")]
 	public const string MENU_LINK_SECTION;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "Menu.LINK_SUBMENU", since = "vala-0.16")]
 	public const string MENU_LINK_SUBMENU;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.NATIVE_VOLUME_MONITOR", since = "vala-0.16")]
 	public const string NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.NETWORK_MONITOR", since = "vala-0.16")]
 	public const string NETWORK_MONITOR_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.PROXY", since = "vala-0.16")]
 	public const string PROXY_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.PROXY_RESOLVER", since = "vala-0.16")]
 	public const string PROXY_RESOLVER_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.TLS_BACKEND", since = "vala-0.16")]
 	public const string TLS_BACKEND_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "TlsDatabase.PURPOSE_AUTHENTICATE_CLIENT", since = "vala-0.16")]
 	public const string TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "TlsDatabase.PURPOSE_AUTHENTICATE_SERVER", since = "vala-0.16")]
 	public const string TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.VFS", since = "vala-0.16")]
 	public const string VFS_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "GLib.VolumeIdentifier.HAL_UDI", since = "vala-0.16")]
 	public const string VOLUME_IDENTIFIER_KIND_HAL_UDI;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "GLib.VolumeIdentifier.LABEL", since = "vala-0.16")]
 	public const string VOLUME_IDENTIFIER_KIND_LABEL;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "GLib.VolumeIdentifier.NFS_MOUNT", since = "vala-0.16")]
 	public const string VOLUME_IDENTIFIER_KIND_NFS_MOUNT;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "GLib.VolumeIdentifier.UNIX_DEVICE", since = "vala-0.16")]
 	public const string VOLUME_IDENTIFIER_KIND_UNIX_DEVICE;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "GLib.VolumeIdentifier.UUID", since = "vala-0.16")]
 	public const string VOLUME_IDENTIFIER_KIND_UUID;
 	[CCode (cheader_filename = "gio/gio.h")]
+	[Deprecated (replacement = "IOExtensionPoint.VOLUME_MONITOR", since = "vala-0.16")]
 	public const string VOLUME_MONITOR_EXTENSION_POINT_NAME;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_content_type_can_be_executable")]
 	[Deprecated (replacement = "GLib.ContentType.can_be_executable", since = "vala-0.12")]
@@ -3152,81 +3515,120 @@ namespace GLib {
 	[Deprecated (replacement = "GLib.ContentType.is_unknown", since = "vala-0.12")]
 	public static bool g_content_type_is_unknown (string type);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_content_types_get_registered")]
+	[Deprecated (replacement = "ContentType.list_registered", since = "vala-0.16")]
 	public static GLib.List<string> g_content_types_get_registered ();
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_for_bus_sync")]
+	[Deprecated (replacement = "BusType.get_address_sync", since = "vala-0.16")]
 	public static unowned string g_dbus_address_get_for_bus_sync (GLib.BusType bus_type, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_stream")]
+	[Deprecated (replacement = "DBus.address_get_stream", since = "vala-0.16")]
 	public static async void g_dbus_address_get_stream (string address, GLib.Cancellable? cancellable = null);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_stream_finish")]
+	[Deprecated (replacement = "DBus.address_get_stream_finish", since = "vala-0.16")]
 	public static unowned GLib.IOStream g_dbus_address_get_stream_finish (GLib.AsyncResult res, string out_guid) throws GLib.Error;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_stream_sync")]
+	[Deprecated (replacement = "DBus.address_get_stream_sync", since = "vala-0.16")]
 	public static unowned GLib.IOStream g_dbus_address_get_stream_sync (string address, string out_guid, GLib.Cancellable? cancellable = null) throws GLib.Error;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_encode_gerror")]
+	[Deprecated (replacement = "DBusError.encode_gerror", since = "vala-0.16")]
 	public static unowned string g_dbus_error_encode_gerror (GLib.Error error);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_get_remote_error")]
+	[Deprecated (replacement = "DBusError.get_remote_error", since = "vala-0.16")]
 	public static unowned string g_dbus_error_get_remote_error (GLib.Error error);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_is_remote_error")]
+	[Deprecated (replacement = "DBusError.error_is_remote_error", since = "vala-0.16")]
 	public static bool g_dbus_error_is_remote_error (GLib.Error error);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_new_for_dbus_error")]
+	[Deprecated (replacement = "DBusError.new_for_dbus_error", since = "vala-0.16")]
 	public static unowned GLib.Error g_dbus_error_new_for_dbus_error (string dbus_error_name, string dbus_error_message);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_quark")]
+	[Deprecated (replacement = "DBusError.quark", since = "vala-0.16")]
 	public static GLib.Quark g_dbus_error_quark ();
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_register_error")]
+	[Deprecated (replacement = "DBusError.register_error", since = "vala-0.16")]
 	public static bool g_dbus_error_register_error (GLib.Quark error_domain, int error_code, string dbus_error_name);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_register_error_domain")]
+	[Deprecated (replacement = "DBusError.register_error_domain", since = "vala-0.16")]
 	public static void g_dbus_error_register_error_domain (string error_domain_quark_name, size_t quark_volatile, GLib.DBusErrorEntry entries, uint num_entries);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_set_dbus_error")]
+	[Deprecated (replacement = "DBusError.set_dbus_error", since = "vala-0.16")]
 	public static void g_dbus_error_set_dbus_error (string dbus_error_name, string dbus_error_message, string format) throws GLib.Error;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_set_dbus_error_valist")]
+	[Deprecated (replacement = "DBusError.set_dbus_error_valist", since = "vala-0.16")]
 	public static void g_dbus_error_set_dbus_error_valist (string dbus_error_name, string dbus_error_message, string format, void* var_args) throws GLib.Error;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_strip_remote_error")]
+	[Deprecated (replacement = "DBusError.strip_remote_error", since = "vala-0.16")]
 	public static bool g_dbus_error_strip_remote_error (GLib.Error error);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_unregister_error")]
+	[Deprecated (replacement = "DBusError.unregister_error", since = "vala-0.16")]
 	public static bool g_dbus_error_unregister_error (GLib.Quark error_domain, int error_code, string dbus_error_name);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_generate_guid")]
+	[Deprecated (replacement = "DBus.generate_guid", since = "vala-0.16")]
 	public static unowned string g_dbus_generate_guid ();
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_gvalue_to_gvariant")]
+	[Deprecated (replacement = "DBus.gvalue_to_gvariant", since = "vala-0.16")]
 	public static unowned GLib.Variant g_dbus_gvalue_to_gvariant (GLib.Value gvalue, GLib.VariantType type);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_gvariant_to_gvalue")]
+	[Deprecated (replacement = "DBus.gvariant_to_gvalue", since = "vala-0.16")]
 	public static void g_dbus_gvariant_to_gvalue (GLib.Variant value, GLib.Value out_gvalue);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_address")]
+	[Deprecated (replacement = "DBus.is_address", since = "vala-0.16")]
 	public static bool g_dbus_is_address (string str);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_guid")]
+	[Deprecated (replacement = "DBus.is_guid", since = "vala-0.16")]
 	public static bool g_dbus_is_guid (string str);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_interface_name")]
+	[Deprecated (replacement = "DBus.is_interface_name", since = "vala-0.16")]
 	public static bool g_dbus_is_interface_name (string str);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_member_name")]
+	[Deprecated (replacement = "DBus.is_member_name", since = "vala-0.16")]
 	public static bool g_dbus_is_member_name (string str);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_name")]
+	[Deprecated (replacement = "DBus.is_name", since = "vala-0.16")]
 	public static bool g_dbus_is_name (string str);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_supported_address")]
+	[Deprecated (replacement = "DBus.is_supported_address", since = "vala-0.16")]
 	public static bool g_dbus_is_supported_address (string str) throws GLib.Error;
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_unique_name")]
+	[Deprecated (replacement = "DBus.is_unique_name", since = "vala-0.16")]
 	public static bool g_dbus_is_unique_name (string str);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_error_from_errno")]
+	[Deprecated (replacement = "IOError.from_errno", since = "vala-0.16")]
 	public static unowned GLib.IOError g_io_error_from_errno (int err_no);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_error_quark")]
+	[Deprecated (replacement = "IOError.quark", since = "vala-0.16")]
 	public static GLib.Quark g_io_error_quark ();
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_load_all_in_directory")]
+	[Deprecated (replacement = "IOModule.load_all_in_directory", since = "vala-0.16")]
 	public static GLib.List<weak GLib.TypeModule> g_io_modules_load_all_in_directory (string dirname);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_load_all_in_directory_with_scope")]
+	[Deprecated (replacement = "IOModule.load_all_in_directory_with_scope", since = "vala-0.16")]
 	public static unowned GLib.List g_io_modules_load_all_in_directory_with_scope (string dirname, GLib.IOModuleScope scope);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_scan_all_in_directory")]
+	[Deprecated (replacement = "IOModule.scan_all_in_directory", since = "vala-0.16")]
 	public static void g_io_modules_scan_all_in_directory (string dirname);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_scan_all_in_directory_with_scope")]
+	[Deprecated (replacement = "IOModule.xscan_all_in_directory_with_scope", since = "vala-0.16")]
 	public static void g_io_modules_scan_all_in_directory_with_scope (string dirname, GLib.IOModuleScope scope);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_scheduler_cancel_all_jobs")]
+	[Deprecated (replacement = "IOSchedulerJob.cancel_all", since = "vala-0.16")]
 	public static void g_io_scheduler_cancel_all_jobs ();
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_scheduler_push_job")]
+	[Deprecated (replacement = "IOSchedulerJob.push", since = "vala-0.16")]
 	public static void g_io_scheduler_push_job (owned GLib.IOSchedulerJobFunc job_func, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_pollable_source_new")]
+	[Deprecated (replacement = "PollableSource", since = "vala-0.16")]
 	public static unowned GLib.TimeoutSource g_pollable_source_new (GLib.Object pollable_stream);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_error_in_idle")]
+	[Deprecated (replacement = "report_error_in_idle", since = "vala-0.16")]
 	public static void g_simple_async_report_error_in_idle (GLib.Object object, GLib.AsyncReadyCallback callback, GLib.Quark domain, int code, string format);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_gerror_in_idle")]
+	[Deprecated (replacement = "report_gerror_in_idle", since = "vala-0.16")]
 	public static void g_simple_async_report_gerror_in_idle (GLib.Object object, GLib.AsyncReadyCallback callback, GLib.Error error);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_take_gerror_in_idle")]
+	[Deprecated (replacement = "report_take_gerror_in_idle", since = "vala-0.16")]
 	public static void g_simple_async_report_take_gerror_in_idle (GLib.Object object, GLib.AsyncReadyCallback callback, GLib.Error error);
 	[CCode (cheader_filename = "gio/gio.h", cname = "g_tls_error_quark")]
+	[Deprecated (replacement = "TlsError.quark", since = "vala-0.16")]
 	public static GLib.Quark g_tls_error_quark ();
 }
diff --git a/vapi/metadata/Gio-2.0-custom.vala b/vapi/metadata/Gio-2.0-custom.vala
new file mode 100644
index 0000000..a1b3243
--- /dev/null
+++ b/vapi/metadata/Gio-2.0-custom.vala
@@ -0,0 +1,629 @@
+namespace GLib {
+	[CCode (cheader_filename = "gio/gio.h")]
+	namespace Bus {
+		public async GLib.DBusConnection get (GLib.BusType bus_type, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public GLib.DBusConnection get_sync (GLib.BusType bus_type, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public async T get_proxy<T> (GLib.BusType bus_type, string name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public T get_proxy_sync<T> (GLib.BusType bus_type, string name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	public class Cancellable : GLib.Object {
+		public bool set_error_if_cancelled () throws GLib.IOError;
+	}
+
+	[Compact]
+	[CCode (cname = "GSource", ref_function = "g_source_ref", unref_function = "g_source_unref")]
+	public class CancellableSource : GLib.Source {
+		[CCode (cname = "g_source_set_callback")]
+		public void set_callback ([CCode (type = "GSourceFunc")] owned CancellableSourceFunc func);
+	}
+
+	public class DBusConnection : GLib.Object, GLib.AsyncInitable, GLib.Initable {
+		[CCode (cname = "g_dbus_connection_new", finish_function = "g_dbus_connection_new_finish")]
+		public static async GLib.DBusConnection @new (GLib.IOStream stream, string guid, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[CCode (cname = "g_dbus_connection_new_for_address", finish_function = "g_dbus_connection_new_for_address_finish")]
+		public static async GLib.DBusConnection @new_for_address (string address, GLib.DBusConnectionFlags flags, GLib.DBusAuthObserver? observer = null, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public async T get_proxy<T> (string? name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError; 
+		public T get_proxy_sync<T> (string? name, string object_path, GLib.DBusProxyFlags flags = 0, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public uint register_object<T> (string object_path, T object) throws GLib.IOError;
+		public async GLib.DBusMessage send_message_with_reply (GLib.DBusMessage message, GLib.DBusSendMessageFlags flags, int timeout_msec, out uint32 out_serial, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public GLib.DBusMessage send_message_with_reply_sync (GLib.DBusMessage message, GLib.DBusSendMessageFlags flags, int timeout_msec, out uint32 out_serial, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	public class DBusMessage : GLib.Object {
+		public DBusMessage.method_call (string name, string path, string interface_, string method);
+		[PrintfFormat, CCode (has_construct_function = false)]
+		public DBusMessage.method_error (GLib.DBusMessage method_call_message, string error_name, string error_message_format, ...);
+		[CCode (has_construct_function = false)]
+		public DBusMessage.method_error_literal (GLib.DBusMessage method_call_message, string error_name, string error_message);
+		[CCode (has_construct_function = false)]
+		public DBusMessage.method_error_valist (GLib.DBusMessage method_call_message, string error_name, string error_message_format, va_list var_args); 
+		[CCode (has_construct_function = false)]
+		public DBusMessage.method_reply (GLib.DBusMessage method_call_message);
+	}
+
+	[CCode (cheader_filename = "gio/gio.h", type_id = "g_dbus_object_manager_client_get_type ()")]
+	public class DBusObjectManagerClient : GLib.Object, GLib.AsyncInitable, GLib.DBusObjectManager, GLib.Initable {
+		[CCode (cname = "g_dbus_object_manager_client_new", finish_function = "g_dbus_object_manager_client_new_finish")]
+		public static async GLib.DBusObjectManagerClient @new (GLib.DBusConnection connection, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null);
+		[CCode (cname = "g_dbus_object_manager_client_new_for_bus", finish_function = "g_dbus_object_manager_client_new_for_bus_finish")]
+		public static async GLib.DBusObjectManagerClient @new_for_bus (GLib.BusType bus_type, GLib.DBusObjectManagerClientFlags flags, string name, string object_path, [CCode (delegate_target_pos = 5.33333, destroy_notify_pos = 5.66667)] owned GLib.DBusProxyTypeFunc get_proxy_type_func, GLib.Cancellable? cancellable = null);
+	}
+
+	public class DBusProxy : GLib.Object, GLib.AsyncInitable, GLib.DBusInterface, GLib.Initable {
+		[CCode (cname = "g_dbus_proxy_new", finish_function = "g_dbus_proxy_new_finish")]
+		public static async GLib.DBusProxy @new (GLib.DBusConnection connection, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string? name, string object_path, string interface_name, GLib.Cancellable? cancellable = null);
+		[CCode (cname = "g_dbus_proxy_new_for_bus", finish_function = "g_dbus_proxy_new_for_bus_finish")]
+		public static async GLib.DBusProxy create_for_bus (GLib.BusType bus_type, GLib.DBusProxyFlags flags, GLib.DBusInterfaceInfo? info, string name, string object_path, string interface_name, GLib.Cancellable? cancellable = null);
+	}
+
+	public class DataInputStream : GLib.BufferedInputStream {
+		public uint8 read_byte (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public int16 read_int16 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public int32 read_int32 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public int64 read_int64 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public string? read_line (out size_t length, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public async string? read_line_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null, out size_t length = null) throws GLib.IOError;
+		public unowned string read_line_finish_utf8 (GLib.AsyncResult _result, size_t length) throws GLib.Error;
+		public unowned string read_line_utf8 (size_t length, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		public uint16 read_uint16 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public uint32 read_uint32 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public uint64 read_uint64 (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public string? read_until (string stop_chars, out size_t length, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public async string? read_until_async (string stop_chars, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null, out size_t? length = null) throws GLib.IOError;
+		public string? read_upto (string stop_chars, ssize_t stop_chars_len, out size_t length, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public async string? read_upto_async (string stop_chars, ssize_t stop_chars_len, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null, out size_t? length = null) throws GLib.IOError;
+	}
+
+	public class DataOutputStream : GLib.FilterOutputStream {
+		public bool put_byte (uint8 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_int16 (int16 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_int32 (int32 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_int64 (int64 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_string (string str, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_uint16 (uint16 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_uint32 (uint32 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool put_uint64 (uint64 data, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	[Compact]
+	public class IOExtension {
+		public GLib.Type get_type ();
+	}
+
+	[Compact]
+	public class IOModuleScope {
+		[CCode (has_construct_function = false)]
+		public IOModuleScope (GLib.IOModuleScopeFlags flags);
+	}
+
+	public abstract class IOStream : GLib.Object {
+		public bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async bool close_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	public abstract class InputStream : GLib.Object {
+		[CCode (vfunc_name = "close_fn")]
+		public abstract bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async bool close_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		[CCode (vfunc_name = "read_fn")]
+		public abstract ssize_t read ([CCode (array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool read_all ([CCode (array_length_type = "gsize")] uint8[] buffer, out size_t bytes_read, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async ssize_t read_async ([CCode (array_length_type = "gsize")] uint8[] buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual ssize_t skip (size_t count, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async ssize_t skip_async (size_t count, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	public class MemoryOutputStream : GLib.OutputStream, GLib.Seekable {
+		[CCode (has_construct_function = false, type = "GOutputStream*")]
+		public MemoryOutputStream ([CCode (array_length_type = "gsize")] owned uint8[]? data, GLib.ReallocFunc? realloc_function, GLib.DestroyNotify? destroy_function);
+	}
+
+	public abstract class NativeVolumeMonitor : GLib.VolumeMonitor {
+		[NoWrapper]
+		public abstract GLib.Mount get_mount_for_mount_path (string mount_path, GLib.Cancellable? cancellable = null);
+	}
+
+	public abstract class OutputStream : GLib.Object {
+		[CCode (vfunc_name = "close_fn")]
+		public abstract bool close (GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async bool close_async (int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual ssize_t splice (GLib.InputStream source, GLib.OutputStreamSpliceFlags flags, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async ssize_t splice_async (GLib.InputStream source, GLib.OutputStreamSpliceFlags flags, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		[CCode (vfunc_name = "write_fn")]
+		public abstract ssize_t write ([CCode (array_length_type = "gsize")] uint8[] buffer, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public bool write_all ([CCode (array_length_type = "gsize")] uint8[] buffer, out size_t bytes_written, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public virtual async ssize_t write_async ([CCode (array_length_type = "gsize")] uint8[] buffer, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	[Compact]
+	[CCode (cname = "GSource", ref_function = "g_source_ref", unref_function = "g_source_unref")]
+	public class PollableSource : GLib.Source {
+		[CCode (type = "GSource*")]
+		public PollableSource (GLib.Object pollable_stream);
+		[CCode (cname = "g_source_set_callback")]
+		public void set_callback ([CCode (type = "GSourceFunc")] owned PollableSourceFunc func);
+	}
+
+	public class Resolver : GLib.Object {
+		[CCode (finish_function = "g_resolver_lookup_service_finish")]
+		public async GLib.List<GLib.SrvTarget> lookup_service_async (string service, string protocol, string domain, GLib.Cancellable? cancellable = null) throws GLib.Error;
+		[NoWrapper, CCode (vfunc_name = "lookup_service_async", finish_function = "g_resolver_lookup_service_finish")]
+		public virtual async GLib.List<GLib.SrvTarget> lookup_service_fn_async (string rrname, GLib.Cancellable? cancellable = null);
+	}
+
+	public class Settings : GLib.Object {
+		[NoAccessorMethod]
+		public GLib.SettingsBackend backend { owned get; construct; }
+		public virtual signal bool change_event (GLib.Quark[]? keys);
+	}
+
+	public class SettingsBackend : GLib.Object {
+	}
+
+	public class SimpleAsyncResult : GLib.Object, GLib.AsyncResult {
+		public SimpleAsyncResult (GLib.Object? source_object, void* source_tag);
+		[PrintfFormat]
+		public SimpleAsyncResult.error (GLib.Object? source_object, GLib.Quark domain, int code, string format, ...);
+		public SimpleAsyncResult.from_error (GLib.Object? source_object, GLib.Error error);
+		[CCode (simple_generics = true)]
+		public unowned T get_op_res_gpointer<T> ();
+		[CCode (simple_generics = true)]
+		public void set_op_res_gpointer<T> (owned T op_res);
+	}
+
+	public class Socket : GLib.Object, GLib.Initable {
+		public bool condition_wait (GLib.IOCondition condition, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+	}
+
+	[Compact]
+	[CCode (cname = "GSource", ref_function = "g_source_ref", unref_function = "g_source_unref")]
+	public class SocketSource : GLib.Source {
+		[CCode (cname = "g_source_set_callback")]
+		public void set_callback ([CCode (type = "GSourceFunc")] owned SocketSourceFunc func);
+	}
+
+	public class SocketConnection : GLib.IOStream {
+		public static GLib.SocketConnection factory_create_connection (GLib.Socket socket);
+	}
+
+	public class TlsPassword : GLib.Object {
+		[CCode (vfunc_name = "set_value")]
+		public virtual void set_value_full ([CCode (array_length_cname = "length", array_length_pos = 1.5, array_length_type = "gssize", type = "guchar*")] owned uint8[] value, GLib.DestroyNotify? notify = GLib.free);
+	}
+
+	public class VolumeMonitor : GLib.Object {
+		[NoWrapper]
+		public virtual bool is_supported ();
+	}
+
+	public interface AsyncInitable : GLib.Object {
+		[CCode (finish_function = "g_async_initable_new_finish")]
+		public static async GLib.Object new_async (GLib.Type object_type, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable, ...) throws GLib.Error;
+		[CCode (finish_function = "g_async_initable_new_finish")]
+		public static async GLib.Object new_valist_async (GLib.Type object_type, string first_property_name, va_list var_args, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
+		[CCode (finish_function = "g_async_initable_new_finish")]
+		public static async GLib.Object newv_async (GLib.Type object_type, [CCode (array_length_pos = 1.1)] GLib.Parameter[] parameters, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
+	}
+
+	public interface File : GLib.Object {
+		[CCode (vfunc_name = "monitor_dir")]
+		public abstract GLib.FileMonitor monitor_directory (GLib.FileMonitorFlags flags, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		public abstract GLib.FileMonitor monitor_file (GLib.FileMonitorFlags flags, GLib.Cancellable? cancellable = null) throws GLib.IOError;
+		[NoWrapper, Deprecated (since = "vala-0.16", replacement = "has_prefix")]
+		public abstract bool prefix_matches (GLib.File file);
+		[NoWrapper, Deprecated (since = "vala-0.16", replacement = "read")]
+		public abstract unowned GLib.FileInputStream read_fn (GLib.Cancellable? cancellable = null) throws GLib.Error;
+	}
+
+	public interface Icon : GLib.Object {
+		[NoWrapper]
+		public virtual bool to_tokens (GLib.GenericArray<string> tokens, out int out_version);
+		[NoWrapper]
+		public virtual GLib.Icon? from_tokens (string[] tokens, int version) throws GLib.Error;
+	}
+
+	public interface Initable : GLib.Object {
+		public static GLib.Object @new (GLib.Type object_type, GLib.Cancellable? cancellable = null, ...) throws GLib.Error;
+	}
+
+	[Flags]
+	public enum ConverterFlags {
+		[Deprecated (since = "vala-0.16", replacement = "ConverterFlags.NONE")]
+		NO_FLAGS
+	}
+
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 6.9)]
+	public delegate GLib.Variant DBusInterfaceGetPropertyFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string property_name) throws GLib.Error;
+	[CCode (cheader_filename = "gio/gio.h", instance_pos = 7.9)]
+	public delegate bool DBusInterfaceSetPropertyFunc (GLib.DBusConnection connection, string sender, string object_path, string interface_name, string property_name, GLib.Variant value) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "File.equal")]
+	public static GLib.EqualFunc file_equal;
+	[Deprecated (since = "vala-0.16", replacement = "File.hash")]
+	public static GLib.HashFunc file_hash;
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.can_be_executable")]
+	[CCode (cname = "g_content_type_can_be_executable", cheader_filename = "gio/gio.h")]
+	public static bool g_content_type_can_be_executable (string type);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.equals")]
+	[CCode (cname = "g_content_type_equals", cheader_filename = "gio/gio.h")]
+	public static bool g_content_type_equals (string type1, string type2);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.from_mime_type")]
+	[CCode (cname = "g_content_type_from_mime_type", cheader_filename = "gio/gio.h")]
+	public static string? g_content_type_from_mime_type (string mime_type);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.get_description")]
+	[CCode (cname = "g_content_type_get_description", cheader_filename = "gio/gio.h")]
+	public static string g_content_type_get_description (string type);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.get_icon")]
+	[CCode (cname = "g_content_type_get_icon", cheader_filename = "gio/gio.h")]
+	public static GLib.Icon g_content_type_get_icon (string type);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.get_mime_type")]
+	[CCode (cname = "g_content_type_get_mime_type", cheader_filename = "gio/gio.h")]
+	public static string? g_content_type_get_mime_type (string type);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.guess")]
+	[CCode (cname = "g_content_type_guess", cheader_filename = "gio/gio.h")]
+	public static string g_content_type_guess (string filename, uchar[] data, out bool result_uncertain);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.guess_for_tree")]
+	[CCode (cname = "g_content_type_guess_for_tree", cheader_filename = "gio/gio.h")]
+	public static string g_content_type_guess_for_tree (GLib.File root);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.is_a")]
+	[CCode (cname = "g_content_type_is_a", cheader_filename = "gio/gio.h")]
+	public static bool g_content_type_is_a (string type, string supertype);
+	[Deprecated (since = "vala-0.12", replacement = "GLib.ContentType.is_unknown")]
+	[CCode (cname = "g_content_type_is_unknown", cheader_filename = "gio/gio.h")]
+	public static bool g_content_type_is_unknown (string type);
+
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ACCESS_CAN_DELETE")]
+	public const string FILE_ATTRIBUTE_ACCESS_CAN_DELETE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ACCESS_CAN_EXECUTE")]
+	public const string FILE_ATTRIBUTE_ACCESS_CAN_EXECUTE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ACCESS_CAN_READ")]
+	public const string FILE_ATTRIBUTE_ACCESS_CAN_READ;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ACCESS_CAN_RENAME")]
+	public const string FILE_ATTRIBUTE_ACCESS_CAN_RENAME;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ACCESS_CAN_TRASH")]
+	public const string FILE_ATTRIBUTE_ACCESS_CAN_TRASH;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ACCESS_CAN_WRITE")]
+	public const string FILE_ATTRIBUTE_ACCESS_CAN_WRITE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.DOS_IS_ARCHIVE")]
+	public const string FILE_ATTRIBUTE_DOS_IS_ARCHIVE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.DOS_IS_SYSTEM")]
+	public const string FILE_ATTRIBUTE_DOS_IS_SYSTEM;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ETAG_VALUE")]
+	public const string FILE_ATTRIBUTE_ETAG_VALUE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.FILESYSTEM_FREE")]
+	public const string FILE_ATTRIBUTE_FILESYSTEM_FREE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.FILESYSTEM_READONLY")]
+	public const string FILE_ATTRIBUTE_FILESYSTEM_READONLY;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.FILESYSTEM_SIZE")]
+	public const string FILE_ATTRIBUTE_FILESYSTEM_SIZE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.FILESYSTEM_TYPE")]
+	public const string FILE_ATTRIBUTE_FILESYSTEM_TYPE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.FILESYSTEM_USE_PREVIEW")]
+	public const string FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.GVFS_BACKEND")]
+	public const string FILE_ATTRIBUTE_GVFS_BACKEND;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ID_FILE")]
+	public const string FILE_ATTRIBUTE_ID_FILE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.ID_FILESYSTEM")]
+	public const string FILE_ATTRIBUTE_ID_FILESYSTEM;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_EJECT")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_EJECT;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_MOUNT")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_MOUNT;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_POLL")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_POLL;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_START")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_START;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_START_DEGRADED")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_START_DEGRADED;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_STOP")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_STOP;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_CAN_UNMOUNT")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_CAN_UNMOUNT;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_HAL_UDI")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_HAL_UDI;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_IS_MEDIA_CHECK_AUTOMATIC;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_START_STOP_TYPE")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_START_STOP_TYPE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_UNIX_DEVICE")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.MOUNTABLE_UNIX_DEVICE_FILE")]
+	public const string FILE_ATTRIBUTE_MOUNTABLE_UNIX_DEVICE_FILE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.OWNER_GROUP")]
+	public const string FILE_ATTRIBUTE_OWNER_GROUP;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.OWNER_USER")]
+	public const string FILE_ATTRIBUTE_OWNER_USER;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.OWNER_USER_REAL")]
+	public const string FILE_ATTRIBUTE_OWNER_USER_REAL;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.PREVIEW_ICON")]
+	public const string FILE_ATTRIBUTE_PREVIEW_ICON;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.SELINUX_CONTEXT")]
+	public const string FILE_ATTRIBUTE_SELINUX_CONTEXT;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_ALLOCATED_SIZE")]
+	public const string FILE_ATTRIBUTE_STANDARD_ALLOCATED_SIZE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_CONTENT_TYPE")]
+	public const string FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_COPY_NAME")]
+	public const string FILE_ATTRIBUTE_STANDARD_COPY_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_DESCRIPTION")]
+	public const string FILE_ATTRIBUTE_STANDARD_DESCRIPTION;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_DISPLAY_NAME")]
+	public const string FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_EDIT_NAME")]
+	public const string FILE_ATTRIBUTE_STANDARD_EDIT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_FAST_CONTENT_TYPE")]
+	public const string FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_ICON")]
+	public const string FILE_ATTRIBUTE_STANDARD_ICON;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_IS_BACKUP")]
+	public const string FILE_ATTRIBUTE_STANDARD_IS_BACKUP;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_IS_HIDDEN")]
+	public const string FILE_ATTRIBUTE_STANDARD_IS_HIDDEN;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_IS_SYMLINK")]
+	public const string FILE_ATTRIBUTE_STANDARD_IS_SYMLINK;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_IS_VIRTUAL")]
+	public const string FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_NAME")]
+	public const string FILE_ATTRIBUTE_STANDARD_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_SIZE")]
+	public const string FILE_ATTRIBUTE_STANDARD_SIZE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_SORT_ORDER")]
+	public const string FILE_ATTRIBUTE_STANDARD_SORT_ORDER;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_SYMLINK_TARGET")]
+	public const string FILE_ATTRIBUTE_STANDARD_SYMLINK_TARGET;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_TARGET_URI")]
+	public const string FILE_ATTRIBUTE_STANDARD_TARGET_URI;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.STANDARD_TYPE")]
+	public const string FILE_ATTRIBUTE_STANDARD_TYPE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.THUMBNAILING_FAILED")]
+	public const string FILE_ATTRIBUTE_THUMBNAILING_FAILED;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.THUMBNAIL_PATH")]
+	public const string FILE_ATTRIBUTE_THUMBNAIL_PATH;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_ACCESS")]
+	public const string FILE_ATTRIBUTE_TIME_ACCESS;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_ACCESS_USEC")]
+	public const string FILE_ATTRIBUTE_TIME_ACCESS_USEC;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_CHANGED")]
+	public const string FILE_ATTRIBUTE_TIME_CHANGED;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_CHANGED_USEC")]
+	public const string FILE_ATTRIBUTE_TIME_CHANGED_USEC;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_CREATED")]
+	public const string FILE_ATTRIBUTE_TIME_CREATED;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_CREATED_USEC")]
+	public const string FILE_ATTRIBUTE_TIME_CREATED_USEC;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_MODIFIED")]
+	public const string FILE_ATTRIBUTE_TIME_MODIFIED;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TIME_MODIFIED_USEC")]
+	public const string FILE_ATTRIBUTE_TIME_MODIFIED_USEC;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TRASH_DELETION_DATE")]
+	public const string FILE_ATTRIBUTE_TRASH_DELETION_DATE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TRASH_ITEM_COUNT")]
+	public const string FILE_ATTRIBUTE_TRASH_ITEM_COUNT;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.TRASH_ORIG_PATH")]
+	public const string FILE_ATTRIBUTE_TRASH_ORIG_PATH;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_BLOCKS")]
+	public const string FILE_ATTRIBUTE_UNIX_BLOCKS;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_BLOCK_SIZE")]
+	public const string FILE_ATTRIBUTE_UNIX_BLOCK_SIZE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_DEVICE")]
+	public const string FILE_ATTRIBUTE_UNIX_DEVICE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_GID")]
+	public const string FILE_ATTRIBUTE_UNIX_GID;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_INODE")]
+	public const string FILE_ATTRIBUTE_UNIX_INODE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_IS_MOUNTPOINT")]
+	public const string FILE_ATTRIBUTE_UNIX_IS_MOUNTPOINT;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_MODE")]
+	public const string FILE_ATTRIBUTE_UNIX_MODE;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_NLINK")]
+	public const string FILE_ATTRIBUTE_UNIX_NLINK;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_RDEV")]
+	public const string FILE_ATTRIBUTE_UNIX_RDEV;
+	[Deprecated (since = "vala-0.16", replacement = "FileAttribute.UNIX_UID")]
+	public const string FILE_ATTRIBUTE_UNIX_UID;
+	[Deprecated (since = "vala-0.16", replacement = "Menu.ATTRIBUTE_ACTION")]
+	public const string MENU_ATTRIBUTE_ACTION;
+	[Deprecated (since = "vala-0.16", replacement = "Menu.ATTRIBUTE_LABEL")]
+	public const string MENU_ATTRIBUTE_LABEL;
+	[Deprecated (since = "vala-0.16", replacement = "Menu.ATTRIBUTE_TARGET")]
+	public const string MENU_ATTRIBUTE_TARGET;
+	[Deprecated (since = "vala-0.16", replacement = "Menu.LINK_SECTION_SECTION")]
+	public const string MENU_LINK_SECTION;
+	[Deprecated (since = "vala-0.16", replacement = "Menu.LINK_SUBMENU")]
+	public const string MENU_LINK_SUBMENU;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.NETWORK_MONITOR")]
+	public const string NETWORK_MONITOR_EXTENSION_POINT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.NATIVE_VOLUME_MONITOR")]
+	public const string NATIVE_VOLUME_MONITOR_EXTENSION_POINT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.PROXY")]
+	public const string PROXY_EXTENSION_POINT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.PROXY_RESOLVER")]
+	public const string PROXY_RESOLVER_EXTENSION_POINT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.TLS_BACKEND")]
+	public const string TLS_BACKEND_EXTENSION_POINT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "TlsDatabase.PURPOSE_AUTHENTICATE_CLIENT")]
+	public const string TLS_DATABASE_PURPOSE_AUTHENTICATE_CLIENT;
+	[Deprecated (since = "vala-0.16", replacement = "TlsDatabase.PURPOSE_AUTHENTICATE_SERVER")]
+	public const string TLS_DATABASE_PURPOSE_AUTHENTICATE_SERVER;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.VFS")]
+	public const string VFS_EXTENSION_POINT_NAME;
+	[Deprecated (since = "vala-0.16", replacement = "GLib.VolumeIdentifier.HAL_UDI")]
+	public const string VOLUME_IDENTIFIER_KIND_HAL_UDI;
+	[Deprecated (since = "vala-0.16", replacement = "GLib.VolumeIdentifier.LABEL")]
+	public const string VOLUME_IDENTIFIER_KIND_LABEL;
+	[Deprecated (since = "vala-0.16", replacement = "GLib.VolumeIdentifier.NFS_MOUNT")]
+	public const string VOLUME_IDENTIFIER_KIND_NFS_MOUNT;
+	[Deprecated (since = "vala-0.16", replacement = "GLib.VolumeIdentifier.UNIX_DEVICE")]
+	public const string VOLUME_IDENTIFIER_KIND_UNIX_DEVICE;
+	[Deprecated (since = "vala-0.16", replacement = "GLib.VolumeIdentifier.UUID")]
+	public const string VOLUME_IDENTIFIER_KIND_UUID;
+	[Deprecated (since = "vala-0.16", replacement = "IOExtensionPoint.VOLUME_MONITOR")]
+	public const string VOLUME_MONITOR_EXTENSION_POINT_NAME;
+
+	[Deprecated (since = "vala-0.16", replacement = "ContentType.list_registered")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_content_types_get_registered")]
+	public static GLib.List<string> g_content_types_get_registered ();
+	[Deprecated (since = "vala-0.16", replacement = "BusType.get_address_sync")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_for_bus_sync")]
+	public static unowned string g_dbus_address_get_for_bus_sync (GLib.BusType bus_type, GLib.Cancellable? cancellable = null) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "DBus.address_get_stream")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_stream")]
+	public static async void g_dbus_address_get_stream (string address, GLib.Cancellable? cancellable = null);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.address_get_stream_finish")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_stream_finish")]
+	public static unowned GLib.IOStream g_dbus_address_get_stream_finish (GLib.AsyncResult res, string out_guid) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "DBus.address_get_stream_sync")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_address_get_stream_sync")]
+	public static unowned GLib.IOStream g_dbus_address_get_stream_sync (string address, string out_guid, GLib.Cancellable? cancellable = null) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.encode_gerror")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_encode_gerror")]
+	public static unowned string g_dbus_error_encode_gerror (GLib.Error error);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.get_remote_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_get_remote_error")]
+	public static unowned string g_dbus_error_get_remote_error (GLib.Error error);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.error_is_remote_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_is_remote_error")]
+	public static bool g_dbus_error_is_remote_error (GLib.Error error);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.new_for_dbus_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_new_for_dbus_error")]
+	public static unowned GLib.Error g_dbus_error_new_for_dbus_error (string dbus_error_name, string dbus_error_message);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.quark")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_quark")]
+	public static GLib.Quark g_dbus_error_quark ();
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.register_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_register_error")]
+	public static bool g_dbus_error_register_error (GLib.Quark error_domain, int error_code, string dbus_error_name);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.register_error_domain")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_register_error_domain")]
+	public static void g_dbus_error_register_error_domain (string error_domain_quark_name, size_t quark_volatile, GLib.DBusErrorEntry entries, uint num_entries);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.set_dbus_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_set_dbus_error")]
+	public static void g_dbus_error_set_dbus_error (string dbus_error_name, string dbus_error_message, string format) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.set_dbus_error_valist")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_set_dbus_error_valist")]
+	public static void g_dbus_error_set_dbus_error_valist (string dbus_error_name, string dbus_error_message, string format, void* var_args) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.strip_remote_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_strip_remote_error")]
+	public static bool g_dbus_error_strip_remote_error (GLib.Error error);
+	[Deprecated (since = "vala-0.16", replacement = "DBusError.unregister_error")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_error_unregister_error")]
+	public static bool g_dbus_error_unregister_error (GLib.Quark error_domain, int error_code, string dbus_error_name);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.generate_guid")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_generate_guid")]
+	public static unowned string g_dbus_generate_guid ();
+	[Deprecated (since = "vala-0.16", replacement = "DBus.gvalue_to_gvariant")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_gvalue_to_gvariant")]
+	public static unowned GLib.Variant g_dbus_gvalue_to_gvariant (GLib.Value gvalue, GLib.VariantType type);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.gvariant_to_gvalue")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_gvariant_to_gvalue")]
+	public static void g_dbus_gvariant_to_gvalue (GLib.Variant value, GLib.Value out_gvalue);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_address")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_address")]
+	public static bool g_dbus_is_address (string str);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_guid")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_guid")]
+	public static bool g_dbus_is_guid (string str);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_interface_name")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_interface_name")]
+	public static bool g_dbus_is_interface_name (string str);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_member_name")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_member_name")]
+	public static bool g_dbus_is_member_name (string str);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_name")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_name")]
+	public static bool g_dbus_is_name (string str);
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_supported_address")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_supported_address")]
+	public static bool g_dbus_is_supported_address (string str) throws GLib.Error;
+	[Deprecated (since = "vala-0.16", replacement = "DBus.is_unique_name")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_dbus_is_unique_name")]
+	public static bool g_dbus_is_unique_name (string str);
+
+	[Deprecated (since = "vala-0.16", replacement = "IOError.from_errno")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_error_from_errno")]
+	public static unowned GLib.IOError g_io_error_from_errno (int err_no);
+	[Deprecated (since = "vala-0.16", replacement = "IOError.quark")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_error_quark")]
+	public static GLib.Quark g_io_error_quark ();
+
+	[Deprecated (since = "vala-0.16", replacement = "IOModule.load_all_in_directory")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_load_all_in_directory")]
+	public static GLib.List<weak GLib.TypeModule> g_io_modules_load_all_in_directory (string dirname);
+	[Deprecated (since = "vala-0.16", replacement = "IOModule.load_all_in_directory_with_scope")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_load_all_in_directory_with_scope")]
+	public static unowned GLib.List g_io_modules_load_all_in_directory_with_scope (string dirname, GLib.IOModuleScope scope);
+	[Deprecated (since = "vala-0.16", replacement = "IOModule.scan_all_in_directory")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_scan_all_in_directory")]
+	public static void g_io_modules_scan_all_in_directory (string dirname);
+	[Deprecated (since = "vala-0.16", replacement = "IOModule.xscan_all_in_directory_with_scope")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_modules_scan_all_in_directory_with_scope")]
+	public static void g_io_modules_scan_all_in_directory_with_scope (string dirname, GLib.IOModuleScope scope);
+
+	[Deprecated (since = "vala-0.16", replacement = "IOSchedulerJob.cancel_all")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_scheduler_cancel_all_jobs")]
+	public static void g_io_scheduler_cancel_all_jobs ();
+	[Deprecated (since = "vala-0.16", replacement = "IOSchedulerJob.push")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_io_scheduler_push_job")]
+	public static void g_io_scheduler_push_job (owned GLib.IOSchedulerJobFunc job_func, int io_priority = GLib.Priority.DEFAULT, GLib.Cancellable? cancellable = null);
+
+	[Deprecated (since = "vala-0.16", replacement = "PollableSource")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_pollable_source_new")]
+	public static unowned GLib.TimeoutSource g_pollable_source_new (GLib.Object pollable_stream);
+
+	[Deprecated (since = "vala-0.16", replacement = "report_error_in_idle")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_error_in_idle")]
+	public static void g_simple_async_report_error_in_idle (GLib.Object object, GLib.AsyncReadyCallback callback, GLib.Quark domain, int code, string format);
+	[Deprecated (since = "vala-0.16", replacement = "report_gerror_in_idle")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_gerror_in_idle")]
+	public static void g_simple_async_report_gerror_in_idle (GLib.Object object, GLib.AsyncReadyCallback callback, GLib.Error error);
+	[Deprecated (since = "vala-0.16", replacement = "report_take_gerror_in_idle")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_simple_async_report_take_gerror_in_idle")]
+	public static void g_simple_async_report_take_gerror_in_idle (GLib.Object object, GLib.AsyncReadyCallback callback, GLib.Error error);
+
+	[Deprecated (since = "vala-0.16", replacement = "TlsError.quark")]
+	[CCode (cheader_filename = "gio/gio.h", cname = "g_tls_error_quark")]
+	public static GLib.Quark g_tls_error_quark ();
+
+	/*** Bug #: GIR parser doesn't pick up ref/unref functions ***/
+
+	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_annotation_info_ref", type_id = "g_dbus_annotation_info_get_type ()", unref_function = "g_dbus_annotation_info_unref")]
+	[Compact]
+	public class DBusAnnotationInfo {
+	}
+
+	[CCode (cheader_filename = "gio/gio.h", ref_function = "g_dbus_arg_info_ref", type_id = "g_dbus_arg_info_get_type ()", unref_function = "g_dbus_arg_info_unref")]
+	[Compact]
+	public class DBusArgInfo {
+	}
+
+	[CCode (ref_function = "g_dbus_interface_info_ref", type_id = "g_dbus_interface_info_get_type ()", unref_function = "g_dbus_interface_info_unref")]
+	[Compact]
+	public class DBusInterfaceInfo {
+	}
+
+	[CCode (ref_function = "g_dbus_method_info_ref", type_id = "g_dbus_method_info_get_type ()", unref_function = "g_dbus_method_info_unref")]
+	[Compact]
+	public class DBusMethodInfo {
+	}
+
+	[CCode (ref_function = "g_dbus_node_info_ref", type_id = "g_dbus_node_info_get_type ()", unref_function = "g_dbus_node_info_unref")]
+	[Compact]
+	public class DBusNodeInfo {
+	}
+
+	[CCode (ref_function = "g_dbus_signal_info_ref", type_id = "g_dbus_signal_info_get_type ()", unref_function = "g_dbus_signal_info_unref")]
+	[Compact]
+	public class DBusSignalInfo {
+	}
+
+	[CCode (ref_function = "g_file_attribute_info_list_ref", type_id = "g_file_attribute_info_list_get_type ()", unref_function = "g_file_attribute_info_list_unref")]
+	[Compact]
+	public class FileAttributeInfoList {
+	}
+
+	[CCode (ref_function = "g_file_attribute_matcher_ref", type_id = "g_file_attribute_matcher_get_type ()", unref_function = "g_file_attribute_matcher_unref")]
+	[Compact]
+	public class FileAttributeMatcher {
+	}
+}
\ No newline at end of file
diff --git a/vapi/metadata/Gio-2.0.metadata b/vapi/metadata/Gio-2.0.metadata
new file mode 100644
index 0000000..1206273
--- /dev/null
+++ b/vapi/metadata/Gio-2.0.metadata
@@ -0,0 +1,293 @@
+Gio name="GLib"
+* cheader_filename="gio/gio.h"
+*.cancellable#parameter nullable default=null
+*.*.cancellable#parameter nullable default=null
+*.*.io_priority default=GLib.Priority.DEFAULT
+
+// Needs to be in gio-unix-2.0
+DesktopAppInfo* skip
+DesktopAppLaunchCallback skip
+FileDescriptorBased* skip
+Unix* skip
+unix_* skip
+*.*unix_fd_list* skip
+// UnixSocketAddress.abstract#property skip
+// DBusConnection
+//   .call_with_unix_fd_list*.fd_list default=null
+//   .call_with_unix_fd_list*.out_fd_list nullable default=null
+// DBusProxy
+//   .call_with_unix_fd*.*fd_list nullable default=null
+
+// Move constants around
+FILE_ATTRIBUTE_* parent="GLib.FileAttribute" name="FILE_ATTRIBUTE_(.*)"
+*_EXTENSION_POINT_NAME parent="GLib.IOExtensionPoint" name="(.*)_EXTENSION_POINT_NAME"
+TLS_DATABASE_* parent="GLib.TlsDatabase" name="TLS_DATABASE_(.*)"
+VOLUME_IDENTIFIER_KIND_* parent="GLib.VolumeIdentifier" name="VOLUME_IDENTIFIER_KIND_(.*)"
+MENU_* parent="GLib.Menu" name="MENU_(.*)"
+
+content_type_* parent="GLib.ContentType" name="content_type_(.*)"
+
+bus_* parent="GLib.Bus" name="bus_(.*)"
+bus_get skip
+bus_get_sync skip
+bus_get_finish skip
+bus_own_name_with_closures name="own_name"
+  .bus_acquired_closure type="owned GLib.BusAcquiredCallback?" default=null
+  .name_acquired_closure type="owned GLib.BusNameAcquiredCallback?" default=null
+  .name_lost_closure type="owned GLib.BusNameLostCallback?" default=null
+bus_own_name_on_connection_with_closures name="own_name_on_connection"
+  .name_acquired_closure type="owned GLib.BusNameAcquiredCallback?" default=null
+  .name_lost_closure type="owned GLib.BusNameLostCallback?" default=null
+bus_watch_name_on_connection_with_closures name="watch_name_on_connection"
+  .name_appeared_closure type="owned GLib.BusNameAppearedCallback?" default=null
+  .name_vanished_closure type="owned GLib.BusNameVanishedCallback?" default=null
+bus_watch_name_with_closures name="watch_name"
+  .name_appeared_closure type="owned GLib.BusNameAppearedCallback?" default=null
+  .name_vanished_closure type="owned GLib.BusNameVanishedCallback?" default=null
+
+dbus_* parent="GLib.DBus" name="dbus_(.*)"
+dbus_error_* parent="GLib.DBusError" name="dbus_error_(.*)"
+dbus_address_get_for_bus_sync parent="GLib.BusType" name="get_address_sync"
+
+ActionEntry
+  .activate type="GLib.Callback"
+  .change_state type="GLib.Callback"
+Application.local_command_line
+  .arguments ref type="unowned string[]"
+  .exit_status out
+Application.run.argv default=null
+ApplicationCommandLine
+  .get_platform_data nullable
+  .print skip=false printf_format
+  .printerr skip=false printf_format
+BufferedInputStream
+  .peek.offset default=0
+Cancellable
+  .connect.callback type="owned GLib.Func<GLib.Cancellable>"
+  .get_current nullable
+  .source_new skip=false type="GLib.CancellableSource"
+Credentials
+  .get_native skip=false
+DBusAuthObserver.authorize_authenticated_peer virtual
+DBusConnection
+  .*.observer#parameter default=null
+DBusInterfaceSkeleton
+  .get_vtable skip=false nullable unowned=false
+DBusMessage
+  .get_header_fields type="uchar[]"
+  .print.indent default=0
+DBus*Info
+  .*#field unowned=false
+DBusMethodInvocation
+  .get_user_data skip=false
+  .return_error skip=false
+  .return_error_valist skip=false
+  .return_error_valist.var_args type="va_list"
+  .take_error skip=false
+  .take_error.error owned
+DBusObjectManagerClient
+  .get_name_owner nullable
+  .name_owner nullable
+DBusServer
+  .new_sync.observer default=null
+FileAttributeInfo struct=false
+io_extension_get_type skip
+IOModuleScope
+  .free skip
+InetAddress
+  .to_bytes type="unowned uint8[]" skip=false
+MemoryOutputStream
+  .get_data type="unowned uint8[]"
+  .steal_data type="uint8[]"
+  .destroy_function skip=false type="GLib.DestroyNotify?"
+  .realloc_function skip=false type="GLib.ReallocFunc?"
+MenuModel
+  .get_item_attribute skip=false
+Resolver
+  .lookup_service_async skip
+  .lookup_service#virtual_method skip=false name="lookup_service_fn" type="GLib.List<GLib.SrvTarget>"
+  .lookup_service_finish skip
+Settings
+  .change_event skip
+  .bind_with_mapping skip=false
+  .get skip=false sentinel=""
+  .set skip=false sentinel=""
+SimpleAction
+  .enabled skip
+  .name skip
+  .parameter_type skip
+  .state skip
+  .state_type skip
+SimpleAsyncResult
+  .get_source_tag skip=false
+  .run_in_thread skip=false
+  .set_error skip=false printf_format
+  .set_error_va skip=false
+  .take_error skip=false
+  .new skip
+  .new_error skip
+  .new_from_error skip
+Socket
+  .create_source skip=false type="GLib.SocketSource"
+SocketControlMessage
+  .serialize.data type="uint8[]"
+SocketListener
+  .accept*.source_object#parameter default=null
+SrvTarget
+  .free skip
+srv_target_list_sort type_arguments="GLib.SrvTarget" skip=false
+srv_target_list_sort.targets type_arguments="GLib.SrvTarget" owned
+TlsDatabase
+  .create_certificate_handle nullable
+TlsPassword
+  .get_value type="unowned uint8[]" array_length_idx=0
+  .set_value skip=false
+  .set_value.value type="uint8[]" array_length_idx=1
+  .set_value_full skip // Because the "owned" part in the value argument doesn't work
+  // .set_value_full.value type="owned uint8[]" array_length_idx=1
+  // .set_value_full.destroy default=GLib.free
+  .set_value#virtual_method skip
+Vfs
+  // TODO: should probably be a simple generic
+  .local_file_add_info.extra_data default=null
+  .local_file_add_info.free_extra_data nullable default=null
+ZlibCompressor
+  .new.level default=-1
+Converter
+  .convert.outbuf type="uint8[]" array_length_idx=3
+File
+  .copy_async skip=false
+  .copy*.progress_callback default=null
+  .get_basename nullable
+  .get_parent nullable
+  .get_path nullable
+  .get_relative_path nullable
+  .load_partial_contents_async skip=false
+  .move.progress_callback default=null
+Icon
+  .from_tokens#virtual_method skip=false
+  .new_for_string nullable
+  .to_string nullable
+  .to_tokens skip
+Initable
+  .new_valist skip=false
+  .newv type="GLib.Object"
+PollableInputStream
+  .create_source type="GLib.PollableSource"
+  .read_nonblocking.buffer type="uint8[]" array_length_idx=1
+  .read_nonblocking#virtual_method name="read_nonblocking_fn"
+PollableOutputStream
+  .create_source type="GLib.PollableSource"
+TlsClientConnection
+  .new nullable
+  .accepted_cas type="GLib.List<GLib.ByteArray>"
+TlsFileDatabase
+  .new nullable
+TlsServerConnection
+  .new nullable
+DBusError errordomain
+DBusSubtreeEnumerateFunc unowned=false skip=false
+ReallocFunc skip=false
+
+
+content_types_get_registered parent="GLib.ContentType" name="list_registered"
+io_modules_* parent="GLib.IOModule" name="io_modules_(.*)"
+io_scheduler_cancel_all_jobs parent="GLib.IOSchedulerJob" name="cancel_all"
+io_scheduler_push_job parent="GLib.IOSchedulerJob" name="push"
+pollable_source_new skip
+network_monitor_get_default skip
+proxy_get_default_for_protocol skip
+proxy_resolver_get_default skip
+simple_async_report_gerror_in_idle parent="GLib.SimpleAsyncResult" name="report_gerror_in_idle"
+tls_* skip
+
+
+// Bug #667448: GIR parser does not offer a way to set error domain
+Cancellable
+  .set_error_if_cancelled skip
+DBusConnection
+  .send_message_with_reply* skip
+DataInputStream
+  .read_* skip
+DataOutputStream
+  .put_* skip
+IOStream
+  .close* skip
+InputStream
+  .close* skip
+  .read* skip
+  .skip* skip
+OutputStream
+  .close* skip
+  .splice* skip
+  .write* skip
+Socket
+  .condition_wait skip
+File
+  .monitor_dir* skip
+  .monitor_file skip
+
+// Bug #666796: GIR parser doesn't pick up ref/unref functions
+DBus*Info
+  .ref skip
+  .unref skip
+FileAttributeInfoList
+  .ref skip
+  .unref skip
+FileAttributeMatcher
+  .ref skip
+  .unref skip
+
+// Bug #659886: Async constuctors don't work
+DBusConnection
+  .new skip
+  .new_finish skip
+  .new_for_address skip
+  .new_for_address_finish skip
+DBusObjectManagerClient
+  .new skip
+  .new_finish skip
+  .new_for_bus skip
+  .new_for_bus_finish skip
+DBusProxy
+  .new skip
+  .new_finish skip
+  .new_for_bus skip
+  .new_for_bus_finish skip
+AsyncInitable
+  .new* skip
+
+// Bug #666797: No support for generic methods in GIR parser
+DBusConnection
+  .register_object skip
+
+// Bug #: Construct methods not detected as such
+DBusMessage
+  .new_method_* skip
+
+// Bug #: Reparenting instance method breaks arguments
+Socket
+  .connection_factory_create_connection skip // parent="GLib.SocketConnection" name="factory_create_connection"
+
+// Bug #: out + allow-none parameters missing ? in vapi
+LoadableIcon
+  .load.type nullable
+
+// Bug #666798: GIR parser should detect delegate types which throw errors
+DBusInterfaceGetPropertyFunc skip
+DBusInterfaceSetPropertyFunc skip
+
+// Bug #666799: symbols with moved-to annotations should be deprecated at the old locations
+app_info*#function skip
+async_initable_newv_async skip
+file_* skip
+icon_* skip
+initable_* skip
+
+// Need to ask about this... annotated as out, but that seems wrong
+DBus*Info.generate_xml.string_builder out=false
+
+// Forward upstream
+content_type_from_mime_type nullable
+ActionMap
+  .add_action_entries.entries array array_length_idx=1
\ No newline at end of file



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