openSUSE Commits
Threads by month
- ----- 2024 -----
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
April 2024
- 1 participants
- 1686 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mesheryctl for openSUSE:Factory checked in at 2024-04-25 20:48:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mesheryctl (Old)
and /work/SRC/openSUSE:Factory/.mesheryctl.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mesheryctl"
Thu Apr 25 20:48:53 2024 rev:36 rq:1170073 version:0.7.50
Changes:
--------
--- /work/SRC/openSUSE:Factory/mesheryctl/mesheryctl.changes 2024-04-19 19:17:33.158831810 +0200
+++ /work/SRC/openSUSE:Factory/.mesheryctl.new.1880/mesheryctl.changes 2024-04-25 20:49:17.286313173 +0200
@@ -1,0 +2,18 @@
+Wed Apr 24 17:03:51 UTC 2024 - Johannes Kastl <opensuse_buildservice(a)ojkastl.de>
+
+- update to 0.7.50:
+ * General
+ - add capabilities to nodegroupwallet @aabidsofi19 (#10763)
+ - Fix deployment failures @MUzairS15 (#10767)
+ * Meshery CLI
+ - feat: workspace command @RipulHandoo (#10634)
+ - Add proper meshkit sytle error logging for ClearLine function
+ @Aijeyomah (#10556)
+ - Fix behavior to display helper function @lekaf974 (#10685)
+ * Meshery UI
+ - Fix not able to download design @Yashsharma1911 (#10766)
+ * Documentation
+ - [Fix Docs] Tutorial: Exploring Kubernetes CronJobs with
+ Meshery Playground @sandramsc (#10107)
+
+-------------------------------------------------------------------
Old:
----
meshery-0.7.49.obscpio
New:
----
meshery-0.7.50.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mesheryctl.spec ++++++
--- /var/tmp/diff_new_pack.UUtLAW/_old 2024-04-25 20:49:26.234641747 +0200
+++ /var/tmp/diff_new_pack.UUtLAW/_new 2024-04-25 20:49:26.238641893 +0200
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: mesheryctl
-Version: 0.7.49
+Version: 0.7.50
Release: 0
Summary: CLI for the meshery cloud native management plane
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.UUtLAW/_old 2024-04-25 20:49:26.270643068 +0200
+++ /var/tmp/diff_new_pack.UUtLAW/_new 2024-04-25 20:49:26.274643215 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/meshery/meshery</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.7.49</param>
+ <param name="revision">v0.7.50</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">disable</param>
<param name="versionrewrite-pattern">v(.*)</param>
@@ -17,7 +17,7 @@
<param name="compression">gz</param>
</service>
<service name="go_modules" mode="manual">
- <param name="archive">meshery-0.7.49.obscpio</param>
+ <param name="archive">meshery-0.7.50.obscpio</param>
</service>
</services>
++++++ meshery-0.7.49.obscpio -> meshery-0.7.50.obscpio ++++++
/work/SRC/openSUSE:Factory/mesheryctl/meshery-0.7.49.obscpio /work/SRC/openSUSE:Factory/.mesheryctl.new.1880/meshery-0.7.50.obscpio differ: char 50, line 1
++++++ meshery.obsinfo ++++++
--- /var/tmp/diff_new_pack.UUtLAW/_old 2024-04-25 20:49:26.326645125 +0200
+++ /var/tmp/diff_new_pack.UUtLAW/_new 2024-04-25 20:49:26.330645272 +0200
@@ -1,5 +1,5 @@
name: meshery
-version: 0.7.49
-mtime: 1713485503
-commit: 3f2c19eb5f90ea522fc2530c40c5807bf22e8c52
+version: 0.7.50
+mtime: 1713957685
+commit: edfed0d13cbc5ed07ad19cb715f6721df559e409
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/mesheryctl/vendor.tar.gz /work/SRC/openSUSE:Factory/.mesheryctl.new.1880/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package secrets for openSUSE:Factory checked in at 2024-04-25 20:48:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/secrets (Old)
and /work/SRC/openSUSE:Factory/.secrets.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "secrets"
Thu Apr 25 20:48:49 2024 rev:8 rq:1170054 version:9.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/secrets/secrets.changes 2023-10-02 20:09:45.721915637 +0200
+++ /work/SRC/openSUSE:Factory/.secrets.new.1880/secrets.changes 2024-04-25 20:48:56.209539257 +0200
@@ -1,0 +2,26 @@
+Mon Apr 1 00:37:31 UTC 2024 - Richard Rahl <rrahl0(a)proton.me>
+
+- Update to version 9.3:
+ + Catch YubiKey errors
+ + Fix row titles markup
+ + Add back safe authentication settings
+- Update to version 9.2:
+ + Fix safe creation
+ + Fix safe properties
+ + Fix sidebar size
+- Update to version 9.1:
+ + Temporarily disable credentials change dialog
+ + Use ruff to format and lint the project
+ + Fix style when selecting an entry
+ + Fix crash when decoding timestamps
+ + Fix crash when opening certain file dialogs
+ + Fix crash when deleting element from trash bin
+- Update to version 9.0:
+ + Add PKCS11 support
+ + Add YubiKey support
+ + Use new dual panel layout
+ + Set monospace only for revealed passwords
+ + Introduce key providers
+- enable selftest
+
+-------------------------------------------------------------------
Old:
----
secrets-8.0.obscpio
New:
----
_multibuild
secrets-9.3.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ secrets.spec ++++++
--- /var/tmp/diff_new_pack.hiQuEd/_old 2024-04-25 20:48:56.741558792 +0200
+++ /var/tmp/diff_new_pack.hiQuEd/_new 2024-04-25 20:48:56.745558939 +0200
@@ -1,7 +1,7 @@
#
# spec file for package secrets
#
-# Copyright (c) 2023 SUSE LLC
+# 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
@@ -16,44 +16,66 @@
#
-Name: secrets
-Version: 8.0
+%global flavor @BUILD_FLAVOR@%nil
+%if "%{flavor}" == "test"
+%define psuffix -test
+%else
+%define psuffix %nil
+%endif
+Name: secrets%{psuffix}
+Version: 9.3
Release: 0
Summary: A password manager for GNOME
License: GPL-3.0-or-later
URL: https://gitlab.gnome.org/World/secrets
-Source0: %{name}-%{version}.tar.zst
+Source0: secrets-%{version}.tar.zst
BuildRequires: appstream-glib
BuildRequires: desktop-file-utils
BuildRequires: meson >= 0.51.0
BuildRequires: pkgconfig
+BuildRequires: python3-PyKCS11
BuildRequires: python3-base >= 3.7.0
BuildRequires: python3-gobject
BuildRequires: python3-gobject-Gdk
-BuildRequires: python3-pykeepass >= 4.0.6
+BuildRequires: python3-pykeepass >= 4.0.7
BuildRequires: python3-pyotp >= 2.4.0
BuildRequires: python3-pytest
+BuildRequires: python3-python-yubico
BuildRequires: python3-validators
BuildRequires: python3-zxcvbn
+BuildRequires: update-desktop-files
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.66.0
BuildRequires: pkgconfig(gobject-introspection-1.0)
BuildRequires: pkgconfig(gtk4) >= 4.5.0
BuildRequires: pkgconfig(libadwaita-1)
+BuildRequires: python3-gobject
+BuildRequires: python3-pykeepass
+BuildRequires: python3-pytest
+
+Requires: opensc
+Requires: python3-PyKCS11
Requires: python3-argon2-cffi
Requires: python3-gobject-Gdk
Requires: python3-lxml
Requires: python3-pycryptodome
Requires: python3-pykeepass
Requires: python3-pyotp
+Requires: python3-python-yubico
+Requires: python3-pyusb
Requires: python3-validators
Requires: python3-zxcvbn
Obsoletes: gnome-passwordsafe < 6.1
Provides: gnome-passwordsafe = %{version}
+%if "%{flavor}" == "test"
+BuildRequires: python3-pytest
+BuildRequires: secrets = %{version}
+%endif
+
BuildArch: noarch
%description
@@ -65,39 +87,41 @@
%lang_package
%prep
-%autosetup -p1
+%autosetup -p1 -n secrets-%{version}
# Fix shebang to be py3, not env set
sed -i -e '1{s,^#!/usr/bin/env python3,#!%{_bindir}/python3,}' gsecrets/utils.py
# Drop shebang all the way
sed -i -e '1{s,^#!@PYTHON@,,}' gsecrets/const.py.in
%build
-%meson \
- %{nil}
+%meson
%meson_build
+%if "%{flavor}" != "test"
%install
%meson_install
# Explicitly create the pycache/.pyc files, not relying on the
# generation done by meson. Should make the package reproducible.
%py3_compile %{buildroot}%{python3_sitelib}/gsecrets
-%find_lang %{name} %{?no_lang_C}
+%find_lang secrets %{?no_lang_C}
+%suse_update_desktop_file org.gnome.World.Secrets
+appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.xml
+glib-compile-schemas --strict --dry-run %{buildroot}%{_datadir}/glib-2.0/schemas/
+%endif
+%if "%{flavor}" == "test"
%check
-# Disable meson_test for now, fails without BuildRequires itself to complete
-# Run the 3 first tests manually
-#%%meson_test
-desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
-glib-compile-schemas --strict --dry-run %{buildroot}%{_datadir}/glib-2.0/schemas/
-appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/*.xml
+pytest
+%endif
+%if "%{flavor}" != "test"
%files
%license LICENSE
%doc README.md
-%{_bindir}/%{name}
-%{python3_sitelib}/g%{name}/
+%{_bindir}/secrets
+%{python3_sitelib}/gsecrets/
%{_datadir}/applications/org.gnome.World.Secrets.desktop
-%dir %{_datadir}/%{name}
+%dir %{_datadir}/secrets
%{_datadir}/%{name}/resources.gresource
%{_datadir}/glib-2.0/schemas/org.gnome.World.Secrets.gschema.xml
%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.World.Secrets-symbolic.svg
@@ -105,5 +129,6 @@
%{_datadir}/metainfo/org.gnome.World.Secrets.metainfo.xml
%{_datadir}/mime/packages/org.gnome.World.Secrets.xml
-%files lang -f %{name}.lang
+%files lang -f secrets.lang
+%endif
++++++ _multibuild ++++++
<multibuild>
<package>test</package>
</multibuild>
++++++ _service ++++++
--- /var/tmp/diff_new_pack.hiQuEd/_old 2024-04-25 20:48:56.805561142 +0200
+++ /var/tmp/diff_new_pack.hiQuEd/_new 2024-04-25 20:48:56.809561289 +0200
@@ -3,7 +3,7 @@
<service name="obs_scm" mode="manual" >
<param name="scm">git</param>
<param name="url">https://gitlab.gnome.org/World/secrets.git</param>
- <param name="revision">refs/tags/8.0</param>
+ <param name="revision">refs/tags/9.3</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param>
++++++ secrets-8.0.obscpio -> secrets-9.3.obscpio ++++++
++++ 51150 lines of diff (skipped)
++++++ secrets.obsinfo ++++++
--- /var/tmp/diff_new_pack.hiQuEd/_old 2024-04-25 20:48:57.073570983 +0200
+++ /var/tmp/diff_new_pack.hiQuEd/_new 2024-04-25 20:48:57.077571130 +0200
@@ -1,5 +1,5 @@
name: secrets
-version: 8.0
-mtime: 1695239350
-commit: d2897f0589c266890f2faac284c9e865eb44562f
+version: 9.3
+mtime: 1711891837
+commit: 9f3f6002265ede5c92ad4ea2e8b983d666a28484
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package kiwi-images-wsl for openSUSE:Factory checked in at 2024-04-25 20:48:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kiwi-images-wsl (Old)
and /work/SRC/openSUSE:Factory/.kiwi-images-wsl.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kiwi-images-wsl"
Thu Apr 25 20:48:51 2024 rev:13 rq:1170059 version:1.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/kiwi-images-wsl/kiwi-images-wsl.changes 2023-09-07 21:13:26.318801639 +0200
+++ /work/SRC/openSUSE:Factory/.kiwi-images-wsl.new.1880/kiwi-images-wsl.changes 2024-04-25 20:48:57.233576859 +0200
@@ -1,0 +2,5 @@
+Wed Apr 17 14:53:13 UTC 2024 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- update kiwi schemaversion to 7.4
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kiwi-images-wsl.kiwi ++++++
--- /var/tmp/diff_new_pack.0n3doQ/_old 2024-04-25 20:48:57.753595953 +0200
+++ /var/tmp/diff_new_pack.0n3doQ/_new 2024-04-25 20:48:57.757596100 +0200
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<image schemaversion="6.1" name="%OS_PRETTY_NAME_BEFORE_PAREN_DASHED%-%OS_VERSION_ID%-WSL">
+<image schemaversion="7.4" name="%OS_PRETTY_NAME_BEFORE_PAREN_DASHED%-%OS_VERSION_ID%-WSL">
<description type="system">
<author>SUSE WSL Team</author>
<contact>wsl(a)suse.com</contact>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gnome-backgrounds for openSUSE:Factory checked in at 2024-04-25 20:48:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gnome-backgrounds (Old)
and /work/SRC/openSUSE:Factory/.gnome-backgrounds.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnome-backgrounds"
Thu Apr 25 20:48:47 2024 rev:88 rq:1170048 version:46.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/gnome-backgrounds/gnome-backgrounds.changes 2024-03-20 21:19:33.673543497 +0100
+++ /work/SRC/openSUSE:Factory/.gnome-backgrounds.new.1880/gnome-backgrounds.changes 2024-04-25 20:48:55.065497249 +0200
@@ -1,0 +2,6 @@
+Sat Apr 20 14:24:09 UTC 2024 - Frogster <lilfrogg(a)posteo.net>
+
+- Add requirement for gdk-pixbuf-loader-jxl to be able to show the
+ Gnome 46 backgrounds
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gnome-backgrounds.spec ++++++
--- /var/tmp/diff_new_pack.Ygba4w/_old 2024-04-25 20:48:55.985531032 +0200
+++ /var/tmp/diff_new_pack.Ygba4w/_new 2024-04-25 20:48:55.985531032 +0200
@@ -27,6 +27,8 @@
BuildRequires: meson
BuildRequires: pkgconfig
+# jpeg-xl pixbuf loader
+Requires: gdk-pixbuf-loader-jxl
# svg pixbuf loader
Requires: gdk-pixbuf-loader-rsvg
# webp pixbuf loader
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gtranslator for openSUSE:Factory checked in at 2024-04-25 20:48:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gtranslator (Old)
and /work/SRC/openSUSE:Factory/.gtranslator.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gtranslator"
Thu Apr 25 20:48:46 2024 rev:50 rq:1170058 version:46.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/gtranslator/gtranslator.changes 2024-03-21 17:01:23.682519438 +0100
+++ /work/SRC/openSUSE:Factory/.gtranslator.new.1880/gtranslator.changes 2024-04-25 20:48:53.409436440 +0200
@@ -1,0 +2,11 @@
+Wed Apr 24 05:09:44 UTC 2024 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Update to version 46.1:
+ + Reduce toasts timeout to 5s
+ + Reduce some more common toats timeout to 1s
+ + Sync languages with d-l
+ + Fix navigation view bugs
+ + Improved metainfo
+ + Update some translations
+
+-------------------------------------------------------------------
Old:
----
gtranslator-46.0.tar.xz
New:
----
gtranslator-46.1.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gtranslator.spec ++++++
--- /var/tmp/diff_new_pack.lCjb7I/_old 2024-04-25 20:48:54.501476539 +0200
+++ /var/tmp/diff_new_pack.lCjb7I/_new 2024-04-25 20:48:54.501476539 +0200
@@ -17,7 +17,7 @@
Name: gtranslator
-Version: 46.0
+Version: 46.1
Release: 0
Summary: A gettext po file editor for the GNOME desktop
License: GPL-3.0-or-later
@@ -32,6 +32,7 @@
BuildRequires: itstool
BuildRequires: meson >= 0.46.0
BuildRequires: pkgconfig
+BuildRequires: update-desktop-files
BuildRequires: yelp-tools
BuildRequires: pkgconfig(gio-2.0) >= 2.36.0
BuildRequires: pkgconfig(glib-2.0) >= 2.71.3
++++++ gtranslator-46.0.tar.xz -> gtranslator-46.1.tar.xz ++++++
++++ 16923 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fzf for openSUSE:Factory checked in at 2024-04-25 20:48:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fzf (Old)
and /work/SRC/openSUSE:Factory/.fzf.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fzf"
Thu Apr 25 20:48:45 2024 rev:50 rq:1170041 version:0.50.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/fzf/fzf.changes 2024-04-15 20:23:58.272798670 +0200
+++ /work/SRC/openSUSE:Factory/.fzf.new.1880/fzf.changes 2024-04-25 20:48:52.329396782 +0200
@@ -1,0 +2,8 @@
+Wed Apr 24 10:21:09 UTC 2024 - Matej Cepl <mcepl(a)cepl.eu>
+
+- Rearranging and renaming shell-related subpackages (reaction to
+ the discussion gh#akinomyoga/ble.sh$441 and
+ https://github.com/junegunn/fzf?tab=readme-ov-file#setting-up-shell-integra…).
+- Shell subpackages should be Enahncing (not Supplementing) fzf.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fzf.spec ++++++
--- /var/tmp/diff_new_pack.ljl21q/_old 2024-04-25 20:48:53.037422780 +0200
+++ /var/tmp/diff_new_pack.ljl21q/_new 2024-04-25 20:48:53.037422780 +0200
@@ -43,26 +43,30 @@
Tmux integration for fzf. Includes a wrapper script, fzf-tmux, that opens your list in a
separate tmux pane.
-%package bash-completion
+%package bash-integration
Summary: Bash completion for fzf
Group: Productivity/File utilities
Requires: bash-completion
Requires: fzf
-Supplements: (fzf and bash-completion)
+Enhances: (fzf and bash-completion)
+Provides: fzf-bash-completion = %{version}-%{release}
+Obsoletes: fzf-bash-completion < %{version}-%{release}
BuildArch: noarch
-%description bash-completion
+%description bash-integration
Bash shell completions for fzf
-%package fish-completion
+%package fish-integration
Summary: Fish completion for fzf
Group: Productivity/File utilities
Requires: fish
Requires: fzf
-Supplements: (fzf and fish)
+Enhances: (fzf and fish)
+Provides: fzf-fish-completion = %{version}-%{release}
+Obsoletes: fzf-fish-completion < %{version}-%{release}
BuildArch: noarch
-%description fish-completion
+%description fish-integration
fish shell completions for fzf
To enable it, ensure you have a file ~/.config/fish/functions/fish_user_key_bindings.fish
@@ -73,15 +77,17 @@
(or append fzf_key_bindings to the fish_user_key_bindings function if the file already exists)
-%package zsh-completion
+%package zsh-integration
Summary: ZSH completion for fzf
Group: Productivity/File utilities
Requires: fzf
Requires: zsh
-Supplements: (fzf and zsh)
+Enhances: (fzf and zsh)
+Provides: fzf-zsh-completion = %{version}-%{release}
+Obsoletes: fzf-zsh-completion < %{version}-%{release}
BuildArch: noarch
-%description zsh-completion
+%description zsh-integration
zsh shell completions for fzf
%define vimplugin_dir %{_datadir}/vim/site
@@ -90,6 +96,7 @@
Summary: Vim plugin for fzf
Group: Productivity/File utilities
Requires: (vim or neovim)
+Enhances: (fzf and zsh)
BuildArch: noarch
%description -n vim-fzf
@@ -119,21 +126,20 @@
install -Dm644 man/man1/fzf-tmux.1 %{buildroot}%{_mandir}/man1/fzf-tmux.1
# shell completions
-# csplit splits on end tags inside of the completions to allow for easy
-# splitting of the files for installation.
-./fzf --bash | csplit - '/.*end\:.*/+1' -f bash
-./fzf --zsh | csplit - '/.*end\:.*/+1' -f zsh
-./fzf --fish > fish00
-
-install -Dm0644 bash00 \
- %{buildroot}%{_datadir}/bash-completion/completions/fzf-key-bindings
-install -Dm0644 bash01 \
- %{buildroot}%{_datadir}/bash-completion/completions/fzf
-install -Dm0644 zsh00 \
+# Since 0.48 fzf can generate shell integration scripts, but the
+# upstream still promotes "for finer control" availability of the
+# real scripts
+mkdir -p %{buildroot}%{_datadir}/fzf
+cp -p -r shell/ %{buildroot}%{_datadir}/fzf
+
+mkdir -p %{buildroot}%{_sysconfdir}/profile.d
+echo 'if [ "${BASH_VERSION-}" ] && [[ $- == *i* ]]; then eval "$(fzf --bash 2>/dev/null)"; fi' > \
+ %{buildroot}%{_sysconfdir}/profile.d/fzf-bash.sh
+install -Dm0644 shell/completion.zsh \
%{buildroot}%{_sysconfdir}/zsh_completion.d/fzf-key-bindings
-install -Dm0644 zsh01 \
+install -Dm0644 shell/key-bindings.zsh \
%{buildroot}%{_datadir}/zsh/site-functions/_fzf
-install -Dm0644 fish00 \
+install -Dm0644 shell/key-bindings.fish \
%{buildroot}%{_datadir}/fish/vendor_functions.d/fzf_key_bindings.fish
# vim plugin
@@ -159,25 +165,26 @@
github.com/junegunn/fzf/src/util
%files
+%license LICENSE
%doc README.md
%{_bindir}/fzf
%{_mandir}/man1/fzf.1%{?ext_man}
-%license LICENSE
+%dir %{_datadir}/fzf
+%{_datadir}/fzf/shell
%files tmux
%{_bindir}/fzf-tmux
%{_mandir}/man1/fzf-tmux.1%{?ext_man}
-%files bash-completion
-%{_datadir}/bash-completion/completions/fzf
-%{_datadir}/bash-completion/completions/fzf-key-bindings
+%files bash-integration
+%config %{_sysconfdir}/profile.d/fzf-bash.sh
-%files fish-completion
+%files fish-integration
%dir %{_datadir}/fish
%dir %{_datadir}/fish/vendor_functions.d
%{_datadir}/fish/vendor_functions.d/fzf_key_bindings.fish
-%files zsh-completion
+%files zsh-integration
%{_datadir}/zsh
%dir %{_sysconfdir}/zsh_completion.d
%config %{_sysconfdir}/zsh_completion.d/fzf-key-bindings
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ansible for openSUSE:Factory checked in at 2024-04-25 20:48:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ansible (Old)
and /work/SRC/openSUSE:Factory/.ansible.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ansible"
Thu Apr 25 20:48:44 2024 rev:111 rq:1170031 version:9.5.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ansible/ansible.changes 2024-03-29 13:11:03.759361793 +0100
+++ /work/SRC/openSUSE:Factory/.ansible.new.1880/ansible.changes 2024-04-25 20:48:50.933345521 +0200
@@ -1,0 +2,11 @@
+Wed Apr 24 12:13:43 UTC 2024 - Johannes Kastl <opensuse_buildservice(a)ojkastl.de>
+
+- update to 9.5.1 (9.5.0 does not exist):
+ Ansible 9.5.1 includes ansible-core 2.16.6 as well as a curated
+ set of Ansible collections that provide a vast number of modules
+ and plugins.
+ Collections which have opted-in to being a part of the Ansible 9
+ unified changelog will have an entry on this page:
+ https://github.com/ansible-community/ansible-build-data/blob/main/9/CHANGEL…
+
+-------------------------------------------------------------------
Old:
----
ansible-9.4.0.tar.gz
New:
----
ansible-9.5.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ansible.spec ++++++
--- /var/tmp/diff_new_pack.lV59jv/_old 2024-04-25 20:48:52.145390026 +0200
+++ /var/tmp/diff_new_pack.lV59jv/_new 2024-04-25 20:48:52.149390173 +0200
@@ -38,7 +38,7 @@
%endif
Name: ansible
-Version: 9.4.0
+Version: 9.5.1
Release: 0
Summary: Radically simple IT automation
License: GPL-3.0+
@@ -54,12 +54,12 @@
BuildRequires: dos2unix
# SECTION test requirements
-BuildRequires: ansible-core >= 2.16.5
+BuildRequires: ansible-core >= 2.16.6
# /SECTION
#
Requires: %{ansible_python}-base >= 3.10
-Requires: ansible-core >= 2.16.5
+Requires: ansible-core >= 2.16.6
# Do not check any files in collections for requires
%global __requires_exclude_from ^%{ansible_python_sitelib}/.*$
++++++ ansible-9.4.0.tar.gz -> ansible-9.5.1.tar.gz ++++++
/work/SRC/openSUSE:Factory/ansible/ansible-9.4.0.tar.gz /work/SRC/openSUSE:Factory/.ansible.new.1880/ansible-9.5.1.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package timoni for openSUSE:Factory checked in at 2024-04-25 20:48:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/timoni (Old)
and /work/SRC/openSUSE:Factory/.timoni.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "timoni"
Thu Apr 25 20:48:41 2024 rev:15 rq:1170027 version:0.21.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/timoni/timoni.changes 2024-03-17 22:18:03.524924742 +0100
+++ /work/SRC/openSUSE:Factory/.timoni.new.1880/timoni.changes 2024-04-25 20:48:47.565221847 +0200
@@ -1,0 +2,19 @@
+Wed Apr 24 11:27:25 UTC 2024 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 0.21.0:
+ * ci: Update slsa-github-generator to v2.0.0
+ * ci: Build release binaries with latest Go 1.22 patch
+ * build(deps): bump the ci group with 2 updates
+ * build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0
+ * Add finalizers to `#Metadata` definition
+ * build(deps): bump the ci group with 1 update
+ * Setup Go in CI using `go.mod` version
+ * Update `cuelang.org/go` to v0.8.1
+ * Update dependencies to Kubernetes 1.29
+ * build(deps): bump the ci group with 1 update
+ * build(deps): bump github.com/docker/docker
+ * build(deps): bump the ci group with 3 updates
+ * build(deps): bump google.golang.org/protobuf from 1.31.0 to
+ 1.33.0
+
+-------------------------------------------------------------------
Old:
----
timoni-0.20.0.obscpio
New:
----
timoni-0.21.0.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ timoni.spec ++++++
--- /var/tmp/diff_new_pack.Na6zWT/_old 2024-04-25 20:48:49.545294553 +0200
+++ /var/tmp/diff_new_pack.Na6zWT/_new 2024-04-25 20:48:49.549294700 +0200
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: timoni
-Version: 0.20.0
+Version: 0.21.0
Release: 0
Summary: Package manager for Kubernetes, powered by CUE and inspired by Helm
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.Na6zWT/_old 2024-04-25 20:48:49.585296022 +0200
+++ /var/tmp/diff_new_pack.Na6zWT/_new 2024-04-25 20:48:49.589296169 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/stefanprodan/timoni</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.20.0</param>
+ <param name="revision">v0.21.0</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.Na6zWT/_old 2024-04-25 20:48:49.609296903 +0200
+++ /var/tmp/diff_new_pack.Na6zWT/_new 2024-04-25 20:48:49.617297197 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/stefanprodan/timoni</param>
- <param name="changesrevision">7f033d917314b4c0fa27e010ab04e35637c8405f</param></service></servicedata>
+ <param name="changesrevision">28426b0e1539089403b26fba798b02ce123a577b</param></service></servicedata>
(No newline at EOF)
++++++ timoni-0.20.0.obscpio -> timoni-0.21.0.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/.github/workflows/build.yaml new/timoni-0.21.0/.github/workflows/build.yaml
--- old/timoni-0.20.0/.github/workflows/build.yaml 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/.github/workflows/build.yaml 2024-04-24 11:37:01.000000000 +0200
@@ -14,18 +14,16 @@
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
- go-version: 1.22.x
- cache-dependency-path: |
- **/go.sum
- **/go.mod
+ go-version-file: 'go.mod'
+ cache: true
- name: Setup CUE
uses: cue-lang/setup-cue@a93fa358375740cd8b0078f76355512b9208acb1 # main
with:
- version: v0.7.1
+ version: v0.8.1
- name: Run tests
run: make test
- name: Run linter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/.github/workflows/docs.yaml new/timoni-0.21.0/.github/workflows/docs.yaml
--- old/timoni-0.20.0/.github/workflows/docs.yaml 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/.github/workflows/docs.yaml 2024-04-24 11:37:01.000000000 +0200
@@ -16,14 +16,12 @@
contents: write
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
- go-version: 1.22.x
- cache-dependency-path: |
- **/go.sum
- **/go.mod
+ go-version-file: 'go.mod'
+ cache: true
- name: Generate cmd docs
run: make prep-docs
- name: Run mkdocs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/.github/workflows/e2e.yaml new/timoni-0.21.0/.github/workflows/e2e.yaml
--- old/timoni-0.20.0/.github/workflows/e2e.yaml 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/.github/workflows/e2e.yaml 2024-04-24 11:37:01.000000000 +0200
@@ -20,14 +20,12 @@
- 5000:5000
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
- go-version: 1.22.x
- cache-dependency-path: |
- **/go.sum
- **/go.mod
+ go-version-file: 'go.mod'
+ cache: true
- name: Setup Kubernetes
uses: helm/kind-action@99576bfa6ddf9a8e612d83b513da5a75875caced # v1.9.0
with:
@@ -74,14 +72,12 @@
- 5000:5000
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
- go-version: 1.22.x
- cache-dependency-path: |
- **/go.sum
- **/go.mod
+ go-version-file: 'go.mod'
+ cache: true
- name: Setup Kubernetes
uses: helm/kind-action@99576bfa6ddf9a8e612d83b513da5a75875caced # v1.9.0
with:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/.github/workflows/push.yaml new/timoni-0.21.0/.github/workflows/push.yaml
--- old/timoni-0.20.0/.github/workflows/push.yaml 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/.github/workflows/push.yaml 2024-04-24 11:37:01.000000000 +0200
@@ -18,13 +18,13 @@
packages: write
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Cosign
- uses: sigstore/cosign-installer@e1523de7571e31dbe865fd2e80c5c7c23ae71eb4 # v3.4.0
+ uses: sigstore/cosign-installer@59acb6260d9c0ba8f4a2f9d9b48431a222b68e20 # v3.5.0
- name: Setup Timoni
uses: ./actions/setup
- name: Login to GHCR
- uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0
+ uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.0
with:
registry: ghcr.io
username: ${{ github.actor }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/.github/workflows/release.yaml new/timoni-0.21.0/.github/workflows/release.yaml
--- old/timoni-0.20.0/.github/workflows/release.yaml 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/.github/workflows/release.yaml 2024-04-24 11:37:01.000000000 +0200
@@ -19,18 +19,16 @@
packages: write
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Unshallow
run: git fetch --prune --unshallow
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
go-version: 1.22.x
- cache-dependency-path: |
- **/go.sum
- **/go.mod
+ cache: false
- name: Setup Syft
- uses: anchore/sbom-action/download-syft@b6a39da80722a2cb0ef5d197531764a89b5d48c3 # v0.15.8
+ uses: anchore/sbom-action/download-syft@ab5d7b5f48981941c4c5d6bf33aeb98fe3bae38c # v0.15.10
- name: Run GoReleaser
id: run-goreleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0
@@ -64,13 +62,13 @@
packages: write
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Cosign
- uses: sigstore/cosign-installer@e1523de7571e31dbe865fd2e80c5c7c23ae71eb4 # v3.4.0
+ uses: sigstore/cosign-installer@59acb6260d9c0ba8f4a2f9d9b48431a222b68e20 # v3.5.0
- name: Setup Timoni
uses: ./actions/setup
- name: Login to GHCR
- uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0
+ uses: docker/login-action@e92390c5fb421da1463c202d546fed0ec5c39f20 # v3.1.0
with:
registry: ghcr.io
username: ${{ github.actor }}
@@ -115,7 +113,7 @@
actions: read # To read the workflow path.
id-token: write # To sign the provenance.
contents: write # To add assets to a release.
- uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml(a)v1.9.0
+ uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml(a)v2.0.0
with:
provenance-name: "timoni_${{ needs.goreleaser.outputs.version }}_provenance.intoto.jsonl"
base64-subjects: "${{ needs.goreleaser.outputs.hashes }}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/.github/workflows/scan.yml new/timoni-0.21.0/.github/workflows/scan.yml
--- old/timoni-0.20.0/.github/workflows/scan.yml 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/.github/workflows/scan.yml 2024-04-24 11:37:01.000000000 +0200
@@ -19,7 +19,7 @@
if: github.actor != 'dependabot[bot]'
steps:
- name: Checkout
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
+ uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f # v4.1.3
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/blueprints/starter/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue new/timoni-0.21.0/blueprints/starter/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue
--- old/timoni-0.20.0/blueprints/starter/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/blueprints/starter/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue 2024-04-24 11:37:01.000000000 +0200
@@ -52,6 +52,11 @@
#LabelSelector: #Labels & {
(#StdLabelName): name
}
+
+ // Finalizers are namespaced keys that tell Kubernetes to wait until specific conditions
+ // are met before it fully deletes resources marked for deletion.
+ // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizer…
+ finalizers?: [...string]
}
// MetaComponent generates the Kubernetes object metadata for a module namespaced component.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/cmd/timoni/main.go new/timoni-0.21.0/cmd/timoni/main.go
--- old/timoni-0.20.0/cmd/timoni/main.go 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/cmd/timoni/main.go 2024-04-24 11:37:01.000000000 +0200
@@ -33,7 +33,7 @@
var (
VERSION = "0.0.0-dev.0"
- CUE_VERSION = "0.7.1"
+ CUE_VERSION = "0.8.1"
)
var rootCmd = &cobra.Command{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/examples/minimal/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue new/timoni-0.21.0/examples/minimal/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue
--- old/timoni-0.20.0/examples/minimal/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/examples/minimal/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue 2024-04-24 11:37:01.000000000 +0200
@@ -52,6 +52,11 @@
#LabelSelector: #Labels & {
(#StdLabelName): name
}
+
+ // Finalizers are namespaced keys that tell Kubernetes to wait until specific conditions
+ // are met before it fully deletes resources marked for deletion.
+ // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizer…
+ finalizers?: [...string]
}
// MetaComponent generates the Kubernetes object metadata for a module namespaced component.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/examples/redis/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue new/timoni-0.21.0/examples/redis/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue
--- old/timoni-0.20.0/examples/redis/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/examples/redis/cue.mod/pkg/timoni.sh/core/v1alpha1/metadata.cue 2024-04-24 11:37:01.000000000 +0200
@@ -52,6 +52,11 @@
#LabelSelector: #Labels & {
(#StdLabelName): name
}
+
+ // Finalizers are namespaced keys that tell Kubernetes to wait until specific conditions
+ // are met before it fully deletes resources marked for deletion.
+ // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizer…
+ finalizers?: [...string]
}
// MetaComponent generates the Kubernetes object metadata for a module namespaced component.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/go.mod new/timoni-0.21.0/go.mod
--- old/timoni-0.20.0/go.mod 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/go.mod 2024-04-24 11:37:01.000000000 +0200
@@ -3,42 +3,42 @@
go 1.22
require (
- cuelang.org/go v0.7.1
+ cuelang.org/go v0.8.1
github.com/Masterminds/semver/v3 v3.2.1
github.com/briandowns/spinner v1.23.0
github.com/distribution/distribution/v3 v3.0.0-alpha.1
github.com/fatih/color v1.16.0
- github.com/fluxcd/cli-utils v0.36.0-flux.3
- github.com/fluxcd/pkg/sourceignore v0.5.0
- github.com/fluxcd/pkg/ssa v0.36.0
- github.com/fluxcd/pkg/tar v0.4.0
+ github.com/fluxcd/cli-utils v0.36.0-flux.4
+ github.com/fluxcd/pkg/sourceignore v0.6.0
+ github.com/fluxcd/pkg/ssa v0.37.0
+ github.com/fluxcd/pkg/tar v0.6.0
github.com/getkin/kin-openapi v0.123.0
github.com/go-logr/logr v1.4.1
github.com/go-logr/zerologr v1.2.3
github.com/gonvenience/ytbx v1.4.4
github.com/google/go-cmp v0.6.0
- github.com/google/go-containerregistry v0.19.0
+ github.com/google/go-containerregistry v0.19.1
github.com/hashicorp/go-cleanhttp v0.5.2
github.com/homeport/dyff v1.7.1
github.com/mattn/go-shellwords v1.0.12
github.com/olekukonko/tablewriter v0.0.5
- github.com/onsi/gomega v1.31.1
+ github.com/onsi/gomega v1.32.0
github.com/otiai10/copy v1.14.0
github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5
github.com/rs/zerolog v1.32.0
github.com/sirupsen/logrus v1.9.3
github.com/spf13/cobra v1.8.0
- k8s.io/api v0.28.6
- k8s.io/apiextensions-apiserver v0.28.6
- k8s.io/apimachinery v0.28.6
- k8s.io/cli-runtime v0.28.6
- k8s.io/client-go v0.28.6
- sigs.k8s.io/controller-runtime v0.16.3
+ k8s.io/api v0.29.3
+ k8s.io/apiextensions-apiserver v0.29.3
+ k8s.io/apimachinery v0.29.3
+ k8s.io/cli-runtime v0.29.3
+ k8s.io/client-go v0.29.3
+ sigs.k8s.io/controller-runtime v0.17.2
sigs.k8s.io/yaml v1.4.0
)
require (
- cuelabs.dev/go/oci/ociregistry v0.0.0-20231103182354-93e78c079a13 // indirect
+ cuelabs.dev/go/oci/ociregistry v0.0.0-20240314152124-224736b49f2e // indirect
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
github.com/BurntSushi/toml v1.3.2 // indirect
github.com/MakeNowJust/heredoc v1.0.0 // indirect
@@ -55,19 +55,19 @@
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/distribution/reference v0.5.0 // indirect
- github.com/docker/cli v24.0.7+incompatible // indirect
+ github.com/docker/cli v24.0.9+incompatible // indirect
github.com/docker/distribution v2.8.3+incompatible // indirect
- github.com/docker/docker v24.0.7+incompatible // indirect
+ github.com/docker/docker v24.0.9+incompatible // indirect
github.com/docker/docker-credential-helpers v0.8.0 // indirect
github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c // indirect
github.com/docker/go-metrics v0.0.1 // indirect
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
github.com/emicklei/proto v1.10.0 // indirect
github.com/evanphx/json-patch v5.7.0+incompatible // indirect
- github.com/evanphx/json-patch/v5 v5.7.0 // indirect
+ github.com/evanphx/json-patch/v5 v5.8.0 // indirect
github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
- github.com/fsnotify/fsnotify v1.6.0 // indirect
+ github.com/fsnotify/fsnotify v1.7.0 // indirect
github.com/go-errors/errors v1.5.1 // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.5.0 // indirect
@@ -78,7 +78,7 @@
github.com/go-openapi/swag v0.22.8 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
- github.com/golang/protobuf v1.5.3 // indirect
+ github.com/golang/protobuf v1.5.4 // indirect
github.com/gonvenience/bunt v1.3.5 // indirect
github.com/gonvenience/neat v1.3.13 // indirect
github.com/gonvenience/term v1.0.2 // indirect
@@ -88,9 +88,10 @@
github.com/google/gnostic-models v0.6.8 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
- github.com/google/uuid v1.5.0 // indirect
+ github.com/google/uuid v1.6.0 // indirect
github.com/gorilla/handlers v1.5.1 // indirect
github.com/gorilla/mux v1.8.1 // indirect
+ github.com/gorilla/websocket v1.5.0 // indirect
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 // indirect
github.com/hashicorp/golang-lru/arc/v2 v2.0.5 // indirect
@@ -109,7 +110,6 @@
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mattn/go-runewidth v0.0.14 // indirect
- github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
github.com/mitchellh/go-ps v1.0.0 // indirect
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
@@ -120,22 +120,23 @@
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
- github.com/mpvl/unique v0.0.0-20150818121801-cbe035fff7de // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
+ github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
- github.com/opencontainers/image-spec v1.1.0-rc4 // indirect
+ github.com/opencontainers/image-spec v1.1.0 // indirect
github.com/perimeterx/marshmallow v1.1.5 // indirect
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
github.com/pkg/errors v0.9.1 // indirect
- github.com/prometheus/client_golang v1.17.0 // indirect
+ github.com/prometheus/client_golang v1.18.0 // indirect
github.com/prometheus/client_model v0.5.0 // indirect
- github.com/prometheus/common v0.45.0 // indirect
+ github.com/prometheus/common v0.48.0 // indirect
github.com/prometheus/procfs v0.12.0 // indirect
github.com/protocolbuffers/txtpbfmt v0.0.0-20230328191034-3462fbc510c0 // indirect
github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5 // indirect
github.com/redis/go-redis/extra/redisotel/v9 v9.0.5 // indirect
github.com/redis/go-redis/v9 v9.1.0 // indirect
github.com/rivo/uniseg v0.2.0 // indirect
+ github.com/rogpeppe/go-internal v1.12.0 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect
github.com/spf13/pflag v1.0.5 // indirect
@@ -160,13 +161,13 @@
go.opentelemetry.io/otel/trace v1.21.0 // indirect
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect
- golang.org/x/crypto v0.19.0 // indirect
+ golang.org/x/crypto v0.21.0 // indirect
golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect
- golang.org/x/net v0.21.0 // indirect
- golang.org/x/oauth2 v0.16.0 // indirect
+ golang.org/x/net v0.23.0 // indirect
+ golang.org/x/oauth2 v0.18.0 // indirect
golang.org/x/sync v0.6.0 // indirect
- golang.org/x/sys v0.17.0 // indirect
- golang.org/x/term v0.17.0 // indirect
+ golang.org/x/sys v0.18.0 // indirect
+ golang.org/x/term v0.18.0 // indirect
golang.org/x/text v0.14.0 // indirect
golang.org/x/time v0.5.0 // indirect
gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect
@@ -174,17 +175,17 @@
google.golang.org/genproto/googleapis/api v0.0.0-20230822172742-b8732ec3820d // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d // indirect
google.golang.org/grpc v1.59.0 // indirect
- google.golang.org/protobuf v1.31.0 // indirect
+ google.golang.org/protobuf v1.33.0 // indirect
gopkg.in/evanphx/json-patch.v5 v5.6.0 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
- k8s.io/component-base v0.28.6 // indirect
- k8s.io/klog/v2 v2.100.1 // indirect
+ k8s.io/component-base v0.29.3 // indirect
+ k8s.io/klog/v2 v2.110.1 // indirect
k8s.io/kube-openapi v0.0.0-20231206194836-bf4651e18aa8 // indirect
- k8s.io/kubectl v0.28.6 // indirect
- k8s.io/utils v0.0.0-20231127182322-b307cd553661 // indirect
+ k8s.io/kubectl v0.29.3 // indirect
+ k8s.io/utils v0.0.0-20240310230437-4693a0247e57 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/kustomize/api v0.16.0 // indirect
sigs.k8s.io/kustomize/kyaml v0.16.0 // indirect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/go.sum new/timoni-0.21.0/go.sum
--- old/timoni-0.20.0/go.sum 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/go.sum 2024-04-24 11:37:01.000000000 +0200
@@ -1,8 +1,8 @@
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
-cuelabs.dev/go/oci/ociregistry v0.0.0-20231103182354-93e78c079a13 h1:zkiIe8AxZ/kDjqQN+mDKc5BxoVJOqioSdqApjc+eB1I=
-cuelabs.dev/go/oci/ociregistry v0.0.0-20231103182354-93e78c079a13/go.mod h1:XGKYSMtsJWfqQYPwq51ZygxAPqpEUj/9bdg16iDPTAA=
-cuelang.org/go v0.7.1 h1:wSuUSIKR9M1yrph57l8EJATWVRWHaq/Zd0dFUL10PC8=
-cuelang.org/go v0.7.1/go.mod h1:ix+3dM/bSpdG9xg6qpCgnJnpeLtciZu+O/rDbywoMII=
+cuelabs.dev/go/oci/ociregistry v0.0.0-20240314152124-224736b49f2e h1:GwCVItFUPxwdsEYnlUcJ6PJxOjTeFFCKOh6QWg4oAzQ=
+cuelabs.dev/go/oci/ociregistry v0.0.0-20240314152124-224736b49f2e/go.mod h1:ApHceQLLwcOkCEXM1+DyCXTHEJhNGDpJ2kmV6axsx24=
+cuelang.org/go v0.8.1 h1:VFYsxIFSPY5KgSaH1jQ2GxHOrbu6Ga3kEI70yCZwnOg=
+cuelang.org/go v0.8.1/go.mod h1:CoDbYolfMms4BhWUlhD+t5ORnihR7wvjcfgyO9lL5FI=
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8=
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
@@ -64,12 +64,12 @@
github.com/distribution/distribution/v3 v3.0.0-alpha.1/go.mod h1:LCp4JZp1ZalYg0W/TN05jarCQu+h4w7xc7ZfQF4Y/cY=
github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0=
github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E=
-github.com/docker/cli v24.0.7+incompatible h1:wa/nIwYFW7BVTGa7SWPVyyXU9lgORqUb1xfI36MSkFg=
-github.com/docker/cli v24.0.7+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
+github.com/docker/cli v24.0.9+incompatible h1:OxbimnP/z+qVjDLpq9wbeFU3Nc30XhSe+LkwYQisD50=
+github.com/docker/cli v24.0.9+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8=
github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk=
github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
-github.com/docker/docker v24.0.7+incompatible h1:Wo6l37AuwP3JaMnZa226lzVXGA3F9Ig1seQen0cKYlM=
-github.com/docker/docker v24.0.7+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
+github.com/docker/docker v24.0.9+incompatible h1:HPGzNmwfLZWdxHqK9/II92pyi1EpYKsAqcl4G0Of9v0=
+github.com/docker/docker v24.0.9+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker-credential-helpers v0.8.0 h1:YQFtbBQb4VrpoPxhFuzEBPQ9E16qz5SpHLS+uswaCp8=
github.com/docker/docker-credential-helpers v0.8.0/go.mod h1:UGFXcuoQ5TxPiB54nHOZ32AWRqQdECoh/Mg0AlEYb40=
github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c h1:+pKlWGMw7gf6bQ+oDZB4KHQFypsfjYlq/C4rfL7D3g8=
@@ -84,8 +84,8 @@
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/evanphx/json-patch v5.7.0+incompatible h1:vgGkfT/9f8zE6tvSCe74nfpAVDQ2tG6yudJd8LBksgI=
github.com/evanphx/json-patch v5.7.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
-github.com/evanphx/json-patch/v5 v5.7.0 h1:nJqP7uwL84RJInrohHfW0Fx3awjbm8qZeFv0nW9SYGc=
-github.com/evanphx/json-patch/v5 v5.7.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
+github.com/evanphx/json-patch/v5 v5.8.0 h1:lRj6N9Nci7MvzrXuX6HFzU8XjmhPiXPlsKEy1u0KQro=
+github.com/evanphx/json-patch/v5 v5.8.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f h1:Wl78ApPPB2Wvf/TIe2xdyJxTlb6obmF18d8QdkxNDu4=
github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f/go.mod h1:OSYXu++VVOHnXeitef/D8n/6y4QV8uLHSFXX4NeXMGc=
github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM=
@@ -93,16 +93,16 @@
github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
-github.com/fluxcd/cli-utils v0.36.0-flux.3 h1:5CQTOc08UnabfwluIYxIhlhpCCTplWBn/xpjVr560J0=
-github.com/fluxcd/cli-utils v0.36.0-flux.3/go.mod h1:9lShvUz7uRPIjYZ6phr5AOuORkRDmaUgf/sZN7SDcpo=
-github.com/fluxcd/pkg/sourceignore v0.5.0 h1:8ffSJCRIKsMpxXjGPVeRK3xhGUjuk+tFILf/+EODCVg=
-github.com/fluxcd/pkg/sourceignore v0.5.0/go.mod h1:cJsXn+wYmRY3VamrtG9I3MBL2wjtns2bS7ARIht2XAQ=
-github.com/fluxcd/pkg/ssa v0.36.0 h1:h9FB6SrrdVlxNQtfG+Fb/Roe1e61EPgtmJ5ORlAxwkU=
-github.com/fluxcd/pkg/ssa v0.36.0/go.mod h1:FJj4xznwBvRM+9h02lGGC0CGYGucPeXO7P6NEPphbys=
-github.com/fluxcd/pkg/tar v0.4.0 h1:SuXpfXBIcSJ5R/yqQi2CBxBmV/i/LH0agqNAh2PWBZg=
-github.com/fluxcd/pkg/tar v0.4.0/go.mod h1:SyJBaQvuv2VA/rv4d1OHhCV6R8+9QKc9np193EzNHBc=
-github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY=
-github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw=
+github.com/fluxcd/cli-utils v0.36.0-flux.4 h1:uEeI8Kk4X07JLYrtqrMVFJwBNPwGxs679K/Qm9O9r+A=
+github.com/fluxcd/cli-utils v0.36.0-flux.4/go.mod h1:MJ/dbROKnf9iGHE8IRvuTFGsW1Pw386aouORFKWemz0=
+github.com/fluxcd/pkg/sourceignore v0.6.0 h1:kD6QXL/upPEX66UpR669yK1Bxr/GtjzmZiqBeYpunUQ=
+github.com/fluxcd/pkg/sourceignore v0.6.0/go.mod h1:M8jWNTs1AfmaUGGThyCiSWUJo6z4l0lEiv+XqeON1nc=
+github.com/fluxcd/pkg/ssa v0.37.0 h1:T6kePIABcmoGXWEMaO5e21PobkpWrVwWY8mDIYYa0qw=
+github.com/fluxcd/pkg/ssa v0.37.0/go.mod h1:jL/uNySsoe+qjdeG20maBUAtXNHFRxweaJAccO95L2Y=
+github.com/fluxcd/pkg/tar v0.6.0 h1:Mbv2YoaTNDbYiAVTzG8lmF/0P8Xf2AouAq+zQFn+dPY=
+github.com/fluxcd/pkg/tar v0.6.0/go.mod h1:ZIq/VPbI45U9yhn7m5uMg4mhR8oNhVyWmo0cgY0lAFQ=
+github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
+github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=
github.com/getkin/kin-openapi v0.123.0 h1:zIik0mRwFNLyvtXK274Q6ut+dPh6nlxBp0x7mNrPhs8=
github.com/getkin/kin-openapi v0.123.0/go.mod h1:wb1aSZA/iWmorQP9KTAS/phLj/t17B5jT7+fS8ed9NM=
github.com/go-errors/errors v1.5.1 h1:ZwEMSLRCapFLflTpT7NKaAc7ukJ8ZPEjzlxt8rPN8bk=
@@ -116,14 +116,14 @@
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
-github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
+github.com/go-logr/logr v1.3.0/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ=
github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
-github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo=
-github.com/go-logr/zapr v1.2.4/go.mod h1:FyHWQIzQORZ0QVE1BtVHv3cKtNLuXsbNLtpuhNapBOA=
+github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ=
+github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg=
github.com/go-logr/zerologr v1.2.3 h1:up5N9vcH9Xck3jJkXzgyOxozT14R47IyDODz8LM1KSs=
github.com/go-logr/zerologr v1.2.3/go.mod h1:BxwGo7y5zgSHYR1BjbnHPyF/5ZjVKfKxAZANVu6E8Ho=
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
@@ -160,9 +160,8 @@
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8=
-github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
-github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
-github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
+github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
+github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
github.com/gonvenience/bunt v1.3.5 h1:wSQquifvwEWtzn27k1ngLfeLaStyt0k1b/K6TrlCNAs=
github.com/gonvenience/bunt v1.3.5/go.mod h1:7ApqkVBEWvX04oJ28Q2WeI/BvJM6VtukaJAU/q/pTs8=
github.com/gonvenience/neat v1.3.13 h1:wRp1k0GX5EOpelNH3GyLaFy4SvnJ6k1U5SenmEWkXko=
@@ -185,12 +184,11 @@
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/google/go-containerregistry v0.19.0 h1:uIsMRBV7m/HDkDxE/nXMnv1q+lOOSPlQ/ywc5JbB8Ic=
-github.com/google/go-containerregistry v0.19.0/go.mod h1:u0qB2l7mvtWVR5kNcbFIhFY1hLbf8eeGapA+vbFDCtQ=
+github.com/google/go-containerregistry v0.19.1 h1:yMQ62Al6/V0Z7CqIrrS1iYoA5/oQCm88DeNujc7C1KY=
+github.com/google/go-containerregistry v0.19.1/go.mod h1:YCMFNQeeXeLF+dnhhWkqDItx/JSkH01j1Kis4PsjzFI=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
@@ -198,13 +196,15 @@
github.com/google/pprof v0.0.0-20230602150820-91b7bce49751/go.mod h1:Jh3hGz2jkYak8qXPD19ryItVnUgpgeqzdkY/D0EaeuA=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
-github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU=
-github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
+github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4=
github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q=
github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ=
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
+github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc=
+github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 h1:+ngKgrYPPJrOjhax5N+uePQ0Fh1Z7PheYoUI/0nzkPA=
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA=
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 h1:YBftPWNWd4WwGqtY2yeZL2ef8rHAxPBD8KFhJpmcqms=
@@ -270,8 +270,6 @@
github.com/mattn/go-shellwords v1.0.12 h1:M2zGm7EW6UQJvDeQxo4T51eKPurbeFbe8WtebGE2xrk=
github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y=
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
-github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg=
-github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k=
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc=
@@ -295,25 +293,25 @@
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8=
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/2gBQ3RWajuToeY6ZtZTIKv2v7ThUy5KKusIT0yc0=
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4=
-github.com/mpvl/unique v0.0.0-20150818121801-cbe035fff7de h1:D5x39vF5KCwKQaw+OC9ZPiLVHXz3UFw2+psEX+gYcto=
-github.com/mpvl/unique v0.0.0-20150818121801-cbe035fff7de/go.mod h1:kJun4WP5gFuHZgRjZUWWuH1DTxCtxbHDOIJsudS8jzY=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
+github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus=
+github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw=
github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE=
github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU=
github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=
github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=
github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE=
github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU=
-github.com/onsi/ginkgo/v2 v2.15.0 h1:79HwNRBAZHOEwrczrgSOPy+eFTTlIGELKy5as+ClttY=
-github.com/onsi/ginkgo/v2 v2.15.0/go.mod h1:HlxMHtYF57y6Dpf+mc5529KKmSq9h2FpCF+/ZkwUxKM=
-github.com/onsi/gomega v1.31.1 h1:KYppCUK+bUgAZwHOu7EXVBKyQA6ILvOESHkn/tgoqvo=
-github.com/onsi/gomega v1.31.1/go.mod h1:y40C95dwAD1Nz36SsEnxvfFe8FFfNxzI5eJ0EYGyAy0=
+github.com/onsi/ginkgo/v2 v2.17.1 h1:V++EzdbhI4ZV4ev0UTIj0PzhzOcReJFyJaLjtSF55M8=
+github.com/onsi/ginkgo/v2 v2.17.1/go.mod h1:llBI3WDLL9Z6taip6f33H76YcWtJv+7R3HigUjbIBOs=
+github.com/onsi/gomega v1.32.0 h1:JRYU78fJ1LPxlckP6Txi/EYqJvjtMrDC04/MM5XRHPk=
+github.com/onsi/gomega v1.32.0/go.mod h1:a4x4gW6Pz2yK1MAmvluYme5lvYTn61afQ2ETw/8n4Lg=
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
-github.com/opencontainers/image-spec v1.1.0-rc4 h1:oOxKUJWnFC4YGHCCMNql1x4YaDfYBTS5Y4x/Cgeo1E0=
-github.com/opencontainers/image-spec v1.1.0-rc4/go.mod h1:X4pATf0uXsnn3g5aiGIsVnJBR4mxhKzfwmvK/B2NTm8=
+github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug=
+github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM=
github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w=
github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks=
@@ -332,8 +330,8 @@
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g=
-github.com/prometheus/client_golang v1.17.0 h1:rl2sfwZMtSthVU752MqfjQozy7blglC+1SOtjMAMh+Q=
-github.com/prometheus/client_golang v1.17.0/go.mod h1:VeL+gMmOAxkS2IqfCq0ZmHSL+LjWfWDUmp1mBz9JgUY=
+github.com/prometheus/client_golang v1.18.0 h1:HzFfmkOzH5Q8L8G+kSJKUx5dtG87sewO+FoDDqP5Tbk=
+github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlkOQntgjkJWKrN5txjA=
github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
@@ -341,8 +339,8 @@
github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI=
github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc=
-github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM=
-github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY=
+github.com/prometheus/common v0.48.0 h1:QO8U2CdOzSn1BBsmXJXduaaW+dY/5QLjfB8svtSzKKE=
+github.com/prometheus/common v0.48.0/go.mod h1:0/KsvlIEfPQCQ5I2iNSAWKPZziNCvRs5EC6ILDTlAPc=
github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ=
@@ -389,8 +387,8 @@
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
-github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
-github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
+github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
+github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U=
github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8=
github.com/ugorji/go/codec v1.2.7 h1:YPXUKf7fYbp/y8xloBqZOw2qaVggbfwMlI8WM3wZUJ0=
@@ -442,14 +440,14 @@
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
-go.uber.org/zap v1.25.0 h1:4Hvk6GtkucQ790dqmj7l1eEnRdKm3k3ZUrUMS2d5+5c=
-go.uber.org/zap v1.25.0/go.mod h1:JIAUzQIH94IC4fOJQm7gMmBJP5k7wQfdcnYdPoEXJYk=
+go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo=
+go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
-golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo=
-golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
+golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
+golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20231006140011-7918f672742d h1:jtJma62tbqLibJ5sFQz8bKtEM8rJBtfilJ2qTU199MI=
golang.org/x/exp v0.0.0-20231006140011-7918f672742d/go.mod h1:ldy0pHrwJyGW56pPQzzkH36rKxoZW1tw7ZJpeKx+hdo=
@@ -458,8 +456,8 @@
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
-golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0=
-golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
+golang.org/x/mod v0.16.0 h1:QX4fJ0Rr5cPQCF7O9lh9Se4pmwfwskqZfq5moyldzic=
+golang.org/x/mod v0.16.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -471,11 +469,11 @@
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
-golang.org/x/net v0.21.0 h1:AQyQV4dYCvJ7vGmJyKki9+PBdyvhkSd8EIx/qb0AYv4=
-golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
+golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=
+golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
-golang.org/x/oauth2 v0.16.0 h1:aDkGMBSYxElaoP81NpoUoz2oo2R2wHdZpGToUxfyQrQ=
-golang.org/x/oauth2 v0.16.0/go.mod h1:hqZ+0LWXsiVoZpeld6jVt06P3adbS2Uu911W1SsJv2o=
+golang.org/x/oauth2 v0.18.0 h1:09qnuIAgzdx1XplqJvW6CQqMCtGZykZWcXzPMPUusvI=
+golang.org/x/oauth2 v0.18.0/go.mod h1:Wf7knwG0MPoWIMMBgFlEaSUDaKskp0dCfrlJRJXbBi8=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -496,14 +494,13 @@
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220906165534-d0df966e6959/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y=
-golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
+golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
-golang.org/x/term v0.17.0 h1:mkTF7LCd6WGJNL3K1Ad7kwxNfYAW6a8a8QqtMblp/4U=
-golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
+golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8=
+golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
@@ -519,8 +516,8 @@
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
-golang.org/x/tools v0.17.0 h1:FvmRgNOcs3kOa+T20R1uhfP9F6HgG2mfxDv1vrx1Htc=
-golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps=
+golang.org/x/tools v0.19.0 h1:tfGCXNR1OsFG+sVdLAitlpjAvD/I6dHDKnYrpEZUHkw=
+golang.org/x/tools v0.19.0/go.mod h1:qoJWxmGSIBmAeriMx19ogtrEPrGtDbPK634QFIcLAhc=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
@@ -553,10 +550,8 @@
google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c=
-google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
-google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
-google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
-google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
+google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI=
+google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
@@ -583,28 +578,28 @@
gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
-k8s.io/api v0.28.6 h1:yy6u9CuIhmg55YvF/BavPBBXB+5QicB64njJXxVnzLo=
-k8s.io/api v0.28.6/go.mod h1:AM6Ys6g9MY3dl/XNaNfg/GePI0FT7WBGu8efU/lirAo=
-k8s.io/apiextensions-apiserver v0.28.6 h1:myB3iG/3v3jqCg28JDbOefu4sH2/erNEXgytRzJKBOo=
-k8s.io/apiextensions-apiserver v0.28.6/go.mod h1:qlp6xRKBgyRhe5AYc81TQpLx4kLNK8/sGQUOwMkVjRk=
-k8s.io/apimachinery v0.28.6 h1:RsTeR4z6S07srPg6XYrwXpTJVMXsjPXn0ODakMytSW0=
-k8s.io/apimachinery v0.28.6/go.mod h1:QFNX/kCl/EMT2WTSz8k4WLCv2XnkOLMaL8GAVRMdpsA=
-k8s.io/cli-runtime v0.28.6 h1:bDH2+ZbHBK3NORGmIygj/zWOkVd/hGWg9RqAa5c/Ev0=
-k8s.io/cli-runtime v0.28.6/go.mod h1:KFk67rlb7Pxh15uLbYGBUlW7ZUcpl7IM1GnHtskrcWA=
-k8s.io/client-go v0.28.6 h1:Gge6ziyIdafRchfoBKcpaARuz7jfrK1R1azuwORIsQI=
-k8s.io/client-go v0.28.6/go.mod h1:+nu0Yp21Oeo/cBCsprNVXB2BfJTV51lFfe5tXl2rUL8=
-k8s.io/component-base v0.28.6 h1:G4T8VrcQ7xZou3by/fY5NU5mfxOBlWaivS2lPrEltAo=
-k8s.io/component-base v0.28.6/go.mod h1:Dg62OOG3ALu2P4nAG00UdsuHoNLQJ5VsUZKQlLDcS+E=
-k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg=
-k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
+k8s.io/api v0.29.3 h1:2ORfZ7+bGC3YJqGpV0KSDDEVf8hdGQ6A03/50vj8pmw=
+k8s.io/api v0.29.3/go.mod h1:y2yg2NTyHUUkIoTC+phinTnEa3KFM6RZ3szxt014a80=
+k8s.io/apiextensions-apiserver v0.29.3 h1:9HF+EtZaVpFjStakF4yVufnXGPRppWFEQ87qnO91YeI=
+k8s.io/apiextensions-apiserver v0.29.3/go.mod h1:po0XiY5scnpJfFizNGo6puNU6Fq6D70UJY2Cb2KwAVc=
+k8s.io/apimachinery v0.29.3 h1:2tbx+5L7RNvqJjn7RIuIKu9XTsIZ9Z5wX2G22XAa5EU=
+k8s.io/apimachinery v0.29.3/go.mod h1:hx/S4V2PNW4OMg3WizRrHutyB5la0iCUbZym+W0EQIU=
+k8s.io/cli-runtime v0.29.3 h1:r68rephmmytoywkw2MyJ+CxjpasJDQY7AGc3XY2iv1k=
+k8s.io/cli-runtime v0.29.3/go.mod h1:aqVUsk86/RhaGJwDhHXH0jcdqBrgdF3bZWk4Z9D4mkM=
+k8s.io/client-go v0.29.3 h1:R/zaZbEAxqComZ9FHeQwOh3Y1ZUs7FaHKZdQtIc2WZg=
+k8s.io/client-go v0.29.3/go.mod h1:tkDisCvgPfiRpxGnOORfkljmS+UrW+WtXAy2fTvXJB0=
+k8s.io/component-base v0.29.3 h1:Oq9/nddUxlnrCuuR2K/jp6aflVvc0uDvxMzAWxnGzAo=
+k8s.io/component-base v0.29.3/go.mod h1:Yuj33XXjuOk2BAaHsIGHhCKZQAgYKhqIxIjIr2UXYio=
+k8s.io/klog/v2 v2.110.1 h1:U/Af64HJf7FcwMcXyKm2RPM22WZzyR7OSpYj5tg3cL0=
+k8s.io/klog/v2 v2.110.1/go.mod h1:YGtd1984u+GgbuZ7e08/yBuAfKLSO0+uR1Fhi6ExXjo=
k8s.io/kube-openapi v0.0.0-20231206194836-bf4651e18aa8 h1:vzKzxN5uyJZLY8HL1/OovW7BJefnsBIWt8T7Gjh2boQ=
k8s.io/kube-openapi v0.0.0-20231206194836-bf4651e18aa8/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA=
-k8s.io/kubectl v0.28.6 h1:46O3gGJYlpqy7wtwYlggieemyIcuZqmflnQVDci3MgY=
-k8s.io/kubectl v0.28.6/go.mod h1:FS5ugZhi3kywpMQSCnp8MN+gctdFHJACzC6mH3fZ6lc=
-k8s.io/utils v0.0.0-20231127182322-b307cd553661 h1:FepOBzJ0GXm8t0su67ln2wAZjbQ6RxQGZDnzuLcrUTI=
-k8s.io/utils v0.0.0-20231127182322-b307cd553661/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
-sigs.k8s.io/controller-runtime v0.16.3 h1:2TuvuokmfXvDUamSx1SuAOO3eTyye+47mJCigwG62c4=
-sigs.k8s.io/controller-runtime v0.16.3/go.mod h1:j7bialYoSn142nv9sCOJmQgDXQXxnroFU4VnX/brVJ0=
+k8s.io/kubectl v0.29.3 h1:RuwyyIU42MAISRIePaa8Q7A3U74Q9P4MoJbDFz9o3us=
+k8s.io/kubectl v0.29.3/go.mod h1:yCxfY1dbwgVdEt2zkJ6d5NNLOhhWgTyrqACIoFhpdd4=
+k8s.io/utils v0.0.0-20240310230437-4693a0247e57 h1:gbqbevonBh57eILzModw6mrkbwM0gQBEuevE/AaBsHY=
+k8s.io/utils v0.0.0-20240310230437-4693a0247e57/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
+sigs.k8s.io/controller-runtime v0.17.2 h1:FwHwD1CTUemg0pW2otk7/U5/i5m2ymzvOXdbeGOUvw0=
+sigs.k8s.io/controller-runtime v0.17.2/go.mod h1:+MngTvIQQQhfXtwfdGw/UOQ/aIaqsYywfCINOtwMO/s=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
sigs.k8s.io/kustomize/api v0.16.0 h1:/zAR4FOQDCkgSDmVzV2uiFbuy9bhu3jEzthrHCuvm1g=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/timoni-0.20.0/schemas/timoni.sh/core/v1alpha1/metadata.cue new/timoni-0.21.0/schemas/timoni.sh/core/v1alpha1/metadata.cue
--- old/timoni-0.20.0/schemas/timoni.sh/core/v1alpha1/metadata.cue 2024-03-05 12:15:40.000000000 +0100
+++ new/timoni-0.21.0/schemas/timoni.sh/core/v1alpha1/metadata.cue 2024-04-24 11:37:01.000000000 +0200
@@ -52,6 +52,11 @@
#LabelSelector: #Labels & {
(#StdLabelName): name
}
+
+ // Finalizers are namespaced keys that tell Kubernetes to wait until specific conditions
+ // are met before it fully deletes resources marked for deletion.
+ // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/finalizer…
+ finalizers?: [...string]
}
// MetaComponent generates the Kubernetes object metadata for a module namespaced component.
++++++ timoni.obsinfo ++++++
--- /var/tmp/diff_new_pack.Na6zWT/_old 2024-04-25 20:48:50.037312619 +0200
+++ /var/tmp/diff_new_pack.Na6zWT/_new 2024-04-25 20:48:50.041312766 +0200
@@ -1,5 +1,5 @@
name: timoni
-version: 0.20.0
-mtime: 1709637340
-commit: 7f033d917314b4c0fa27e010ab04e35637c8405f
+version: 0.21.0
+mtime: 1713951421
+commit: 28426b0e1539089403b26fba798b02ce123a577b
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/timoni/vendor.tar.gz /work/SRC/openSUSE:Factory/.timoni.new.1880/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package trufflehog for openSUSE:Factory checked in at 2024-04-25 20:48:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/trufflehog (Old)
and /work/SRC/openSUSE:Factory/.trufflehog.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "trufflehog"
Thu Apr 25 20:48:38 2024 rev:30 rq:1170017 version:3.74.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/trufflehog/trufflehog.changes 2024-04-11 19:41:09.569774757 +0200
+++ /work/SRC/openSUSE:Factory/.trufflehog.new.1880/trufflehog.changes 2024-04-25 20:48:45.885160157 +0200
@@ -1,0 +2,80 @@
+Wed Apr 24 06:40:13 UTC 2024 - felix.niederwanger(a)suse.de
+
+- Update to version 3.74.0:
+ * [bug] - Correctly return the checked out buffer to the pool (#2732)
+ * fix(deps): update module google.golang.org/api to v0.176.1 (#2736)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.27 (#2735)
+ * Make connection issues less jarring (#2730)
+ * [bug] - Fix disk write metric and update BufferedFileWriter file field (#2733)
+ * Add false positive info to proto (#2729)
+ * [refactor] - Update Write method signature in contentWriter interface (#2721)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.26 (#2728)
+ * Move detectors.IsKnownFalsePositive from the detectors and into the engine (#2643)
+ * fix(deps): update module google.golang.org/api to v0.176.0 (#2726)
+ * added onfleet api key detector (#2375)
+ * fix(deps): update module google.golang.org/api to v0.175.0 (#2724)
+ * fix(deps): update module github.com/microsoft/go-mssqldb to v1.7.1 (#2720)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.25 (#2723)
+ * Detect Slack workflows webhook (#2569)
+ * fix(deps): update module github.com/couchbase/gocb/v2 to v2.8.1 (#2714)
+ * fix(deps): update module github.com/xanzy/go-gitlab to v0.103.0 (#2715)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.24 (#2717)
+ * fix(deps): update module google.golang.org/api to v0.174.0 (#2712)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.23 (#2711)
+ * fix(deps): update module google.golang.org/api to v0.173.0 (#2709)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.22 (#2708)
+ * fix(deps): update module github.com/go-ldap/ldap/v3 to v3.4.8 (#2707)
+ * fix(deps): update golang.org/x/exp digest to fe59bbe (#2706)
+ * fix(deps): update module go.mongodb.org/mongo-driver to v1.15.0 (#2700)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.21 (#2699)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.20 (#2698)
+ * fix(deps): update module github.com/launchdarkly/go-server-sdk/v7 to v7.4.0 (#2697)
+ * Adding Pagarme API key detection (#2665)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.19 (#2694)
+ * chore(deps): update sigstore/cosign-installer action to v3.5.0 (#2695)
+ * [refactor] - template detector (#2692)
+ * Remove unnecessary space in Vultr regex pattern (#2689)
+ * Add Wiz detector (#2691)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.18 (#2690)
+ * fix(deps): update golang.org/x/exp digest to 93d18d7 (#2688)
+ * Update README.md with Windows-specific Docker installation instructions (#2674)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.17 (#2686)
+ * fix(deps): update module github.com/go-ldap/ldap/v3 to v3.4.7 (#2684)
+ * fix(deps): update testcontainers-go monorepo to v0.30.0 (#2685)
+ * fix(deps): update module github.com/xanzy/go-gitlab to v0.102.0 (#2682)
+ * Enrich Gitlab enumeration logging (#2678)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.16 (#2680)
+ * fix(deps): update golang.org/x/exp digest to c0f41cb (#2672)
+ * fix(deps): update module github.com/wasilibs/go-re2 to v1.5.2 (#2681)
+ * fix(deps): update module github.com/thezeroslave/zapsentry to v1.23.0 (#2667)
+ * fix(deps): update module golang.org/x/net to v0.24.0 (#2662)
+ * Handle inactive Slack account tokens (#2668)
+ * [bug] - Add ASCII validation check for base64 decoding (#2671)
+ * fix(deps): update module golang.org/x/oauth2 to v0.19.0 (#2670)
+ * chore: fix some typos (#2666)
+ * [chore] - update go-github dep manually (#2664)
+ * fix(deps): update module github.com/google/go-github/v57 to v61 (#2652)
+ * fix(deps): update module github.com/launchdarkly/go-server-sdk/v7 to v7.3.0 (#2660)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.14 (#2659)
+ * upgrade launchdarkly dep (#2650)
+ * chore: remove duplicate jiratoken.v2 detector (#2657)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.13 (#2655)
+ * fix(deps): update module github.com/thezeroslave/zapsentry to v1.22.1 (#2654)
+ * Add GitLab CI Pipeline Example in Documentation (#2601)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.12 (#2651)
+ * add GCP application default credentials detector (#2530)
+ * fix(deps): update module github.com/go-git/go-git/v5 to v5.12.0 (#2649)
+ * fix(deps): update module github.com/thezeroslave/zapsentry to v1.22.0 (#2648)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.11 (#2646)
+ * Add JupiterOne detector (#2446)
+ * fix(deps): update module cloud.google.com/go/storage to v1.40.0 (#2645)
+ * fix(deps): update module github.com/launchdarkly/go-server-sdk/v6 to v6.2.0 (#2638)
+ * Fix GitHub enumeration & rate-limiting logic (#2625)
+ * build: fix 'toolchair not available' error (#2642)
+ * fix(deps): update module github.com/aws/aws-sdk-go to v1.51.10 (#2636)
+ * make postman source public (#2635)
+ * fix(deps): update module google.golang.org/api to v0.172.0 (#2634)
+ * Fixing nitro check (#2631)
+ * Link to GitHub contribution guide in CONTRIBUTING (#2632)
+
+-------------------------------------------------------------------
Old:
----
trufflehog-3.73.0.obscpio
New:
----
trufflehog-3.74.0.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ trufflehog.spec ++++++
--- /var/tmp/diff_new_pack.0o9mlD/_old 2024-04-25 20:48:46.797193646 +0200
+++ /var/tmp/diff_new_pack.0o9mlD/_new 2024-04-25 20:48:46.805193939 +0200
@@ -17,7 +17,7 @@
Name: trufflehog
-Version: 3.73.0
+Version: 3.74.0
Release: 0
Summary: CLI tool to find exposed secrets in source and archives
License: AGPL-3.0-or-later
++++++ _service ++++++
--- /var/tmp/diff_new_pack.0o9mlD/_old 2024-04-25 20:48:46.845195408 +0200
+++ /var/tmp/diff_new_pack.0o9mlD/_new 2024-04-25 20:48:46.849195555 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/trufflesecurity/trufflehog.git</param>
<param name="scm">git</param>
<param name="revision">main</param>
- <param name="version">v3.73.0</param>
+ <param name="version">v3.74.0</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="changesgenerate">enable</param>
</service>
++++++ trufflehog-3.73.0.obscpio -> trufflehog-3.74.0.obscpio ++++++
/work/SRC/openSUSE:Factory/trufflehog/trufflehog-3.73.0.obscpio /work/SRC/openSUSE:Factory/.trufflehog.new.1880/trufflehog-3.74.0.obscpio differ: char 49, line 1
++++++ trufflehog.obsinfo ++++++
--- /var/tmp/diff_new_pack.0o9mlD/_old 2024-04-25 20:48:46.897197318 +0200
+++ /var/tmp/diff_new_pack.0o9mlD/_new 2024-04-25 20:48:46.901197465 +0200
@@ -1,5 +1,5 @@
name: trufflehog
-version: 3.73.0
-mtime: 1712762376
-commit: 08b6f90c818deb9e0c28f1aeea788712ff4c97c4
+version: 3.74.0
+mtime: 1713908308
+commit: ea4d9d2d32f45e77893ecb6338d7c6bd7cddb3ec
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/trufflehog/vendor.tar.gz /work/SRC/openSUSE:Factory/.trufflehog.new.1880/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package pdns-recursor for openSUSE:Factory checked in at 2024-04-25 20:48:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pdns-recursor (Old)
and /work/SRC/openSUSE:Factory/.pdns-recursor.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pdns-recursor"
Thu Apr 25 20:48:36 2024 rev:66 rq:1170013 version:5.0.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/pdns-recursor/pdns-recursor.changes 2024-02-13 22:42:35.200713668 +0100
+++ /work/SRC/openSUSE:Factory/.pdns-recursor.new.1880/pdns-recursor.changes 2024-04-25 20:48:41.140985956 +0200
@@ -1,0 +2,15 @@
+Wed Apr 24 08:56:56 UTC 2024 - Adam Majer <adam.majer(a)suse.de>
+
+- update to 5.0.4:
+ * fixes a case when a crafted responses can lead to a denial of
+ service in Recursor if recursive forwarding is configured
+ (bsc#1223262, CVE-2024-25583)
+
+- changes in 5.0.3
+ * Log if a DNSSEC related limit was hit if log_bogus is set
+ * Reduce RPZ memory usage by not keeping the initially loaded
+ RPZs in memory
+ * Fix the zoneToCache regression introduced by 5.0.2 security
+ update
+
+-------------------------------------------------------------------
Old:
----
pdns-recursor-5.0.2.tar.bz2
pdns-recursor-5.0.2.tar.bz2.sig
New:
----
pdns-recursor-5.0.4.tar.bz2
pdns-recursor-5.0.4.tar.bz2.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ pdns-recursor.spec ++++++
--- /var/tmp/diff_new_pack.Aio4Pq/_old 2024-04-25 20:48:43.573075260 +0200
+++ /var/tmp/diff_new_pack.Aio4Pq/_new 2024-04-25 20:48:43.589075847 +0200
@@ -25,7 +25,7 @@
%endif
Name: pdns-recursor
-Version: 5.0.2
+Version: 5.0.4
Release: 0
BuildRequires: autoconf
BuildRequires: automake
++++++ pdns-recursor-5.0.2.tar.bz2 -> pdns-recursor-5.0.4.tar.bz2 ++++++
++++ 1733 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-azure-mgmt-containerservice for openSUSE:Factory checked in at 2024-04-25 20:48:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-azure-mgmt-containerservice (Old)
and /work/SRC/openSUSE:Factory/.python-azure-mgmt-containerservice.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-azure-mgmt-containerservice"
Thu Apr 25 20:48:35 2024 rev:49 rq:1170011 version:30.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-azure-mgmt-containerservice/python-azure-mgmt-containerservice.changes 2024-04-07 22:08:22.971825140 +0200
+++ /work/SRC/openSUSE:Factory/.python-azure-mgmt-containerservice.new.1880/python-azure-mgmt-containerservice.changes 2024-04-25 20:48:37.476851413 +0200
@@ -1,0 +2,8 @@
+Wed Apr 24 10:21:04 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 30.0.0
+ + For detailed information about changes see the
+ CHANGELOG.md file provided with this package
+
+-------------------------------------------------------------------
Old:
----
azure-mgmt-containerservice-29.1.0.tar.gz
New:
----
azure-mgmt-containerservice-30.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-azure-mgmt-containerservice.spec ++++++
--- /var/tmp/diff_new_pack.soaEh6/_old 2024-04-25 20:48:38.236879320 +0200
+++ /var/tmp/diff_new_pack.soaEh6/_new 2024-04-25 20:48:38.236879320 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-azure-mgmt-containerservice
-Version: 29.1.0
+Version: 30.0.0
Release: 0
Summary: Microsoft Azure Container Service Management Client Library
License: MIT
++++++ azure-mgmt-containerservice-29.1.0.tar.gz -> azure-mgmt-containerservice-30.0.0.tar.gz ++++++
++++ 640963 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package crmsh for openSUSE:Factory checked in at 2024-04-25 20:48:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/crmsh (Old)
and /work/SRC/openSUSE:Factory/.crmsh.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "crmsh"
Thu Apr 25 20:48:33 2024 rev:331 rq:1170010 version:4.6.0+20240424.11e262d0
Changes:
--------
--- /work/SRC/openSUSE:Factory/crmsh/crmsh.changes 2024-04-11 19:41:41.054939497 +0200
+++ /work/SRC/openSUSE:Factory/.crmsh.new.1880/crmsh.changes 2024-04-25 20:48:35.616783113 +0200
@@ -1,0 +2,27 @@
+Wed Apr 24 09:43:44 UTC 2024 - XLiang(a)suse.com
+
+- Update to version 4.6.0+20240424.11e262d0:
+ * Dev: behave: Add functional test for previous change
+ * Dev: ui_context: Skip querying CIB when in a sublevel or help command
+ * Dev: unittest: Adjust unit test for previous commit
+ * Dev: behave: Adjust functional test for previous changes
+ * Dev: bootstrap: Setup the stage dependency on init and join side (bsc#1175865, bsc#1219940)
+ * Dev: ui_cluster: Remove unused codes
+ * Dev: bootstrap: Enhance stage validation
+ * Dev: bootstrap: Remove unused function join_remote_auth
+
+-------------------------------------------------------------------
+Mon Apr 22 07:38:44 UTC 2024 - XLiang(a)suse.com
+
+- Update to version 4.6.0+20240422.73eaf02a:
+ * Fix: healthcheck: Add crmsh.constants.SSH_OPTION when doing ssh in check_local
+ * Fix: healthcheck: Missing 'id_' prefix while checking the ssh key existence
+
+-------------------------------------------------------------------
+Tue Apr 16 07:54:40 UTC 2024 - XLiang(a)suse.com
+
+- Update to version 4.6.0+20240416.3c953893:
+ * Dev: unittest: Adjust unit test for previous commit
+ * Fix: bootstrap: Detect cluster service on init node before saving the canonical hostname (bsc#1222714)
+
+-------------------------------------------------------------------
Old:
----
crmsh-4.6.0+20240411.9c4bf6c1.tar.bz2
New:
----
crmsh-4.6.0+20240424.11e262d0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ crmsh.spec ++++++
--- /var/tmp/diff_new_pack.KxoAoj/_old 2024-04-25 20:48:36.488815133 +0200
+++ /var/tmp/diff_new_pack.KxoAoj/_new 2024-04-25 20:48:36.492815280 +0200
@@ -36,7 +36,7 @@
Summary: High Availability cluster command-line interface
License: GPL-2.0-or-later
Group: %{pkg_group}
-Version: 4.6.0+20240411.9c4bf6c1
+Version: 4.6.0+20240424.11e262d0
Release: 0
URL: http://crmsh.github.io
Source0: %{name}-%{version}.tar.bz2
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.KxoAoj/_old 2024-04-25 20:48:36.536816896 +0200
+++ /var/tmp/diff_new_pack.KxoAoj/_new 2024-04-25 20:48:36.540817042 +0200
@@ -9,7 +9,7 @@
</service>
<service name="tar_scm">
<param name="url">https://github.com/ClusterLabs/crmsh.git</param>
- <param name="changesrevision">a369f9ca76c9bc8b063843ba9d913fdab6db7bf6</param>
+ <param name="changesrevision">11e262d05440b23219eb9365e81d65488e83e080</param>
</service>
</servicedata>
(No newline at EOF)
++++++ crmsh-4.6.0+20240411.9c4bf6c1.tar.bz2 -> crmsh-4.6.0+20240424.11e262d0.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/bootstrap.py new/crmsh-4.6.0+20240424.11e262d0/crmsh/bootstrap.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/bootstrap.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/crmsh/bootstrap.py 2024-04-24 11:30:11.000000000 +0200
@@ -47,6 +47,7 @@
from .sh import ShellUtils
from .ui_node import NodeMgmt
from .user_of_host import UserOfHost, UserNotFoundError
+import crmsh.healthcheck
logger = log.setup_logger(__name__)
logger_utils = log.LoggerUtils(logger)
@@ -74,7 +75,11 @@
"/etc/drbd.conf", "/etc/drbd.d", "/etc/ha.d/ldirectord.cf", "/etc/lvm/lvm.conf", "/etc/multipath.conf",
"/etc/samba/smb.conf", SYSCONFIG_NFS, SYSCONFIG_PCMK, SYSCONFIG_SBD, PCMK_REMOTE_AUTH, WATCHDOG_CFG,
PROFILES_FILE, CRM_CFG, SBD_SYSTEMD_DELAY_START_DIR)
-INIT_STAGES = ("ssh", "csync2", "csync2_remote", "qnetd_remote", "corosync", "remote_auth", "sbd", "cluster", "ocfs2", "admin", "qdevice")
+
+INIT_STAGES_EXTERNAL = ("ssh", "csync2", "corosync", "sbd", "cluster", "ocfs2", "admin", "qdevice")
+INIT_STAGES_INTERNAL = ("csync2_remote", "qnetd_remote", "remote_auth")
+INIT_STAGES_ALL = INIT_STAGES_EXTERNAL + INIT_STAGES_INTERNAL
+JOIN_STAGES_EXTERNAL = ("ssh", "csync2", "ssh_merge", "cluster")
class Context(object):
@@ -232,7 +237,7 @@
"""
Validate cluster_node on join side
"""
- if self.cluster_node and self.type == 'join':
+ if self.type == "join" and self.cluster_node:
user, node = _parse_user_at_host(self.cluster_node, None)
try:
# self.cluster_node might be hostname or IP address
@@ -240,7 +245,32 @@
if utils.InterfacesInfo.ip_in_local(ip_addr):
utils.fatal("Please specify peer node's hostname or IP address")
except socket.gaierror as err:
- utils.fatal("\"{}\": {}".format(node, err))
+ utils.fatal(f"\"{node}\": {err}")
+
+ def _validate_stage(self):
+ """
+ Validate stage argument
+ """
+ if not self.stage:
+ if self.cluster_is_running:
+ utils.fatal("Cluster is already running!")
+ return
+
+ if self.type == "init":
+ if self.stage not in INIT_STAGES_ALL:
+ utils.fatal(f"Invalid stage: {self.stage}(available stages: {', '.join(INIT_STAGES_EXTERNAL)})")
+ if self.stage in ("admin", "qdevice", "ocfs2") and not self.cluster_is_running:
+ utils.fatal(f"Cluster is inactive, can't run '{self.stage}' stage")
+ if self.stage in ("corosync", "cluster") and self.cluster_is_running:
+ utils.fatal(f"Cluster is active, can't run '{self.stage}' stage")
+
+ elif self.type == "join":
+ if self.stage not in JOIN_STAGES_EXTERNAL:
+ utils.fatal(f"Invalid stage: {self.stage}(available stages: {', '.join(JOIN_STAGES_EXTERNAL)})")
+ if self.stage and self.cluster_node is None:
+ utils.fatal(f"Can't use stage({self.stage}) without specifying cluster node")
+ if self.stage in ("cluster", ) and self.cluster_is_running:
+ utils.fatal(f"Cluster is active, can't run '{self.stage}' stage")
def validate_option(self):
"""
@@ -263,6 +293,7 @@
self.skip_csync2 = utils.get_boolean(os.getenv("SKIP_CSYNC2_SYNC"))
if self.skip_csync2 and self.stage:
utils.fatal("-x option or SKIP_CSYNC2_SYNC can't be used with any stage")
+ self._validate_stage()
self._validate_cluster_node()
self._validate_nodes_option()
self._validate_sbd_option()
@@ -553,7 +584,7 @@
return False
-def check_prereqs(stage):
+def check_prereqs():
warned = False
if not my_hostname_resolves():
@@ -1702,6 +1733,7 @@
user_by_host.add(local_user, utils.this_node())
user_by_host.set_no_generating_ssh_key(bool(ssh_public_keys))
user_by_host.save_local()
+ detect_cluster_service_on_node(seed_host)
user_by_host.add(seed_user, get_node_canonical_hostname(seed_host))
user_by_host.save_local()
@@ -1709,6 +1741,9 @@
change_user_shell('hacluster')
swap_public_ssh_key_for_secondary_user(sh.cluster_shell(), seed_host, 'hacluster')
+ if _context.stage:
+ setup_passwordless_with_other_nodes(seed_host, seed_user)
+
def join_ssh_with_ssh_agent(
local_shell: sh.LocalShell,
@@ -2366,46 +2401,87 @@
corosync.set_value("quorum.expected_votes", str(new_quorum))
+def ssh_stage_finished():
+ """
+ Dectect if the ssh stage is finished
+ """
+ feature_check = crmsh.healthcheck.PasswordlessHaclusterAuthenticationFeature()
+ return feature_check.check_quick() and feature_check.check_local([utils.this_node()])
+
+
+def csync2_stage_finished():
+ """
+ Dectect if the csync2 stage is finished
+ """
+ return ServiceManager().service_is_active(CSYNC2_SERVICE)
+
+
+def corosync_stage_finished():
+ """
+ Dectect if the corosync stage is finished
+ """
+ return os.path.exists(corosync.conf())
+
+
+INIT_STAGE_CHECKER = {
+ # stage: (function, is_internal)
+ "ssh": (ssh_stage_finished, False),
+ "csync2": (csync2_stage_finished, False),
+ "corosync": (corosync_stage_finished, False),
+ "remote_auth": (init_remote_auth, True),
+ "sbd": (lambda: True, False),
+ "upgradeutil": (init_upgradeutil, True),
+ "cluster": (is_online, False)
+}
+
+
+JOIN_STAGE_CHECKER = {
+ # stage: (function, is_internal)
+ "ssh": (ssh_stage_finished, False),
+ "csync2": (csync2_stage_finished, False),
+ "ssh_merge": (lambda: True, False),
+ "cluster": (is_online, False)
+}
+
+
+def check_stage_dependency(stage):
+ stage_checker = INIT_STAGE_CHECKER if _context.type == "init" else JOIN_STAGE_CHECKER
+ if stage not in stage_checker:
+ return
+ stage_order = list(stage_checker.keys())
+ for stage_name in stage_order:
+ if stage == stage_name:
+ break
+ func, is_internal = stage_checker[stage_name]
+ if is_internal:
+ func()
+ elif not func():
+ utils.fatal(f"Please run '{stage_name}' stage first")
+
+
def bootstrap_init(context):
"""
Init cluster process
"""
global _context
_context = context
-
- init()
-
stage = _context.stage
- if stage is None:
- stage = ""
- # vgfs stage requires running cluster, everything else requires inactive cluster,
- # except ssh and csync2 (which don't care) and csync2_remote (which mustn't care,
- # just in case this breaks ha-cluster-join on another node).
- if stage in ("vgfs", "admin", "qdevice", "ocfs2"):
- if not _context.cluster_is_running:
- utils.fatal("Cluster is inactive - can't run %s stage" % (stage))
- elif stage == "":
- if _context.cluster_is_running:
- utils.fatal("Cluster is currently active - can't run")
- elif stage not in ("ssh", "csync2", "csync2_remote", "qnetd_remote", "sbd", "ocfs2"):
- if _context.cluster_is_running:
- utils.fatal("Cluster is currently active - can't run %s stage" % (stage))
+ init()
_context.load_profiles()
_context.init_sbd_manager()
- # Need hostname resolution to work, want NTP (but don't block csync2_remote)
- if stage not in ('csync2_remote', 'qnetd_remote'):
- check_tty()
- if not check_prereqs(stage):
- return
- else:
+ if stage in ('csync2_remote', 'qnetd_remote'):
args = _context.args
- logger_utils.log_only_to_file("args: {}".format(args))
+ logger_utils.log_only_to_file(f"args: {args}")
if len(args) != 2:
- utils.fatal(f"Expected NODE argument to {stage} stage")
+ utils.fatal(f"Expected NODE argument for '{stage}' stage")
_context.cluster_node = args[1]
+ else:
+ check_tty()
+ if not check_prereqs():
+ return
if stage and _context.cluster_is_running and \
not ServiceManager(shell=sh.ClusterShellAdaptorForLocalShell(sh.LocalShell())).service_is_active(CSYNC2_SERVICE):
@@ -2415,6 +2491,7 @@
_context.node_list_in_cluster = [utils.this_node()]
if stage != "":
+ check_stage_dependency(stage)
globals()["init_" + stage]()
else:
init_ssh()
@@ -2468,6 +2545,17 @@
print(out)
+def detect_cluster_service_on_node(peer_node):
+ service_manager = ServiceManager()
+ for _ in range(REJOIN_COUNT):
+ if service_manager.service_is_active("pacemaker.service", peer_node):
+ break
+ logger.warning("Cluster is inactive on %s. Retry in %d seconds", peer_node, REJOIN_INTERVAL)
+ sleep(REJOIN_INTERVAL)
+ else:
+ utils.fatal("Cluster is inactive on {}".format(peer_node))
+
+
def bootstrap_join(context):
"""
Join cluster process
@@ -2480,15 +2568,13 @@
check_tty()
- corosync_active = ServiceManager(sh.ClusterShellAdaptorForLocalShell(sh.LocalShell())).service_is_active("corosync.service")
- if corosync_active and _context.stage != "ssh":
- utils.fatal("Abort: Cluster is currently active. Run this command on a node joining the cluster.")
-
- if not check_prereqs("join"):
+ if not check_prereqs():
return
if _context.stage != "":
remote_user, cluster_node = _parse_user_at_host(_context.cluster_node, _context.current_user)
+ init_upgradeutil()
+ check_stage_dependency(_context.stage)
globals()["join_" + _context.stage](cluster_node, remote_user)
else:
if not _context.yes_to_all and _context.cluster_node is None:
@@ -2506,27 +2592,15 @@
init_upgradeutil()
remote_user, cluster_node = _parse_user_at_host(_context.cluster_node, _context.current_user)
utils.ping_node(cluster_node)
-
join_ssh(cluster_node, remote_user)
remote_user = utils.user_of(cluster_node)
- service_manager = ServiceManager()
- n = 0
- while n < REJOIN_COUNT:
- if service_manager.service_is_active("pacemaker.service", cluster_node):
- break
- n += 1
- logger.warning("Cluster is inactive on %s. Retry in %d seconds", cluster_node, REJOIN_INTERVAL)
- sleep(REJOIN_INTERVAL)
- else:
- utils.fatal("Cluster is inactive on {}".format(cluster_node))
-
lock_inst = lock.RemoteLock(cluster_node)
try:
with lock_inst.lock():
+ service_manager = ServiceManager()
_context.node_list_in_cluster = utils.fetch_cluster_node_list_from_node(cluster_node)
setup_passwordless_with_other_nodes(cluster_node, remote_user)
- join_remote_auth(cluster_node, remote_user)
_context.skip_csync2 = not service_manager.service_is_active(CSYNC2_SERVICE, cluster_node)
if _context.skip_csync2:
service_manager.stop_service(CSYNC2_SERVICE, disable=True)
@@ -2556,14 +2630,6 @@
ocfs2_inst.join_ocfs2(peer_host)
-def join_remote_auth(node, user):
- if os.path.exists(PCMK_REMOTE_AUTH):
- utils.rmfile(PCMK_REMOTE_AUTH)
- pcmk_remote_dir = os.path.dirname(PCMK_REMOTE_AUTH)
- utils.mkdirs_owned(pcmk_remote_dir, mode=0o750, gid="haclient")
- utils.touch(PCMK_REMOTE_AUTH)
-
-
def remove_qdevice():
"""
Remove qdevice service and configuration from cluster
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/constants.py new/crmsh-4.6.0+20240424.11e262d0/crmsh/constants.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/constants.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/crmsh/constants.py 2024-04-24 11:30:11.000000000 +0200
@@ -511,4 +511,6 @@
RSC_ROLE_PROMOTED_LEGACY = "Master"
RSC_ROLE_UNPROMOTED_LEGACY = "Slave"
PCMK_VERSION_DEFAULT = "2.0.0"
+
+NON_FUNCTIONAL_COMMANDS = ('help', 'cd', 'ls', 'quit', 'up')
# vim:ts=4:sw=4:et:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/healthcheck.py new/crmsh-4.6.0+20240424.11e262d0/crmsh/healthcheck.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/healthcheck.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/crmsh/healthcheck.py 2024-04-24 11:30:11.000000000 +0200
@@ -6,6 +6,7 @@
import sys
import typing
+import crmsh.constants
import crmsh.parallax
import crmsh.utils
@@ -120,8 +121,8 @@
def check_quick(self) -> bool:
for key_type in self.KEY_TYPES:
try:
- os.stat('{}/{}'.format(self.SSH_DIR, key_type))
- os.stat('{}/{}.pub'.format(self.SSH_DIR, key_type))
+ os.stat('{}/id_{}'.format(self.SSH_DIR, key_type))
+ os.stat('{}/id_{}.pub'.format(self.SSH_DIR, key_type))
return True
except FileNotFoundError:
pass
@@ -131,7 +132,7 @@
try:
for node in nodes:
subprocess.check_call(
- ['sudo', 'su', '-', 'hacluster', '-c', 'ssh hacluster@{} true'.format(node)],
+ ['sudo', 'su', '-', 'hacluster', '-c', 'ssh {} hacluster@{} true'.format(crmsh.constants.SSH_OPTION, node)],
stdin=subprocess.DEVNULL,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/ui_cluster.py new/crmsh-4.6.0+20240424.11e262d0/crmsh/ui_cluster.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/ui_cluster.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/crmsh/ui_cluster.py 2024-04-24 11:30:11.000000000 +0200
@@ -331,12 +331,6 @@
'''
Initialize a cluster.
'''
- def looks_like_hostnames(lst):
- sectionlist = bootstrap.INIT_STAGES
- return all(not (l.startswith('-') or l in sectionlist) for l in lst)
- if len(args) > 0:
- if '--dry-run' in args or looks_like_hostnames(args):
- args = ['--yes', '--nodes'] + [arg for arg in args if arg != '--dry-run']
parser = ArgumentParser(description="""
Initialize a cluster from scratch. This command configures
a complete cluster, and can also add additional cluster
@@ -471,8 +465,6 @@
if stage == "vgfs":
stage = "ocfs2"
logger.warning("vgfs stage was deprecated and is an alias of ocfs2 stage now")
- if stage not in bootstrap.INIT_STAGES and stage != "":
- parser.error("Invalid stage (%s)" % (stage))
if options.qnetd_addr_input:
if not ServiceManager().service_is_available("corosync-qdevice.service"):
@@ -547,12 +539,11 @@
stage = ""
if len(args) == 1:
stage = args[0]
- if stage not in ("ssh", "csync2", "ssh_merge", "cluster", ""):
- parser.error("Invalid stage (%s)" % (stage))
join_context = bootstrap.Context.set_context(options)
join_context.ui_context = context
join_context.stage = stage
+ join_context.cluster_is_running = ServiceManager(sh.ClusterShellAdaptorForLocalShell(sh.LocalShell())).service_is_active("pacemaker.service")
join_context.type = "join"
join_context.validate_option()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/ui_context.py new/crmsh-4.6.0+20240424.11e262d0/crmsh/ui_context.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/ui_context.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/crmsh/ui_context.py 2024-04-24 11:30:11.000000000 +0200
@@ -82,6 +82,10 @@
cmd = True
break
if cmd:
+ if self.command_name not in constants.NON_FUNCTIONAL_COMMANDS:
+ entry = self.current_level()
+ if 'requires' in dir(entry) and not entry.requires():
+ self.fatal_error("Missing requirements")
utils.check_user_access(self.current_level().name)
rv = self.execute_command() is not False
except (ValueError, IOError) as e:
@@ -239,8 +243,7 @@
def enter_level(self, level):
'''
Pushes an instance of the given UILevel
- subclass onto self.stack. Checks prerequirements
- for the level (if any).
+ subclass onto self.stack.
'''
# on entering new level we need to set the
# interactive option _before_ creating the level
@@ -251,8 +254,6 @@
self._in_transit = True
entry = level()
- if 'requires' in dir(entry) and not entry.requires():
- self.fatal_error("Missing requirements")
self.stack.append(entry)
self.clear_readline_cache()
@@ -320,7 +321,8 @@
'''
ok = True
if len(self.stack) > 1:
- ok = self.current_level().end_game(no_questions_asked=self._in_transit) is not False
+ if self.command_name and self.command_name not in constants.NON_FUNCTIONAL_COMMANDS:
+ ok = self.current_level().end_game(no_questions_asked=self._in_transit) is not False
self.stack.pop()
self.clear_readline_cache()
return ok
@@ -341,7 +343,9 @@
'''
Exit from the top level
'''
- ok = self.current_level().end_game()
+ ok = True
+ if self.command_name and self.command_name not in constants.NON_FUNCTIONAL_COMMANDS:
+ ok = self.current_level().end_game()
if options.interactive and not options.batch:
if constants.need_reset:
utils.ext_cmd("reset")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/utils.py new/crmsh-4.6.0+20240424.11e262d0/crmsh/utils.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/crmsh/utils.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/crmsh/utils.py 2024-04-24 11:30:11.000000000 +0200
@@ -468,14 +468,6 @@
fatal("Failed to chmod {}: {}".format(path, err))
-def touch(file_name):
- rc, out, err = ShellUtils().get_stdout_stderr("touch " + file_name, no_reg=True)
- if rc != 0:
- rc, out, err = ShellUtils().get_stdout_stderr("sudo touch " + file_name, no_reg=True)
- if rc != 0:
- fatal("Failed create file {}: {}".format(file_name, err))
-
-
def copy_local_file(src, dest):
try:
shutil.copyfile(src, dest)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/test/features/bootstrap_bugs.feature new/crmsh-4.6.0+20240424.11e262d0/test/features/bootstrap_bugs.feature
--- old/crmsh-4.6.0+20240411.9c4bf6c1/test/features/bootstrap_bugs.feature 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/test/features/bootstrap_bugs.feature 2024-04-24 11:30:11.000000000 +0200
@@ -5,6 +5,31 @@
Need nodes: hanode1 hanode2 hanode3
@clean
+ Scenario: Stages dependency (bsc#1175865)
+ Given Cluster service is "stopped" on "hanode1"
+ And Cluster service is "stopped" on "hanode2"
+ When Try "crm cluster init cluster -y" on "hanode1"
+ Then Except "ERROR: cluster.init: Please run 'ssh' stage first"
+ When Run "crm cluster init ssh -y" on "hanode1"
+ When Try "crm cluster init cluster -y" on "hanode1"
+ Then Except "ERROR: cluster.init: Please run 'csync2' stage first"
+ When Run "crm cluster init csync2 -y" on "hanode1"
+ When Try "crm cluster init cluster -y" on "hanode1"
+ Then Except "ERROR: cluster.init: Please run 'corosync' stage first"
+ When Run "crm cluster init corosync -y" on "hanode1"
+ When Run "crm cluster init cluster -y" on "hanode1"
+ Then Cluster service is "started" on "hanode1"
+
+ When Try "crm cluster join cluster -c hanode1 -y" on "hanode2"
+ Then Except "ERROR: cluster.join: Please run 'ssh' stage first"
+ When Try "crm cluster join ssh -c hanode1 -y" on "hanode2"
+ When Try "crm cluster join cluster -c hanode1 -y" on "hanode2"
+ Then Except "ERROR: cluster.join: Please run 'csync2' stage first"
+ When Try "crm cluster join csync2 -c hanode1 -y" on "hanode2"
+ When Try "crm cluster join cluster -c hanode1 -y" on "hanode2"
+ Then Cluster service is "started" on "hanode2"
+
+ @clean
Scenario: Set placement-strategy value as "default"(bsc#1129462)
Given Cluster service is "stopped" on "hanode1"
And Cluster service is "stopped" on "hanode2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/test/features/bootstrap_options.feature new/crmsh-4.6.0+20240424.11e262d0/test/features/bootstrap_options.feature
--- old/crmsh-4.6.0+20240411.9c4bf6c1/test/features/bootstrap_options.feature 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/test/features/bootstrap_options.feature 2024-04-24 11:30:11.000000000 +0200
@@ -14,6 +14,7 @@
@clean
Scenario: Check help output
+ When Run "crm configure help primitive" OK
When Run "crm -h" on "hanode1"
Then Output is the same with expected "crm" help output
When Run "crm cluster init -h" on "hanode1"
@@ -42,6 +43,15 @@
Then Expected "Can't use -N/--nodes option and stage(sbd) together" in stderr
@clean
+ Scenario: Stage validation
+ When Try "crm cluster init fdsf -y" on "hanode1"
+ Then Expected "Invalid stage: fdsf(available stages: ssh, csync2, corosync, sbd, cluster, ocfs2, admin, qdevice)" in stderr
+ When Try "crm cluster join fdsf -y" on "hanode1"
+ Then Expected "Invalid stage: fdsf(available stages: ssh, csync2, ssh_merge, cluster)" in stderr
+ When Try "crm cluster join ssh -y" on "hanode1"
+ Then Expected "Can't use stage(ssh) without specifying cluster node" in stderr
+
+ @clean
Scenario: Init whole cluster service on node "hanode1" using "--node" option
Given Cluster service is "stopped" on "hanode1"
And Cluster service is "stopped" on "hanode2"
@@ -51,6 +61,9 @@
And Online nodes are "hanode1 hanode2"
And Show cluster status on "hanode1"
+ When Try "crm cluster init cluster -y" on "hanode1"
+ Then Expected "Cluster is active, can't run 'cluster' stage" in stderr
+
@clean
Scenario: Bind specific network interface using "-i" option
Given Cluster service is "stopped" on "hanode1"
@@ -96,6 +109,9 @@
And Cluster virtual IP is "@vip.0"
And Show cluster status on "hanode1"
+ When Try "crm cluster init cluster -y" on "hanode1"
+ Then Expected "Cluster is active, can't run 'cluster' stage" in stderr
+
@clean
Scenario: Init cluster service with udpu using "-u" option
Given Cluster service is "stopped" on "hanode1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/test/features/qdevice_validate.feature new/crmsh-4.6.0+20240424.11e262d0/test/features/qdevice_validate.feature
--- old/crmsh-4.6.0+20240411.9c4bf6c1/test/features/qdevice_validate.feature 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/test/features/qdevice_validate.feature 2024-04-24 11:30:11.000000000 +0200
@@ -110,7 +110,7 @@
Scenario: Run qdevice stage on inactive cluster node
Given Cluster service is "stopped" on "hanode1"
When Try "crm cluster init qdevice --qnetd-hostname=qnetd-node"
- Then Except "ERROR: cluster.init: Cluster is inactive - can't run qdevice stage"
+ Then Except "ERROR: cluster.init: Cluster is inactive, can't run 'qdevice' stage"
@clean
Scenario: Run qdevice stage but miss "--qnetd-hostname" option
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.6.0+20240411.9c4bf6c1/test/unittests/test_bootstrap.py new/crmsh-4.6.0+20240424.11e262d0/test/unittests/test_bootstrap.py
--- old/crmsh-4.6.0+20240411.9c4bf6c1/test/unittests/test_bootstrap.py 2024-04-11 08:31:14.000000000 +0200
+++ new/crmsh-4.6.0+20240424.11e262d0/test/unittests/test_bootstrap.py 2024-04-24 11:30:11.000000000 +0200
@@ -550,6 +550,7 @@
bootstrap.join_ssh(None, None)
mock_error.assert_called_once_with("No existing IP/hostname specified (use -c option)")
+ @mock.patch('crmsh.bootstrap.detect_cluster_service_on_node')
@mock.patch('crmsh.bootstrap.get_node_canonical_hostname')
@mock.patch('crmsh.bootstrap.swap_public_ssh_key_for_secondary_user')
@mock.patch('crmsh.bootstrap.change_user_shell')
@@ -561,8 +562,9 @@
self,
mock_start_service, mock_config_ssh, mock_ssh_copy_id, mock_swap, mock_change, mock_swap_2,
mock_get_node_cononical_hostname,
+ mock_detect_cluster_service_on_node
):
- bootstrap._context = mock.Mock(current_user="bob", default_nic="eth1", use_ssh_agent=False)
+ bootstrap._context = mock.Mock(current_user="bob", default_nic="eth1", use_ssh_agent=False, stage=None)
mock_swap.return_value = None
mock_ssh_copy_id.return_value = 0
mock_get_node_cononical_hostname.return_value='node1'
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mybatis for openSUSE:Factory checked in at 2024-04-25 20:48:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mybatis (Old)
and /work/SRC/openSUSE:Factory/.mybatis.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mybatis"
Thu Apr 25 20:48:31 2024 rev:11 rq:1170004 version:3.5.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/mybatis/mybatis.changes 2024-02-21 18:00:40.368539329 +0100
+++ /work/SRC/openSUSE:Factory/.mybatis.new.1880/mybatis.changes 2024-04-25 20:48:34.812753590 +0200
@@ -1,0 +2,5 @@
+Wed Apr 24 09:15:10 UTC 2024 - Fridrich Strba <fstrba(a)suse.com>
+
+- Make the apache-commons-ognl a non-optional dependency
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mybatis.spec ++++++
--- /var/tmp/diff_new_pack.4E7TM0/_old 2024-04-25 20:48:35.324772391 +0200
+++ /var/tmp/diff_new_pack.4E7TM0/_new 2024-04-25 20:48:35.324772391 +0200
@@ -72,7 +72,8 @@
%prep
%setup -q -n %{name}-3-%{name}-%{version}
-%pom_change_dep ognl:ognl org.apache.commons:commons-ognl:4.0-SNAPSHOT
+%pom_remove_dep ognl:ognl
+%pom_add_dep org.apache.commons:commons-ognl:4.0-SNAPSHOT
%patch -P 0 -p1
%pom_remove_plugin :maven-pdf-plugin
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libQuotient for openSUSE:Factory checked in at 2024-04-25 20:48:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libQuotient (Old)
and /work/SRC/openSUSE:Factory/.libQuotient.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libQuotient"
Thu Apr 25 20:48:29 2024 rev:16 rq:1169999 version:0.8.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/libQuotient/libQuotient.changes 2024-03-14 17:45:23.706122693 +0100
+++ /work/SRC/openSUSE:Factory/.libQuotient.new.1880/libQuotient.changes 2024-04-25 20:48:33.432702916 +0200
@@ -1,0 +2,30 @@
+Wed Apr 24 08:40:39 UTC 2024 - Christopher Hock <christopher.hock(a)suse.com>
+
+- Add qt6-sql-sqlite to BuildRequires to allow Qt6 build to pass
+- Update to 0.8.2
+ * Historical encrypted messages can now be decrypted with old
+ megolm keys retrieved from SSSS
+ (gh#quotient-im/libQuotient#687)
+ * The User library API is getting prepared to be split into
+ that for room members (RoomMember) and user profiles
+ (stays in User for now) in 0.9, is deprecating mos of User
+ methods that accept Room for the member context
+ (gh#quotient-im/libQuotient#685)
+ * Along the same lines: functions to (un)ignore users by userid
+ rather than User* are introduced; the old signatures are
+ deprecated now and will be removed in 0.9
+ (gh#quotient-im/libQuotient#718)
+ * More efficient (less cache-wasting) avatar retrieval
+ (gh#quotient-im/libQuotient#711)
+ * Property for querying conection's account_data
+ (gh#quotient-im/libQuotient#719)
+ * Fix brain-split when checking the event types on some Linux
+ distributions
+ (gh#quotient-im/libQuotient#726)
+ (gh#quotient-im/libQuotient#692)
+ * A new event class for m.room.server_acl
+ (gh#quotient-im/libQuotient#729)
+ * The library supports defaulting direct chats to E2EE now
+ (gh#quotient-im/libQuotient#730)
+
+-------------------------------------------------------------------
Old:
----
libQuotient-0.8.1.2.tar.gz
New:
----
libQuotient-0.8.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libQuotient.spec ++++++
--- /var/tmp/diff_new_pack.lvlJmt/_old 2024-04-25 20:48:34.316735377 +0200
+++ /var/tmp/diff_new_pack.lvlJmt/_new 2024-04-25 20:48:34.320735524 +0200
@@ -27,7 +27,7 @@
%define rname libQuotient
%bcond_without e2ee
Name: libQuotient%{?pkg_suffix}
-Version: 0.8.1.2
+Version: 0.8.2
Release: 0
Summary: Library for Qt Matrix Clients
License: LGPL-2.1-only
@@ -42,6 +42,7 @@
%endif
BuildRequires: pkgconfig
%if 0%{?qt6}
+BuildRequires: qt6-sql-sqlite
BuildRequires: cmake(Qt6Concurrent)
BuildRequires: cmake(Qt6Core)
BuildRequires: cmake(Qt6Gui)
++++++ libQuotient-0.8.1.2.tar.gz -> libQuotient-0.8.2.tar.gz ++++++
++++ 21390 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package dcmtk for openSUSE:Factory checked in at 2024-04-25 20:48:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dcmtk (Old)
and /work/SRC/openSUSE:Factory/.dcmtk.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dcmtk"
Thu Apr 25 20:48:27 2024 rev:30 rq:1169995 version:3.6.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/dcmtk/dcmtk.changes 2024-03-01 23:39:53.954775153 +0100
+++ /work/SRC/openSUSE:Factory/.dcmtk.new.1880/dcmtk.changes 2024-04-25 20:48:31.980649598 +0200
@@ -1,0 +2,14 @@
+Wed Apr 24 07:45:23 UTC 2024 - Christophe Marin <christophe(a)krop.fr>
+
+- Add upstream changes:
+ * 0001-Fixed-buffer-overflow-in-decompression-codecs.patch
+ * 0001-Fixed-possible-overflows-when-allocating-memory.patch
+ * 0001-Fixed-two-segmentation-faults.patch
+ * 0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch
+ * 0002-Fixed-unchecked-typecasts-and-fixed-LUT-handling.patch
+ (boo#1223324, CVE-2024-28130)
+ * 0003-Fixed-wrong-error-handling-previous-commit.patch
+ * 0001-Fixed-DcmDecimalString-unit-tests.patch
+- Run unit tests
+
+-------------------------------------------------------------------
New:
----
0001-Fixed-DcmDecimalString-unit-tests.patch
0001-Fixed-buffer-overflow-in-decompression-codecs.patch
0001-Fixed-possible-overflows-when-allocating-memory.patch
0001-Fixed-two-segmentation-faults.patch
0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch
0002-Fixed-unchecked-typecasts-and-fixed-LUT-handling.patch
0003-Fixed-wrong-error-handling-previous-commit.patch
BETA DEBUG BEGIN:
New: * 0003-Fixed-wrong-error-handling-previous-commit.patch
* 0001-Fixed-DcmDecimalString-unit-tests.patch
- Run unit tests
New:- Add upstream changes:
* 0001-Fixed-buffer-overflow-in-decompression-codecs.patch
* 0001-Fixed-possible-overflows-when-allocating-memory.patch
New: * 0001-Fixed-buffer-overflow-in-decompression-codecs.patch
* 0001-Fixed-possible-overflows-when-allocating-memory.patch
* 0001-Fixed-two-segmentation-faults.patch
New: * 0001-Fixed-possible-overflows-when-allocating-memory.patch
* 0001-Fixed-two-segmentation-faults.patch
* 0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch
New: * 0001-Fixed-two-segmentation-faults.patch
* 0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch
* 0002-Fixed-unchecked-typecasts-and-fixed-LUT-handling.patch
New: * 0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch
* 0002-Fixed-unchecked-typecasts-and-fixed-LUT-handling.patch
(boo#1223324, CVE-2024-28130)
New: (boo#1223324, CVE-2024-28130)
* 0003-Fixed-wrong-error-handling-previous-commit.patch
* 0001-Fixed-DcmDecimalString-unit-tests.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dcmtk.spec ++++++
--- /var/tmp/diff_new_pack.9IFFMF/_old 2024-04-25 20:48:33.100690725 +0200
+++ /var/tmp/diff_new_pack.9IFFMF/_new 2024-04-25 20:48:33.100690725 +0200
@@ -26,6 +26,14 @@
Source0: ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/release/%{name}-%{version}.tar.gz
# PATCH-FIX-OPENSUSE dcmtk-fix-DCMTKTargets.cmake.patch -- Do not track executables to be able to use dcmtk-devel without dcmtk package
Patch0: dcmtk-fix-DCMTKTargets.cmake.patch
+# PATCH-FIX-UPSTREAM
+Patch1: 0001-Fixed-buffer-overflow-in-decompression-codecs.patch
+Patch2: 0001-Fixed-possible-overflows-when-allocating-memory.patch
+Patch3: 0001-Fixed-two-segmentation-faults.patch
+Patch4: 0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch
+Patch5: 0002-Fixed-unchecked-typecasts-and-fixed-LUT-handling.patch
+Patch6: 0003-Fixed-wrong-error-handling-previous-commit.patch
+Patch7: 0001-Fixed-DcmDecimalString-unit-tests.patch
BuildRequires: cmake
BuildRequires: doxygen
BuildRequires: fdupes
@@ -95,7 +103,10 @@
# Install README file to documentation
install -pm 0644 README %{buildroot}%{_docdir}/dcmtk/
-%fdupes -s %{buildroot}
+%fdupes %{buildroot}
+
+%check
+%ctest
%ldconfig_scriptlets -n libdcmtk%{abiversion}
++++++ 0001-Fixed-DcmDecimalString-unit-tests.patch ++++++
From 66c317feae446deda1a389226aa24c95a0eeac4c Mon Sep 17 00:00:00 2001
From: Marco Eichelberg <dicom(a)offis.de>
Date: Wed, 13 Mar 2024 23:03:40 +0100
Subject: [PATCH] Fixed DcmDecimalString unit tests.
---
dcmdata/tests/tvrds.cc | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/dcmdata/tests/tvrds.cc b/dcmdata/tests/tvrds.cc
index a9132a341..0e929304d 100644
--- a/dcmdata/tests/tvrds.cc
+++ b/dcmdata/tests/tvrds.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 2011-2020, OFFIS e.V.
+ * Copyright (C) 2011-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -30,7 +30,7 @@
OFTEST(dcmdata_decimalString_1)
{
- DcmDecimalString decStr(DCM_ContourData, EVR_DS);
+ DcmDecimalString decStr(DCM_ContourData);
OFVector<Float64> doubleVals;
OFCHECK(decStr.putString("1\\2.0\\3.5\\-4.99\\+500.005\\6.66E-01").good());
OFCHECK(decStr.getFloat64Vector(doubleVals).good());
@@ -45,7 +45,7 @@ OFTEST(dcmdata_decimalString_1)
OFTEST(dcmdata_decimalString_2)
{
- DcmDecimalString decStr(DCM_ContourData, EVR_DS);
+ DcmDecimalString decStr(DCM_ContourData);
OFVector<Float64> doubleVals;
/* insert a NULL byte into the string */
OFCHECK(decStr.putString("1\\2.0\\3.5\\-4.99\0\\+500.005\\6.66E-01", 34).good());
@@ -61,7 +61,7 @@ OFTEST(dcmdata_decimalString_2)
OFTEST(dcmdata_decimalString_3)
{
- DcmDecimalString decStr(DCM_ContourData, EVR_DS);
+ DcmDecimalString decStr(DCM_ContourData);
OFVector<Float64> doubleVals;
/* insert a NULL byte into the string */
OFCHECK(decStr.putOFStringArray(OFString("1\\2.0\\3.5\\-4.99\0\\+500.005\\6.66E-01", 34)).good());
@@ -77,7 +77,7 @@ OFTEST(dcmdata_decimalString_3)
OFTEST(dcmdata_decimalString_4)
{
- DcmDecimalString decStr(DCM_ContourData, EVR_DS);
+ DcmDecimalString decStr(DCM_ContourData);
OFVector<Float64> doubleVals;
OFCHECK(decStr.putString("1\\2.0\\3.5\\-4.99\\+500.005\\6.66E-01\\").good());
OFCHECK_EQUAL(decStr.getVM(), 7);
@@ -96,7 +96,7 @@ OFTEST(dcmdata_decimalString_putFloat64)
{
// Test insertion in the beginning
OFString testStr;
- DcmDecimalString decStr(DCM_ContourData, EVR_DS);
+ DcmDecimalString decStr(DCM_ContourData);
OFCHECK(decStr.putFloat64(0, 0).good());
decStr.getOFStringArray(testStr);
OFCHECK(testStr == "0");
--
2.44.0
++++++ 0001-Fixed-buffer-overflow-in-decompression-codecs.patch ++++++
From 31ff413f97839c61752875569862a94a6cce06dd Mon Sep 17 00:00:00 2001
From: Marco Eichelberg <dicom(a)offis.de>
Date: Thu, 28 Dec 2023 17:32:42 +0100
Subject: [PATCH] Fixed buffer overflow in decompression codecs.
Fixed the computation of the element size for the decompressed PixelData
element in all decompression codecs. In the case of datasets that cannot
be decoded to an unencapsulated transfer syntax, since the resulting
pixel data would be larger than 4 GByte, an overflow of the size
variable remained undetected and could lead to a segmentation fault due
to a buffer overrun.
This closes DCMTK issue #1099.
---
dcmdata/libsrc/dcrleccd.cc | 39 ++++++++++++++++++++++++++++++--------
dcmjpeg/libsrc/djcodecd.cc | 36 ++++++++++++++++++++++++++++++-----
dcmjpls/libsrc/djcodecd.cc | 17 ++++++++++++++++-
3 files changed, 78 insertions(+), 14 deletions(-)
diff --git a/dcmdata/libsrc/dcrleccd.cc b/dcmdata/libsrc/dcrleccd.cc
index ffdd14116..5ddc8f6be 100644
--- a/dcmdata/libsrc/dcrleccd.cc
+++ b/dcmdata/libsrc/dcrleccd.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 2002-2020, OFFIS e.V.
+ * Copyright (C) 2002-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -129,9 +129,25 @@ OFCondition DcmRLECodecDecoder::decode(
if (rledecoder.fail()) result = EC_MemoryExhausted; // RLE decoder failed to initialize
else
{
- const size_t frameSize = OFstatic_cast(size_t, imageBytesAllocated) * OFstatic_cast(size_t, imageRows)
- * OFstatic_cast(size_t, imageColumns) * OFstatic_cast(size_t, imageSamplesPerPixel);
- size_t totalSize = frameSize * imageFrames;
+ // compute size of uncompressed frame, in bytes
+ Uint32 frameSize = imageBytesAllocated * imageRows * imageColumns * imageSamplesPerPixel;
+
+ // check for overflow
+ if (imageRows != 0 && frameSize / imageRows != (imageBytesAllocated * imageColumns * imageSamplesPerPixel))
+ {
+ DCMDATA_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
+ Uint32 totalSize = frameSize * imageFrames;
+
+ // check for overflow
+ if (totalSize == 0xFFFFFFFF || (frameSize != 0 && totalSize / frameSize != OFstatic_cast(Uint32, imageFrames)))
+ {
+ DCMDATA_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
if (totalSize & 1) totalSize++; // align on 16-bit word boundary
Uint16 *imageData16 = NULL;
Sint32 currentFrame = 0;
@@ -139,7 +155,7 @@ OFCondition DcmRLECodecDecoder::decode(
Uint32 numberOfStripes = 0;
Uint32 fragmentLength = 0;
- result = uncompressedPixelData.createUint16Array(OFstatic_cast(Uint32, totalSize/sizeof(Uint16)), imageData16);
+ result = uncompressedPixelData.createUint16Array(totalSize/sizeof(Uint16), imageData16);
if (result.good())
{
Uint8 *imageData8 = OFreinterpret_cast(Uint8 *, imageData16);
@@ -463,7 +479,7 @@ OFCondition DcmRLECodecDecoder::decodeFrame(
Uint16 imageColumns = 0;
Sint32 imageFrames = 1;
Uint16 imageBitsAllocated = 0;
- Uint16 imageBytesAllocated = 0;
+ Uint32 imageBytesAllocated = 0;
Uint16 imagePlanarConfiguration = 0;
Uint32 rleHeader[16];
OFString photometricInterpretation;
@@ -476,7 +492,7 @@ OFCondition DcmRLECodecDecoder::decodeFrame(
if (result.good()) result = dataset->findAndGetOFString(DCM_PhotometricInterpretation, photometricInterpretation);
if (result.good())
{
- imageBytesAllocated = OFstatic_cast(Uint16, imageBitsAllocated / 8);
+ imageBytesAllocated = OFstatic_cast(Uint32, imageBitsAllocated / 8);
if ((imageBitsAllocated < 8)||(imageBitsAllocated % 8 != 0))
{
DCMDATA_ERROR("The RLE decoder only supports images where BitsAllocated is a multiple of 8.");
@@ -500,9 +516,16 @@ OFCondition DcmRLECodecDecoder::decodeFrame(
const size_t bytesPerStripe = OFstatic_cast(size_t, imageColumns) * OFstatic_cast(size_t, imageRows);
Uint32 numberOfStripes = 0;
Uint32 fragmentLength = 0;
- Uint32 frameSize = OFstatic_cast(Uint32, imageBytesAllocated) * OFstatic_cast(Uint32, imageRows)
+ Uint32 frameSize = imageBytesAllocated * OFstatic_cast(Uint32, imageRows)
* OFstatic_cast(Uint32, imageColumns) * OFstatic_cast(Uint32, imageSamplesPerPixel);
+ // check for overflow
+ if (imageRows != 0 && frameSize / imageRows != (imageBytesAllocated * imageColumns * imageSamplesPerPixel))
+ {
+ DCMDATA_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
if (frameSize > bufSize) return EC_IllegalCall;
DcmRLEDecoder rledecoder(bytesPerStripe);
diff --git a/dcmjpeg/libsrc/djcodecd.cc b/dcmjpeg/libsrc/djcodecd.cc
index 364b75533..a93a8104b 100644
--- a/dcmjpeg/libsrc/djcodecd.cc
+++ b/dcmjpeg/libsrc/djcodecd.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 2001-2022, OFFIS e.V.
+ * Copyright (C) 2001-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -150,8 +150,25 @@ OFCondition DJCodecDecoder::decode(
if (jpeg == NULL) result = EC_MemoryExhausted;
else
{
- size_t frameSize = ((precision > 8) ? sizeof(Uint16) : sizeof(Uint8)) * imageRows * imageColumns * imageSamplesPerPixel;
- size_t totalSize = frameSize * imageFrames;
+ Uint32 imageBytesAllocated = (precision > 8) ? sizeof(Uint16) : sizeof(Uint8);
+ Uint32 frameSize = imageBytesAllocated * imageRows * imageColumns * imageSamplesPerPixel;
+
+ // check for overflow
+ if (imageRows != 0 && frameSize / imageRows != (imageBytesAllocated * imageColumns * imageSamplesPerPixel))
+ {
+ DCMJPEG_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
+ Uint32 totalSize = frameSize * imageFrames;
+
+ // check for overflow
+ if (totalSize == 0xFFFFFFFF || (frameSize != 0 && totalSize / frameSize != OFstatic_cast(Uint32, imageFrames)))
+ {
+ DCMJPEG_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
if (totalSize & 1) totalSize++; // align on 16-bit word boundary
Uint16 *imageData16 = NULL;
Sint32 currentFrame = 0;
@@ -166,7 +183,7 @@ OFCondition DJCodecDecoder::decode(
}
}
- result = uncompressedPixelData.createUint16Array(OFstatic_cast(Uint32, totalSize / sizeof(Uint16)), imageData16);
+ result = uncompressedPixelData.createUint16Array(totalSize / sizeof(Uint16), imageData16);
if (result.good())
{
Uint8 *imageData8 = OFreinterpret_cast(Uint8*, imageData16);
@@ -492,7 +509,16 @@ OFCondition DJCodecDecoder::decodeFrame(
if (precision == 0) result = EC_CannotChangeRepresentation; // something has gone wrong, bail out
else
{
- size_t frameSize = ((precision > 8) ? sizeof(Uint16) : sizeof(Uint8)) * imageRows * imageColumns * imageSamplesPerPixel;
+ Uint32 imageBytesAllocated = (precision > 8) ? sizeof(Uint16) : sizeof(Uint8);
+ Uint32 frameSize = imageBytesAllocated * imageRows * imageColumns * imageSamplesPerPixel;
+
+ // check for overflow
+ if (imageRows != 0 && frameSize / imageRows != (imageBytesAllocated * imageColumns * imageSamplesPerPixel))
+ {
+ DCMJPEG_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
if (frameSize > bufSize) return EC_IllegalCall;
DJDecoder *jpeg = createDecoderInstance(fromParam, djcp, precision, isYBR);
diff --git a/dcmjpls/libsrc/djcodecd.cc b/dcmjpls/libsrc/djcodecd.cc
index e04a21e0d..45e6fec56 100644
--- a/dcmjpls/libsrc/djcodecd.cc
+++ b/dcmjpls/libsrc/djcodecd.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 2007-2022, OFFIS e.V.
+ * Copyright (C) 2007-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -143,8 +143,23 @@ OFCondition DJLSDecoderBase::decode(
// compute size of uncompressed frame, in bytes
Uint32 frameSize = bytesPerSample * imageRows * imageColumns * imageSamplesPerPixel;
+ // check for overflow
+ if (imageRows != 0 && frameSize / imageRows != (bytesPerSample * imageColumns * imageSamplesPerPixel))
+ {
+ DCMJPLS_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
// compute size of pixel data attribute, in bytes
Uint32 totalSize = frameSize * imageFrames;
+
+ // check for overflow
+ if (totalSize == 0xFFFFFFFF || (frameSize != 0 && totalSize / frameSize != OFstatic_cast(Uint32, imageFrames)))
+ {
+ DCMJPLS_WARN("Cannot decompress image because uncompressed representation would exceed maximum possible size of PixelData attribute.");
+ return EC_ElemLengthExceeds32BitField;
+ }
+
if (totalSize & 1) totalSize++; // align on 16-bit word boundary
// assume we can cast the codec parameter to what we need
--
2.44.0
++++++ 0001-Fixed-possible-overflows-when-allocating-memory.patch ++++++
++++ 612 lines (skipped)
++++++ 0001-Fixed-two-segmentation-faults.patch ++++++
From c78e434c0c5f9d932874f0b17a8b4ce305ca01f5 Mon Sep 17 00:00:00 2001
From: Marco Eichelberg <dicom(a)offis.de>
Date: Wed, 13 Mar 2024 17:15:58 +0100
Subject: [PATCH] Fixed two segmentation faults.
Fixed two segmentations faults that could occur while processing an
invalid incoming DIMSE message due to insufficient error handling
causing a de-referenced NULL pointer.
Thanks to Nils Bars <nils.bars(a)rub.de> for the bug report and sample files.
This closes DCMTK issue #1114.
---
dcmdata/libsrc/dcelem.cc | 9 ++++++++-
dcmnet/libsrc/dimcmd.cc | 33 ++++++++++++++++++---------------
2 files changed, 26 insertions(+), 16 deletions(-)
diff --git a/dcmdata/libsrc/dcelem.cc b/dcmdata/libsrc/dcelem.cc
index 1524904be..3b9cc2bf7 100644
--- a/dcmdata/libsrc/dcelem.cc
+++ b/dcmdata/libsrc/dcelem.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 1994-2023, OFFIS e.V.
+ * Copyright (C) 1994-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -717,6 +717,13 @@ OFCondition DcmElement::loadValue(DcmInputStream *inStream)
if (isStreamNew)
delete readStream;
}
+ else
+ {
+ errorFlag = EC_InvalidStream; // incomplete dataset read from stream
+ DCMDATA_ERROR("DcmElement: " << getTagName() << " " << getTag()
+ << " larger (" << getLengthField() << ") than remaining bytes ("
+ << getTransferredBytes() << ") in file, premature end of stream");
+ }
}
/* return result value */
return errorFlag;
diff --git a/dcmnet/libsrc/dimcmd.cc b/dcmnet/libsrc/dimcmd.cc
index 6dca39546..ffd225f4b 100644
--- a/dcmnet/libsrc/dimcmd.cc
+++ b/dcmnet/libsrc/dimcmd.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 1994-2022, OFFIS e.V.
+ * Copyright (C) 1994-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were partly developed by
@@ -205,22 +205,25 @@ getString(DcmDataset *obj, DcmTagKey t, char *s, int maxlen, OFBool *spacePadded
return parseErrorWithMsg("dimcmd:getString: string too small", t);
} else {
ec = elem->getString(aString);
- strncpy(s, aString, maxlen);
- if (spacePadded)
+ if (ec.good())
{
- /* before we remove leading and tailing spaces we want to know
- * whether the string is actually space padded. Required to communicate
- * with dumb peers which send space padded UIDs and fail if they
- * receive correct UIDs back.
- *
- * This test can only detect space padded strings if
- * dcmEnableAutomaticInputDataCorrection is false; otherwise the padding
- * has already been removed by dcmdata at this stage.
- */
- size_t s_len = strlen(s);
- if ((s_len > 0)&&(s[s_len-1] == ' ')) *spacePadded = OFTrue; else *spacePadded = OFFalse;
+ strncpy(s, aString, maxlen);
+ if (spacePadded)
+ {
+ /* before we remove leading and tailing spaces we want to know
+ * whether the string is actually space padded. Required to communicate
+ * with dumb peers which send space padded UIDs and fail if they
+ * receive correct UIDs back.
+ *
+ * This test can only detect space padded strings if
+ * dcmEnableAutomaticInputDataCorrection is false; otherwise the padding
+ * has already been removed by dcmdata at this stage.
+ */
+ size_t s_len = strlen(s);
+ if ((s_len > 0)&&(s[s_len-1] == ' ')) *spacePadded = OFTrue; else *spacePadded = OFFalse;
+ }
+ DU_stripLeadingAndTrailingSpaces(s);
}
- DU_stripLeadingAndTrailingSpaces(s);
}
}
return (ec.good())? ec : DIMSE_PARSEFAILED;
--
2.44.0
++++++ 0001-Fixed-unchecked-typecasts-of-DcmItem-search-results.patch ++++++
++++ 1666 lines (skipped)
++++++ 0002-Fixed-unchecked-typecasts-and-fixed-LUT-handling.patch ++++++
From 601b227eecaab33a3a3a11dc256d84b1a62f63af Mon Sep 17 00:00:00 2001
From: Marco Eichelberg <dicom(a)offis.de>
Date: Mon, 15 Apr 2024 12:19:33 +0200
Subject: [PATCH 2/3] Fixed unchecked typecasts and fixed LUT handling.
This commit adds further fixes for unchecked typecasts of DcmItem::search()
results (see description of previous commit). Furthermore, this commit
specifically addresses the handling of look-up tables (LUTs) in module
dcmpstat, where attribute (0028,3006) LUTData may use either US or OW
value representation, and (0028,3002) LUTDescriptor may be either US or SS.
The code should now properly handle all permitted value representations.
LUTData is now always written as OW in order to avoid the 64k size limit
for US in explicit VR encoding.
Thanks to Martin Zeiser from the Cisco Talos team
<vulndiscovery(a)external.cisco.com> for the bug report (TALOS-2024-1957).
Together with the previous commit, this closes DCMTK issue #1120.
---
dcmpstat/libsrc/dcmpstat.cc | 40 ++++++++++++++++-------
dcmpstat/libsrc/dvpspl.cc | 34 +++++++++++++------
dcmpstat/libsrc/dvpssv.cc | 34 +++++++++++++------
dcmpstat/libsrc/dvpssvl.cc | 25 +++++++++-----
dcmpstat/libsrc/dvpstat.cc | 65 +++++++++++++++++--------------------
dcmpstat/libsrc/dvpsvl.cc | 19 +++++++++--
6 files changed, 139 insertions(+), 78 deletions(-)
diff --git a/dcmpstat/libsrc/dcmpstat.cc b/dcmpstat/libsrc/dcmpstat.cc
index 4a8e5af6c..a7d11abac 100644
--- a/dcmpstat/libsrc/dcmpstat.cc
+++ b/dcmpstat/libsrc/dcmpstat.cc
@@ -384,12 +384,16 @@ OFCondition DcmPresentationState::read(DcmItem &dset)
{
item = seq->getItem(0);
stack.clear();
- // LUTDescriptor can be US or SS. For now we only handle US.
+
+ // LUTDescriptor can be US or SS
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTDescriptor.getTag(),
- stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US))
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_SS))
{
- modalityLUTDescriptor = *((DcmUnsignedShort *)(stack.top()));
+ // We explicitly use DcmElement::operator=(), which works for US and SS
+ DcmElement *mLUTDescriptor = &modalityLUTDescriptor;
+ mLUTDescriptor->operator=(* OFstatic_cast(DcmElement *, stack.top()));
}
+
stack.clear();
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTExplanation.getTag(),
stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_LO))
@@ -400,9 +404,11 @@ OFCondition DcmPresentationState::read(DcmItem &dset)
// LUTData can be OW, US or SS. For now we only handle US.
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTData.getTag(),
- stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US))
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_OW))
{
- modalityLUTData = *((DcmUnsignedShort *)(stack.top()));
+ // we deliberately call DcmElement::operator=() here, which will work for both DcmUnsignedShort and DcmOtherByteOtherWord parameters
+ DcmElement *mdata = &modalityLUTData;
+ mdata->operator=(*(DcmElement *)(stack.top()));
}
stack.clear();
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTType.getTag(),
@@ -879,11 +885,13 @@ OFCondition DcmPresentationState::createFromImage(
{
item = seq->getItem(0);
stack.clear();
- // LUTDescriptor can be US or SS. For now we only handle US.
+ // LUTDescriptor can be US or SS
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTDescriptor.getTag(),
- stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US))
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_SS))
{
- modalityLUTDescriptor = *((DcmUnsignedShort *)(stack.top()));
+ // We explicitly use DcmElement::operator=(), which works for US and SS
+ DcmElement *mLUTDescriptor = &modalityLUTDescriptor;
+ mLUTDescriptor->operator=(* OFstatic_cast(DcmElement *, stack.top()));
}
stack.clear();
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTExplanation.getTag(),
@@ -895,9 +903,11 @@ OFCondition DcmPresentationState::createFromImage(
// LUTData can be OW, US or SS. For now we only handle US.
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTData.getTag(),
- stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US))
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_OW))
{
- modalityLUTData = *((DcmUnsignedShort *)(stack.top()));
+ // we deliberately call DcmElement::operator=() here, which will work for both DcmUnsignedShort and DcmOtherByteOtherWord parameters
+ DcmElement *mdata = &modalityLUTData;
+ mdata->operator=(*(DcmElement *)(stack.top()));
}
stack.clear();
if ((EC_Normal == item->search((DcmTagKey &)modalityLUTType.getTag(),
@@ -1247,10 +1257,16 @@ OFCondition DcmPresentationState::write(DcmItem &dset, OFBool replaceSOPInstance
dseq = new DcmSequenceOfItems(DCM_ModalityLUTSequence);
if (dseq)
{
- delem = new DcmUnsignedShort(modalityLUTDescriptor);
+ // we clone modalityLUTDescriptor in order to retain the VR (US or SS)
+ delem = OFstatic_cast(DcmElement *, modalityLUTDescriptor.clone());
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
- delem = new DcmUnsignedShort(modalityLUTData);
+
+ // we write LUTData as OW in order to avoid the 64 kByte limit for US
+ delem = new DcmOtherByteOtherWord(DCM_LUTData);
+ delem->operator=(modalityLUTData);
+ OFstatic_cast(DcmOtherByteOtherWord *, delem)->setVR(EVR_OW);
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
+
delem = new DcmLongString(modalityLUTType);
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
if (modalityLUTExplanation.getLength() >0)
diff --git a/dcmpstat/libsrc/dvpspl.cc b/dcmpstat/libsrc/dvpspl.cc
index ec4cccf97..f5574ab33 100644
--- a/dcmpstat/libsrc/dvpspl.cc
+++ b/dcmpstat/libsrc/dvpspl.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 1999-2018, OFFIS e.V.
+ * Copyright (C) 1999-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -24,6 +24,7 @@
#include "dcmtk/dcmdata/dcdeftag.h"
#include "dcmtk/dcmdata/dcsequen.h"
#include "dcmtk/dcmdata/dcvrcs.h"
+#include "dcmtk/dcmdata/dcvrobow.h"
#include "dcmtk/dcmpstat/dvpspl.h"
#include "dcmtk/dcmpstat/dvpsdef.h" /* for constants and macros */
#include "dcmtk/dcmnet/dimse.h"
@@ -79,29 +80,36 @@ OFCondition DVPSPresentationLUT::read(DcmItem &dset, OFBool withSOPInstance)
if (result==EC_Normal)
{
stack.clear();
- if (EC_Normal == dset.search(DCM_PresentationLUTSequence, stack, ESM_fromHere, OFFalse))
+ if (EC_Normal == dset.search(DCM_PresentationLUTSequence, stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_SQ))
{
seq=(DcmSequenceOfItems *)stack.top();
if (seq->card() ==1)
{
item = seq->getItem(0);
stack.clear();
- if (EC_Normal == item->search((DcmTagKey &)presentationLUTDescriptor.getTag(),
- stack, ESM_fromHere, OFFalse))
+
+ // LUTDescriptor can be US or SS
+ if ((EC_Normal == item->search((DcmTagKey &)presentationLUTDescriptor.getTag(),
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_SS))
{
- presentationLUTDescriptor = *((DcmUnsignedShort *)(stack.top()));
+ // We explicitly use DcmElement::operator=(), which works for US and SS
+ DcmElement *pLUTDescriptor = &presentationLUTDescriptor;
+ pLUTDescriptor->operator=(* OFstatic_cast(DcmElement *, stack.top()));
}
+
stack.clear();
if (EC_Normal == item->search((DcmTagKey &)presentationLUTExplanation.getTag(),
- stack, ESM_fromHere, OFFalse))
+ stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_LO))
{
presentationLUTExplanation = *((DcmLongString *)(stack.top()));
}
stack.clear();
if (EC_Normal == item->search((DcmTagKey &)presentationLUTData.getTag(),
- stack, ESM_fromHere, OFFalse))
+ stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_OW))
{
- presentationLUTData = *((DcmUnsignedShort *)(stack.top()));
+ // we deliberately call DcmElement::operator=() here, which will work for both DcmUnsignedShort and DcmOtherByteOtherWord parameters
+ DcmElement *pldata = &presentationLUTData;
+ pldata->operator=(*(DcmElement *)(stack.top()));
}
} else {
result=EC_TagNotFound;
@@ -187,10 +195,16 @@ OFCondition DVPSPresentationLUT::write(DcmItem &dset, OFBool withSOPInstance)
dseq = new DcmSequenceOfItems(DCM_PresentationLUTSequence);
if (dseq)
{
- delem = new DcmUnsignedShort(presentationLUTDescriptor);
+ // we clone presentationLUTDescriptor in order to retain the VR (US or SS)
+ delem = OFstatic_cast(DcmElement *, presentationLUTDescriptor.clone());
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
- delem = new DcmUnsignedShort(presentationLUTData);
+
+ // we write LUTData as OW in order to avoid the 64 kByte limit for US
+ delem = new DcmOtherByteOtherWord(DCM_LUTData);
+ delem->operator=(presentationLUTData);
+ OFstatic_cast(DcmOtherByteOtherWord *, delem)->setVR(EVR_OW);
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
+
if (presentationLUTExplanation.getLength() >0)
{
delem = new DcmLongString(presentationLUTExplanation);
diff --git a/dcmpstat/libsrc/dvpssv.cc b/dcmpstat/libsrc/dvpssv.cc
index 8e3d49bd4..4a7fd0e30 100644
--- a/dcmpstat/libsrc/dvpssv.cc
+++ b/dcmpstat/libsrc/dvpssv.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 1998-2018, OFFIS e.V.
+ * Copyright (C) 1998-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -23,6 +23,7 @@
#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
#include "dcmtk/dcmdata/dcdeftag.h"
#include "dcmtk/dcmdata/dcsequen.h"
+#include "dcmtk/dcmdata/dcvrobow.h"
#include "dcmtk/dcmpstat/dvpssv.h"
#include "dcmtk/dcmpstat/dvpsri.h" /* for DVPSReferencedImage */
#include "dcmtk/dcmpstat/dvpsrsl.h" /* DVPSReferencedSeries_PList */
@@ -75,29 +76,36 @@ OFCondition DVPSSoftcopyVOI::read(DcmItem &dset)
if (result==EC_Normal)
{
stack.clear();
- if (EC_Normal == dset.search(DCM_VOILUTSequence, stack, ESM_fromHere, OFFalse))
+ if (EC_Normal == dset.search(DCM_VOILUTSequence, stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_SQ))
{
seq=(DcmSequenceOfItems *)stack.top();
if (seq->card() ==1)
{
item = seq->getItem(0);
stack.clear();
- if (EC_Normal == item->search((DcmTagKey &)voiLUTDescriptor.getTag(),
- stack, ESM_fromHere, OFFalse))
+
+ // LUTDescriptor can be US or SS
+ if ((EC_Normal == item->search((DcmTagKey &)voiLUTDescriptor.getTag(),
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_SS))
{
- voiLUTDescriptor = *((DcmUnsignedShort *)(stack.top()));
+ // We explicitly use DcmElement::operator=(), which works for US and SS
+ DcmElement *vLUTDescriptor = &voiLUTDescriptor;
+ vLUTDescriptor->operator=(* OFstatic_cast(DcmElement *, stack.top()));
}
+
stack.clear();
if (EC_Normal == item->search((DcmTagKey &)voiLUTExplanation.getTag(),
- stack, ESM_fromHere, OFFalse))
+ stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_LO))
{
voiLUTExplanation = *((DcmLongString *)(stack.top()));
}
stack.clear();
if (EC_Normal == item->search((DcmTagKey &)voiLUTData.getTag(),
- stack, ESM_fromHere, OFFalse))
+ stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_OW))
{
- voiLUTData = *((DcmUnsignedShort *)(stack.top()));
+ // we deliberately call DcmElement::operator=() here, which will work for both DcmUnsignedShort and DcmOtherByteOtherWord parameters
+ DcmElement *vldata = &voiLUTData;
+ vldata->operator=(*(DcmElement *)(stack.top()));
}
} else {
result=EC_TagNotFound;
@@ -177,10 +185,16 @@ OFCondition DVPSSoftcopyVOI::write(DcmItem &dset)
dseq = new DcmSequenceOfItems(DCM_VOILUTSequence);
if (dseq)
{
- delem = new DcmUnsignedShort(voiLUTDescriptor);
+ // we clone voiLUTDescriptor in order to retain the VR (US or SS)
+ delem = OFstatic_cast(DcmElement *, voiLUTDescriptor.clone());
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
- delem = new DcmUnsignedShort(voiLUTData);
+
+ // we write LUTData as OW in order to avoid the 64 kByte limit for US
+ delem = new DcmOtherByteOtherWord(DCM_LUTData);
+ delem->operator=(voiLUTData);
+ OFstatic_cast(DcmOtherByteOtherWord *, delem)->setVR(EVR_OW);
if (delem) ditem->insert(delem, OFTrue /*replaceOld*/); else result=EC_MemoryExhausted;
+
if (voiLUTExplanation.getLength() >0)
{
delem = new DcmLongString(voiLUTExplanation);
diff --git a/dcmpstat/libsrc/dvpssvl.cc b/dcmpstat/libsrc/dvpssvl.cc
index d1532db5c..efcb6a26b 100644
--- a/dcmpstat/libsrc/dvpssvl.cc
+++ b/dcmpstat/libsrc/dvpssvl.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 1999-2023, OFFIS e.V.
+ * Copyright (C) 1999-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -72,7 +72,7 @@ OFCondition DVPSSoftcopyVOI_PList::read(DcmItem &dset)
DcmSequenceOfItems *dseq=NULL;
DcmItem *ditem=NULL;
- if (EC_Normal == dset.search(DCM_SoftcopyVOILUTSequence, stack, ESM_fromHere, OFFalse))
+ if (EC_Normal == dset.search(DCM_SoftcopyVOILUTSequence, stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_SQ))
{
dseq=(DcmSequenceOfItems *)stack.top();
if (dseq)
@@ -249,29 +249,36 @@ OFCondition DVPSSoftcopyVOI_PList::createFromImage(
if (result==EC_Normal)
{
stack.clear();
- if (EC_Normal == dset.search(DCM_VOILUTSequence, stack, ESM_fromHere, OFFalse))
+ if (EC_Normal == dset.search(DCM_VOILUTSequence, stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_SQ))
{
seq=(DcmSequenceOfItems *)stack.top();
if (seq->card() > 0)
{
item = seq->getItem(0);
stack.clear();
- if (EC_Normal == item->search((DcmTagKey &)voiLUTDescriptor.getTag(),
- stack, ESM_fromHere, OFFalse))
+
+ // LUTDescriptor can be US or SS
+ if ((EC_Normal == item->search((DcmTagKey &)voiLUTDescriptor.getTag(),
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_SS))
{
- voiLUTDescriptor = *((DcmUnsignedShort *)(stack.top()));
+ // We explicitly use DcmElement::operator=(), which works for US and SS
+ DcmElement *vLUTDescriptor = &voiLUTDescriptor;
+ vLUTDescriptor->operator=(* OFstatic_cast(DcmElement *, stack.top()));
}
+
stack.clear();
if (EC_Normal == item->search((DcmTagKey &)voiLUTExplanation.getTag(),
- stack, ESM_fromHere, OFFalse))
+ stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_LO))
{
voiLUTExplanation = *((DcmLongString *)(stack.top()));
}
stack.clear();
if (EC_Normal == item->search((DcmTagKey &)voiLUTData.getTag(),
- stack, ESM_fromHere, OFFalse))
+ stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_OW))
{
- voiLUTData = *((DcmUnsignedShort *)(stack.top()));
+ // we deliberately call DcmElement::operator=() here, which will work for both DcmUnsignedShort and DcmOtherByteOtherWord parameters
+ DcmElement *vldata = &voiLUTData;
+ vldata->operator=(*(DcmElement *)(stack.top()));
}
} else result=EC_TagNotFound;
}
diff --git a/dcmpstat/libsrc/dvpstat.cc b/dcmpstat/libsrc/dvpstat.cc
index ce2f5ad5f..4bfe8f9cb 100644
--- a/dcmpstat/libsrc/dvpstat.cc
+++ b/dcmpstat/libsrc/dvpstat.cc
@@ -1,6 +1,6 @@
/*
*
- * Copyright (C) 1998-2021, OFFIS e.V.
+ * Copyright (C) 1998-2024, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
@@ -578,14 +578,14 @@ OFCondition DVPresentationState::attachImage(DcmDataset *dataset, OFBool transfe
currentImageSelectedFrame = 1; // default: first frame
// get Modality
- if (EC_Normal == dataset->search(DCM_Modality, stack, ESM_fromHere, OFFalse))
+ if (EC_Normal == dataset->search(DCM_Modality, stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_CS))
{
currentImageModality = *((DcmCodeString *)(stack.top()));
}
stack.clear();
// determine default Presentation LUT Shape
- if (EC_Normal == dataset->search(DCM_PhotometricInterpretation, stack, ESM_fromHere, OFFalse))
+ if (EC_Normal == dataset->search(DCM_PhotometricInterpretation, stack, ESM_fromHere, OFFalse) && (stack.top()->ident() == EVR_CS))
{
DcmCodeString *photometricInterpretation = (DcmCodeString *)(stack.top());
if (photometricInterpretation->getVM() == 1)
@@ -598,12 +598,12 @@ OFCondition DVPresentationState::attachImage(DcmDataset *dataset, OFBool transfe
stack.clear();
// get SOP class UID and SOP instance UID.
- if ((EC_Normal == result)&&(EC_Normal == dataset->search(DCM_SOPClassUID, stack, ESM_fromHere, OFFalse)))
+ if ((EC_Normal == result)&&(EC_Normal == dataset->search(DCM_SOPClassUID, stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_UI))
{
result = ((DcmUniqueIdentifier *)(stack.top()))->getString(currentImageSOPClassUID);
}
stack.clear();
- if ((EC_Normal == result)&&(EC_Normal == dataset->search(DCM_SOPInstanceUID, stack, ESM_fromHere, OFFalse)))
+ if ((EC_Normal == result)&&(EC_Normal == dataset->search(DCM_SOPInstanceUID, stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_UI))
{
result = ((DcmUniqueIdentifier *)(stack.top()))->getString(currentImageSOPInstanceUID);
}
@@ -1124,40 +1124,36 @@ OFCondition DVPresentationState::setGammaVOILUT(double gammaValue, DVPSObjectApp
numEntries16 = (Uint16)numberOfEntries;
/* LUT Descriptor */
- DcmElement *lutDescriptor = NULL;
- if (firstMapped < 0)
+ DcmUnsignedShort *lutDescriptor = new DcmUnsignedShort(DcmTag(DCM_LUTDescriptor, EVR_US));
+ if (lutDescriptor == NULL) status = EC_MemoryExhausted;
+ else
{
- // LUT Descriptor is SS
- lutDescriptor = new DcmSignedShort(DcmTag(DCM_LUTDescriptor, EVR_SS));
- if (lutDescriptor != NULL)
+ if (firstMapped < 0)
{
- status = lutDescriptor->putSint16((Sint16)numEntries16, 0);
- if (EC_Normal == status)
- status = lutDescriptor->putSint16((Sint16)firstMapped, 1);
- if (EC_Normal == status)
- status = lutDescriptor->putSint16((Sint16)numberOfBits, 2);
- } else
- status = EC_MemoryExhausted;
- } else {
- // LUT Descriptor is US
- lutDescriptor = new DcmUnsignedShort(DcmTag(DCM_LUTDescriptor, EVR_US));
- if (lutDescriptor != NULL)
- {
- status = lutDescriptor->putUint16(numEntries16, 0);
- if (EC_Normal == status)
- status = lutDescriptor->putUint16((Uint16)firstMapped, 1);
- if (EC_Normal == status)
- status = lutDescriptor->putUint16((Uint16)numberOfBits, 2);
- } else
- status = EC_MemoryExhausted;
+ // LUT Descriptor is SS
+ DcmSignedShort ldesc(DcmTag(DCM_LUTDescriptor, EVR_SS));
+ status = ldesc.putSint16((Sint16)numEntries16, 0);
+ if (EC_Normal == status) status = ldesc.putSint16((Sint16)firstMapped, 1);
+ if (EC_Normal == status) status = ldesc.putSint16((Sint16)numberOfBits, 2);
+ if (EC_Normal == status)
+ {
+ // copy content of SS element into DcmUnsignedShort using DcmElement::operator=
+ DcmElement *ld = lutDescriptor;
+ ld->operator=(ldesc);
+ }
+ } else {
+ // LUT Descriptor is US
+ status = lutDescriptor->putUint16(numEntries16, 0);
+ if (EC_Normal == status) status = lutDescriptor->putUint16((Uint16)firstMapped, 1);
+ if (EC_Normal == status) status = lutDescriptor->putUint16((Uint16)numberOfBits, 2);
+ }
}
/* LUT Data */
- DcmElement *lutData = NULL;
+ DcmUnsignedShort *lutData = NULL;
if (status == EC_Normal)
{
- // LUT Data as OW, because of max size = 64K
- lutData = new DcmOtherByteOtherWord(DcmTag(DCM_LUTData, EVR_OW));
+ lutData = new DcmUnsignedShort(DcmTag(DCM_LUTData, EVR_US));
if (lutData != NULL)
status = lutData->putUint16Array(data, numberOfEntries);
else
@@ -1186,15 +1182,14 @@ OFCondition DVPresentationState::setGammaVOILUT(double gammaValue, DVPSObjectApp
if (status == EC_Normal)
{
if ((lutDescriptor != NULL) && (lutData != NULL) && (lutExplanation != NULL))
- status = setVOILUT(*(DcmUnsignedShort *)lutDescriptor, *(DcmUnsignedShort *)lutData, *lutExplanation, applicability);
+ status = setVOILUT(*lutDescriptor, *lutData, *lutExplanation, applicability);
}
/* delete temporary dcmtk structures */
delete lutDescriptor;
delete lutData;
delete lutExplanation;
- } else
- status = EC_MemoryExhausted;
+ } else status = EC_MemoryExhausted;
delete[] data;
}
return status;
diff --git a/dcmpstat/libsrc/dvpsvl.cc b/dcmpstat/libsrc/dvpsvl.cc
index b10b83f20..fdba0a0e0 100644
--- a/dcmpstat/libsrc/dvpsvl.cc
+++ b/dcmpstat/libsrc/dvpsvl.cc
@@ -59,9 +59,24 @@ OFCondition DVPSVOILUT::read(DcmItem &dset)
OFCondition result = EC_Normal;
DcmStack stack;
- READ_FROM_DATASET(DcmUnsignedShort, EVR_US, voiLUTDescriptor)
+ // LUTDescriptor can be US or SS
+ if ((EC_Normal == dset.search((DcmTagKey &)voiLUTDescriptor.getTag(),
+ stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_SS))
+ {
+ // We explicitly use DcmElement::operator=(), which works for US and SS
+ DcmElement *vLUTDescriptor = &voiLUTDescriptor;
+ vLUTDescriptor->operator=(* OFstatic_cast(DcmElement *, stack.top()));
+ }
+
READ_FROM_DATASET(DcmLongString, EVR_LO, voiLUTExplanation)
- READ_FROM_DATASET(DcmUnsignedShort, EVR_US, voiLUTData)
+
+ stack.clear();
+ if ((EC_Normal == dset.search((DcmTagKey &)voiLUTData.getTag(), stack, ESM_fromHere, OFFalse)) && (stack.top()->ident() == EVR_US || stack.top()->ident() == EVR_OW))
+ {
+ // we deliberately call DcmElement::operator=() here, which will work for both DcmUnsignedShort and DcmOtherByteOtherWord parameters
+ DcmElement *vldata = &voiLUTData;
+ vldata->operator=(*(DcmElement *)(stack.top()));
+ }
if (EC_Normal == result)
{
--
2.44.0
++++++ 0003-Fixed-wrong-error-handling-previous-commit.patch ++++++
From 7d54f8efec995e5601d089fa17b0625c2b41af23 Mon Sep 17 00:00:00 2001
From: Joerg Riesmeier <dicom(a)jriesmeier.com>
Date: Mon, 22 Apr 2024 12:11:11 +0200
Subject: [PATCH 3/3] Fixed wrong error handling (previous commit).
Fixed wrong error handling introduced with the previous commit.
---
dcmrt/libsrc/drttypes.cc | 6 +++---
dcmsr/libsrc/dsrtypes.cc | 32 ++++++++++++++++++++------------
2 files changed, 23 insertions(+), 15 deletions(-)
diff --git a/dcmrt/libsrc/drttypes.cc b/dcmrt/libsrc/drttypes.cc
index 77ff1674c..097ab9727 100644
--- a/dcmrt/libsrc/drttypes.cc
+++ b/dcmrt/libsrc/drttypes.cc
@@ -210,11 +210,11 @@ OFCondition DRTTypes::getAndCheckStringValueFromDataset(DcmItem &dataset,
{
DcmStack stack;
OFCondition result = dataset.search(tagKey, stack, ESM_fromHere, OFFalse /*searchIntoSub*/);
- if (result.good() && stack.top()->isElement())
+ if (result.good())
{
- DcmElement *element = OFstatic_cast(DcmElement *, stack.top());
- if (element != NULL)
+ if (stack.top()->isElement())
{
+ DcmElement *element = OFstatic_cast(DcmElement *, stack.top());
if (checkElementValue(*element, vm, type, result, moduleName))
result = element->getOFString(stringValue, 0);
else
diff --git a/dcmsr/libsrc/dsrtypes.cc b/dcmsr/libsrc/dsrtypes.cc
index a9d621859..166bfabff 100644
--- a/dcmsr/libsrc/dsrtypes.cc
+++ b/dcmsr/libsrc/dsrtypes.cc
@@ -1178,13 +1178,17 @@ OFCondition DSRTypes::getAndCheckElementFromDataset(DcmItem &dataset,
DcmStack stack;
const DcmTagKey tagKey = delem.getTag();
OFCondition result = dataset.search(tagKey, stack, ESM_fromHere, OFFalse /*searchIntoSub*/);
- if (result.good() && stack.top()->isElement())
+ if (result.good())
{
- /* copy object from search stack */
- result = delem.copyFrom(*stack.top());
- /* we need a reference to the original element in order to determine the SpecificCharacterSet */
- if (!checkElementValue(OFstatic_cast(DcmElement *, stack.top()), tagKey, vm, type, result, moduleName, acceptViolation))
- result = SR_EC_InvalidValue;
+ if (stack.top()->isElement())
+ {
+ /* copy object from search stack */
+ result = delem.copyFrom(*stack.top());
+ /* we need a reference to the original element in order to determine the SpecificCharacterSet */
+ if (!checkElementValue(OFstatic_cast(DcmElement *, stack.top()), tagKey, vm, type, result, moduleName, acceptViolation))
+ result = SR_EC_InvalidValue;
+ } else
+ result = EC_CorruptedData;
}
/* the element could not be found in the dataset */
else if (!checkElementValue(delem, vm, type, result, moduleName, acceptViolation))
@@ -1203,13 +1207,17 @@ OFCondition DSRTypes::getAndCheckStringValueFromDataset(DcmItem &dataset,
{
DcmStack stack;
OFCondition result = dataset.search(tagKey, stack, ESM_fromHere, OFFalse /*searchIntoSub*/);
- if (result.good() && stack.top()->isElement())
+ if (result.good())
{
- DcmElement *delem = OFstatic_cast(DcmElement *, stack.top());
- /* we need a reference to the original element in order to determine the SpecificCharacterSet */
- if (!checkElementValue(delem, tagKey, vm, type, result, moduleName, acceptViolation))
- result = SR_EC_InvalidValue;
- delem->getOFString(stringValue, 0);
+ if (stack.top()->isElement())
+ {
+ DcmElement *delem = OFstatic_cast(DcmElement *, stack.top());
+ /* we need a reference to the original element in order to determine the SpecificCharacterSet */
+ if (!checkElementValue(delem, tagKey, vm, type, result, moduleName, acceptViolation))
+ result = SR_EC_InvalidValue;
+ delem->getOFString(stringValue, 0);
+ } else
+ result = EC_CorruptedData;
} else {
if ((type == "1") || (type == "2"))
{
--
2.44.0
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-grpcio-tools for openSUSE:Factory checked in at 2024-04-25 20:48:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-grpcio-tools (Old)
and /work/SRC/openSUSE:Factory/.python-grpcio-tools.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-grpcio-tools"
Thu Apr 25 20:48:24 2024 rev:34 rq:1169985 version:1.62.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-grpcio-tools/python-grpcio-tools.changes 2024-03-22 15:34:52.668390028 +0100
+++ /work/SRC/openSUSE:Factory/.python-grpcio-tools.new.1880/python-grpcio-tools.changes 2024-04-25 20:48:29.572561176 +0200
@@ -1,0 +2,7 @@
+Tue Apr 23 11:00:31 UTC 2024 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 1.62.2:
+ * [Fix Python Deadlock] Guard
+ grpc_google_default_credentials_create with nogil
+
+-------------------------------------------------------------------
Old:
----
grpcio-tools-1.62.1.tar.gz
New:
----
grpcio-tools-1.62.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-grpcio-tools.spec ++++++
--- /var/tmp/diff_new_pack.FQHGW5/_old 2024-04-25 20:48:30.436592902 +0200
+++ /var/tmp/diff_new_pack.FQHGW5/_new 2024-04-25 20:48:30.440593049 +0200
@@ -20,7 +20,7 @@
%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-grpcio-tools
-Version: 1.62.1
+Version: 1.62.2
Release: 0
Summary: Protobuf code generator for gRPC
License: Apache-2.0
++++++ grpcio-tools-1.62.1.tar.gz -> grpcio-tools-1.62.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpcio-tools-1.62.1/PKG-INFO new/grpcio-tools-1.62.2/PKG-INFO
--- old/grpcio-tools-1.62.1/PKG-INFO 2024-03-08 01:24:48.651385300 +0100
+++ new/grpcio-tools-1.62.2/PKG-INFO 2024-04-17 20:35:28.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: grpcio-tools
-Version: 1.62.1
+Version: 1.62.2
Summary: Protobuf code generator for gRPC
Home-page: https://grpc.io
Author: The gRPC Authors
@@ -14,9 +14,6 @@
Classifier: License :: OSI Approved :: Apache Software License
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
-Requires-Dist: protobuf<5.0dev,>=4.21.6
-Requires-Dist: grpcio>=1.62.1
-Requires-Dist: setuptools
gRPC Python Tools
=================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpcio-tools-1.62.1/grpc_root/include/grpcpp/version_info.h new/grpcio-tools-1.62.2/grpc_root/include/grpcpp/version_info.h
--- old/grpcio-tools-1.62.1/grpc_root/include/grpcpp/version_info.h 2024-03-08 01:24:28.000000000 +0100
+++ new/grpcio-tools-1.62.2/grpc_root/include/grpcpp/version_info.h 2024-04-17 20:34:56.000000000 +0200
@@ -20,8 +20,8 @@
#define GRPC_CPP_VERSION_MAJOR 1
#define GRPC_CPP_VERSION_MINOR 62
-#define GRPC_CPP_VERSION_PATCH 1
+#define GRPC_CPP_VERSION_PATCH 2
#define GRPC_CPP_VERSION_TAG ""
-#define GRPC_CPP_VERSION_STRING "1.62.1"
+#define GRPC_CPP_VERSION_STRING "1.62.2"
#endif // GRPCPP_VERSION_INFO_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpcio-tools-1.62.1/grpc_version.py new/grpcio-tools-1.62.2/grpc_version.py
--- old/grpcio-tools-1.62.1/grpc_version.py 2024-03-08 01:15:57.000000000 +0100
+++ new/grpcio-tools-1.62.2/grpc_version.py 2024-04-17 19:57:33.000000000 +0200
@@ -14,5 +14,5 @@
# AUTO-GENERATED FROM `$REPO_ROOT/templates/tools/distrib/python/grpcio_tools/grpc_version.py.template`!!!
-VERSION = '1.62.1'
+VERSION = '1.62.2'
PROTOBUF_VERSION = '3.25.1'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpcio-tools-1.62.1/grpcio_tools.egg-info/PKG-INFO new/grpcio-tools-1.62.2/grpcio_tools.egg-info/PKG-INFO
--- old/grpcio-tools-1.62.1/grpcio_tools.egg-info/PKG-INFO 2024-03-08 01:24:47.000000000 +0100
+++ new/grpcio-tools-1.62.2/grpcio_tools.egg-info/PKG-INFO 2024-04-17 20:35:27.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: grpcio-tools
-Version: 1.62.1
+Version: 1.62.2
Summary: Protobuf code generator for gRPC
Home-page: https://grpc.io
Author: The gRPC Authors
@@ -14,9 +14,6 @@
Classifier: License :: OSI Approved :: Apache Software License
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
-Requires-Dist: protobuf<5.0dev,>=4.21.6
-Requires-Dist: grpcio>=1.62.1
-Requires-Dist: setuptools
gRPC Python Tools
=================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpcio-tools-1.62.1/grpcio_tools.egg-info/requires.txt new/grpcio-tools-1.62.2/grpcio_tools.egg-info/requires.txt
--- old/grpcio-tools-1.62.1/grpcio_tools.egg-info/requires.txt 2024-03-08 01:24:47.000000000 +0100
+++ new/grpcio-tools-1.62.2/grpcio_tools.egg-info/requires.txt 2024-04-17 20:35:27.000000000 +0200
@@ -1,3 +1,3 @@
protobuf<5.0dev,>=4.21.6
-grpcio>=1.62.1
+grpcio>=1.62.2
setuptools
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package remmina for openSUSE:Factory checked in at 2024-04-25 20:48:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/remmina (Old)
and /work/SRC/openSUSE:Factory/.remmina.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "remmina"
Thu Apr 25 20:48:23 2024 rev:87 rq:1169987 version:1.4.35
Changes:
--------
--- /work/SRC/openSUSE:Factory/remmina/remmina.changes 2024-04-03 17:19:41.655900722 +0200
+++ /work/SRC/openSUSE:Factory/.remmina.new.1880/remmina.changes 2024-04-25 20:48:28.424519021 +0200
@@ -1,0 +2,5 @@
+Wed Apr 17 07:12:18 UTC 2024 - Daike Yu <yu.daike(a)suse.com>
+
+- Fix dependency on SLE-15-SP6
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ remmina.spec ++++++
--- /var/tmp/diff_new_pack.ssM5Cu/_old 2024-04-25 20:48:29.136545166 +0200
+++ /var/tmp/diff_new_pack.ssM5Cu/_new 2024-04-25 20:48:29.136545166 +0200
@@ -69,9 +69,9 @@
BuildRequires: pkgconfig(freerdp3) >= 3.0.0
BuildRequires: pkgconfig(winpr3)
%else
-BuildRequires: freerdp2-devel < 3.0.0
-BuildRequires: freerdp2-server < 3.0.0
-BuildRequires: winpr2-devel < 3.0.0
+BuildRequires: freerdp-devel < 3.0.0
+BuildRequires: freerdp-server < 3.0.0
+BuildRequires: pkgconfig(winpr2)
%endif
BuildRequires: pkgconfig(xkbfile)
Recommends: %{name}-plugin-rdp
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-regex-tdfa for openSUSE:Factory checked in at 2024-04-25 20:48:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-regex-tdfa (Old)
and /work/SRC/openSUSE:Factory/.ghc-regex-tdfa.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-regex-tdfa"
Thu Apr 25 20:48:22 2024 rev:29 rq:1169947 version:1.3.2.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-regex-tdfa/ghc-regex-tdfa.changes 2023-10-06 21:17:02.257478865 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-regex-tdfa.new.1880/ghc-regex-tdfa.changes 2024-04-25 20:48:26.848461150 +0200
@@ -1,0 +2,6 @@
+Tue Apr 16 17:33:57 UTC 2024 - Peter Simons <psimons(a)suse.com>
+
+- Update regex-tdfa to version 1.3.2.2 revision 3.
+ Upstream has revised the Cabal build instructions on Hackage.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-regex-tdfa.spec ++++++
--- /var/tmp/diff_new_pack.C0WpD6/_old 2024-04-25 20:48:27.688491995 +0200
+++ /var/tmp/diff_new_pack.C0WpD6/_new 2024-04-25 20:48:27.688491995 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-regex-tdfa
#
-# Copyright (c) 2023 SUSE LLC
+# 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
@@ -26,7 +26,7 @@
License: BSD-3-Clause
URL: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{ve…
-Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal…
+Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/3.cabal…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-array-devel
BuildRequires: ghc-array-prof
++++++ regex-tdfa.cabal ++++++
--- /var/tmp/diff_new_pack.C0WpD6/_old 2024-04-25 20:48:27.740493904 +0200
+++ /var/tmp/diff_new_pack.C0WpD6/_new 2024-04-25 20:48:27.744494051 +0200
@@ -1,7 +1,7 @@
cabal-version: 1.12
name: regex-tdfa
version: 1.3.2.2
-x-revision: 2
+x-revision: 3
build-Type: Simple
license: BSD3
@@ -26,9 +26,10 @@
test/cases/*.txt
tested-with:
- GHC == 9.8.0
- GHC == 9.6.3
- GHC == 9.4.7
+ GHC == 9.10.0
+ GHC == 9.8.2
+ GHC == 9.6.4
+ GHC == 9.4.8
GHC == 9.2.8
GHC == 9.0.2
GHC == 8.10.7
@@ -37,7 +38,6 @@
GHC == 8.4.4
GHC == 8.2.2
GHC == 8.0.2
- GHC == 7.10.3
source-repository head
type: git
@@ -163,7 +163,7 @@
-- component-specific dependencies not inherited via 'regex-tdfa'
, directory >= 1.1.0 && < 1.4
- , filepath >= 1.3.0 && < 1.5
+ , filepath >= 1.3.0 && < 1.6
, utf8-string >= 1.0.1 && < 1.1
default-language: Haskell2010
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-HsYAML for openSUSE:Factory checked in at 2024-04-25 20:48:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-HsYAML (Old)
and /work/SRC/openSUSE:Factory/.ghc-HsYAML.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-HsYAML"
Thu Apr 25 20:48:21 2024 rev:24 rq:1169946 version:0.2.1.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-HsYAML/ghc-HsYAML.changes 2023-10-18 21:26:00.149336792 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-HsYAML.new.1880/ghc-HsYAML.changes 2024-04-25 20:48:24.944391234 +0200
@@ -1,0 +2,6 @@
+Tue Apr 16 18:46:43 UTC 2024 - Peter Simons <psimons(a)suse.com>
+
+- Update HsYAML to version 0.2.1.3 revision 1.
+ Upstream has revised the Cabal build instructions on Hackage.
+
+-------------------------------------------------------------------
New:
----
HsYAML.cabal
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-HsYAML.spec ++++++
--- /var/tmp/diff_new_pack.o3CExa/_old 2024-04-25 20:48:26.672454687 +0200
+++ /var/tmp/diff_new_pack.o3CExa/_new 2024-04-25 20:48:26.672454687 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-HsYAML
#
-# Copyright (c) 2023 SUSE LLC
+# 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
@@ -26,6 +26,7 @@
License: GPL-2.0-or-later
URL: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{ve…
+Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-base-devel
BuildRequires: ghc-base-prof
@@ -108,6 +109,7 @@
%prep
%autosetup -n %{pkg_name}-%{version}
+cp -p %{SOURCE1} %{pkg_name}.cabal
%build
%ghc_lib_build
++++++ HsYAML.cabal ++++++
cabal-version: 1.14
name: HsYAML
version: 0.2.1.3
x-revision: 1
synopsis: Pure Haskell YAML 1.2 processor
homepage: https://github.com/haskell-hvr/HsYAML
bug-reports: https://github.com/haskell-hvr/HsYAML/issues
license: GPL-2
X-SPDX-License-Identifier: GPL-2.0-or-later
license-files: LICENSE.GPLv2 LICENSE.GPLv3
author: Herbert Valerio Riedel
maintainer: https://github.com/haskell-hvr/HsYAML
copyright: 2015-2018 Herbert Valerio Riedel
, 2007-2008 Oren Ben-Kiki
category: Text
build-type: Simple
tested-with:
GHC == 9.10.0
GHC == 9.8.2
GHC == 9.6.4
GHC == 9.4.8
GHC == 9.2.8
GHC == 9.0.2
GHC == 8.10.7
GHC == 8.8.4
GHC == 8.6.5
GHC == 8.4.4
GHC == 8.2.2
GHC == 8.0.2
-- Skip testing on GHC 7.10 as it does not install with GHCup on ubuntu-22.04
-- GHC == 7.10.3
-- Skip testing on GHC 7.8 as it ships a too old 'transformers'
-- GHC == 7.8.4
-- Skip testing these legacy GHC versions:
-- GHC == 7.6.3
-- GHC == 7.4.2
description:
@HsYAML@ is a [YAML 1.2](http://yaml.org/spec/1.2/spec.html) processor, i.e. a library for parsing and serializing YAML documents.
.
Features of @HsYAML@ include:
.
* Pure Haskell implementation with small dependency footprint and emphasis on strict compliance with the [YAML 1.2 specification](http://yaml.org/spec/1.2/spec.html).
* Direct decoding to native Haskell types via (@aeson@-inspired) typeclass-based API (see "Data.YAML").
* Allows round-tripping while preserving ordering, anchors, and comments at Event-level.
* Support for constructing custom YAML node graph representation (including support for cyclic YAML data structures).
* Support for the standard (untyped) /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \"schemas\" providing implicit typing rules as defined in the YAML 1.2 specification (including support for user-defined custom schemas; see "Data.YAML.Schema").
* Support for emitting YAML using /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \"schemas\" (including support for user-defined custom encoding schemas; see "Data.YAML.Schema").
* Event-based API resembling LibYAML's Event-based API (see "Data.YAML.Event").
* Low-level API access to lexical token-based scanner (see "Data.YAML.Token").
.
See also the <//hackage.haskell.org/package/HsYAML-aeson HsYAML-aeson> package which allows to decode and encode YAML by leveraging @aeson@'s 'FromJSON' and 'ToJSON' instances.
extra-source-files:
ChangeLog.md
source-repository head
type: git
location: https://github.com/haskell-hvr/HsYAML.git
flag exe
description: Enable @exe:yaml-test@ component
manual: True
default: False
library
hs-source-dirs: src
exposed-modules: Data.YAML
, Data.YAML.Schema
, Data.YAML.Event
, Data.YAML.Token
other-modules: Data.YAML.Loader
, Data.YAML.Dumper
, Data.YAML.Internal
, Data.YAML.Event.Internal
, Data.YAML.Event.Writer
, Data.YAML.Pos
, Data.YAML.Schema.Internal
, Data.YAML.Token.Encoding
, Util
, Data.DList
default-language: Haskell2010
default-extensions: TypeOperators
other-extensions: DeriveGeneric
FlexibleContexts
FlexibleInstances
FunctionalDependencies
MultiParamTypeClasses
OverloadedStrings
PostfixOperators
RecordWildCards
RecursiveDo
Safe
ScopedTypeVariables
Trustworthy
TypeSynonymInstances
build-depends: base >= 4.5 && < 5
, bytestring >= 0.9 && < 0.13
, containers >= 0.4.2 && < 0.8
, deepseq >= 1.3.0 && < 1.6
, text >= 1.2.3 && < 2.2
, mtl >= 2.2.1 && < 2.4
, parsec >= 3.1.13.0 && < 3.2
, transformers >= 0.4 && < 0.7
-- for GHC.Generics
if impl(ghc < 7.6)
build-depends: ghc-prim
if !impl(ghc >= 8.0)
build-depends: fail >= 4.9.0.0 && < 4.10
if !impl(ghc >= 7.10)
build-depends: nats >= 1.1.2 && < 1.2
ghc-options: -Wall
executable yaml-test
hs-source-dirs: src-test
main-is: Main.hs
other-modules: TML
default-language: Haskell2010
if flag(exe)
build-depends: HsYAML
-- inherited constraints
, bytestring >= 0.10.8.0
, base
, text
, containers
, mtl
-- non-inherited
, megaparsec >= 7.0 && < 10
, microaeson == 0.1.*
, filepath >= 1.4 && < 1.6
, directory >= 1.2 && < 1.4
else
buildable: False
ghc-options: -rtsopts
test-suite tests
default-language: Haskell2010
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Tests.hs
ghc-options: -rtsopts
build-depends: HsYAML
-- inherited constraints
, bytestring >= 0.10.8.0
, base
, text
, containers
, mtl
-- non-inherited
, QuickCheck == 2.14.*
, tasty >= 1.4 && < 1.6
, tasty-quickcheck == 0.10.*
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fastfetch for openSUSE:Factory checked in at 2024-04-25 20:48:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fastfetch (Old)
and /work/SRC/openSUSE:Factory/.fastfetch.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fastfetch"
Thu Apr 25 20:48:20 2024 rev:25 rq:1169930 version:2.10.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/fastfetch/fastfetch.changes 2024-04-16 20:11:39.749691609 +0200
+++ /work/SRC/openSUSE:Factory/.fastfetch.new.1880/fastfetch.changes 2024-04-25 20:48:23.808349520 +0200
@@ -1,0 +2,21 @@
+Tue Apr 23 19:38:05 UTC 2024 - Gordon Leung <pirateclip(a)protonmail.com>
+
+- update to 2.10.2:
+ Changes:
+ * We now always detect max frequency of GPUs for consistent, instead of current frequency
+ Features:
+ * Improve display detection for wlroots based WMs. Fastfetch now correctly reports fractional scale factors in hyprland (Display, Linux)
+ * Improve GPU detection on Linux (GPU, Linux)
+ - Support GPU memory usage detection for AMD GPUs
+ - Support GPU frequency detection for Intel GPUs
+ * Improve performance of Gnome version detection (DE, Linux)
+ * Improve performance of kitty version detection (Terminal, Linux)
+ * Detect refresh rate when using --ds-force-drm sysfs-only (Display, Linux)
+ * Add option --ts-version to disable terminal and shell version detection. Mainly for benchmarking purposes
+ * Improve performance of detecting WSL version (Host, Linux)
+ Bugfixes:
+ * Correctly detect /bin/sh as current shell if it's used as default shell (Shell, Linux)
+ * Work around an issue which CPU module reports incorrect CPU frequency that is too high (CPU, Linux)
+ * Don't print ANSI escape codes in --pipe mode
+
+-------------------------------------------------------------------
Old:
----
fastfetch-2.9.2.tar.gz
New:
----
fastfetch-2.10.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fastfetch.spec ++++++
--- /var/tmp/diff_new_pack.U3WHMR/_old 2024-04-25 20:48:24.428372286 +0200
+++ /var/tmp/diff_new_pack.U3WHMR/_new 2024-04-25 20:48:24.428372286 +0200
@@ -17,7 +17,7 @@
Name: fastfetch
-Version: 2.9.2
+Version: 2.10.2
Release: 0
Summary: Neofetch-like tool written mostly in C
License: MIT
++++++ fastfetch-2.9.2.tar.gz -> fastfetch-2.10.2.tar.gz ++++++
++++ 5232 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package terragrunt for openSUSE:Factory checked in at 2024-04-25 20:48:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/terragrunt (Old)
and /work/SRC/openSUSE:Factory/.terragrunt.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "terragrunt"
Thu Apr 25 20:48:16 2024 rev:115 rq:1170067 version:0.57.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/terragrunt/terragrunt.changes 2024-04-23 18:57:45.862125591 +0200
+++ /work/SRC/openSUSE:Factory/.terragrunt.new.1880/terragrunt.changes 2024-04-25 20:48:21.828276814 +0200
@@ -1,0 +2,19 @@
+Wed Apr 24 16:58:58 UTC 2024 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 0.57.9:
+ * Check hash and signature of cached providers (#3055)
+ * fix: copyright text (#3091)
+
+-------------------------------------------------------------------
+Tue Apr 23 19:41:58 UTC 2024 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 0.57.8:
+ * Add support for JSON directory output (#3084)
+
+-------------------------------------------------------------------
+Tue Apr 23 19:39:18 UTC 2024 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 0.57.7:
+ * Bump github.com/hashicorp/go-getter to 1.7.4 (#3088)
+
+-------------------------------------------------------------------
Old:
----
terragrunt-0.57.6.obscpio
New:
----
terragrunt-0.57.9.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ terragrunt.spec ++++++
--- /var/tmp/diff_new_pack.GI9QiM/_old 2024-04-25 20:48:23.236328516 +0200
+++ /var/tmp/diff_new_pack.GI9QiM/_new 2024-04-25 20:48:23.240328663 +0200
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: terragrunt
-Version: 0.57.6
+Version: 0.57.9
Release: 0
Summary: Thin wrapper for Terraform for working with multiple Terraform modules
License: MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.GI9QiM/_old 2024-04-25 20:48:23.284330278 +0200
+++ /var/tmp/diff_new_pack.GI9QiM/_new 2024-04-25 20:48:23.292330572 +0200
@@ -3,7 +3,7 @@
<param name="url">https://github.com/gruntwork-io/terragrunt</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.57.6</param>
+ <param name="revision">v0.57.9</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.GI9QiM/_old 2024-04-25 20:48:23.316331454 +0200
+++ /var/tmp/diff_new_pack.GI9QiM/_new 2024-04-25 20:48:23.316331454 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/gruntwork-io/terragrunt</param>
- <param name="changesrevision">1a818e6b1e7925d04836c6d40c82483eb02008e3</param></service></servicedata>
+ <param name="changesrevision">1e40725e6e92faa3e5c14c489a1899c6b2a170f1</param></service></servicedata>
(No newline at EOF)
++++++ terragrunt-0.57.6.obscpio -> terragrunt-0.57.9.obscpio ++++++
/work/SRC/openSUSE:Factory/terragrunt/terragrunt-0.57.6.obscpio /work/SRC/openSUSE:Factory/.terragrunt.new.1880/terragrunt-0.57.9.obscpio differ: char 50, line 1
++++++ terragrunt.obsinfo ++++++
--- /var/tmp/diff_new_pack.GI9QiM/_old 2024-04-25 20:48:23.360333069 +0200
+++ /var/tmp/diff_new_pack.GI9QiM/_new 2024-04-25 20:48:23.364333216 +0200
@@ -1,5 +1,5 @@
name: terragrunt
-version: 0.57.6
-mtime: 1713821472
-commit: 1a818e6b1e7925d04836c6d40c82483eb02008e3
+version: 0.57.9
+mtime: 1713974008
+commit: 1e40725e6e92faa3e5c14c489a1899c6b2a170f1
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/terragrunt/vendor.tar.gz /work/SRC/openSUSE:Factory/.terragrunt.new.1880/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mumble for openSUSE:Factory checked in at 2024-04-25 20:48:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mumble (Old)
and /work/SRC/openSUSE:Factory/.mumble.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mumble"
Thu Apr 25 20:48:11 2024 rev:7 rq:1169949 version:1.5.629
Changes:
--------
--- /work/SRC/openSUSE:Factory/mumble/mumble.changes 2024-04-21 20:27:57.247403110 +0200
+++ /work/SRC/openSUSE:Factory/.mumble.new.1880/mumble.changes 2024-04-25 20:48:19.532192504 +0200
@@ -1,0 +2,13 @@
+Tue Apr 23 23:11:54 UTC 2024 - Andreas Stieger <andreas.stieger(a)gmx.de>
+
+- Address licensedigger concerns:
+ * drop qttranslations from tarball, adjust licenses.patch
+ * The OCB design is in the public domain
+ add mumble-1.5.629-The-OCB-design-is-in-the-public-domain.patch
+ * drop unneeded installer files from tarball
+ * unbundle audio back-end headers from tarball:
+ pulseadio, jack, portadio, pipewire
+ add mumble-1.5.629-unbundle-audio-backends.patch
+- change from tarball to obscpio and build-time service
+
+-------------------------------------------------------------------
Old:
----
mumble-1.5.629.tar.xz
New:
----
_servicedata
mumble-1.5.629-The-OCB-design-is-in-the-public-domain.patch
mumble-1.5.629-unbundle-audio-backends.patch
mumble-1.5.629.obscpio
BETA DEBUG BEGIN:
New: * The OCB design is in the public domain
add mumble-1.5.629-The-OCB-design-is-in-the-public-domain.patch
* drop unneeded installer files from tarball
New: pulseadio, jack, portadio, pipewire
add mumble-1.5.629-unbundle-audio-backends.patch
- change from tarball to obscpio and build-time service
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mumble.spec ++++++
--- /var/tmp/diff_new_pack.JyhkUU/_old 2024-04-25 20:48:21.124250963 +0200
+++ /var/tmp/diff_new_pack.JyhkUU/_new 2024-04-25 20:48:21.128251110 +0200
@@ -24,14 +24,10 @@
Version: 1.5.629
Release: 0
Summary: Voice Communication Client for Gamers
-# Most files are BSD-3-Clause, celt also contains BSD-2-Clause files.
+# Most files are BSD-3-Clause
# 3rdparty/arc4random/LICENSE: MIT
-# 3rdparty/jack: LGPL-2.1-or-later
-# 3rdparty/pipewire: MIT
-# 3rdparty/portaudio: MIT
-# 3rdparty/pulseaudio: LGPL-2.1-or-later
# 3rdparty/SPSCQueue: MIT
-License: BSD-2-Clause AND BSD-3-Clause AND MIT AND LGPL-2.1-or-later
+License: BSD-2-Clause AND BSD-3-Clause AND MIT
Group: Productivity/Multimedia/Sound/Utilities
URL: https://www.mumble.info/
Source: %{name}-%{version}.tar.xz
@@ -39,10 +35,11 @@
# PATCH-FIX-UPSTREAM fix-64bit-only-plugins.patch -- Requires 64bit memory alignment ( https://github.com/mumble-voip/mumble/issues/5849 )
Patch0: fix-64bit-only-plugins.patch
Patch2: mumble-cxx17.patch
-# Removes licenses that are unbundled, or not used
+# Patches related to dependency unbundling
Patch100: licenses.patch
-# Make mumble build without statically linked tracy
Patch101: mumble-unbundle-tracy.patch
+Patch102: mumble-1.5.629-The-OCB-design-is-in-the-public-domain.patch
+Patch103: mumble-1.5.629-unbundle-audio-backends.patch
BuildRequires: c++_compiler
BuildRequires: cmake >= 3.20
BuildRequires: libboost_headers-devel
@@ -63,11 +60,15 @@
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(avahi-compat-libdns_sd)
BuildRequires: pkgconfig(gl)
+BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(libcrypto)
BuildRequires: pkgconfig(libpcre2-posix)
+BuildRequires: pkgconfig(libpipewire-0.3)
+BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libssl)
BuildRequires: pkgconfig(nlohmann_json)
BuildRequires: pkgconfig(opus)
+BuildRequires: pkgconfig(portaudio-2.0)
BuildRequires: pkgconfig(speech-dispatcher)
BuildRequires: pkgconfig(speexdsp)
BuildRequires: pkgconfig(xext)
@@ -144,6 +145,7 @@
-Dbundled-renamenoise:BOOL=ON \
-Dbundled-speex:BOOL=OFF \
-Dqtspeech:BOOL=ON \
+ -Dbundle-qt-translations:BOOL=OFF \
%if 0%{?suse_version} > 1600
-DCMAKE_SHARED_LINKER_FLAGS="-lGL" \
%endif
++++++ _service ++++++
--- /var/tmp/diff_new_pack.JyhkUU/_old 2024-04-25 20:48:21.160252285 +0200
+++ /var/tmp/diff_new_pack.JyhkUU/_new 2024-04-25 20:48:21.180253019 +0200
@@ -10,21 +10,27 @@
<param name="versionrewrite-replacement">\1</param>
</service>
<service name="set_version" mode="manual"/>
- <service name="tar" mode="manual">
+ <service name="tar" mode="buildtime">
<!-- throw away a number of unused, bundled libs -->
<param name="exclude">3rdparty/GL</param>
<param name="exclude">3rdparty/gsl</param>
+ <param name="exclude">3rdparty/jack</param>
<param name="exclude">3rdparty/march-override-*</param>
<param name="exclude">3rdparty/minhook</param>
<param name="exclude">3rdparty/nlohmann_json</param>
+ <param name="exclude">3rdparty/pipewire</param>
+ <param name="exclude">3rdparty/portaudio</param>
+ <param name="exclude">3rdparty/pulseaudio</param>
<param name="exclude">3rdparty/speexdsp-build</param>
<param name="exclude">3rdparty/speexdsp</param>
<param name="exclude">3rdparty/tracy</param>
<param name="exclude">3rdparty/xinputcheck*</param>
+ <param name="exclude">installer</param>
+ <param name="exclude">src/mumble/qttranslations</param>
<!-- and the licence texts, see license.patch -->
<param name="exclude">3rdPartyLicenses</param>
</service>
- <service name="recompress" mode="manual">
+ <service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
++++++ _servicedata ++++++
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/mumble-voip/mumble.git</param>
<param name="changesrevision">e2b376b66eae551c4e2bad172598e0e7b917fd4d</param>
</service>
</servicedata>
++++++ licenses.patch ++++++
--- /var/tmp/diff_new_pack.JyhkUU/_old 2024-04-25 20:48:21.228254782 +0200
+++ /var/tmp/diff_new_pack.JyhkUU/_new 2024-04-25 20:48:21.232254929 +0200
@@ -2,7 +2,7 @@
===================================================================
--- mumble-1.5.629.orig/scripts/generate_license_header.py
+++ mumble-1.5.629/scripts/generate_license_header.py
-@@ -22,49 +22,12 @@ repoRoot = os.path.normpath(os.path.join
+@@ -22,49 +22,10 @@ repoRoot = os.path.normpath(os.path.join
# List of (3rdparty) licenses [<variableName>, <pathToLicenseFile>, <DisplayName>, <URL>, (<define-guard>)?]
licenses = [
["licenseMumble", "LICENSE", "Mumble", "https://www.mumble.info/"],
@@ -14,8 +14,8 @@
- ["licenseFLAC", "3rdPartyLicenses/libflac_license.txt", "libFLAC", "http://flac.sourceforge.net/"],
- ["licenseMachOverride", "3rdPartyLicenses/mach_override_license.txt", "mach_override", "https://github.com/rentzsch/mach_star", "Q_OS_MAC"],
- ["licenseMinHook", "3rdparty/minhook/LICENSE.txt", "MinHook", "https://github.com/TsudaKageyu/minhook", "Q_OS_WIN64"],
- ["licenseQtTranslations", "src/mumble/qttranslations/LICENSE",
- "Additional Qt translations", "https://www.virtualbox.org/ticket/2018", "USING_BUNDLED_QT_TRANSLATIONS"],
+- ["licenseQtTranslations", "src/mumble/qttranslations/LICENSE",
+- "Additional Qt translations", "https://www.virtualbox.org/ticket/2018", "USING_BUNDLED_QT_TRANSLATIONS"],
- ["licenseEmojiOne", "3rdPartyLicenses/cc_by_sa_40_legalcode.txt", "Emoji One artwork", "http://emojione.com/"],
- ["licenseXInputCheck", "3rdparty/xinputcheck-src/COPYING.txt", "XInputCheck (SDL_IsXInput function)", "https://www.libsdl.org/"],
+ ["licenseEmojiOne", "icons/flags/LICENSE.md", "Emoji One artwork", "http://emojione.com/"],
++++++ mumble-1.5.629-The-OCB-design-is-in-the-public-domain.patch ++++++
From 731684061ea6c90cd047941e4bc957a6b9c119b4 Mon Sep 17 00:00:00 2001
From: Andreas Stieger <Andreas.Stieger(a)gmx.de>
Date: Tue, 23 Apr 2024 17:51:24 +0200
Subject: [PATCH] MAINT: The OCB design is in the public domain
The inventor dedicated the design to the public domain, all patents
lapsed intentionally. Comments only, no code change.
Fixes #6403
---
src/crypto/CryptStateOCB2.cpp | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/src/crypto/CryptStateOCB2.cpp b/src/crypto/CryptStateOCB2.cpp
index e5866b01c..16259d9df 100644
--- a/src/crypto/CryptStateOCB2.cpp
+++ b/src/crypto/CryptStateOCB2.cpp
@@ -5,11 +5,9 @@
/*
* This code implements OCB-AES128.
- * In the US, OCB is covered by patents. The inventor has given a license
- * to all programs distributed under the GPL.
- * Mumble is BSD (revised) licensed, meaning you can use the code in a
- * closed-source program. If you do, you'll have to either replace
- * OCB with something else or get yourself a license.
+ * The algorithm design was dedicated to the public domain.
+ * https://www.cs.ucdavis.edu/~rogaway/ocb/license.htm
+ * https://www.cs.ucdavis.edu/~rogaway/ocb/ocb-faq.htm
*/
#include <QtCore/QtGlobal>
--
2.44.0
++++++ mumble-1.5.629-unbundle-audio-backends.patch ++++++
Index: mumble-1.5.629/src/mumble/CMakeLists.txt
===================================================================
--- mumble-1.5.629.orig/src/mumble/CMakeLists.txt
+++ mumble-1.5.629/src/mumble/CMakeLists.txt
@@ -1027,7 +1027,6 @@ if(jackaudio)
)
target_compile_definitions(mumble_client_object_lib PUBLIC "USE_JACKAUDIO")
- target_include_directories(mumble_client_object_lib SYSTEM PUBLIC "${3RDPARTY_DIR}/jack")
endif()
if(oss)
@@ -1049,7 +1048,8 @@ if(pipewire)
)
target_compile_definitions(mumble_client_object_lib PUBLIC "USE_PIPEWIRE")
- target_include_directories(mumble_client_object_lib SYSTEM PUBLIC "${3RDPARTY_DIR}/pipewire")
+ target_include_directories(mumble_client_object_lib SYSTEM PUBLIC "/usr/include/pipewire-0.3")
+ target_include_directories(mumble_client_object_lib SYSTEM PUBLIC "/usr/include/spa-0.2")
endif()
if(portaudio)
@@ -1060,7 +1060,6 @@ if(portaudio)
)
target_compile_definitions(mumble_client_object_lib PUBLIC "USE_PORTAUDIO")
- target_include_directories(mumble_client_object_lib SYSTEM PUBLIC "${3RDPARTY_DIR}/portaudio")
endif()
if(pulseaudio)
@@ -1071,7 +1070,6 @@ if(pulseaudio)
)
target_compile_definitions(mumble_client_object_lib PUBLIC "USE_PULSEAUDIO")
- target_include_directories(mumble_client_object_lib SYSTEM PUBLIC "${3RDPARTY_DIR}/pulseaudio")
endif()
if(wasapi)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mpvpaper for openSUSE:Factory checked in at 2024-04-25 20:48:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mpvpaper (Old)
and /work/SRC/openSUSE:Factory/.mpvpaper.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mpvpaper"
Thu Apr 25 20:48:04 2024 rev:10 rq:1169925 version:1.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/mpvpaper/mpvpaper.changes 2023-11-03 22:21:43.983554722 +0100
+++ /work/SRC/openSUSE:Factory/.mpvpaper.new.1880/mpvpaper.changes 2024-04-25 20:48:11.515898154 +0200
@@ -1,0 +2,12 @@
+Tue Apr 23 19:16:44 UTC 2024 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 1.5:
+ * Allow selecting multiple outputs at once without using "*"
+ like: "DP-2 HDMI-A-1 DP-1"
+ * Allow using the mpv option "--playlist" to load media
+ * Load mpv options with the mpv option "config=yes"
+ instead of manually loading
+ * Override user configs with options passed with "--mpv-options/-o"
+ * Fix vo=libmpv not being set when empty for mpv 0.38
+
+-------------------------------------------------------------------
Old:
----
1.4.tar.gz
New:
----
1.5.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mpvpaper.spec ++++++
--- /var/tmp/diff_new_pack.DJXAlF/_old 2024-04-25 20:48:12.959951179 +0200
+++ /var/tmp/diff_new_pack.DJXAlF/_new 2024-04-25 20:48:12.971951619 +0200
@@ -1,7 +1,7 @@
#
# spec file for package mpvpaper
#
-# Copyright (c) 2023 SUSE LLC
+# 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
@@ -17,7 +17,7 @@
Name: mpvpaper
-Version: 1.4
+Version: 1.5
Release: 0
Summary: A video wallpaper program for wlroots based wayland compositors
License: GPL-3.0-or-later
++++++ 1.4.tar.gz -> 1.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpvpaper-1.4/README.md new/mpvpaper-1.5/README.md
--- old/mpvpaper-1.4/README.md 2023-11-02 19:40:09.000000000 +0100
+++ new/mpvpaper-1.5/README.md 2024-04-19 17:24:21.000000000 +0200
@@ -11,14 +11,14 @@
- ninja
- meson
-- pkg-config
+- libmpv
### Clone | Build | Install:
```
# Clone
git clone --single-branch https://github.com/GhostNaN/mpvpaper
# Build
cd mpvpaper
-meson build --prefix=/usr/local
+meson setup build --prefix=/usr/local
ninja -C build
# Install
ninja -C build install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpvpaper-1.4/src/holder.c new/mpvpaper-1.5/src/holder.c
--- old/mpvpaper-1.4/src/holder.c 2023-11-02 19:40:09.000000000 +0100
+++ new/mpvpaper-1.5/src/holder.c 2024-04-19 17:24:21.000000000 +0200
@@ -331,8 +331,8 @@
}
}
- // Need at least a display and video
- if (optind + 1 >= argc) {
+ // Need at least a output
+ if (optind >= argc) {
fprintf(stderr, "%s", usage);
exit(EXIT_FAILURE);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpvpaper-1.4/src/main.c new/mpvpaper-1.5/src/main.c
--- old/mpvpaper-1.4/src/main.c 2023-11-02 19:40:09.000000000 +0100
+++ new/mpvpaper-1.5/src/main.c 2024-04-19 17:24:21.000000000 +0200
@@ -63,7 +63,7 @@
static mpv_render_context *mpv_glcontext;
static int wakeup_pipe[2];
static char *video_path;
-static char *mpv_options;
+static char *mpv_options = "";
static struct {
char **pauselist;
@@ -411,31 +411,11 @@
}
static void set_init_mpv_options(const struct wl_state *state) {
- // Enable user control through terminal by default
+ // Enable user control through terminal by default and configs
mpv_set_option_string(mpv, "input-default-bindings", "yes");
mpv_set_option_string(mpv, "input-terminal", "yes");
mpv_set_option_string(mpv, "terminal", "yes");
-
- // Load user configs
- const char *home_dir = getenv("HOME");
- char *config_path = calloc(strlen(home_dir)+1 + 30, sizeof(char));
- strcpy(config_path, home_dir);
-
- char loaded_configs[50] = "";
-
- strcpy(config_path+strlen(home_dir), "/.config/mpv/mpv.conf");
- if (mpv_load_config_file(mpv, config_path) == 0)
- strcat(loaded_configs, "mpv.conf ");
- strcpy(config_path+strlen(home_dir), "/.config/mpv/input.conf");
- if (mpv_load_config_file(mpv, config_path) == 0)
- strcat(loaded_configs, "input.conf ");
- strcpy(config_path+strlen(home_dir), "/.config/mpv/fonts.conf");
- if (mpv_load_config_file(mpv, config_path) == 0)
- strcat(loaded_configs, "fonts.conf ");
- free(config_path);
-
- if (VERBOSE && strcmp(loaded_configs, ""))
- cflp_info("Loaded [ %s] user configs from \"~/.config/mpv/\"", loaded_configs);
+ mpv_set_option_string(mpv, "config", "yes");
// Convenience options passed for slideshow mode
if (SLIDESHOW_TIME != 0) {
@@ -444,7 +424,7 @@
}
// Set mpv_options passed
- if (mpv_options) {
+ if (strcmp(mpv_options, "") != 0) {
// Create config file name
char *opt_config_path = calloc(strlen("/tmp/mpvpaper.config")+1 + strlen(state->monitor)+1, sizeof(char));
strcpy(opt_config_path, "/tmp/mpvpaper");
@@ -491,10 +471,15 @@
exit_mpvpaper(EXIT_FAILURE);
}
+ // Run again after mpv_initialize to override options in config files
+ set_init_mpv_options(state);
+
// Force libmpv vo as nothing else will work
char *vo_option = mpv_get_property_string(mpv, "options/vo");
- if (strcmp(vo_option, "libmpv") != 0 && strcmp(vo_option, "") != 0) {
- cflp_warning("mpvpaper does not support any other vo than \"libmpv\"");
+ if (strcmp(vo_option, "libmpv") != 0) {
+ if (strcmp(vo_option, "") != 0) {
+ cflp_warning("mpvpaper does not support any other vo than \"libmpv\"");
+ }
mpv_set_option_string(mpv, "vo", "libmpv");
}
@@ -531,8 +516,20 @@
mpv_command(mpv, (const char*[]) {"set", "playlist-start", playlist_pos, NULL});
}
- mpv_command(mpv, (const char*[]) {"loadfile", video_path, NULL});
+ // Load media or try loading as playlist file
+ if (strstr(video_path, "--playlist=") == NULL) {
+ mpv_err = mpv_command(mpv, (const char*[]) {"loadfile", video_path, NULL});
+ } else {
+ // cut out "--playlist=" then load as a list file
+ mpv_err = mpv_command(mpv, (const char*[]) {"loadlist", video_path+strlen("--playlist="), NULL});
+ }
+
+ if (mpv_err < 0) {
+ cflp_error("Failed to load file, %s", mpv_error_string(mpv_err));
+ exit_mpvpaper(EXIT_FAILURE);
+ }
+ // Wait for file to load
mpv_event *event = mpv_wait_event(mpv, 1);
while (event->event_id != MPV_EVENT_FILE_LOADED) {
event = mpv_wait_event(mpv, 1);
@@ -611,6 +608,11 @@
cflp_error("Failed to load OpenGL 0x%X", eglGetError());
exit_mpvpaper(EXIT_FAILURE);
}
+
+ // After making EGL_NO_SURFACE current to a context
+ // Only with the Nvidia Pro drivers will set the draw buffer state to GL_NONE
+ // So we are going to force GL_BACK just like Mesa's EGL implementation
+ glDrawBuffer(GL_BACK);
}
static void destroy_display_output(struct display_output *output) {
@@ -711,7 +713,7 @@
struct display_output *output = data;
- bool name_ok = (strcmp(output->name, output->state->monitor) == 0) || (strcmp(output->state->monitor, "*") == 0);
+ bool name_ok = (strstr(output->state->monitor, output->name) != NULL) || (strcmp(output->state->monitor, "*") == 0);
if (name_ok && !output->layer_surface) {
if (VERBOSE)
cflp_info("Output %s (%s) selected", output->name, output->identifier);
@@ -968,15 +970,35 @@
if (VERBOSE)
cflp_info("Verbose Level %i enabled", VERBOSE);
- // Need at least a display and video
- if (optind + 1 >= argc) {
- cflp_error("Not enough args passed");
+ // Need at least a output and file or playlist file
+ char *playlist_opt_pointer;
+ if((playlist_opt_pointer = strstr(mpv_options, "--playlist=")) != NULL) {
+
+ // cut out mpv "--playlist=/my/list.txt" option from mpv_options as video_path, we will cut out "--playlist=" later
+ video_path = strtok(strdup(playlist_opt_pointer), "\n");
+
+ // remove mpv "--playlist=" option from mpv_options to avoid "The playlist option can't be used in a config file."
+ char *playlist_opt_pointer_tail = playlist_opt_pointer+strlen(video_path);
+ memmove(playlist_opt_pointer, playlist_opt_pointer_tail, strlen(playlist_opt_pointer_tail)+1);
+
+ if (optind >= argc) {
+ cflp_error("Not enough args passed\n"
+ "Please set output");
+ fprintf(stderr, "%s", usage);
+ exit(EXIT_FAILURE);
+ }
+ }
+ else if (optind + 1>= argc) {
+ cflp_error("Not enough args passed\n"
+ "Please set output and url|path filename");
fprintf(stderr, "%s", usage);
exit(EXIT_FAILURE);
}
state->monitor = strdup(argv[optind]);
- video_path = strdup(argv[optind+1]);
+ if (!video_path)
+ video_path = strdup(argv[optind+1]);
+
}
static void check_paper_processes() {
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package kubectl-view-allocations for openSUSE:Factory checked in at 2024-04-25 20:48:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kubectl-view-allocations (Old)
and /work/SRC/openSUSE:Factory/.kubectl-view-allocations.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kubectl-view-allocations"
Thu Apr 25 20:48:02 2024 rev:2 rq:1169929 version:0.19.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/kubectl-view-allocations/kubectl-view-allocations.changes 2023-11-28 22:20:46.108800201 +0100
+++ /work/SRC/openSUSE:Factory/.kubectl-view-allocations.new.1880/kubectl-view-allocations.changes 2024-04-25 20:48:09.651829708 +0200
@@ -1,0 +2,19 @@
+Tue Apr 23 19:17:31 UTC 2024 - Johannes Kastl <opensuse_buildservice(a)ojkastl.de>
+
+- BuildRequire cargo 1.75 aka rust 1.75 to avoid errors due to
+- kube-client v0.90.0
+
+-------------------------------------------------------------------
+Tue Apr 23 18:26:25 UTC 2024 - opensuse_buildservice(a)ojkastl.de
+
+- fix boo#1223224
+- Update to version 0.19.2 (skipping non-existing releases 0.19.0
+ and 0.19.1):
+ * (cargo-release) version 0.19.2
+ * (cargo-release) version 0.19.1
+ * (cargo-release) version 0.19.0
+ * Update kube & k8s-openapi, minimal k8s version is 1.24
+ * add socks5 support via the kube dependency
+ * Bump actions/cache from 3 to 4
+
+-------------------------------------------------------------------
Old:
----
kubectl-view-allocations-0.18.1.tar.gz
New:
----
kubectl-view-allocations-0.19.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kubectl-view-allocations.spec ++++++
--- /var/tmp/diff_new_pack.PlChua/_old 2024-04-25 20:48:11.187886110 +0200
+++ /var/tmp/diff_new_pack.PlChua/_new 2024-04-25 20:48:11.191886257 +0200
@@ -1,7 +1,7 @@
#
# spec file for package kubectl-view-allocations
#
-# Copyright (c) 2023 SUSE LLC
+# 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
@@ -19,7 +19,7 @@
%global rustflags '-Clink-arg=-Wl,-z,relro,-z,now'
Name: kubectl-view-allocations
-Version: 0.18.1
+Version: 0.19.2
Release: 0
Summary: kubectl plugin to list allocations
License: CC0-1.0
@@ -29,7 +29,8 @@
Source2: cargo_config
Recommends: fzf
BuildRequires: cargo
-BuildRequires: rust >= 1.67.0
+# kube-client v0.90.0 requires rust 1.75 or higher
+BuildRequires: rust >= 1.75.0
%description
kubectl plugin lists allocations for resources (cpu, memory, gpu,...) as
++++++ _service ++++++
--- /var/tmp/diff_new_pack.PlChua/_old 2024-04-25 20:48:11.235887873 +0200
+++ /var/tmp/diff_new_pack.PlChua/_new 2024-04-25 20:48:11.239888020 +0200
@@ -4,7 +4,7 @@
<param name="scm">git</param>
<param name="exclude">.git</param>
<param name="versionformat">@PARENT_TAG@</param>
- <param name="revision">0.18.1</param>
+ <param name="revision">0.19.2</param>
<param name="changesgenerate">enable</param>
</service>
<service name="recompress" mode="manual">
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.PlChua/_old 2024-04-25 20:48:11.267889048 +0200
+++ /var/tmp/diff_new_pack.PlChua/_new 2024-04-25 20:48:11.271889195 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/davidB/kubectl-view-allocations</param>
- <param name="changesrevision">919dc7507d089c9935a3702fd26571b79171ef4b</param></service></servicedata>
+ <param name="changesrevision">dce378ea1bcbc40ee0fb9f0d7637bdb5249a19c6</param></service></servicedata>
(No newline at EOF)
++++++ kubectl-view-allocations-0.18.1.tar.gz -> kubectl-view-allocations-0.19.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kubectl-view-allocations-0.18.1/.github/workflows/ci.yaml new/kubectl-view-allocations-0.19.2/.github/workflows/ci.yaml
--- old/kubectl-view-allocations-0.18.1/.github/workflows/ci.yaml 2023-11-25 19:50:33.000000000 +0100
+++ new/kubectl-view-allocations-0.19.2/.github/workflows/ci.yaml 2024-04-23 19:58:02.000000000 +0200
@@ -38,7 +38,7 @@
steps:
- uses: actions/checkout@v4
- - uses: actions/cache@v3
+ - uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
@@ -77,7 +77,7 @@
# Anonymous access is limited to 60 requests / hour / worker
# github-token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v4
- - uses: actions/cache@v3
+ - uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kubectl-view-allocations-0.18.1/.github/workflows/release.yaml new/kubectl-view-allocations-0.19.2/.github/workflows/release.yaml
--- old/kubectl-view-allocations-0.18.1/.github/workflows/release.yaml 2023-11-25 19:50:33.000000000 +0100
+++ new/kubectl-view-allocations-0.19.2/.github/workflows/release.yaml 2024-04-23 19:58:02.000000000 +0200
@@ -37,7 +37,7 @@
steps:
- uses: actions/checkout@v4
- - uses: actions/cache@v3
+ - uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kubectl-view-allocations-0.18.1/Cargo.toml new/kubectl-view-allocations-0.19.2/Cargo.toml
--- old/kubectl-view-allocations-0.18.1/Cargo.toml 2023-11-25 19:50:33.000000000 +0100
+++ new/kubectl-view-allocations-0.19.2/Cargo.toml 2024-04-23 19:58:02.000000000 +0200
@@ -1,6 +1,6 @@
[package]
name = "kubectl-view-allocations"
-version = "0.18.1"
+version = "0.19.2"
authors = ["David Bernard"]
edition = "2021"
description = "kubectl plugin to list allocations (cpu, memory, gpu,... X utilization, requested, limit, allocatable,...)"
@@ -16,12 +16,13 @@
clap = { version = "4.2", features = ["derive"] }
color-eyre = "0.6.2"
itertools = "0.12"
-k8s-openapi = { version = "0.20.0", default-features = false }
-kube = { version = "0.87", features = [
+k8s-openapi = { version = "0.21", default-features = false }
+kube = { version = "0.90", features = [
"client",
"oauth",
"gzip",
"rustls-tls",
+ "socks5",
], default-features = false }
prettytable-rs = { version = "0.10", default-features = false, optional = true }
serde = "1.0"
@@ -39,7 +40,7 @@
default = ["cli"]
cli = [
"dep:tokio",
- "k8s-openapi/v1_22",
+ "k8s-openapi/earliest",
"dep:tracing-subscriber",
"prettytable",
]
++++++ vendor.tar.xz ++++++
/work/SRC/openSUSE:Factory/kubectl-view-allocations/vendor.tar.xz /work/SRC/openSUSE:Factory/.kubectl-view-allocations.new.1880/vendor.tar.xz differ: char 15, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package waybar for openSUSE:Factory checked in at 2024-04-25 20:48:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/waybar (Old)
and /work/SRC/openSUSE:Factory/.waybar.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "waybar"
Thu Apr 25 20:48:00 2024 rev:53 rq:1169914 version:0.10.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/waybar/waybar.changes 2024-03-21 17:02:12.532333321 +0100
+++ /work/SRC/openSUSE:Factory/.waybar.new.1880/waybar.changes 2024-04-25 20:48:08.639792547 +0200
@@ -1,0 +2,50 @@
+Tue Apr 23 16:35:16 UTC 2024 - Joshua Smith <smolsheep(a)opensuse.org>
+
+- Enabled tests
+- Update to 0.10.2
+ * fix: hover event did not propagate causing issues
+
+-------------------------------------------------------------------
+Tue Apr 23 12:40:11 UTC 2024 - Joshua Smith <smolsheep(a)opensuse.org>
+
+- Remove waybar-build-for-wireplumber-0.5.patch (Fixed upstream)
+- Update to 0.10.1
+ * Add always on option for hyprland/submap
+ * Add dwl/window module
+ * Add empty workspace style for Sway
+ * Add waybar-styles(5) manual page
+ * Also consider floating nodes when checking for flags
+ and active workspace status
+ * battery: Add {cycles}, {health} format replacements
+ * calendar: add shift_reset action
+ empty workspaces
+ * Escape tooltip in custom module
+ * feat: (optional) hover for all modules
+ * (Fix) Alt format on group modules
+ * Fix clock on-scroll value not being used for calendar
+ * fix:dwl tag crash when use wlr-randr enable monitor
+ * Fixed segfault
+ * Fixes for hyprland/workspaces
+ * Fix peristent class on buttons
+ * fix(power-profiles-daemon): correctly set initial visibility
+ * Fix reloading config
+ * fix(sway/workspaces): floating_nodes and focused icon
+ * fix(sway/workspaces): visible class doesn't work
+ * fix(sway/workspaces): Visible class doesn't work on visible and
+ * fix: update clock tooltip without placeholders
+ * fix(wlr/taskbar): crash on taskbar drag and drop event
+ functions
+ * Hyprland workspaces hosting-monitor css class
+ * [hyprland/workspaces] New options to change on click behaviour
+ * Make right-click to circle down ppd
+ * Pipewire backend: use pipewire thread lock
+ * README: tweak repology badge
+ * refactor(backlight): use concrete types for some helper
+ * refactor(privacy): clean up the module
+ * Remove unused variable in Workspaces::updateWindows
+ * sway/workspaces: Fix scroll on unfocused monitor
+ * taskbar: search user directories first for desktop files
+ * Update Wireplumber API to 0.5
+ * Upower warning level
+
+-------------------------------------------------------------------
Old:
----
waybar-0.10.0.tar.gz
waybar-build-for-wireplumber-0.5.patch
New:
----
waybar-0.10.2.tar.gz
BETA DEBUG BEGIN:
Old:
- Remove waybar-build-for-wireplumber-0.5.patch (Fixed upstream)
- Update to 0.10.1
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ waybar.spec ++++++
--- /var/tmp/diff_new_pack.QROKlB/_old 2024-04-25 20:48:09.255815167 +0200
+++ /var/tmp/diff_new_pack.QROKlB/_new 2024-04-25 20:48:09.255815167 +0200
@@ -17,7 +17,7 @@
Name: waybar
-Version: 0.10.0
+Version: 0.10.2
Release: 0
Summary: Customizable Wayland bar for Sway and Wlroots based compositors
License: MIT
@@ -25,8 +25,6 @@
URL: https://github.com/Alexays/Waybar
Source0: https://github.com/Alexays/Waybar/archive/refs/tags/%{version}.tar.gz#/%{na…
Source1: waybar.rpmlintrc
-# PATCH-FIX-UPSTREAM smolsheep(a)opensuse.org -- Fix wireplumber build. See gh/Alexays/Waybar#2919
-Patch0: waybar-build-for-wireplumber-0.5.patch
BuildRequires: cmake
%if 0%{?sle_version} >= 150400
BuildRequires: gcc13-c++
@@ -104,12 +102,15 @@
%if 0%{?sle_version} >= 150400
export CXX=g++-13
%endif
-%meson -Dcava=disabled
+%meson -Dcava=disabled -Dtests=enabled
%meson_build
%install
%meson_install
+%check
+%meson_test
+
%files
%{_bindir}/waybar
%{_mandir}/man?/%{name}*
++++++ waybar-0.10.0.tar.gz -> waybar-0.10.2.tar.gz ++++++
++++ 2685 lines of diff (skipped)
1
0