Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libdex for openSUSE:Factory checked in at 2023-03-24 15:19:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libdex (Old) and /work/SRC/openSUSE:Factory/.libdex.new.31432 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libdex" Fri Mar 24 15:19:27 2023 rev:2 rq:1073181 version:0.2.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libdex/libdex.changes 2023-03-07 16:50:05.521508058 +0100 +++ /work/SRC/openSUSE:Factory/.libdex.new.31432/libdex.changes 2023-03-24 15:19:47.082688850 +0100 @@ -1,0 +2,12 @@ +Fri Mar 17 19:46:13 UTC 2023 - Bjørn Lie <bjorn....@gmail.com> + +- Update to version 0.2.0: + + Followup fixes for building on mips. + + Fixes for introspection gi-scanner. + + Remove abstract type flag from DexFuture to satisfy GObject + Introspection rules about constructors. + + Many documentation/gi-annotation fixes. + + Build system improvements. + + Default to `-Dintrospection=enabled`. + +------------------------------------------------------------------- Old: ---- libdex-0.1.1.tar.xz New: ---- libdex-0.2.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libdex.spec ++++++ --- /var/tmp/diff_new_pack.CGo0Ah/_old 2023-03-24 15:19:48.062693959 +0100 +++ /var/tmp/diff_new_pack.CGo0Ah/_new 2023-03-24 15:19:48.074694022 +0100 @@ -15,16 +15,16 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # -%define soname libdex-1-1 +%define soname libdex-1-1 Name: libdex -Version: 0.1.1 +Version: 0.2.0 Release: 0 Summary: Library supporting "Deferred Execution" for GNOME and GTK License: LGPL-2.1-or-later URL: https://gitlab.gnome.org/chergert/libdex -Source0: https://download.gnome.org/sources/%{name}/0.1/%{name}-%{version}.tar.xz +Source0: https://download.gnome.org/sources/%{name}/0.2/%{name}-%{version}.tar.xz BuildRequires: c_compiler BuildRequires: meson @@ -34,8 +34,8 @@ BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(liburing) -BuildRequires: pkgconfig(sysprof-capture-4) BuildRequires: pkgconfig(sysprof-4) +BuildRequires: pkgconfig(sysprof-capture-4) BuildRequires: pkgconfig(vapigen) %description ++++++ libdex-0.1.1.tar.xz -> libdex-0.2.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/NEWS new/libdex-0.2.0/NEWS --- old/libdex-0.1.1/NEWS 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/NEWS 2023-03-17 20:41:16.000000000 +0100 @@ -1,3 +1,18 @@ +libdex 0.2.0 +============ + +This is the first release intended for end-users. + +Changes in this release: + + * Followup fixes for building on mips + * Fixes for introspection gi-scanner + * Remove abstract type flag from DexFuture to satisfy GObject Introspection + rules about constructors. + * Many documentation/gi-annotation fixes + * Build system improvements + * Default to `-Dintrospection=enabled` + libdex 0.1.1 ============ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/meson.build new/libdex-0.2.0/meson.build --- old/libdex-0.1.1/meson.build 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/meson.build 2023-03-17 20:41:16.000000000 +0100 @@ -1,5 +1,5 @@ project('libdex', 'c', - version: '0.1.1', + version: '0.2.0', meson_version: '>= 0.62.0', default_options: [ 'warning_level=2', 'werror=false', 'c_std=gnu11', ], ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/meson_options.txt new/libdex-0.2.0/meson_options.txt --- old/libdex-0.1.1/meson_options.txt 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/meson_options.txt 2023-03-17 20:41:16.000000000 +0100 @@ -8,7 +8,7 @@ type: 'boolean', value: true, description: 'Generate vapi data (requires vapigen)') option('introspection', - type: 'feature', value: 'auto', + type: 'feature', value: 'enabled', description: 'Generate gir data (requires gobject-introspection)') option('sysprof', type: 'boolean', value: false, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/386-ucontext.h new/libdex-0.2.0/src/386-ucontext.h --- old/libdex-0.1.1/src/386-ucontext.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/386-ucontext.h 2023-03-17 20:41:16.000000000 +0100 @@ -76,7 +76,7 @@ * sigcontext. So that we can support sigcontext * and ucontext_t at the same time. */ - int mc_onstack; /* XXX - sigcontext compat. */ + int mc_onstack; /* sigcontext compat. */ int mc_gs; int mc_fs; int mc_es; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/amd64-ucontext.h new/libdex-0.2.0/src/amd64-ucontext.h --- old/libdex-0.1.1/src/amd64-ucontext.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/amd64-ucontext.h 2023-03-17 20:41:16.000000000 +0100 @@ -76,7 +76,7 @@ * sigcontext. So that we can support sigcontext * and ucontext_t at the same time. */ - long mc_onstack; /* XXX - sigcontext compat. */ + long mc_onstack; /* sigcontext compat. */ long mc_rdi; /* machine state (struct trapframe) */ long mc_rsi; long mc_rdx; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-async-pair.h new/libdex-0.2.0/src/dex-async-pair.h --- old/libdex-0.1.1/src/dex-async-pair.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-async-pair.h 2023-03-17 20:41:16.000000000 +0100 @@ -43,7 +43,9 @@ gpointer _reserved[13]; } DexAsyncPairInfo; +#ifndef __GI_SCANNER__ G_STATIC_ASSERT (sizeof (DexAsyncPairInfo) == (GLIB_SIZEOF_VOID_P * 16)); +#endif #define DEX_ASYNC_PAIR_INFO(Async, Finish, ReturnType) \ (DexAsyncPairInfo) { \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-async-result.c new/libdex-0.2.0/src/dex-async-result.c --- old/libdex-0.1.1/src/dex-async-result.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-async-result.c 2023-03-17 20:41:16.000000000 +0100 @@ -1,7 +1,7 @@ /* * dex-async-result.c * - * Copyright 2022 Christian Hergert <> + * Copyright 2022-2023 Christian Hergert <> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -171,7 +171,7 @@ /** * dex_async_result_dup_future: - * @self: a #DexAsyncResult + * @async_result: a #DexAsyncResult * * Gets the future for the #DexAsyncResult, or %NULL if a future * is not available. @@ -179,16 +179,16 @@ * Returns: (transfer full) (nullable): a #DexFuture or %NULL */ DexFuture * -dex_async_result_dup_future (DexAsyncResult *self) +dex_async_result_dup_future (DexAsyncResult *async_result) { DexFuture *future = NULL; - g_return_val_if_fail (DEX_IS_ASYNC_RESULT (self), NULL); + g_return_val_if_fail (DEX_IS_ASYNC_RESULT (async_result), NULL); - g_mutex_lock (&self->mutex); - if (self->future != NULL) - future = dex_ref (self->future); - g_mutex_unlock (&self->mutex); + g_mutex_lock (&async_result->mutex); + if (async_result->future != NULL) + future = dex_ref (async_result->future); + g_mutex_unlock (&async_result->mutex); return g_steal_pointer (&future); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-channel.c new/libdex-0.2.0/src/dex-channel.c --- old/libdex-0.1.1/src/dex-channel.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-channel.c 2023-03-17 20:41:16.000000000 +0100 @@ -372,6 +372,17 @@ return ret; } +/** + * dex_channel_receive: + * @channel: a #DexChannel + * + * Receives the next item from the channel. + * + * The resulting future will resolve or reject when an item is available + * to the channel or when send side has closed (in that order). + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_channel_receive (DexChannel *channel) { @@ -411,8 +422,8 @@ } /** - * dex_channel_try_receive_all: - * @self: a #DexChannel + * dex_channel_receive_all: + * @channel: a #DexChannel * * Will attempt to receive all items in the channel as a #DexResultSet. * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-future.c new/libdex-0.2.0/src/dex-future.c --- old/libdex-0.1.1/src/dex-future.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-future.c 2023-03-17 20:41:16.000000000 +0100 @@ -1,7 +1,7 @@ /* * dex-future.c * - * Copyright 2022 Christian Hergert <cherg...@gnome.org> + * Copyright 2022-2023 Christian Hergert <cherg...@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -34,7 +34,7 @@ static void dex_future_propagate (DexFuture *future, DexFuture *completed); -DEX_DEFINE_ABSTRACT_TYPE (DexFuture, dex_future, DEX_TYPE_OBJECT) +DEX_DEFINE_DERIVABLE_TYPE (DexFuture, dex_future, DEX_TYPE_OBJECT) #undef DEX_TYPE_FUTURE #define DEX_TYPE_FUTURE dex_future_type @@ -779,7 +779,7 @@ * * Creates a read-only #DexFuture that has resolved. * - * Returns: (transfer full) (type DexStaticFuture): a #DexFuture + * Returns: (transfer full): a #DexFuture */ DexFuture * (dex_future_new_for_value) (const GValue *value) @@ -795,7 +795,7 @@ * * Creates a read-only #DexFuture that has rejected. * - * Returns: (transfer full) (type DexStaticFuture): a #DexFuture + * Returns: (transfer full): a #DexFuture */ DexFuture * (dex_future_new_for_error) (GError *error) @@ -811,7 +811,7 @@ * * Creates a new #DexFuture and resolves it with @v_bool. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_boolean) (gboolean v_bool) @@ -840,7 +840,7 @@ * * Creates a new #DexFuture and resolves it with @v_int. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_int) (int v_int) @@ -862,7 +862,7 @@ * * Creates a new #DexFuture and resolves it with @v_int64. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_int64) (gint64 v_int64) @@ -884,7 +884,7 @@ * * Creates a new #DexFuture and resolves it with @v_uint64. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_uint64) (guint64 v_uint64) @@ -906,7 +906,7 @@ * * Creates a new #DexFuture and resolves it with @v_float. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_float) (gfloat v_float) @@ -928,7 +928,7 @@ * * Creates a new #DexFuture and resolves it with @v_double. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_double) (gdouble v_double) @@ -950,7 +950,7 @@ * * Creates a new #DexFuture and resolves it with @v_uint. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_uint) (guint v_uint) @@ -972,7 +972,7 @@ * * Creates a new #DexFuture and resolves it with @string. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_string) (const char *string) @@ -994,7 +994,7 @@ * * Creates a new #DexFuture and resolves it with @string. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_take_string) (char *string) @@ -1017,7 +1017,7 @@ * * Creates a new #DexFuture that is resolved with @value. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_take_boxed) (GType boxed_type, @@ -1042,7 +1042,7 @@ * * Creates a new #DexFuture that is resolved with @pointer as a %G_TYPE_POINTER. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_pointer) (gpointer pointer) @@ -1064,7 +1064,7 @@ * * Creates a new #DexFuture that is resolved with @value. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_for_object) (gpointer value) @@ -1088,7 +1088,7 @@ * * Creates a new #DexFuture that is resolved with @value. * - * Returns: (transfer full) (type DexStaticFuture): a resolved #DexFuture + * Returns: (transfer full): a resolved #DexFuture */ DexFuture * (dex_future_new_take_object) (gpointer value) @@ -1109,16 +1109,16 @@ /** * dex_future_new_reject: (constructor) * @domain: the error domain - * @code: the error code + * @error_code: the error code * @format: a printf-style format string * * Creates a new #DexFuture that is rejeced. * - * Returns: (transfer full) (type DexStaticFuture): a new #DexFuture + * Returns: (transfer full): a new #DexFuture */ DexFuture * (dex_future_new_reject) (GQuark domain, - int code, + int error_code, const char *format, ...) { @@ -1126,7 +1126,7 @@ va_list args; va_start (args, format); - error = g_error_new_valist (domain, code, format, args); + error = g_error_new_valist (domain, error_code, format, args); va_end (args); g_return_val_if_fail (error != NULL, NULL); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-future.h new/libdex-0.2.0/src/dex-future.h --- old/libdex-0.1.1/src/dex-future.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-future.h 2023-03-17 20:41:16.000000000 +0100 @@ -71,32 +71,32 @@ const char *format, ...) G_GNUC_PRINTF (3, 4); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_string (const char *value); +DexFuture *dex_future_new_for_string (const char *string); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_take_string (char *value); +DexFuture *dex_future_new_take_string (char *string); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_int (int value); +DexFuture *dex_future_new_for_int (int v_int); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_uint (guint value); +DexFuture *dex_future_new_for_uint (guint v_uint); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_int64 (gint64 value); +DexFuture *dex_future_new_for_int64 (gint64 v_int64); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_uint64 (guint64 value); +DexFuture *dex_future_new_for_uint64 (guint64 v_uint64); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_boolean (gboolean value); +DexFuture *dex_future_new_for_boolean (gboolean v_bool); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_double (double value); +DexFuture *dex_future_new_for_double (double v_double); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_float (float value); +DexFuture *dex_future_new_for_float (float v_float); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_take_boxed (GType type, +DexFuture *dex_future_new_take_boxed (GType boxed_type, gpointer value); DEX_AVAILABLE_IN_ALL DexFuture *dex_future_new_for_pointer (gpointer pointer); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_for_object (gpointer instance); +DexFuture *dex_future_new_for_object (gpointer value); DEX_AVAILABLE_IN_ALL -DexFuture *dex_future_new_take_object (gpointer instance); +DexFuture *dex_future_new_take_object (gpointer value); DEX_AVAILABLE_IN_ALL DexFuture *dex_future_then (DexFuture *future, DexFutureCallback callback, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-gio.c new/libdex-0.2.0/src/dex-gio.c --- old/libdex-0.1.1/src/dex-gio.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-gio.c 2023-03-17 20:41:16.000000000 +0100 @@ -1,7 +1,7 @@ /* * dex-gio.c * - * Copyright 2022 Christian Hergert <cherg...@redhat.com> + * Copyright 2022-2023 Christian Hergert <cherg...@redhat.com> * * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as @@ -78,6 +78,11 @@ dex_unref (async_pair); } +/** + * dex_input_stream_read_bytes: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_input_stream_read_bytes (GInputStream *stream, gsize count, @@ -118,6 +123,11 @@ dex_unref (async_pair); } +/** + * dex_output_stream_write_bytes: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_output_stream_write_bytes (GOutputStream *stream, GBytes *bytes, @@ -156,9 +166,18 @@ dex_unref (async_pair); } +/** + * dex_file_read: + * @file: a #GFile + * @io_priority: IO priority such as %G_PRIORITY_DEFAULT + * + * Asynchronously opens a file for reading. + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_read (GFile *file, - int priority) + int io_priority) { DexAsyncPair *async_pair; @@ -167,7 +186,7 @@ async_pair = (DexAsyncPair *)dex_object_create_instance (DEX_TYPE_ASYNC_PAIR); g_file_read_async (file, - priority, + io_priority, async_pair->cancellable, dex_file_read_cb, dex_ref (async_pair)); @@ -192,6 +211,11 @@ dex_unref (async_pair); } +/** + * dex_file_replace: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_replace (GFile *file, const char *etag, @@ -236,6 +260,11 @@ dex_unref (async_pair); } +/** + * dex_input_stream_read: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_input_stream_read (GInputStream *self, gpointer buffer, @@ -278,6 +307,11 @@ dex_unref (async_pair); } +/** + * dex_output_stream_write: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_output_stream_write (GOutputStream *self, gconstpointer buffer, @@ -319,6 +353,11 @@ dex_unref (async_pair); } +/** + * dex_output_stream_close: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_output_stream_close (GOutputStream *self, int priority) @@ -356,6 +395,11 @@ dex_unref (async_pair); } +/** + * dex_input_stream_close: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_input_stream_close (GInputStream *self, int priority) @@ -394,6 +438,11 @@ dex_unref (async_pair); } +/** + * dex_output_stream_splice: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_output_stream_splice (GOutputStream *output, GInputStream *input, @@ -437,6 +486,11 @@ dex_unref (async_pair); } +/** + * dex_file_query_info: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_query_info (GFile *file, const char *attributes, @@ -478,6 +532,16 @@ dex_unref (async_pair); } +/** + * dex_file_make_directory: + * @file: a #GFile + * @io_priority: IO priority such as %G_PRIORITY_DEFAULT + * + * Asynchronously creates a directory and returns #DexFuture which + * can be observed for the result. + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_make_directory (GFile *file, int io_priority) @@ -516,6 +580,11 @@ dex_unref (async_pair); } +/** + * dex_file_enumerate_children: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_enumerate_children (GFile *file, const char *attributes, @@ -558,6 +627,11 @@ dex_unref (async_pair); } +/** + * dex_file_enumerator_next_files: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_enumerator_next_files (GFileEnumerator *file_enumerator, int num_files, @@ -597,6 +671,18 @@ dex_unref (async_pair); } +/** + * dex_file_copy: + * @source: a #GFile + * @destination: a #GFile + * @flags: the #GFileCopyFlags + * @io_priority: IO priority such as %G_PRIORITY_DEFAULT + * + * Asynchronously copies a file and returns a #DexFuture which + * can be observed for the result. + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_copy (GFile *source, GFile *destination, @@ -641,6 +727,11 @@ dex_unref (async_pair); } +/** + * dex_socket_listener_accept: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_socket_listener_accept (GSocketListener *listener) { @@ -677,6 +768,11 @@ dex_unref (async_pair); } +/** + * dex_socket_client_connect: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_socket_client_connect (GSocketClient *socket_client, GSocketConnectable *socket_connectable) @@ -715,6 +811,11 @@ dex_unref (async_pair); } +/** + * dex_io_stream_close: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_io_stream_close (GIOStream *io_stream, int io_priority) @@ -753,6 +854,11 @@ dex_unref (async_pair); } +/** + * dex_resolver_lookup_by_name: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_resolver_lookup_by_name (GResolver *resolver, const char *address) @@ -793,6 +899,11 @@ dex_unref (async_pair); } +/** + * dex_file_load_contents_bytes: + * + * Returns: (transfer full): a #DexFuture + */ DexFuture * dex_file_load_contents_bytes (GFile *file) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-object-private.h new/libdex-0.2.0/src/dex-object-private.h --- old/libdex-0.1.1/src/dex-object-private.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-object-private.h 2023-03-17 20:41:16.000000000 +0100 @@ -1,7 +1,7 @@ /* * dex-object-private.h * - * Copyright 2022 Christian Hergert <cherg...@gnome.org> + * Copyright 2022-2023 Christian Hergert <cherg...@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -60,6 +60,8 @@ } #define DEX_DEFINE_ABSTRACT_TYPE(ClassName, class_name, PARENT_TYPE) \ _DEX_DEFINE_TYPE(ClassName, class_name, PARENT_TYPE, G_TYPE_FLAG_ABSTRACT) +#define DEX_DEFINE_DERIVABLE_TYPE(ClassName, class_name, PARENT_TYPE) \ + _DEX_DEFINE_TYPE(ClassName, class_name, PARENT_TYPE, 0) #define DEX_DEFINE_FINAL_TYPE(ClassName, class_name, PARENT_TYPE) \ _DEX_DEFINE_TYPE(ClassName, class_name, PARENT_TYPE, G_TYPE_FLAG_FINAL) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-posix-aio-future.c new/libdex-0.2.0/src/dex-posix-aio-future.c --- old/libdex-0.1.1/src/dex-posix-aio-future.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-posix-aio-future.c 2023-03-17 20:41:16.000000000 +0100 @@ -171,6 +171,9 @@ read (posix_aio_future->read.fd, posix_aio_future->read.buffer, posix_aio_future->read.count); + + /* Silence unused-result */ + (void)posix_aio_future->read.res; break; case DEX_POSIX_AIO_FUTURE_WRITE: @@ -185,6 +188,9 @@ write (posix_aio_future->write.fd, posix_aio_future->write.buffer, posix_aio_future->write.count); + + /* Silence unused-result */ + (void)posix_aio_future->write.res; break; default: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-promise.c new/libdex-0.2.0/src/dex-promise.c --- old/libdex-0.1.1/src/dex-promise.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-promise.c 2023-03-17 20:41:16.000000000 +0100 @@ -1,7 +1,7 @@ /* * dex-promise.c * - * Copyright 2022 Christian Hergert <cherg...@gnome.org> + * Copyright 2022-2023 Christian Hergert <cherg...@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -82,7 +82,6 @@ /** * dex_promise_new_cancellable: - * @cancellable: a #GCancellable * * Creates a new #DexPromise that can propagate cancellation if the * promise is discarded. @@ -104,7 +103,7 @@ /** * dex_promise_get_cancellable: - * @self: a #DexPromise + * @promise: a #DexPromise * * Gets a #GCancellable that will cancel when the promise has * been discarded (and therefore result no longer necessary). @@ -112,16 +111,16 @@ * This is useful when manually implementing wrappers around various * #GAsyncReadyCallback based API. * - * If @self was created with dex_promise_new(), then %NULL is returned. + * If @promise was created with dex_promise_new(), then %NULL is returned. * * Returns: (transfer none) (nullable): a #GCancellable or %NULL */ GCancellable * -dex_promise_get_cancellable (DexPromise *self) +dex_promise_get_cancellable (DexPromise *promise) { - g_return_val_if_fail (DEX_IS_PROMISE (self), NULL); + g_return_val_if_fail (DEX_IS_PROMISE (promise), NULL); - return self->cancellable; + return promise->cancellable; } /** @@ -232,7 +231,7 @@ /** * dex_promise_resolve_string: - * @self: a #DexPromise + * @promise: a #DexPromise * @value: (transfer full): a string to use to resolve the promise * */ @@ -247,15 +246,15 @@ /** * dex_promise_resolve_object: - * @self: a #DexPromise - * @value: (transfer full): a #GObject + * @promise: a #DexPromise + * @object: (transfer full): a #GObject * */ void dex_promise_resolve_object (DexPromise *promise, - gpointer value) + gpointer object) { - GValue gvalue = {G_OBJECT_TYPE (value), {{.v_pointer = value}, {.v_int = 0}}}; + GValue gvalue = {G_OBJECT_TYPE (object), {{.v_pointer = object}, {.v_int = 0}}}; dex_promise_resolve (promise, &gvalue); - g_object_unref (value); + g_object_unref (object); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-ucontext-private.h new/libdex-0.2.0/src/dex-ucontext-private.h --- old/libdex-0.1.1/src/dex-ucontext-private.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-ucontext-private.h 2023-03-17 20:41:16.000000000 +0100 @@ -68,7 +68,7 @@ #define setcontext(u) setmcontext(&(u)->uc_mcontext) #define getcontext(u) getmcontext(&(u)->uc_mcontext) extern int swapcontext(ucontext_t*, const ucontext_t*); -extern void makecontext(ucontext_t*, void(*)(), int, ...); +extern void makecontext(ucontext_t*, void(*)(void), int, ...); #endif #if defined(__APPLE__) @@ -99,11 +99,11 @@ #if defined(__linux__) && defined(__mips__) # if !defined(HAVE_UCONTEXT_H) -# include "mips-ucontext.h" +# include "mips-ucontext.h" # endif extern int getcontext (ucontext_t *ucp); extern int setcontext(const ucontext_t *ucp); extern int swapcontext(ucontext_t *oucp, const ucontext_t *ucp); /* glibc makecontext.S for mips specifies int return type, not void */ -extern int makecontext(ucontext_t *, void(*)(), int, ...); +extern void makecontext(ucontext_t *ucp, void(*)(void), int, ...); #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-unix-signal.c new/libdex-0.2.0/src/dex-unix-signal.c --- old/libdex-0.1.1/src/dex-unix-signal.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-unix-signal.c 2023-03-17 20:41:16.000000000 +0100 @@ -1,7 +1,7 @@ /* * dex-unix-signal.c * - * Copyright 2022 Christian Hergert <cherg...@redhat.com> + * Copyright 2022-2023 Christian Hergert <cherg...@redhat.com> * * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as @@ -97,7 +97,7 @@ /** * dex_unix_signal_new: - * @self: a #DexUnixSignal + * @signum: a unix signal number * * Creates a new #DexUnixSignal that completes when @signum is delivered * to the process. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/dex-uring-aio-backend.c new/libdex-0.2.0/src/dex-uring-aio-backend.c --- old/libdex-0.1.1/src/dex-uring-aio-backend.c 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/dex-uring-aio-backend.c 2023-03-17 20:41:16.000000000 +0100 @@ -103,7 +103,12 @@ guint n_handled = 0; if (g_source_query_unix_fd (source, aio_context->eventfdtag) & G_IO_IN) - read (aio_context->eventfd, &counter, sizeof counter); + { + if (read (aio_context->eventfd, &counter, sizeof counter) <= 0) + { + /* Do mothing */ + } + } again: while (io_uring_peek_cqe (&aio_context->ring, &cqe) == 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/mips-ucontext.h new/libdex-0.2.0/src/mips-ucontext.h --- old/libdex-0.1.1/src/mips-ucontext.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/mips-ucontext.h 2023-03-17 20:41:16.000000000 +0100 @@ -52,7 +52,7 @@ int mc_fpregs[33]; /* fp regs 0 to 31 and csr */ int mc_fpc_eir; /* fp exception instruction reg */ void *mc_tls; /* pointer to TLS area */ - int __spare__[8]; /* XXX reserved */ + int __spare__[8]; /* reserved */ }; struct ucontext { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/src/power-ucontext.h new/libdex-0.2.0/src/power-ucontext.h --- old/libdex-0.1.1/src/power-ucontext.h 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/src/power-ucontext.h 2023-03-17 20:41:16.000000000 +0100 @@ -13,7 +13,7 @@ ulong r3; /* first arg to function, return register: r3 */ ulong gpr[19]; /* callee saved: r13-r31 */ /* -// XXX: currently do not save vector registers or floating-point state +// currently do not save vector registers or floating-point state // ulong pad; // uvlong fpr[18]; / * callee saved: f14-f31 * / // ulong vr[4*12]; / * callee saved: v20-v31, 256-bits each * / diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libdex-0.1.1/testsuite/meson.build new/libdex-0.2.0/testsuite/meson.build --- old/libdex-0.1.1/testsuite/meson.build 2023-03-03 05:52:45.000000000 +0100 +++ new/libdex-0.2.0/testsuite/meson.build 2023-03-17 20:41:16.000000000 +0100 @@ -26,10 +26,18 @@ 'test-stream': {}, } +testsuite_deps = [ + libdex_static_dep, +] + +if get_option('sysprof') + testsuite_deps += [libsysprof_capture_dep] +endif + foreach test, params: testsuite test_exe = executable(test, '@0@.c'.format(test), c_args: testsuite_c_args + deprecated_c_args, - dependencies: [libdex_static_dep], + dependencies: testsuite_deps, ) test(test, test_exe, env: test_env)