From 9f9f006a5bd667fe3709e71636e1595b8f9b629493c0ab47fc84c6ab5876a1d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Mon, 30 Sep 2024 07:55:15 +0000 Subject: [PATCH] Scripted push of GNOME 47 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/libdex?expand=0&rev=15 --- .gitattributes | 23 +++++++ .gitignore | 1 + _service | 19 ++++++ libdex-0.6.1.obscpio | 3 + libdex-0.8.0.obscpio | 3 + libdex.changes | 140 +++++++++++++++++++++++++++++++++++++++++++ libdex.obsinfo | 4 ++ libdex.spec | 128 +++++++++++++++++++++++++++++++++++++++ 8 files changed, 321 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _service create mode 100644 libdex-0.6.1.obscpio create mode 100644 libdex-0.8.0.obscpio create mode 100644 libdex.changes create mode 100644 libdex.obsinfo create mode 100644 libdex.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_service b/_service new file mode 100644 index 0000000..5b5bf1c --- /dev/null +++ b/_service @@ -0,0 +1,19 @@ + + + + git + https://gitlab.gnome.org/GNOME/libdex.git + 0.8.0 + @PARENT_TAG@+@TAG_OFFSET@ + v?(.*)\+0 + \1 + + + + + *.tar + zst + + + + diff --git a/libdex-0.6.1.obscpio b/libdex-0.6.1.obscpio new file mode 100644 index 0000000..186f055 --- /dev/null +++ b/libdex-0.6.1.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3517dc48efb413ee15066709b745d65f3832efe18b3868dbb010ccb0fce525ae +size 690188 diff --git a/libdex-0.8.0.obscpio b/libdex-0.8.0.obscpio new file mode 100644 index 0000000..d25b1af --- /dev/null +++ b/libdex-0.8.0.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:647748f37421ceb87c37687a200dc4651ba4dabff836aef085519a577b32f74d +size 691724 diff --git a/libdex.changes b/libdex.changes new file mode 100644 index 0000000..4f331f1 --- /dev/null +++ b/libdex.changes @@ -0,0 +1,140 @@ +------------------------------------------------------------------- +Tue Sep 17 06:35:24 UTC 2024 - Bjørn Lie + +- Update to version 0.8.0: + + Various build system improvements to help catch correctness + issues. + + Increased assertions in fibers to help Coverity discover usage + patterns. + + Avoid releasing discarded future until chained future is + released. + + Fix overflow in extremely large timeout calculation. + + Various introspection fixes. + + Fix inclusion from C++. + +------------------------------------------------------------------- +Mon Jun 3 09:53:11 UTC 2024 - Dominique Leuenberger + +- Update to version 0.6.1: + + Adds Fiber support for macOS on Apple Silicon. + +------------------------------------------------------------------- +Fri Mar 15 21:08:26 UTC 2024 - Dominique Leuenberger + +- Update to version 0.6.0: + + No changes since 0.5.1. + +------------------------------------------------------------------- +Mon Mar 4 08:49:06 UTC 2024 - Dominique Leuenberger + +- Update to version 0.5.1: + + Add convenience API for checking exact future status without + enum. + + Lots of documentation additions. + +------------------------------------------------------------------- +Tue Feb 13 07:49:46 UTC 2024 - Dominique Leuenberger + +- Update to version 0.5.0: + + Various API now warns about unused results to help avoid + unintended leaks of futures. + + dex_file_query_exists() is a new wrapper for + g_file_query_exists(). + + Documentation fixes. + +------------------------------------------------------------------- +Mon Oct 23 17:54:41 UTC 2023 - Bjørn Lie + +- Update to version 0.4.1: + + This release includes an important fix for how io_uring CQE are + handled. + +------------------------------------------------------------------- +Sun Sep 17 01:09:23 UTC 2023 - Luciano Santos + +- Update to version 0.4.0: + + Documentation updates. + +------------------------------------------------------------------- +Wed Sep 6 01:13:35 UTC 2023 - Luciano Santos + +- Drop pkgconfig(sysprof-4) BuildRequires. This was only needed + because sysprof-capture-static-devel was lacking header files, + which was mistakenly being packaged with sysprof-devel, and it's + fixed now. +- Add with(out) "profiling" build switch and disable it, by + default, as profiling isn't meant for general use. This nests + pkgconfig(sysprof-capture-4) BuildRequires under an if-with + expression and passes profiler=(true|false) to meson, depending + on the profiling switch. Disabling this should also avoid a build + cycle introduced by Sysprof 45 by requiring libdex. + +------------------------------------------------------------------- +Thu Aug 10 09:12:48 UTC 2023 - Bjørn Lie + +- Update to version 0.3.1: + + A new "Infinite" future type which will never resolve or + reject. + + The gio wrappers will now set debuggable names for their + futures. + + A `dex_async_pair_set_cancel_on_discard()` function has been + added which ensures that the `GCancellable` will not be + cancelled when the future is discarded. This can help in + situations where you might repeatedly await on a future and do + not want intermediate cancellation between attempts to await. + + A `dex_input_stream_skip_async()` function has been added to + wrap the underlying GIO function. + + A `dex_future_disown()` function has been added which + simplifies the case where you want a future to run but are not + interested in the result. + +------------------------------------------------------------------- +Tue Jul 11 12:20:10 UTC 2023 - Bjørn Lie + +- Update to version 0.3.0: + + Documentation updates + + pkg-config improvements + + Build system improvements for GIR + + Support for GVariant-based futures + + New Future-based wrappers for GDBusConnection + + The FD-based AIO API is now public, allowing for use of + io_uring on Linux kernels that support it. If unsupported, a + threadpool approach is used similar to GIO + + Improvements to introspection for language bindings + + You can now return NULL for a DexPromise expecting a GObject as + as a resolved value + + DexFiber will now get static names associated with them when + used from C which points to the line of code. This is only + enabled when debugging is enabled for libdex through the use of + macros + +------------------------------------------------------------------- +Fri Mar 17 19:46:13 UTC 2023 - Bjørn Lie + +- 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`. + +------------------------------------------------------------------- +Fri Mar 3 07:35:29 UTC 2023 - Bjørn Lie + +- Update to version 0.1.1: + + Fix soname versioning + + Documentation improvements + + Fix various GObject Introspection issues + + More backports for older GLib use + + Various ucontext fiber fixes for less-used architectures + + Fixes for various incorrect cast-align warnings + + Tweaks for better Forward portability + + Add some missing g_autoptr() definitions + + Add GCancellation integration to DexPromise + +------------------------------------------------------------------- +Mon Feb 27 12:29:04 UTC 2023 - Bjørn Lie + +- Initial packaging for openSUSE. diff --git a/libdex.obsinfo b/libdex.obsinfo new file mode 100644 index 0000000..c3c993e --- /dev/null +++ b/libdex.obsinfo @@ -0,0 +1,4 @@ +name: libdex +version: 0.8.0 +mtime: 1726523970 +commit: a23e48f8846e219a061ca20bf769e8cbcfd41c13 diff --git a/libdex.spec b/libdex.spec new file mode 100644 index 0000000..e50f9e4 --- /dev/null +++ b/libdex.spec @@ -0,0 +1,128 @@ +# +# spec file for package libdex +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define soname libdex-1-1 +%bcond_with profiling + +Name: libdex +Version: 0.8.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: %{name}-%{version}.tar.zst + +BuildRequires: c_compiler +BuildRequires: meson +BuildRequires: pkgconfig +BuildRequires: pkgconfig(atomic_ops) +BuildRequires: pkgconfig(gi-docgen) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(gobject-introspection-1.0) +BuildRequires: pkgconfig(liburing) +%if %{with profiling} +BuildRequires: pkgconfig(sysprof-capture-4) +%endif +BuildRequires: pkgconfig(vapigen) + +%description +Dex is a library supporting "Deferred Execution" with the explicit +goal of integrating with GNOME and GTK-based applications. +It provides primatives for supporting futures in a variety of ways +with both read-only and writable views. Additionally, integration +with existing asynchronous-based APIs is provided through the use +of wrapper promises. +"Fibers" are implemented which allows for writing synchronous +looking code which calls asynchronous APIs from GIO underneath. + +%package -n %soname +Summary: Shared library for %name + +%description -n %soname +Dex is a library supporting "Deferred Execution" with the explicit +goal of integrating with GNOME and GTK-based applications. +It provides primatives for supporting futures in a variety of ways +with both read-only and writable views. Additionally, integration +with existing asynchronous-based APIs is provided through the use +of wrapper promises. +"Fibers" are implemented which allows for writing synchronous +looking code which calls asynchronous APIs from GIO underneath. + +This package contains the shared library for %name. + +%package -n typelib-1_0-Dex-1_0 +Summary: Introspection bindings for %name + +%description -n typelib-1_0-Dex-1_0 +This package contains the introspection bindings for %name. + +%package devel +Summary: Development files for libdex +Requires: %soname = %{version} +Requires: typelib-1_0-Dex-1_0 = %{version} + +%description devel +This package contains the libraries and header files that are +needed for writing applications with libdex. + +%package devel-docs +Summary: Developer documentation for libdex +BuildArch: noarch + +%description devel-docs +This package contains developer documentation for writing +applications with libdex. + +%prep +%autosetup -p1 + +%build +%meson \ + -D docs=true \ + -D examples=false \ + -D sysprof=%{?with_profiling:true}%{!?with_profiling:false} \ + %{nil} +%meson_build + +%install +%meson_install + +%check +%meson_test + +%ldconfig_scriptlets -n %soname + +%files -n %soname +%license COPYING +%{_libdir}/libdex-1.so.1{,.*} + +%files -n typelib-1_0-Dex-1_0 +%{_libdir}/girepository-1.0/Dex-1.typelib + +%files devel +%{_datadir}/gir-1.0/ +%{_datadir}/vala/ +%{_includedir}/libdex-1/ +%{_libdir}/libdex-1.so +%{_libdir}/pkgconfig/libdex-1.pc + +%files devel-docs +%doc NEWS README.md +%doc %{_datadir}/doc/libdex-1/ + +%changelog