openSUSE Commits
Threads by month
- ----- 2024 -----
- 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
November 2022
- 1 participants
- 2423 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000release-packages for openSUSE:Factory checked in at 2022-11-30 16:43:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Wed Nov 30 16:43:15 2022 rev:1965 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-release.spec ++++++
--- /var/tmp/diff_new_pack.nT8by4/_old 2022-11-30 16:43:18.110723418 +0100
+++ /var/tmp/diff_new_pack.nT8by4/_new 2022-11-30 16:43:18.114723439 +0100
@@ -17,7 +17,7 @@
Name: MicroOS-release
-Version: 20221129
+Version: 20221130
Release: 0
Summary: openSUSE MicroOS
License: GPL-2.0-or-later
@@ -176,9 +176,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = MicroOS
-Provides: product(MicroOS) = 20221129-0
+Provides: product(MicroOS) = 20221130-0
Provides: product-label() = openSUSE%20MicroOS
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20221129
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20221130
Provides: product-url(releasenotes) = http%3A%2F%2Fdoc.opensuse.org%2Frelease%2Dnotes%2Fx86_64%2FopenSUSE%2FTumbleweed%2Frelease%2Dnotes%2DopenSUSE.rpm
Provides: product-endoflife()
Requires: product_flavor(MicroOS)
@@ -194,7 +194,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(MicroOS) = 20221129-0
+Provides: product_flavor(MicroOS) = 20221130-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description dvd
@@ -210,7 +210,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(MicroOS) = 20221129-0
+Provides: product_flavor(MicroOS) = 20221130-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description appliance
@@ -224,24 +224,22 @@
%prep
+%setup -qcT
+mkdir license
+if [ -f /CD1/license.tar.gz ]; then
+ tar -C license -xzf /CD1/license.tar.gz
+elif [ -f %{_prefix}/lib/skelcd/CD1/license.tar.gz ]; then
+ tar -C license -xzf %{_prefix}/lib/skelcd/CD1/license.tar.gz
+fi
%build
%install
-mkdir -p %{buildroot}%{_sysconfdir}
-mkdir -p %{buildroot}%{_prefix}/lib/issue.d
+mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_prefix}/lib/issue.d %{buildroot}/run
+
echo -e "\nWelcome to openSUSE MicroOS (%{_target_cpu}) - Kernel \\\r (\\\l).\n" > %{buildroot}%{_prefix}/lib/issue.d/10-OS
echo -e "\n" > %{buildroot}%{_prefix}/lib/issue.d/90-OS
-# Put EULA into correct place
-mkdir -p %{buildroot}/%{_sysconfdir}/YaST2/licenses/base
-cd %{buildroot}/%{_sysconfdir}/YaST2/licenses/base
-if [ -f /CD1/license.tar.gz ]; then
- tar -xzf /CD1/license.tar.gz
-elif [ -f %{_prefix}/lib/skelcd/CD1/license.tar.gz ]; then
- tar -xzf %{_prefix}/lib/skelcd/CD1/license.tar.gz
-fi
-
VERSION_ID=`echo %{version}|tr '[:upper:]' '[:lower:]'|sed -e 's/ //g;'`
# note: VERSION is an optional field and has no meaning other than informative on a rolling distro
# We do thus not add it to the os-release file
@@ -261,17 +259,26 @@
EOF
ln -s ..%{_prefix}/lib/os-release %{buildroot}%{_sysconfdir}/os-release
+# Put EULA into correct place
+install -D -d -m 755 "%{buildroot}%_defaultlicensedir/product/base"
+install -D -d -m 755 "%{buildroot}%_defaultlicensedir"
+cp -a license "%{buildroot}%_defaultlicensedir/%name"
+pushd license
+for i in *; do
+ ln -s "%_defaultlicensedir/%name/$i" %{buildroot}%_defaultlicensedir/product/base/$i
+done
+
mkdir -p %{buildroot}%{_sysconfdir}/products.d
cat >%{buildroot}%{_sysconfdir}/products.d/MicroOS.prod << EOF
<?xml version="1.0" encoding="UTF-8"?>
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>MicroOS</name>
- <version>20221129</version>
+ <version>20221130</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:microos:20221129</cpeid>
+ <cpeid>cpe:/o:opensuse:microos:20221130</cpeid>
<productline>MicroOS</productline>
<register>
<pool>
@@ -338,16 +345,13 @@
%files
%defattr(644,root,root,755)
+%dir %_defaultlicensedir/product
+%_defaultlicensedir/product/base
+%license license/*
%{_sysconfdir}/os-release
%{_prefix}/lib/os-release
%dir %{_sysconfdir}/products.d
%{_sysconfdir}/products.d/*
-%dir %{_sysconfdir}/YaST2/
-%dir %{_sysconfdir}/YaST2/licenses/
-%dir %{_sysconfdir}/YaST2/licenses/base/
-# no %doc here, or we will not install them
-%{_sysconfdir}/YaST2/licenses/base/license*txt
-%{_sysconfdir}/YaST2/licenses/base/no-acceptance-needed
%dir %{_prefix}/lib/issue.d
%{_prefix}/lib/issue.d/*-OS
++++++ openSUSE-Addon-NonOss-release.spec ++++++
--- /var/tmp/diff_new_pack.nT8by4/_old 2022-11-30 16:43:18.142723587 +0100
+++ /var/tmp/diff_new_pack.nT8by4/_new 2022-11-30 16:43:18.146723608 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package openSUSE-Addon-NonOss-release (Version 20221129)
+# spec file for package openSUSE-Addon-NonOss-release (Version 20221130)
#
# Copyright (c) 2022 openSUSE.
#
@@ -16,7 +16,7 @@
Name: openSUSE-Addon-NonOss-release
%define product openSUSE-Addon-NonOss
Summary: openSUSE NonOSS Addon%{?betaversion: %{betaversion}}
-Version: 20221129
+Version: 20221130
Release: 0
License: BSD-3-Clause
Group: System/Fhs
@@ -24,9 +24,9 @@
Provides: %name-%version
Provides: product() = openSUSE%2DAddon%2DNonOss
-Provides: product(openSUSE-Addon-NonOss) = 20221129-0
+Provides: product(openSUSE-Addon-NonOss) = 20221130-0
Provides: product-label() = non%20oss%20addon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20221129
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20221130
AutoReqProv: on
@@ -49,10 +49,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20221129</version>
+ <version>20221130</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20221129</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20221130</cpeid>
<register>
<pool>
</pool>
++++++ openSUSE-release.spec ++++++
--- /var/tmp/diff_new_pack.nT8by4/_old 2022-11-30 16:43:18.170723735 +0100
+++ /var/tmp/diff_new_pack.nT8by4/_new 2022-11-30 16:43:18.178723777 +0100
@@ -20,7 +20,7 @@
#define betaversion %{nil}
%define codename Tumbleweed
Name: openSUSE-release
-Version: 20221129
+Version: 20221130
Release: 0
# 0 is the product release, not the build release of this package
Summary: openSUSE Tumbleweed
@@ -178,7 +178,7 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = openSUSE
-Provides: product(openSUSE) = 20221129-0
+Provides: product(openSUSE) = 20221130-0
%ifarch x86_64
Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64
%endif
@@ -192,7 +192,7 @@
Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64
%endif
Provides: product-label() = openSUSE
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20221129
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20221130
Provides: product-url(releasenotes) = http%3A%2F%2Fdoc.opensuse.org%2Frelease%2Dnotes%2Fx86_64%2FopenSUSE%2FTumbleweed%2Frelease%2Dnotes%2DopenSUSE.rpm
Provides: product-url(repository) = http%3A%2F%2Fdownload.opensuse.org%2Ftumbleweed%2Frepo%2Foss%2F
Requires: product_flavor(openSUSE)
@@ -206,7 +206,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(ftp)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description ftp
@@ -221,7 +221,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(mini)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description mini
@@ -236,7 +236,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description dvd
@@ -251,7 +251,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-kde)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-kde
@@ -266,7 +266,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-x11)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-x11
@@ -281,7 +281,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-gnome)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-gnome
@@ -296,7 +296,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-xfce)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-xfce
@@ -311,7 +311,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-kde)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-kde
@@ -326,7 +326,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-gnome)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-gnome
@@ -341,7 +341,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-x11)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-x11
@@ -356,7 +356,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance
@@ -371,7 +371,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-docker)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-docker
@@ -386,7 +386,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-kvm)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-kvm
@@ -401,7 +401,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vmware)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vmware
@@ -416,7 +416,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-openstack)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-openstack
@@ -431,7 +431,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-hyperv)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-hyperv
@@ -446,7 +446,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vagrant)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vagrant
@@ -461,7 +461,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-wsl)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-wsl
@@ -476,7 +476,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-custom)
-Provides: product_flavor(openSUSE) = 20221129-0
+Provides: product_flavor(openSUSE) = 20221130-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-custom
@@ -540,9 +540,7 @@
mkdir -p %{buildroot}%{_sysconfdir}/zypp/vendors.d
echo -e "[main]\nvendors=openSUSE,SUSE,SUSE LLC <https://www.suse.com/>\n" > %{buildroot}%{_sysconfdir}/zypp/vendors.d/00-openSUSE.conf
-
-# fate#319341, make openSUSE-release own YaST license files. TODO:
-# get rid of /etc/YaST2/licenses
+# fate#319341, make openSUSE-release own YaST license files.
install -D -d -m 755 "%{buildroot}%_defaultlicensedir/product/base"
install -D -d -m 755 "%{buildroot}%_defaultlicensedir"
cp -a license "%{buildroot}%_defaultlicensedir/%name"
@@ -557,10 +555,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20221129</version>
+ <version>20221130</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse:20221129</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse:20221130</cpeid>
<productline>openSUSE</productline>
<register>
<pool>
@@ -758,10 +756,11 @@
%config %{_sysconfdir}/YaST2/control.xml
%config %{_sysconfdir}/zypp/vendors.d/00-openSUSE.conf
%{_prefix}/lib/motd.d/welcome
-%dir %{_prefix}/lib/issue.d/
+%config(noreplace) %{_sysconfdir}/issue.net
+%dir %{_sysconfdir}/products.d
+%{_sysconfdir}/products.d/*
+%dir %{_prefix}/lib/issue.d
%{_prefix}/lib/issue.d/10-openSUSE.conf
%{_prefix}/lib/issue.d/90-openSUSE.conf
-%config(noreplace) %{_sysconfdir}/issue.net
-%{_sysconfdir}/products.d
%changelog
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package suse-prime for openSUSE:Factory checked in at 2022-11-30 16:33:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/suse-prime (Old)
and /work/SRC/openSUSE:Factory/.suse-prime.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "suse-prime"
Wed Nov 30 16:33:17 2022 rev:39 rq:1039126 version:0.8.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/suse-prime/suse-prime.changes 2022-10-24 11:13:32.071251557 +0200
+++ /work/SRC/openSUSE:Factory/.suse-prime.new.1597/suse-prime.changes 2022-11-30 16:33:18.547538632 +0100
@@ -1,0 +2,7 @@
+Wed Nov 30 13:53:46 UTC 2022 - Stefan Dirsch <sndirsch(a)suse.com>
+
+- SUSEPrime-0.8.10
+ * prime-select.sh: fix kdeglobals path (github issue#91)
+- require sudo command/package (github issue#91)
+
+-------------------------------------------------------------------
Old:
----
SUSEPrime-0.8.9.tar.gz
New:
----
SUSEPrime-0.8.10.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ suse-prime.spec ++++++
--- /var/tmp/diff_new_pack.skolH5/_old 2022-11-30 16:33:19.223542217 +0100
+++ /var/tmp/diff_new_pack.skolH5/_new 2022-11-30 16:33:19.227542239 +0100
@@ -23,7 +23,7 @@
%global modprobe_d_files 09-nvidia-modprobe-bbswitch-G04.conf 09-nvidia-modprobe-pm-G05.conf
Name: suse-prime
-Version: 0.8.9
+Version: 0.8.10
Release: 0
Summary: GPU (nvidia/intel) selection for NVIDIA optimus laptops with bbswitch support
License: SUSE-Public-Domain
@@ -37,6 +37,8 @@
Provides: suse-prime-bbswitch = %{version}
BuildRequires: pkgconfig(systemd)
BuildArch: noarch
+Requires: coreutils
+Requires: sudo
%{?systemd_ordering}
%description
++++++ SUSEPrime-0.8.9.tar.gz -> SUSEPrime-0.8.10.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SUSEPrime-0.8.9/prime-select.sh new/SUSEPrime-0.8.10/prime-select.sh
--- old/SUSEPrime-0.8.9/prime-select.sh 2022-10-23 22:48:54.000000000 +0200
+++ new/SUSEPrime-0.8.10/prime-select.sh 2022-11-30 14:27:51.000000000 +0100
@@ -220,7 +220,7 @@
panel_name=${1}
- kdeglobals="$(sudo -u $user -i eval 'echo -n $HOME')/.config/kdeglobals"
+ kdeglobals="$(sudo -u $user /usr/bin/printenv HOME)/.config/kdeglobals"
if [ -f $kdeglobals ]; then
sudo -u $user sed -i -r "s/(ScreenScaleFactors=)$panel_nvidia|$panel_intel|$panel_intel2/\1$panel_name/" "$kdeglobals"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package efl for openSUSE:Factory checked in at 2022-11-30 16:07:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/efl (Old)
and /work/SRC/openSUSE:Factory/.efl.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "efl"
Wed Nov 30 16:07:58 2022 rev:52 rq:1039026 version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/efl/efl.changes 2022-10-01 17:41:38.593504636 +0200
+++ /work/SRC/openSUSE:Factory/.efl.new.1597/efl.changes 2022-11-30 16:07:59.263519975 +0100
@@ -1,0 +2,5 @@
+Tue Nov 29 17:52:47 UTC 2022 - Michal Suchanek <msuchanek(a)suse.com>
+
+- luajit no longer available on ppc64
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ efl.spec ++++++
--- /var/tmp/diff_new_pack.bDdQob/_old 2022-11-30 16:08:00.675527701 +0100
+++ /var/tmp/diff_new_pack.bDdQob/_new 2022-11-30 16:08:00.683527745 +0100
@@ -36,7 +36,7 @@
%else
%define xine_present 1
%endif
-%ifarch %ix86 x86_64 aarch64 %{arml} ppc ppc64le
+%ifarch %ix86 x86_64 aarch64 %{arml} ppc
%if !0%{?suse_version} || 0%{?is_opensuse}
%define luajit_present 1
%endif
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package spice for openSUSE:Factory checked in at 2022-11-30 16:07:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/spice (Old)
and /work/SRC/openSUSE:Factory/.spice.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spice"
Wed Nov 30 16:07:56 2022 rev:41 rq:1039021 version:0.15.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/spice/spice.changes 2022-04-02 18:20:37.230221255 +0200
+++ /work/SRC/openSUSE:Factory/.spice.new.1597/spice.changes 2022-11-30 16:07:57.391509733 +0100
@@ -1,0 +2,7 @@
+Tue Nov 29 13:52:13 MST 2022 - carnold(a)suse.com
+
+- Update to v0.15.1 release
+ * This is a bug fix release with no upstream changelog
+- Drop fix-build-with-gstreamer-1.20.patch
+
+-------------------------------------------------------------------
Old:
----
fix-build-with-gstreamer-1.20.patch
spice-0.15.0.tar.bz2
spice-0.15.0.tar.bz2.sig
New:
----
spice-0.15.1.tar.bz2
spice-0.15.1.tar.bz2.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ spice.spec ++++++
--- /var/tmp/diff_new_pack.q8kYTY/_old 2022-11-30 16:07:57.967512885 +0100
+++ /var/tmp/diff_new_pack.q8kYTY/_new 2022-11-30 16:07:57.971512907 +0100
@@ -22,7 +22,7 @@
%define libname libspice-server1
Name: spice
-Version: 0.15.0
+Version: 0.15.1
Release: 0
Summary: SPICE client and server library
License: GPL-2.0-or-later OR LGPL-2.1-or-later
@@ -32,8 +32,6 @@
Source1: https://www.spice-space.org/download/releases/spice-server/%{name}-%{versio…
Source2: %{name}.keyring
Source99: %{name}.rpmlintrc
-# PATCH-FIX-UPSTREAM https://gitlab.freedesktop.org/spice/spice/-/merge_requests/207
-Patch0: fix-build-with-gstreamer-1.20.patch
BuildRequires: gcc-c++
BuildRequires: libjpeg-devel
@@ -97,7 +95,6 @@
%prep
%setup -q
-%patch0 -p1
%build
%configure \
++++++ spice-0.15.0.tar.bz2 -> spice-0.15.1.tar.bz2 ++++++
++++ 24494 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-py for openSUSE:Factory checked in at 2022-11-30 16:07:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-py (Old)
and /work/SRC/openSUSE:Factory/.python-py.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-py"
Wed Nov 30 16:07:55 2022 rev:39 rq:1038945 version:1.11.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-py/python-py.changes 2022-03-17 17:01:22.585679758 +0100
+++ /work/SRC/openSUSE:Factory/.python-py.new.1597/python-py.changes 2022-11-30 16:07:55.339498507 +0100
@@ -1,0 +2,8 @@
+Tue Nov 29 17:04:41 UTC 2022 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Remove python_module macro definition
+- Add python-py dep for testing
+- Use autosetup insteado of setup + patch
+- More specific python_sitelib in %files
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-py.spec ++++++
--- /var/tmp/diff_new_pack.VoA9cZ/_old 2022-11-30 16:07:55.851501308 +0100
+++ /var/tmp/diff_new_pack.VoA9cZ/_new 2022-11-30 16:07:55.855501330 +0100
@@ -17,7 +17,6 @@
%define oldpython python
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
@@ -47,6 +46,7 @@
Obsoletes: %{oldpython}-py-docs
BuildArch: noarch
%if %{with test}
+BuildRequires: %{python_module py = %{version}}
BuildRequires: %{python_module pytest}
%endif
%python_subpackages
@@ -62,8 +62,7 @@
* py.path: uniform local and svn path objects
%prep
-%setup -q -n py-%{version}
-%patch0 -p1
+%autosetup -p1 -n py-%{version}
rm -rf py.egg-info
rm -f tox.ini
@@ -92,7 +91,8 @@
%files %{python_files}
%doc README.rst
%license LICENSE
-%{python_sitelib}/*
+%{python_sitelib}/py
+%{python_sitelib}/py-%{version}*-info
%endif
%changelog
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-execnet for openSUSE:Factory checked in at 2022-11-30 16:07:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-execnet (Old)
and /work/SRC/openSUSE:Factory/.python-execnet.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-execnet"
Wed Nov 30 16:07:53 2022 rev:14 rq:1038942 version:1.9.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-execnet/python-execnet.changes 2021-12-16 21:19:07.798517076 +0100
+++ /work/SRC/openSUSE:Factory/.python-execnet.new.1597/python-execnet.changes 2022-11-30 16:07:54.211492336 +0100
@@ -1,0 +2,7 @@
+Tue Nov 29 16:58:39 UTC 2022 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Remove python_module macro definition
+- Add python-py dependency required because python-pytest removed that
+ dependency
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-execnet.spec ++++++
--- /var/tmp/diff_new_pack.9Fp9yG/_old 2022-11-30 16:07:54.671494852 +0100
+++ /var/tmp/diff_new_pack.9Fp9yG/_new 2022-11-30 16:07:54.679494896 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-execnet
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,7 +16,6 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-execnet
Version: 1.9.0
Release: 0
@@ -26,6 +25,7 @@
URL: https://github.com/pytest-dev/execnet
Source0: https://files.pythonhosted.org/packages/source/e/execnet/execnet-%{version}…
BuildRequires: %{python_module pytest}
+BuildRequires: %{python_module py}
BuildRequires: %{python_module setuptools_scm}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package chrony for openSUSE:Factory checked in at 2022-11-30 16:07:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chrony (Old)
and /work/SRC/openSUSE:Factory/.chrony.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chrony"
Wed Nov 30 16:07:50 2022 rev:38 rq:1038940 version:4.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/chrony/chrony.changes 2022-09-09 18:22:55.180159612 +0200
+++ /work/SRC/openSUSE:Factory/.chrony.new.1597/chrony.changes 2022-11-30 16:07:52.103480803 +0100
@@ -1,0 +2,6 @@
+Wed Nov 16 11:37:25 UTC 2022 - Clemens Famulla-Conrad <cfamullaconrad(a)suse.com>
+
+- Install chrony DHCP dispatcher script for Networkmanager
+ * chrony.nm-dispatcher.dhcp.patch /var/run to /run
+
+-------------------------------------------------------------------
New:
----
chrony.nm-dispatcher.dhcp.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ chrony.spec ++++++
--- /var/tmp/diff_new_pack.Ay2Jrn/_old 2022-11-30 16:07:52.903485179 +0100
+++ /var/tmp/diff_new_pack.Ay2Jrn/_new 2022-11-30 16:07:52.907485201 +0100
@@ -69,6 +69,7 @@
Patch2: chrony-logrotate.patch
Patch3: chrony-service-ordering.patch
Patch7: chrony-htonl.patch
+Patch8: chrony.nm-dispatcher.dhcp.patch
BuildRequires: NetworkManager-devel
BuildRequires: bison
BuildRequires: findutils
@@ -179,6 +180,7 @@
%patch2 -p1
%patch3
%patch7
+%patch8
# Remove pool statements from the default /etc/chrony.conf. They will
# be provided by branding packages in /etc/chrony.d/pool.conf .
@@ -190,6 +192,10 @@
# Also include any directives found in configuration files in /etc/chrony.d
include %{_sysconfdir}/chrony.d/*.conf
+
+# Add sourcedir needed by NetworkManager DHCP dispatcher
+sourcedir /run/chrony-dhcp
+
EOF
touch -r examples/chrony.conf.example2 chrony.conf
@@ -231,7 +237,9 @@
install -Dpm 0640 examples/chrony.keys.example \
%{buildroot}%{_sysconfdir}/chrony.keys
install -Dpm 0755 examples/chrony.nm-dispatcher.onoffline \
- %{buildroot}%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony
+ %{buildroot}%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-onoffline
+install -Dpm 0755 examples/chrony.nm-dispatcher.dhcp \
+ %{buildroot}%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-dhcp
install -Dpm 0755 %{SOURCE3} \
%{buildroot}%{_sysconfdir}/dhcp/dhclient.d/chrony.sh
%if %{with usr_etc}
@@ -337,7 +345,8 @@
%else
%config(noreplace) %{_sysconfdir}/logrotate.d/chrony
%endif
-%attr(0755,root,root) %{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony
+%attr(0755,root,root) %{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-onoffline
+%attr(0755,root,root) %{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-dhcp
%dir %{_sysconfdir}/chrony.d/
%dir %{_sysconfdir}/dhcp/
%dir %{_sysconfdir}/dhcp/dhclient.d/
++++++ chrony.nm-dispatcher.dhcp.patch ++++++
--- examples/chrony.nm-dispatcher.dhcp.orig
+++ examples/chrony.nm-dispatcher.dhcp
@@ -10,7 +10,7 @@
chronyc=/usr/bin/chronyc
server_options=iburst
-server_dir=/var/run/chrony-dhcp
+server_dir=/run/chrony-dhcp
dhcp_server_file=$server_dir/$interface.sources
dhcp_ntp_servers="$DHCP4_NTP_SERVERS $DHCP6_DHCP6_NTP_SERVERS"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package umockdev for openSUSE:Factory checked in at 2022-11-30 16:07:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/umockdev (Old)
and /work/SRC/openSUSE:Factory/.umockdev.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "umockdev"
Wed Nov 30 16:07:49 2022 rev:14 rq:1038920 version:0.17.15
Changes:
--------
--- /work/SRC/openSUSE:Factory/umockdev/umockdev.changes 2022-07-08 14:01:31.486421824 +0200
+++ /work/SRC/openSUSE:Factory/.umockdev.new.1597/umockdev.changes 2022-11-30 16:07:49.147464630 +0100
@@ -1,0 +2,11 @@
+Sun Nov 27 10:24:04 UTC 2022 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 0.17.15:
+ * Fixes for tests.
+- Changes from version 0.17.14:
+ * ioctl: Make data object usable from Python.
+ * preload: Wrap statfs().
+ * Move to gnu11 C standard.
+ * Lots of small potential bug fixes spotted by Coverity.
+
+-------------------------------------------------------------------
Old:
----
umockdev-0.17.13.tar.xz
New:
----
umockdev-0.17.15.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ umockdev.spec ++++++
--- /var/tmp/diff_new_pack.BYEHUK/_old 2022-11-30 16:07:49.627467257 +0100
+++ /var/tmp/diff_new_pack.BYEHUK/_new 2022-11-30 16:07:49.631467278 +0100
@@ -19,7 +19,7 @@
%define shlib libumockdev0
%define shlibpre libumockdev-preload0
Name: umockdev
-Version: 0.17.13
+Version: 0.17.15
Release: 0
Summary: Mock hardware devices for creating unit tests and bug reporting
License: LGPL-2.1-or-later
++++++ umockdev-0.17.13.tar.xz -> umockdev-0.17.15.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/.github/release.eloquent.yml new/umockdev-0.17.15/.github/release.eloquent.yml
--- old/umockdev-0.17.13/.github/release.eloquent.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/umockdev-0.17.15/.github/release.eloquent.yml 2022-11-24 16:02:22.000000000 +0100
@@ -0,0 +1,2 @@
+assets:
+ - path: umockdev-*.tar.xz
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/.github/workflows/release.yml new/umockdev-0.17.15/.github/workflows/release.yml
--- old/umockdev-0.17.13/.github/workflows/release.yml 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/.github/workflows/release.yml 2022-11-24 16:02:22.000000000 +0100
@@ -9,16 +9,19 @@
runs-on: ubuntu-latest
steps:
- name: Clone repository
- uses: actions/checkout@v2
+ uses: actions/checkout@v3
+ with:
+ # need this to also fetch tags
+ fetch-depth: 0
+
+ - name: Workaround for https://github.com/actions/checkout/pull/697
+ run: git fetch --force origin $(git describe --tags):refs/tags/$(git describe --tags)
- name: Build release tarball
# run as root; current Ubuntu podman breaks user networking ("could not find slirp4netns")
run: sudo PUBLISH_TAR=1 tests/run-apt
- name: Create GitHub release
- uses: docker://antonyurchenko/git-release:latest
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- CHANGELOG_FILE: "NEWS"
+ uses: eloquent/github-release-action@v2
with:
- args: umockdev-*.tar.xz
+ prerelease: "false"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/.github/workflows/tests.yml new/umockdev-0.17.15/.github/workflows/tests.yml
--- old/umockdev-0.17.13/.github/workflows/tests.yml 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/.github/workflows/tests.yml 2022-11-24 16:02:22.000000000 +0100
@@ -30,7 +30,10 @@
timeout-minutes: 30
steps:
- name: Clone repository
- uses: actions/checkout@v2
+ uses: actions/checkout@v3
+ with:
+ # need this to also fetch tags
+ fetch-depth: 0
- name: Run unit tests
run: |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/.gitignore new/umockdev-0.17.15/.gitignore
--- old/umockdev-0.17.13/.gitignore 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/.gitignore 2022-11-24 16:02:22.000000000 +0100
@@ -2,6 +2,7 @@
.deps
.dirstamp
.libs
+.version
*.la
*.lo
*.o
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/.version new/umockdev-0.17.15/.version
--- old/umockdev-0.17.13/.version 1970-01-01 01:00:00.000000000 +0100
+++ new/umockdev-0.17.15/.version 2022-11-24 16:06:12.774316300 +0100
@@ -0,0 +1 @@
+0.17.15
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/NEWS new/umockdev-0.17.15/NEWS
--- old/umockdev-0.17.13/NEWS 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/NEWS 2022-11-24 16:02:22.000000000 +0100
@@ -1,3 +1,5 @@
+OBSOLETE: Release news of newer versions are contained in the tag descriptions.
+
## [0.17.13] - 2022-05-30
- preload: Wrap fstatfs(), to work with systemd 251 also with Python tests
- Fix tests in Gentoo sandbox build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/README.md new/umockdev-0.17.15/README.md
--- old/umockdev-0.17.13/README.md 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/README.md 2022-11-24 16:02:22.000000000 +0100
@@ -1,3 +1,5 @@
+![CI status](https://github.com/martinpitt/umockdev/actions/workflows/tests.yml/…
+
umockdev
========
umockdev mocks Linux devices for creating integration tests for hardware
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/do-release new/umockdev-0.17.15/do-release
--- old/umockdev-0.17.13/do-release 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/do-release 1970-01-01 01:00:00.000000000 +0100
@@ -1,29 +0,0 @@
-#!/bin/sh
-set -e
-
-# This script does all the steps necessary for doing a new upstream release. It
-# should solely be used by upstream developers, distributors do not need to
-# worry about it.
-
-# check for anything uncommitted
-if LC_MESSAGES=C git status | grep -Eiq 'modified|untracked'; then
- echo "untracked/modified files, see git status" >&2
- exit 1
-fi
-
-git clean -fdx
-
-# update NEWS
-version=$(sed -rn '1 { s/^.*\[([0-9.]+)\].*/\1/; p }' NEWS)
-[ -n "$version" ] || {
- echo "failed to parse version" >&2
- exit 1
-}
-sed -i "s/- UNRELEASED/- $(date '+%Y-%m-%d')/" NEWS
-
-# commit the release and tag
-git commit -a -m "release $version"
-changes=$(sed -n '/^$/ q; /^- / p' NEWS)
-printf "$version\n\n$changes\n" | git tag -s -F- $version
-git push
-git push --tags
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/meson.build new/umockdev-0.17.15/meson.build
--- old/umockdev-0.17.13/meson.build 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/meson.build 2022-11-24 16:02:22.000000000 +0100
@@ -1,5 +1,5 @@
project('umockdev', 'c', 'vala',
- version: run_command('sed', '-rn', '1 { s/^.*\[([0-9.]+)\].*/\\1/; p }', 'NEWS', check: true).stdout().strip(),
+ version: run_command(meson.current_source_dir() / 'src' / 'getversion.sh', check: true).stdout().strip(),
license: 'LGPLv2.1+')
srcdir = meson.current_source_dir() / 'src'
@@ -7,11 +7,15 @@
lib_version = '0.3.0'
add_project_arguments(
+ '-std=gnu11',
'-Werror=missing-prototypes',
'-Werror=strict-prototypes',
'-Werror=nested-externs',
'-Werror=pointer-arith',
'-Werror=implicit-function-declaration',
+ '-Werror=implicit-int',
+ '-Werror=int-conversion',
+ '-Werror=old-style-definition',
'-Werror=pointer-arith',
'-Werror=init-self',
'-Werror=format-security',
@@ -26,6 +30,8 @@
'-Wno-error=pragmas',
language: 'c')
+add_project_arguments('--abi-stability', language: 'vala')
+
# let's not clutter the code with too many #ifdefs
if get_option('b_ndebug') == 'true'
add_project_arguments('-Wno-error=unused-but-set-variable', '-Wno-error=unused-variable', language: 'c')
@@ -44,6 +50,8 @@
add_project_arguments('-DHAVE_FXSTATAT', language: 'c')
endif
+meson.add_dist_script(srcdir / 'getversion.sh')
+
#
# dependencies
#
@@ -240,7 +248,7 @@
test('umockdev-vala', executable('test-umockdev-vala',
'tests/test-umockdev-vala.vala',
dependencies: [glib, gobject, gio, gudev, vapi_posix, vapi_assertions, vapi_ioctl],
- link_with: [umockdev_lib]),
+ link_with: [umockdev_lib, umockdev_utils_lib]),
depends: [preload_lib],
suite: 'fails-valgrind')
endif
@@ -256,13 +264,13 @@
test('umockdev-run', executable('test-umockdev-run',
'tests/test-umockdev-run.vala',
dependencies: [glib, gobject, gio, vapi_posix, vapi_assertions, vapi_config],
- link_with: [umockdev_lib]),
+ link_with: [umockdev_lib, umockdev_utils_lib]),
depends: [umockdev_run_exe, preload_lib, test_chatter_exe, test_chatter_stream_exe])
test('umockdev-record', executable('test-umockdev-record',
'tests/test-umockdev-record.vala',
dependencies: [glib, gobject, gio, gio_unix, vapi_posix, vapi_linux, vapi_assertions, vapi_config, vala_libutil],
- link_with: [umockdev_lib]),
+ link_with: [umockdev_lib, umockdev_utils_lib]),
depends: [umockdev_record_exe, preload_lib, test_readbyte_exe, test_chatter_exe, test_chatter_stream_exe],
suite: 'fails-valgrind')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/packaging/umockdev.spec new/umockdev-0.17.15/packaging/umockdev.spec
--- old/umockdev-0.17.13/packaging/umockdev.spec 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/packaging/umockdev.spec 2022-11-24 16:02:22.000000000 +0100
@@ -39,6 +39,9 @@
%meson_build
%check
+# don't be too picky about timing; upstream CI and local developer tests
+# are strict, but many koji arches are emulated and utterly slow
+export SLOW_TESTBED_FACTOR=10
%meson_test
%install
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/packit.yaml new/umockdev-0.17.15/packit.yaml
--- old/umockdev-0.17.13/packit.yaml 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/packit.yaml 2022-11-24 16:02:22.000000000 +0100
@@ -7,42 +7,52 @@
downstream_package_name: umockdev
# HACK: should be implied, but fails propose_downstream: https://github.com/packit/packit-service/issues/1511
specfile_path: packaging/umockdev.spec
-srpm_build_deps: []
+
+actions:
+ create-archive:
+ - meson tmp/dist
+ # ignore local spec changes from packit
+ - meson dist -C tmp/dist --no-tests --allow-dirty
+ - sh -ec 'mv tmp/dist/meson-dist/umockdev-*.tar.xz packaging/; ls packaging/umockdev-*.tar.xz'
+
+srpm_build_deps:
+ - meson
+ - gcc
+ - vala
+ - libpcap-devel
+ - glib2-devel
+ - systemd-devel
jobs:
- job: copr_build
trigger: pull_request
- metadata:
- targets:
- - fedora-development-x86_64
- - fedora-development-i386
- - fedora-development-aarch64
- - fedora-development-ppc64le
- - fedora-development-s390x
- - fedora-development-armhfp
+ targets:
+ - fedora-development-x86_64
+ - fedora-development-i386
+ - fedora-development-aarch64
+ - fedora-development-ppc64le
+ - fedora-development-s390x
+ - fedora-development-armhfp
- job: tests
trigger: pull_request
- metadata:
- targets:
- - fedora-latest
+ targets:
+ - fedora-latest
+ - centos-stream-9-x86_64
- job: propose_downstream
trigger: release
- metadata:
- dist_git_branches:
- - fedora-development
- - fedora-stable
+ dist_git_branches:
+ - fedora-development
+ - fedora-stable
- job: koji_build
trigger: commit
- metadata:
- dist_git_branches:
- - fedora-all
+ dist_git_branches:
+ - fedora-all
- job: bodhi_update
trigger: commit
- metadata:
- dist_git_branches:
- # rawhide updates are created automatically
- - fedora-branched
+ dist_git_branches:
+ # rawhide updates are created automatically
+ - fedora-branched
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/getversion.sh new/umockdev-0.17.15/src/getversion.sh
--- old/umockdev-0.17.13/src/getversion.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/umockdev-0.17.15/src/getversion.sh 2022-11-24 16:02:22.000000000 +0100
@@ -0,0 +1,15 @@
+#!/bin/sh
+ROOT=$(dirname $(dirname $(realpath "$0")))
+if [ -n "${MESON_SOURCE_ROOT:-}/.git" ] && VER=$(git -C "$MESON_SOURCE_ROOT" describe); then
+ # make version number distribution friendly
+ VER=$(echo "$VER" | sed 's/-/./g')
+ # when invoked as dist script, write the stamp; this is false when invoked from project.version()
+ [ -z "${MESON_DIST_ROOT:-}" ] || echo "$VER" > "${MESON_DIST_ROOT}/.version"
+ echo "$VER"
+# when invoked from a tarball, it should be in the source root
+elif [ -e "${ROOT}/.version" ]; then
+ cat "${ROOT}/.version"
+else
+ echo "ERROR: Neither a git checkout nor .version, cannot determine version" >&2
+ exit 1
+fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/libumockdev-preload.c new/umockdev-0.17.15/src/libumockdev-preload.c
--- old/umockdev-0.17.13/src/libumockdev-preload.c 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/libumockdev-preload.c 2022-11-24 16:02:22.000000000 +0100
@@ -131,12 +131,23 @@
/* multi-thread locking for trap_path users */
pthread_mutex_t trap_path_lock = PTHREAD_MUTEX_INITIALIZER;
+static sigset_t trap_path_sig_restore;
/* multi-thread locking for ioctls */
pthread_mutex_t ioctl_lock = PTHREAD_MUTEX_INITIALIZER;
-#define TRAP_PATH_LOCK pthread_mutex_lock (&trap_path_lock)
-#define TRAP_PATH_UNLOCK pthread_mutex_unlock (&trap_path_lock)
+#define TRAP_PATH_LOCK \
+ do { \
+ sigset_t sig_set; \
+ sigfillset(&sig_set); \
+ pthread_sigmask(SIG_SETMASK, &sig_set, &trap_path_sig_restore); \
+ pthread_mutex_lock (&trap_path_lock); \
+ } while (0)
+#define TRAP_PATH_UNLOCK \
+ do { \
+ pthread_mutex_unlock (&trap_path_lock); \
+ pthread_sigmask(SIG_SETMASK, &trap_path_sig_restore, NULL); \
+ } while (0)
#define IOCTL_LOCK pthread_mutex_lock (&ioctl_lock)
#define IOCTL_UNLOCK pthread_mutex_unlock (&ioctl_lock)
@@ -1431,39 +1442,76 @@
return r;
}
+static bool is_dir_or_contained(const char *path, const char *dir, const char *subdir)
+{
+ if (!path || !dir)
+ return false;
+
+ const ssize_t subdir_len = strlen(subdir);
+ const size_t dir_len = strlen(dir);
+
+ return (dir_len + subdir_len <= strlen(path) &&
+ strncmp(path, dir, dir_len) == 0 &&
+ strncmp(path + dir_len, subdir, subdir_len) == 0 &&
+ (path[dir_len + subdir_len] == '\0' || path[dir_len + subdir_len] == '/'));
+}
+
+static bool is_fd_in_mock(int fd, const char *subdir)
+{
+ static char fdpath[PATH_MAX];
+ static char linkpath[PATH_MAX];
+ libc_func(readlink, ssize_t, const char*, char *, size_t);
+
+ snprintf(fdpath, sizeof fdpath, "/proc/self/fd/%i", fd);
+ int orig_errno = errno;
+ ssize_t linklen = _readlink(fdpath, linkpath, sizeof linkpath);
+ errno = orig_errno;
+ if (linklen < 0 || linklen >= sizeof linkpath) {
+ perror("umockdev: failed to map fd to a path");
+ return false;
+ }
+ linkpath[linklen] = '\0';
+
+ return is_dir_or_contained(linkpath, getenv("UMOCKDEV_DIR"), subdir);
+}
+
#define WRAP_FSTATFS(suffix) \
int fstatfs ## suffix(int fd, struct statfs ## suffix *buf) \
{ \
libc_func(fstatfs ## suffix, int, int, struct statfs ## suffix *buf); \
int r = _fstatfs ## suffix(fd, buf); \
- if (r != 0) \
- return r; \
- \
- static char fdpath[PATH_MAX]; \
- static char linkpath[PATH_MAX]; \
- snprintf(fdpath, sizeof fdpath, "/proc/self/fd/%i", fd); \
- ssize_t linklen = readlink(fdpath, linkpath, sizeof linkpath); \
- if (linklen < 0) { \
- perror("umockdev: failed to map fd to a path"); \
- return 0; \
- } \
-\
- const char *prefix = getenv("UMOCKDEV_DIR"); \
- if (prefix) { \
- size_t prefix_len = strlen(prefix); \
- if (prefix_len + 5 <= strlen(linkpath) && \
- strncmp(prefix, linkpath, prefix_len) == 0 && \
- strncmp(linkpath + prefix_len, "/sys/", 5) == 0) { \
- DBG(DBG_PATH, "testbed wrapped fstatfs64 (%i) points into mocked /sys; adjusting f_type\n", fd); \
- buf->f_type = SYSFS_MAGIC; \
- } \
+ if (r == 0 && is_fd_in_mock (fd, "/sys")) { \
+ DBG(DBG_PATH, "testbed wrapped fstatfs64 (%i) points into mocked /sys; adjusting f_type\n", fd); \
+ buf->f_type = SYSFS_MAGIC; \
} \
- return 0; \
+ return r; \
}
WRAP_FSTATFS();
WRAP_FSTATFS(64);
+#define WRAP_STATFS(suffix) \
+int statfs ## suffix(const char *path, struct statfs ## suffix *buf) { \
+ libc_func(statfs ## suffix, int, const char*, struct statfs ## suffix *buf); \
+ int r; \
+ TRAP_PATH_LOCK; \
+ const char *p = trap_path(path); \
+ if (p == NULL || p == path) { \
+ r = _statfs ## suffix(path, buf); \
+ TRAP_PATH_UNLOCK; \
+ return r; \
+ } \
+ DBG(DBG_PATH, "testbed wrapped statfs" #suffix "(%s) -> %s\n", path, p); \
+ r = _statfs ## suffix(p, buf); \
+ TRAP_PATH_UNLOCK; \
+ if (r == 0 && is_dir_or_contained(path, "/sys", "")) \
+ buf->f_type = SYSFS_MAGIC; \
+ return r; \
+}
+
+WRAP_STATFS();
+WRAP_STATFS(64);
+
#endif
int __open_2(const char *path, int flags);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/uevent_sender.c new/umockdev-0.17.15/src/uevent_sender.c
--- old/umockdev-0.17.13/src/uevent_sender.c 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/uevent_sender.c 2022-11-24 16:02:22.000000000 +0100
@@ -73,7 +73,6 @@
struct sockaddr_un event_addr;
int fd;
int ret;
- /* ssize_t count; */
/* create uevent socket address */
strncpy(event_addr.sun_path, path, sizeof(event_addr.sun_path) - 1);
@@ -98,7 +97,11 @@
}
const struct msghdr msg = { .msg_name = &event_addr, .msg_iov = iov, .msg_iovlen = iov_len };
- /* count = */ sendmsg(fd, &msg, 0);
+ ssize_t count = sendmsg(fd, &msg, 0);
+ if (count < 0) {
+ perror("uevent_sender sendmsg_one: sendmsg failed");
+ abort();
+ }
/* printf("passed %zi bytes to event socket %s\n", count, path); */
close(fd);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/umockdev-ioctl.vala new/umockdev-0.17.15/src/umockdev-ioctl.vala
--- old/umockdev-0.17.13/src/umockdev-ioctl.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/umockdev-ioctl.vala 2022-11-24 16:02:22.000000000 +0100
@@ -43,7 +43,7 @@
*
* Since: 0.16
*/
-public class IoctlData {
+public class IoctlData : GLib.Object {
/* Local cache to check if data is dirty before flushing. This is both an
* optimization as it avoids flushes, but is also necessary to avoid
* writing into read-only memory.
@@ -66,6 +66,30 @@
}
/**
+ * umockdev_ioctl_data_ref:
+ * @self: A #UMockdevIoctlData
+ *
+ * Deprecated, same as g_object_ref().
+ */
+ [CCode(cname="umockdev_ioctl_data_ref")]
+ public new IoctlData? compat_ref()
+ {
+ return (IoctlData?) this;
+ }
+
+ /**
+ * umockdev_ioctl_data_unref:
+ * @self: A #UMockdevIoctlData
+ *
+ * Deprecated, same as g_object_unref().
+ */
+ [CCode(cname="umockdev_ioctl_data_unref")]
+ public new void compat_unref()
+ {
+ this.unref();
+ }
+
+ /**
* umockdev_ioctl_data_resolve:
* @self: A #UMockdevIoctlData
* @offset: Byte offset of pointer inside data
@@ -173,6 +197,42 @@
return true;
}
+ /**
+ * umockdev_ioctl_update:
+ * @self: A #UMockdevIoctlData
+ * @offset: Offset into data
+ * @new_data: (array length=length): Data to set
+ * @new_data_length1: Lenght of binary data, must be smaller or equal to actual length
+ *
+ * Set data to a specific value. This is essentially a memcpy call, it is
+ * only useful for e.g. python where the bindings cannot make the data
+ * writable otherwise.
+ *
+ * Since: 0.18
+ */
+ public void update(size_t offset, uint8[] new_data) {
+ assert(offset + new_data.length <= data.length);
+
+ Posix.memcpy(&data[offset], new_data, new_data.length);
+ }
+
+ /**
+ * umockdev_ioctl_retrieve:
+ * @self: A #UMockdevIoctlData
+ * @read_data: (array length=length) (out): Data to set
+ * @read_data_length1: (out): Lenght of binary data, must be smaller or equal to actual length
+ *
+ * Simply returns the data struct member. This function purely exists for
+ * GIR based bindings, as the vala generated bindings do not correctly
+ * tag the array length, and direct access to the struct member is not
+ * possible.
+ *
+ * Since: 0.18
+ */
+ public void retrieve(out uint8[] read_data) {
+ read_data = data;
+ }
+
internal void load_data() throws IOError {
OutputStream output = stream.get_output_stream();
InputStream input = stream.get_input_stream();
@@ -737,8 +797,7 @@
error("Could not accept new connection: %s", e.message);
}
- lock (listeners)
- listeners.remove(devnode);
+ listener.close();
}
#if INTERNAL_REGISTER_API
@@ -748,6 +807,8 @@
Cancellable cancellable = new Cancellable();
+ cancellable.set_data("sockpath", sockpath);
+
/* We create new listener for each file; purely because we may not
* have the correct main context in construct yet. */
SocketListener listener;
@@ -772,8 +833,11 @@
#if INTERNAL_UNREGISTER_PATH_API
internal void unregister_path(string devnode)
{
- lock (listeners)
- listeners[devnode].cancel();
+ lock (listeners) {
+ listeners[devnode].cancel();
+ Posix.unlink(listeners[devnode].get_data("sockpath"));
+ listeners.remove(devnode);
+ }
}
#endif
@@ -781,8 +845,10 @@
internal void unregister_all()
{
lock (listeners) {
- listeners.foreach((key, val) => {
+ listeners.foreach_remove((key, val) => {
val.cancel();
+ Posix.unlink(val.get_data("sockpath"));
+ return true;
});
}
}
@@ -790,12 +856,6 @@
#endif // INTERNAL_REGISTER_API
- public virtual signal void client_connected(IoctlClient client) {
- }
-
- public virtual signal void client_vanished(IoctlClient client) {
- }
-
/* Not a normal signal because we need the accumulator. */
public virtual bool handle_ioctl(IoctlClient client) {
return false;
@@ -808,6 +868,12 @@
public virtual bool handle_write(IoctlClient client) {
return false;
}
+
+ public virtual signal void client_connected(IoctlClient client) {
+ }
+
+ public virtual signal void client_vanished(IoctlClient client) {
+ }
}
/* Mirror of ioctl_tree.c usbdevfs_reapurb_execute submit_urb static variable */
@@ -939,6 +1005,8 @@
if (!write_log)
return;
+ assert (device != null);
+
log = Posix.FILE.open(logfile, "w+");
log.printf("@DEV %s\n", device);
tree.write(log);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/umockdev-record.vala new/umockdev-0.17.15/src/umockdev-record.vala
--- old/umockdev-0.17.13/src/umockdev-record.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/umockdev-record.vala 2022-11-24 16:02:22.000000000 +0100
@@ -23,14 +23,6 @@
using UMockdevUtils;
static void
-exit_error(string message, ...)
-{
- stderr.vprintf(message, va_list());
- stderr.puts("\n");
- Process.exit(1);
-}
-
-static void
devices_from_dir (string dir, ref GenericArray<string> devs)
{
Dir d;
@@ -75,7 +67,7 @@
{
Posix.Stat st;
if (Posix.stat(dev, out st) != 0)
- exit_error("Cannot access device %s: %s", dev, strerror(errno));
+ error("Cannot access device %s: %m", dev);
uint maj = Posix.major(st.st_rdev);
uint min = Posix.minor(st.st_rdev);
@@ -96,7 +88,7 @@
real = link;
if (!FileUtils.test(Path.build_filename(real, "uevent"), FileTest.EXISTS))
- exit_error("Invalid device %s, has no uevent attribute", real);
+ error("Invalid device %s, has no uevent attribute", real);
return real;
}
@@ -175,7 +167,7 @@
d = Dir.open(attr_dir);
} catch (Error e) {
if (subdir == "") {
- exit_error("Cannot open directory %s: %s", attr_dir, e.message);
+ error("Cannot open directory %s: %s", attr_dir, e.message);
} else {
// we ignore this on subdirs, some might be transient or
// inaccessible
@@ -204,7 +196,7 @@
try {
stdout.printf("L: %s=%s\n", attr_name, FileUtils.read_link(attr_path));
} catch (Error e) {
- exit_error("Cannot read link %s: %s", attr_path, e.message);
+ error("Cannot read link %s: %s", attr_path, e.message);
}
} else if (FileUtils.test(attr_path, FileTest.IS_REGULAR)) {
uint8[] contents;
@@ -238,7 +230,7 @@
if (exitcode != 0)
throw new SpawnError.FAILED("udevadm exited with code %i\n%s".printf(exitcode, u_err));
} catch (Error e) {
- exit_error("Cannot call udevadm: %s", e.message);
+ error("Cannot call udevadm: %s", e.message);
}
var properties = new List<string>();
@@ -305,14 +297,14 @@
{
string[] parts = arg.split ("=", 2); // devname, ioctlfilename
if (parts.length != 2)
- exit_error("--ioctl argument must be devname=filename");
+ error("--ioctl argument must be devname=filename");
dev = parts[0];
fname = parts[1];
// build device major/minor
Posix.Stat st;
if (Posix.stat(dev, out st) != 0)
- exit_error("Cannot access device %s: %s", dev, strerror(errno));
+ error("Cannot access device %s: %m", dev);
is_block = Posix.S_ISBLK(st.st_mode);
if (Posix.S_ISCHR(st.st_mode) || Posix.S_ISBLK(st.st_mode)) {
@@ -326,7 +318,7 @@
try {
FileUtils.get_contents(Path.build_filename(dev, "dev"), out devnum);
} catch (Error e) {
- exit_error("Cannot open %s/dev: %s", dev, e.message);
+ error("Cannot open %s/dev: %s", dev, e.message);
}
}
}
@@ -362,10 +354,10 @@
split_devfile_arg(arg, out dev, out devnum, out is_block, out outfile);
string c = record_script_counter.to_string();
- Environment.set_variable("UMOCKDEV_SCRIPT_RECORD_FILE_" + c, outfile, true);
- Environment.set_variable("UMOCKDEV_SCRIPT_RECORD_DEV_" + c, devnum, true);
- Environment.set_variable("UMOCKDEV_SCRIPT_RECORD_DEVICE_PATH_" + c, dev, true);
- Environment.set_variable("UMOCKDEV_SCRIPT_RECORD_FORMAT_" + c, format, true);
+ checked_setenv("UMOCKDEV_SCRIPT_RECORD_FILE_" + c, outfile);
+ checked_setenv("UMOCKDEV_SCRIPT_RECORD_DEV_" + c, devnum);
+ checked_setenv("UMOCKDEV_SCRIPT_RECORD_DEVICE_PATH_" + c, dev);
+ checked_setenv("UMOCKDEV_SCRIPT_RECORD_FORMAT_" + c, format);
record_script_counter++;
}
@@ -416,7 +408,7 @@
try {
oc.parse (ref args);
} catch (Error e) {
- exit_error("Error: %s\nRun %s --help for how to use this program", e.message, args[0]);
+ error("Error: %s\nRun %s --help for how to use this program", e.message, args[0]);
}
if (opt_version) {
@@ -425,12 +417,12 @@
}
if (opt_all && opt_devices.length > 0)
- exit_error("Specifying a device list together with --all is invalid.");
+ error("Specifying a device list together with --all is invalid.");
if (!opt_all && opt_devices.length == 0)
- exit_error("Need to specify at least one device or --all.");
+ error("Need to specify at least one device or --all.");
if ((opt_ioctl != null || opt_script.length > 0 || opt_evemu_events.length > 0) &&
(opt_all || opt_devices.length < 1))
- exit_error("For recording ioctls or scripts you have to specify a command to run");
+ error("For recording ioctls or scripts you have to specify a command to run");
// device dump mode
if (opt_ioctl == null && opt_script.length == 0 && opt_evemu_events.length == 0) {
@@ -452,11 +444,11 @@
preload = "";
else
preload = preload + ":";
- Environment.set_variable("LD_PRELOAD", preload + "libumockdev-preload.so.0", true);
+ checked_setenv("LD_PRELOAD", preload + "libumockdev-preload.so.0");
try {
root_dir = DirUtils.make_tmp("umockdev.XXXXXX");
- Environment.set_variable("UMOCKDEV_DIR", root_dir, true);
+ checked_setenv("UMOCKDEV_DIR", root_dir);
} catch (FileError e) {
error("Cannot create temporary directory: %s", e.message);
}
@@ -478,9 +470,8 @@
try {
child_pid = spawn_process_under_test (opt_devices, child_watch_cb);
} catch (Error e) {
- stderr.printf ("Cannot run %s: %s\n", opt_devices[0], e.message);
remove_dir (root_dir);
- Process.exit (1);
+ error ("Cannot run %s: %s", opt_devices[0], e.message);
}
loop.run();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/umockdev-run.vala new/umockdev-0.17.15/src/umockdev-run.vala
--- old/umockdev-0.17.13/src/umockdev-run.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/umockdev-run.vala 2022-11-24 16:02:22.000000000 +0100
@@ -95,7 +95,7 @@
preload = "";
else
preload = preload + ":";
- Environment.set_variable ("LD_PRELOAD", preload + "libumockdev-preload.so.0", true);
+ checked_setenv ("LD_PRELOAD", preload + "libumockdev-preload.so.0");
var testbed = new UMockdev.Testbed ();
@@ -196,8 +196,7 @@
try {
child_pid = spawn_process_under_test (opt_program, child_watch_cb);
} catch (Error e) {
- stderr.printf ("Cannot run %s: %s\n", opt_program[0], e.message);
- Process.exit (1);
+ error("Cannot run %s: %s", opt_program[0], e.message);
}
loop.run();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/umockdev-utils.vala new/umockdev-0.17.15/src/umockdev-utils.vala
--- old/umockdev-0.17.13/src/umockdev-utils.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/umockdev-utils.vala 2022-11-24 16:02:22.000000000 +0100
@@ -1,6 +1,21 @@
namespace UMockdevUtils {
+public void
+checked_setenv(string variable, string value)
+{
+ if (!Environment.set_variable(variable, value, true))
+ error("Failed to set env variable %s", variable);
+}
+
+// only use this in tests, not in runtime code!
+public void
+checked_remove(string path)
+{
+ if (FileUtils.remove(path) < 0)
+ error("cannot remove %s: %m", path);
+}
+
// Recursively remove a directory and all its contents.
public void
remove_dir (string path, bool remove_toplevel=true)
@@ -20,8 +35,7 @@
}
if (remove_toplevel)
- if (FileUtils.remove(path) < 0)
- warning("cannot remove %s: %s", path, strerror(errno));
+ checked_remove(path);
}
private static Pid process_under_test;
@@ -35,8 +49,8 @@
debug ("umockdev: caught signal %i, propagating to child\n", sig);
if (Posix.kill (process_under_test, sig) != 0)
- stderr.printf ("umockdev: unable to propagate signal %i to child %i: %s\n",
- sig, process_under_test, strerror (errno));
+ stderr.printf ("umockdev: unable to propagate signal %i to child %i: %m\n",
+ sig, process_under_test);
}
static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/src/umockdev.vala new/umockdev-0.17.15/src/umockdev.vala
--- old/umockdev-0.17.13/src/umockdev.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/src/umockdev.vala 2022-11-24 16:02:22.000000000 +0100
@@ -23,6 +23,18 @@
private bool __in_mock_env_initialized = false;
private bool __in_mock_env_result = false;
+static void checked_mkdir (string path, int mode)
+{
+ if (DirUtils.create(path, mode) < 0)
+ error("cannot create directory %s: %m", path);
+}
+
+static void checked_mkdir_with_parents (string path, int mode)
+{
+ if (DirUtils.create_with_parents(path, mode) < 0)
+ error("cannot create directory with parents %s: %m", path);
+}
+
/**
* SECTION:umockdev
* @title: umockdev
@@ -85,13 +97,13 @@
error("Cannot create temporary directory: %s", e.message);
}
this.sys_dir = Path.build_filename(this.root_dir, "sys");
- DirUtils.create(this.sys_dir, 0755);
+ checked_mkdir(this.sys_dir, 0755);
/* Create "bus" and "class" directories to make libudev happy */
string bus_path = Path.build_filename(this.sys_dir, "bus");
- DirUtils.create(bus_path, 0755);
+ checked_mkdir(bus_path, 0755);
string class_path = Path.build_filename(this.sys_dir, "class");
- DirUtils.create(class_path, 0755);
+ checked_mkdir(class_path, 0755);
this.dev_fd = new HashTable<string, int> (str_hash, str_equal);
this.dev_script_runner = new HashTable<string, ScriptRunner> (str_hash, str_equal);
@@ -106,7 +118,7 @@
string sockpath = Path.build_filename(this.root_dir, "ioctl", "_default");
handler.register_path(this.worker_ctx, "_default", sockpath);
- Environment.set_variable("UMOCKDEV_DIR", this.root_dir, true);
+ checked_setenv ("UMOCKDEV_DIR", this.root_dir);
debug("Created udev test bed %s", this.root_dir);
}
@@ -200,8 +212,7 @@
var attr_path = Path.build_filename(this.root_dir, devpath, name);
if ("/" in name) {
string d = Path.get_dirname(attr_path);
- if (DirUtils.create_with_parents(d, 0755) != 0)
- error("cannot create attribute subdir '%s': %s", d, strerror(errno));
+ checked_mkdir_with_parents(d, 0755);
}
try {
@@ -256,10 +267,9 @@
{
var path = Path.build_filename(this.root_dir, devpath, name);
var dir = Path.get_dirname(path);
- if (DirUtils.create_with_parents(dir, 0755) != 0)
- error("cannot create attribute dir '%s': %s", dir, strerror(errno));
+ checked_mkdir_with_parents(dir, 0755);
if (FileUtils.symlink(value, path) < 0) {
- error("Cannot create symlink %s: %s", path, strerror(errno));
+ error("Cannot create symlink %s: %m", path);
}
}
@@ -423,13 +433,11 @@
string dev_path_no_sys = dev_path.substring(dev_path.index_of("/devices/"));
/* create device and corresponding subsystem dir */
- if (DirUtils.create_with_parents(dev_dir, 0755) != 0)
- error("cannot create dev dir '%s': %s", dev_dir, strerror(errno));
+ checked_mkdir_with_parents(dev_dir, 0755);
if (!subsystem_is_bus(subsystem)) {
/* class/ symlinks */
var class_dir = Path.build_filename(this.sys_dir, "class", subsystem);
- if (DirUtils.create_with_parents(class_dir, 0755) != 0)
- error("cannot create class dir '%s': %s", class_dir, strerror(errno));
+ checked_mkdir_with_parents(class_dir, 0755);
/* subsystem symlink */
assert(FileUtils.symlink(Path.build_filename(make_dotdots(dev_path), "class", subsystem),
@@ -443,7 +451,7 @@
} else {
/* bus symlink */
var bus_dir = Path.build_filename(this.sys_dir, "bus", subsystem, "devices");
- assert(DirUtils.create_with_parents(bus_dir, 0755) == 0);
+ checked_mkdir_with_parents(bus_dir, 0755);
assert(FileUtils.symlink(Path.build_filename("..", "..", "..", dev_path_no_sys),
Path.build_filename(bus_dir, Path.get_basename(name))) == 0);
@@ -455,8 +463,7 @@
/* /sys/block symlink */
if (subsystem == "block") {
var block_dir = Path.build_filename(this.sys_dir, "block");
- if (DirUtils.create_with_parents(block_dir, 0755) != 0)
- error("cannot create block dir '%s': %s", block_dir, strerror(errno));
+ checked_mkdir_with_parents(block_dir, 0755);
assert (FileUtils.symlink(Path.build_filename("..", dev_path_no_sys),
Path.build_filename(block_dir, Path.get_basename(name))) == 0);
}
@@ -482,19 +489,18 @@
var val = attributes[i+1].strip(); // strip off trailing \n
/* put the major/minor information into /dev for our preload */
string infodir = Path.build_filename(this.root_dir, "dev", ".node");
- DirUtils.create_with_parents(infodir, 0755);
+ checked_mkdir_with_parents(infodir, 0755);
assert(FileUtils.symlink(val, Path.build_filename(infodir, dev_node.replace("/", "_"))) == 0);
/* create a /sys/dev link for it, like in real sysfs */
string sysdev_dir = Path.build_filename(this.sys_dir, "dev",
(dev_path.contains("/block/") ? "block" : "char"));
- if (DirUtils.create_with_parents(sysdev_dir, 0755) != 0)
- error("cannot create dir '%s': %s", sysdev_dir, strerror(errno));
+ checked_mkdir_with_parents(sysdev_dir, 0755);
string dest = Path.build_filename(sysdev_dir, val);
if (!FileUtils.test(dest, FileTest.EXISTS)) {
if (FileUtils.symlink("../../" + dev_path.substring(5), dest) < 0)
- error("add_device %s: failed to symlink %s to %s: %s", name, dest,
- dev_path.substring(5), strerror(errno));
+ error("add_device %s: failed to symlink %s to %s: %m", name, dest,
+ dev_path.substring(5));
}
}
}
@@ -895,7 +901,7 @@
recording.seek(0, SeekType.SET);
string dest = Path.build_filename(this.root_dir, "ioctl", owned_dev + ".tree");
- assert(DirUtils.create_with_parents(Path.get_dirname(dest), 0755) == 0);
+ checked_mkdir_with_parents(Path.get_dirname(dest), 0755);
string? contents = recording.read_upto("", 0, null);
if (contents == null)
@@ -945,7 +951,7 @@
sockpath = Path.build_filename(this.root_dir, "ioctl", owned_dev);
- assert(DirUtils.create_with_parents(Path.get_dirname(sockpath), 0755) == 0);
+ checked_mkdir_with_parents(Path.get_dirname(sockpath), 0755);
IoctlUsbPcapHandler handler = new IoctlUsbPcapHandler(recordfile, busnum, devnum);
handler.register_path(this.worker_ctx, owned_dev, sockpath);
@@ -1019,13 +1025,10 @@
{
int fd = Posix.socket (Posix.AF_UNIX, type, 0);
if (fd < 0)
- throw new FileError.INVAL ("Cannot create socket type %i: %s".printf(
- type, strerror(errno)));
+ throw new FileError.INVAL ("Cannot create socket type %i: %m".printf(type));
string real_path = Path.build_filename (this.root_dir, path);
- if (DirUtils.create_with_parents(Path.get_dirname(real_path), 0755) != 0)
- throw new FileError.INVAL ("Cannot create socket path: %s".printf(
- strerror(errno)));
+ checked_mkdir_with_parents(Path.get_dirname(real_path), 0755);
// start thread to accept client connections at first socket creation
if (this.socket_server == null)
@@ -1379,7 +1382,7 @@
/* create symlinks */
for (int i = 0; i < devnode_links.length; i++) {
- assert (DirUtils.create_with_parents(Path.get_dirname(devnode_links[i]), 0755) == 0);
+ checked_mkdir_with_parents(Path.get_dirname(devnode_links[i]), 0755);
if (FileUtils.symlink(devnode_path, devnode_links[i]) < 0)
warning ("failed to create %s -> %s symlink for device %s: %m",
devnode_links[i], devnode_path, devpath);
@@ -1400,7 +1403,7 @@
create_node_for_device (string subsystem, string node_path, uint8[] node_contents, string? majmin)
throws UMockdev.Error
{
- assert (DirUtils.create_with_parents(Path.get_dirname(node_path), 0755) == 0);
+ checked_mkdir_with_parents(Path.get_dirname(node_path), 0755);
// for pre-defined contents, block, and USB devices we create a normal file
if (node_contents.length > 0 || subsystem == "block" || subsystem == "usb") {
@@ -1422,7 +1425,7 @@
int ptym, ptys;
char[] ptyname_array = new char[8192];
if (Linux.openpty (out ptym, out ptys, ptyname_array, null, null) < 0)
- error ("umockdev Testbed.create_node_for_device: openpty() failed: %s", strerror (errno));
+ error ("umockdev Testbed.create_node_for_device: openpty() failed: %m");
string ptyname = (string) ptyname_array;
debug ("create_node_for_device: creating pty device %s: got pty %s", node_path, ptyname);
Posix.close (ptys);
@@ -1443,7 +1446,7 @@
// we can map from an fd -> ttyname -> device we emulate
if (majmin != null) {
string mapdir = Path.build_filename (this.root_dir, "dev", ".ptymap");
- DirUtils.create_with_parents (mapdir, 0755);
+ checked_mkdir_with_parents (mapdir, 0755);
string dest = Path.build_filename (mapdir, ptyname.replace("/", "_"));
debug ("create_node_for_device: creating ptymap symlink %s", dest);
assert (FileUtils.symlink(majmin, dest) == 0);
@@ -1525,7 +1528,8 @@
*/
public void enable()
{
- FileUtils.remove(Path.build_filename(this.root_dir, "disabled"));
+ if (FileUtils.remove(Path.build_filename(this.root_dir, "disabled")) < 0)
+ debug("enable: failed to remove /disabled flag, ignoring: %m");
}
/**
@@ -1540,7 +1544,7 @@
{
remove_dir (this.root_dir, false);
// /sys should always exist
- DirUtils.create(this.sys_dir, 0755);
+ checked_mkdir_with_parents(this.sys_dir, 0755);
}
/**
@@ -1708,7 +1712,7 @@
debug ("ScriptRunner[%s]: read op after sleep; writing data '%s'", this.device, encode(data));
ssize_t l = Posix.write (this.fd, data, data.length);
if (l < 0)
- error ("ScriptRunner[%s]: write failed: %s", this.device, strerror (errno));
+ error ("ScriptRunner[%s]: write failed: %m", this.device);
assert (l == data.length);
break;
@@ -1794,8 +1798,7 @@
if (res < 0) {
if (errno == Posix.EINTR)
continue;
- error ("ScriptRunner op_write[%s]: select() failed: %s",
- this.device, strerror (errno));
+ error ("ScriptRunner op_write[%s]: select() failed: %m", this.device);
}
if (res == 0) {
@@ -1985,7 +1988,7 @@
if (res < 0) {
if (errno == Posix.EINTR)
continue;
- error ("socket server thread: select() failed: %s", strerror (errno));
+ error ("socket server thread: select() failed: %m");
}
if (res == 0)
continue; // timeout
@@ -2012,7 +2015,7 @@
if (Posix.FD_ISSET (s.fd, fds) > 0) {
int fd = Posix.accept (s.fd, null, null);
if (fd < 0)
- error ("socket server thread: accept() failed: %s", strerror (errno));
+ error ("socket server thread: accept() failed: %m");
string sock_path = null;
try {
sock_path = ((UnixSocketAddress) s.get_local_address()).path;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/run-alpine new/umockdev-0.17.15/tests/run-alpine
--- old/umockdev-0.17.13/tests/run-alpine 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/run-alpine 2022-11-24 16:02:22.000000000 +0100
@@ -15,11 +15,13 @@
trap '[ \$? -eq 0 ] || exit 1' EXIT
# install build dependencies
-apk add --no-cache meson gcc musl-dev glib-dev eudev-dev libpcap-dev make vala linux-headers xz usbutils ${EXTRA_PACKAGES:-}
+apk add --no-cache meson git gcc musl-dev glib-dev eudev-dev libpcap-dev make vala linux-headers xz usbutils ${EXTRA_PACKAGES:-}
# run build as user
-su -s /bin/sh - guest << EOG
+adduser -D build
+su -s /bin/sh - build << EOG
set -ex
+git config --global safe.directory /source
export BRITTLE_TESTS="${BRITTLE_TESTS:-}"
cd /source
meson setup /tmp/dbg --buildtype debug --werror
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/run-apt new/umockdev-0.17.15/tests/run-apt
--- old/umockdev-0.17.13/tests/run-apt 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/run-apt 2022-11-24 16:02:22.000000000 +0100
@@ -40,7 +40,7 @@
meson setup /tmp/dbg --buildtype debug --prefix /usr -Dgtk_doc=true --werror
cd /tmp/dbg
if meson dist --help | grep -q no-tests; then
- if meson --version | grep -q "^0.62"; then
+ if { meson --version; echo 0.62.0; } | sort -V | head -n1 | grep -q "^0.62.0"; then
# HACK: --allow-dirty workaround for https://github.com/mesonbuild/meson/issues/10329
meson dist --no-test --allow-dirty
else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/run-dnf new/umockdev-0.17.15/tests/run-dnf
--- old/umockdev-0.17.13/tests/run-dnf 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/run-dnf 2022-11-24 16:02:22.000000000 +0100
@@ -37,6 +37,7 @@
useradd guest
su -s /bin/sh - guest << EOG
set -eux
+git config --global safe.directory /source
export BRITTLE_TESTS="${BRITTLE_TESTS:-}"
cd /source
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/run-gentoo new/umockdev-0.17.15/tests/run-gentoo
--- old/umockdev-0.17.13/tests/run-gentoo 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/run-gentoo 2022-11-24 16:02:22.000000000 +0100
@@ -19,6 +19,10 @@
docker.io/gentoo/stage3 /bin/sh -eux <<EOF
# install build dependencies
ACCEPT_KEYWORDS="~*" emerge dev-util/umockdev --with-test-deps --onlydeps
+# install git, "meson dist" dependency
+emerge dev-vcs/git
+
+git config --global safe.directory /source
cd /source
export VALAC=\$(ls /usr/bin/valac-* |sort | tail -n1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/run-nix new/umockdev-0.17.15/tests/run-nix
--- old/umockdev-0.17.13/tests/run-nix 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/run-nix 2022-11-24 16:02:22.000000000 +0100
@@ -26,8 +26,9 @@
preCheck = "";
doCheck = true;
nativeBuildInputs = attrs.nativeBuildInputs ++ [ ${DEBUG:+pkgs.breakpointHook} ];
+ # git is a "meson dist" time dependency
# libpcap is a new dependency, it can be removed again later
- buildInputs = attrs.buildInputs ++ [ pkgs.libpcap ];
+ buildInputs = attrs.buildInputs ++ [ pkgs.git pkgs.libpcap ];
})
EOG
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/test-umockdev-record.vala new/umockdev-0.17.15/tests/test-umockdev-record.vala
--- old/umockdev-0.17.13/tests/test-umockdev-record.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/test-umockdev-record.vala 2022-11-24 16:02:22.000000000 +0100
@@ -19,6 +19,7 @@
* along with this program; If not, see <http://www.gnu.org/licenses/>.
*/
+using UMockdevUtils;
using Assertions;
string readbyte_path;
@@ -246,7 +247,7 @@
}
spawn ("umockdev-record" + " /sys/class", out sout, out serr, out exit);
- assert_cmpstr (serr, CompareOperator.EQ, "Invalid device /sys/class, has no uevent attribute\n");
+ assert (serr.contains("Invalid device /sys/class, has no uevent attribute\n"));
assert_cmpstr (sout, CompareOperator.EQ, "");
assert_cmpint (exit, CompareOperator.NE, 0);
@@ -299,7 +300,7 @@
assert (FileUtils.test (log, FileTest.EXISTS));
assert_cmpstr (file_contents (log), CompareOperator.EQ, "@DEV /dev/zero\n");
- FileUtils.remove (log);
+ checked_remove (log);
// invalid syntax
spawn ("umockdev-record" + " --ioctl /dev/null -- " + readbyte_path + " /dev/zero",
@@ -342,7 +343,7 @@
// should not change original record
assert_cmpstr (file_contents (log), CompareOperator.EQ, orig_contents);
- FileUtils.remove (log);
+ checked_remove (log);
}
/*
@@ -383,7 +384,7 @@
assert_cmpint (int.parse(logwords[1]), CompareOperator.LE, 5 * slow_testbed_factor);
assert_cmpstr (logwords[2], CompareOperator.EQ, "^@");
- FileUtils.remove (log);
+ checked_remove (log);
}
/*
@@ -426,7 +427,7 @@
assert_cmpint (int.parse(logwords[1]), CompareOperator.LE, 5 * slow_testbed_factor);
assert_cmpstr (logwords[2], CompareOperator.EQ, "^@");
- FileUtils.remove (log);
+ checked_remove (log);
}
static void
@@ -472,7 +473,7 @@
assert_cmpint (int.parse(logwords[1]), CompareOperator.LE, 5 * slow_testbed_factor);
assert_cmpstr (logwords[2], CompareOperator.EQ, "^@");
- FileUtils.remove (log);
+ checked_remove (log);
}
static void
@@ -504,7 +505,7 @@
// should not change original record
assert_cmpstr (file_contents (log), CompareOperator.EQ, orig_contents);
- FileUtils.remove (log);
+ checked_remove (log);
}
static string
@@ -626,7 +627,7 @@
// verify EOF
assert_cmpint (log_stream.scanf ("%*c"), CompareOperator.EQ, -1);
- FileUtils.remove (log);
+ checked_remove (log);
}
/*
@@ -705,10 +706,10 @@
Thread.usleep (20000);
conn.send ("recv()".data);
} catch (Error e) {
- FileUtils.remove (spath);
+ checked_remove (spath);
error ("Error: %s", e.message);
}
- FileUtils.remove (spath);
+ checked_remove (spath);
int status;
assert_cmpint ((int) Posix.waitpid (chatter_pid, out status, 0), CompareOperator.EQ, (int) chatter_pid);
@@ -730,7 +731,7 @@
assert_cmpint (time, CompareOperator.GE, 20);
assert_cmpint (time, CompareOperator.LE, 60 * slow_testbed_factor);
- FileUtils.remove (log);
+ checked_remove (log);
}
/*
@@ -781,7 +782,7 @@
// unchanged
assert_cmpstr (file_contents (log), CompareOperator.EQ, "# EVEMU 1.2\n# device /dev/null\n\n");
- FileUtils.remove (log);
+ checked_remove (log);
// invalid syntax
spawn ("umockdev-record" + " --evemu-events /dev/null -- true",
@@ -867,8 +868,8 @@
assert_cmpint (exit, CompareOperator.EQ, 0);
assert_cmpstr (sout, CompareOperator.EQ, sout_record);
- FileUtils.remove ("gphoto-test.umockdev");
- FileUtils.remove ("gphoto-test.ioctl");
+ checked_remove ("gphoto-test.umockdev");
+ checked_remove ("gphoto-test.ioctl");
}
int
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/test-umockdev-run.vala new/umockdev-0.17.15/tests/test-umockdev-run.vala
--- old/umockdev-0.17.13/tests/test-umockdev-run.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/test-umockdev-run.vala 2022-11-24 16:02:22.000000000 +0100
@@ -18,6 +18,7 @@
* along with this program; If not, see <http://www.gnu.org/licenses/>.
*/
+using UMockdevUtils;
using Assertions;
const string umockdev_run_command = "env LC_ALL=C umockdev-run ";
@@ -120,7 +121,6 @@
assert_in (expected_err, serr);
assert_cmpint (exit, CompareOperator.NE, 0);
- assert (Process.if_exited (exit));
assert_cmpstr (sout, CompareOperator.EQ, "");
}
@@ -207,7 +207,7 @@
assert (sout.contains ("E: MAJOR=7"));
assert (sout.contains ("E: MINOR=23"));
- FileUtils.remove (umockdev_file);
+ checked_remove (umockdev_file);
}
static void
@@ -333,7 +333,7 @@
check_program_out("true", "-d " + umockdev_file + " -- stat -c '%n %F %t %T' /dev/null",
"/dev/null character special file 1 3\n");
- FileUtils.remove (umockdev_file);
+ checked_remove (umockdev_file);
}
static void
@@ -361,8 +361,8 @@
" -- " + tests_dir + "/chatter /dev/ttyS0",
"Got input: Joe Tester\nGot input: somejunk\n");
- FileUtils.remove (umockdev_file);
- FileUtils.remove (script_file);
+ checked_remove (umockdev_file);
+ checked_remove (script_file);
}
static void
@@ -383,7 +383,7 @@
" -- " + tests_dir + "/chatter-socket-stream /dev/socket/chatter",
"Got name: Joe Tester\n\nGot recv: somejunk\n");
- FileUtils.remove (script_file);
+ checked_remove (script_file);
}
static void
@@ -484,8 +484,8 @@
assert (Posix.stat("thumb_IMG_0002.jpg", out st) == 0);
assert_cmpuint ((uint) st.st_size, CompareOperator.GT, 500);
- FileUtils.remove ("thumb_IMG_0001.jpg");
- FileUtils.remove ("thumb_IMG_0002.jpg");
+ checked_remove ("thumb_IMG_0001.jpg");
+ checked_remove ("thumb_IMG_0002.jpg");
}
static void
t_gphoto_download ()
@@ -512,8 +512,8 @@
assert (Posix.stat("IMG_0002.JPG", out st) == 0);
assert_cmpuint ((uint) st.st_size, CompareOperator.GT, 5000);
- FileUtils.remove ("IMG_0001.JPG");
- FileUtils.remove ("IMG_0002.JPG");
+ checked_remove ("IMG_0001.JPG");
+ checked_remove ("IMG_0002.JPG");
}
*/
@@ -588,11 +588,12 @@
int status;
Posix.waitpid (xorg_pid, out status, 0);
Process.close_pid (xorg_pid);
- FileUtils.remove (logfile);
- FileUtils.remove (logfile + ".old");
+ checked_remove (logfile);
+ checked_remove (logfile + ".old");
// clean up lockfile after killed X server
- FileUtils.remove ("/tmp/.X5-lock");
- FileUtils.remove ("/tmp/.X11-unix/X5");
+ if (FileUtils.remove ("/tmp/.X5-lock") < 0)
+ debug("failed to clean up /tmp/.X5-lock: %m");
+ checked_remove ("/tmp/.X11-unix/X5");
assert_cmpstr (xinput_err, CompareOperator.EQ, "");
assert_cmpint (xinput_exit, CompareOperator.EQ, 0);
@@ -732,7 +733,7 @@
// our script covers 0.5 seconds, give it some slack
Posix.sleep (1 * slow_testbed_factor);
- FileUtils.remove (evemu_file);
+ checked_remove (evemu_file);
#if VALA_0_40
Posix.kill (evtest_pid, Posix.Signal.TERM);
#else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/test-umockdev-vala.vala new/umockdev-0.17.15/tests/test-umockdev-vala.vala
--- old/umockdev-0.17.13/tests/test-umockdev-vala.vala 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/test-umockdev-vala.vala 2022-11-24 16:02:22.000000000 +0100
@@ -18,6 +18,7 @@
* along with this program; If not, see <http://www.gnu.org/licenses/>.
*/
+using UMockdevUtils;
using Assertions;
string rootdir;
@@ -280,7 +281,7 @@
} catch (Error e) {
error ("Cannot load ioctls: %s", e.message);
}
- FileUtils.unlink (tmppath);
+ checked_remove (tmppath);
fd = Posix.open ("/dev/001", Posix.O_RDWR, 0);
assert_cmpint (fd, CompareOperator.GE, 0);
@@ -378,7 +379,7 @@
} catch (Error e) {
error ("Cannot load ioctls: %s", e.message);
}
- FileUtils.unlink (tmppath);
+ checked_remove (tmppath);
fd = Posix.open ("/dev/001", Posix.O_RDWR, 0);
assert_cmpint (fd, CompareOperator.GE, 0);
@@ -424,7 +425,7 @@
} catch (Error e) {
error ("Cannot load ioctls: %s", e.message);
}
- FileUtils.unlink (tmppath);
+ checked_remove (tmppath);
fd = Posix.open ("/dev/002", Posix.O_RDWR, 0);
assert_cmpint (fd, CompareOperator.GE, 0);
@@ -477,7 +478,7 @@
} catch (Error e) {
error ("Cannot load ioctls: %s", e.message);
}
- FileUtils.unlink (tmppath);
+ checked_remove (tmppath);
int fd = Posix.open ("/dev/001", Posix.O_RDWR, 0);
assert_cmpint (fd, CompareOperator.GE, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/test-umockdev.c new/umockdev-0.17.15/tests/test-umockdev.c
--- old/umockdev-0.17.13/tests/test-umockdev.c 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/test-umockdev.c 2022-11-24 16:02:22.000000000 +0100
@@ -32,8 +32,10 @@
#include <sys/socket.h>
#include <sys/sysmacros.h>
#include <sys/un.h>
+#include <sys/vfs.h>
#include <linux/usbdevice_fs.h>
#include <linux/input.h>
+#include <linux/magic.h>
#include <libudev.h>
#include <gudev/gudev.h>
@@ -1193,6 +1195,40 @@
g_assert_cmpint(statx (AT_FDCWD, "/sys/bus/pci/devices/dev1", 0, STATX_TYPE|STATX_NLINK|STATX_UID, &stx), ==, 0);
g_assert_cmpuint(stx.stx_uid, ==, uid);
g_assert(S_ISDIR(stx.stx_mode));
+
+ struct statfs buf;
+ dirfd = open("/sys", O_RDONLY | O_DIRECTORY);
+ g_assert_cmpint(dirfd, >=, 0);
+ g_assert_cmpint(fstatfs(dirfd, &buf), ==, 0);
+ g_assert_cmpint(buf.f_type, ==, SYSFS_MAGIC);
+ close (dirfd);
+ memset(&buf, 0, sizeof buf);
+
+ dirfd = open("/sys/bus/pci/devices/dev1", O_RDONLY | O_DIRECTORY);
+ g_assert_cmpint(dirfd, >=, 0);
+ g_assert_cmpint(fstatfs(dirfd, &buf), ==, 0);
+ g_assert_cmpint(buf.f_type, ==, SYSFS_MAGIC);
+ close (dirfd);
+ memset(&buf, 0, sizeof buf);
+
+ dirfd = open("/dev", O_RDONLY | O_DIRECTORY);
+ g_assert_cmpint(dirfd, >=, 0);
+ g_assert_cmpint(fstatfs(dirfd, &buf), ==, 0);
+ g_assert_cmpint(buf.f_type, !=, SYSFS_MAGIC);
+ close (dirfd);
+ memset(&buf, 0, sizeof buf);
+
+ g_assert_cmpint(statfs("/sys", &buf), ==, 0);
+ g_assert_cmpint(buf.f_type, ==, SYSFS_MAGIC);
+ memset(&buf, 0, sizeof buf);
+
+ g_assert_cmpint(statfs("/sys/bus/pci/devices/dev1", &buf), ==, 0);
+ g_assert_cmpint(buf.f_type, ==, SYSFS_MAGIC);
+ memset(&buf, 0, sizeof buf);
+
+ g_assert_cmpint(statfs("/dev", &buf), ==, 0);
+ g_assert_cmpint(buf.f_type, !=, SYSFS_MAGIC);
+ memset(&buf, 0, sizeof buf);
#endif
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/umockdev-0.17.13/tests/test-umockdev.py new/umockdev-0.17.15/tests/test-umockdev.py
--- old/umockdev-0.17.13/tests/test-umockdev.py 2022-05-30 12:16:30.000000000 +0200
+++ new/umockdev-0.17.15/tests/test-umockdev.py 2022-11-24 16:02:22.000000000 +0100
@@ -21,6 +21,8 @@
import sys
import os.path
import unittest
+import fcntl
+import struct
try:
import gi
@@ -212,4 +214,37 @@
with assertRaisesRegex(GLib.GError, 'malformed attribute') as cm:
self.testbed.add_from_string ('P: /devices/dev1\nE: SIMPLE_PROP\n')
+ def test_custom_ioctl(self):
+ handler = UMockdev.IoctlBase()
+
+ def handle_ioctl(handler, client):
+ if client.get_request() != 1:
+ return False
+
+ in_data = struct.pack('l', -1)
+ out_data = struct.pack('l', 1)
+ arg = client.get_arg()
+ data = arg.resolve(0, len(out_data))
+ if data.retrieve() != in_data:
+ return False
+ data.update(0, out_data)
+
+ client.complete(99, 0)
+ return True
+
+ handler.connect("handle-ioctl", handle_ioctl)
+
+ self.testbed.add_from_string ('P: /devices/test\nN: test\nE: SUBSYSTEM=test')
+ self.testbed.attach_ioctl('/dev/test', handler)
+
+ fd = os.open('/dev/test', os.O_RDONLY)
+ arg = bytearray(struct.pack('l', -1))
+ self.assertEqual(fcntl.ioctl(fd, 1, arg, True), 99)
+ arg = struct.unpack('l', arg)[0]
+ self.assertEqual(arg, 1)
+
+ # Check that an detach/attach works
+ self.testbed.detach_ioctl('/dev/test')
+ self.testbed.attach_ioctl('/dev/test', handler)
+
unittest.main(testRunner=unittest.TextTestRunner(stream=sys.stdout, verbosity=2))
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ovmf for openSUSE:Factory checked in at 2022-11-30 16:07:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ovmf (Old)
and /work/SRC/openSUSE:Factory/.ovmf.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ovmf"
Wed Nov 30 16:07:46 2022 rev:84 rq:1038917 version:202211
Changes:
--------
--- /work/SRC/openSUSE:Factory/ovmf/ovmf.changes 2022-11-12 17:40:08.837802992 +0100
+++ /work/SRC/openSUSE:Factory/.ovmf.new.1597/ovmf.changes 2022-11-30 16:07:47.215454061 +0100
@@ -1,0 +2,418 @@
+Tue Nov 29 14:48:03 UTC 2022 - Joey Lee <jlee(a)suse.com>
+
+- In the PFLASH_CODE in ovmf-build-funcs.sh, Use readonly=on instead of
+ readonly becuase we got the following message when building ovmf
+ on SLE15-SP3/SP4 code base:
+
+[ 981s] qemu-system-x86_64: -drive if=pflash,format=raw,unit=0,readonly,file=ovmf-x86_64-ms-code.bin: warning: short-form boolean option 'readonly' deprecated
+[ 981s] Please use readonly=on instead
+[ 981s] char device redirected to /dev/pts/0 (label charserial1)
+
+-------------------------------------------------------------------
+Mon Nov 28 14:32:39 UTC 2022 - Joey Lee <jlee(a)suse.com>
+
+- Update to edk2-stable202211 (jsc#PED-1410)
+ - Features (https://github.com/tianocore/edk2/releases):
+ CryptoPkg remove EC PCD and merge optimized openssl libs
+ Add GoogleTest unit test support to UnitTestFrameworkPkg
+ Add Raw algorithm support using Arm FW-TRNG interface
+ TDVF Lazy Accept in OvmfPkg
+ Debug code to audit BIOS TPM extend operations
+ Add a new feature to enable LoongArch prot for EDKII
+ CryptoPkg: Need to add additional cipher algos and TLS API to meet WPA3
+ IntelFsp2(Wrapper)Pkg: Support FSP 2.4 MultiPhaseInit
+ CryptoPkg: Need to support EC and BN API due to WPA3 feature
+ Add PCI_DEVICE_PPI support for NvmExpressPei
+ - Patches (git log --oneline --date-order edk2-stable202208..edk2-stable202211):
+ fff6d81270 pip-requirements.txt: Update to edk2-pytool-extensions 0.20.0
+ 2ddc8e1b67 pip-requirements.txt: Update to edk2-pytool-library 0.12.1
+ 93629f2c7c ArmPkg/ArmTrngLib: Remove ASSERT in GetArmTrngVersion()
+ 0cb30c3f5e Maintainers: Update the VmgExitLib to CcExitLib
+ 765ba5bf05 OvmfPkg/UefiCpuPkg: Add CcExit prefix to the APIs of CcExitLib
+ a89f558d3c OvmfPkg/UefiCpuPkg/UefiPayloadPkg: Rename VmgExitLib to CcExitLib
+ b9e702c3c9 UefiCpuPkg/ResetVector:Add Option to reserve 4K region at 4GB
+ 6d55ad9a59 MdePkg/Test: Add port of BaseSafeIntLib unit tests to GoogleTest
+ 31377aba8f BaseTools/Plugin/HostBaseUnitTestRunner: Enable gtest xml output
+ 80f097711b .pytool: Add googletest submodule to CISettings.py
+ d4586fe3ae UnitTestFrameworkPkg/Library/CmockaLib: Generate symbol information
+ cef0c5c684 UnitTestFrameworkPkg: Add googletest submodule and GoogleTestLib
+ c1b073a9dc MdePkg/Include/Library: Undefine _ASSERT() if already defined
+ 933b4c333c MdePkg/Include: Update Base.h to improve C++ compatibility
+ 3182843f3b IntelFsp2Pkg: Improvement of supporting null UPD pointer in FSP-T
+ c8fb724046 ArmPkg/ArmTrngLib: Fix incorrect GUID reference in DEBUG() output
+ 3b1f3414f2 .github/workflows: Update CodeQL to install Python 3.10.6
+ c17c3c24d8 ShellPkg:Improved Smbios Type9 data under smbiosview
+ 342813a3f7 pip-requirements.txt: Update edk2-pytool-library to 0.12.0
+ b0fd309719 edk2.qls: Allow error severity results and add new queries
+ 179efe5d69 BaseTools: Fix wrong type of arguments to formatting functions
+ 0be81a4d83 BaseTools/Source/C: Use /Z7 instead of /Zi for host tools
+ 6032b46dce PrmPkg/PrmSsdtInstallDxe: Update PRMT Device CID to PNP0C02.
+ 6c1a4a376e .github: Add initial CodeQL config and workflow files
+ c7aecf2a4f Maintainers.txt: Add .github maintainers and reviewers
+ 50bee4cc12 CryptoPkg: Sha1 functions causing build errors
+ 239bcf7805 PrmPkg: Use UnitTestFrameworkPkg UEFI BS library
+ 6e8b0b6913 UnitTestFrameworkPkg: Add UnitTestUefiBootServicesTableLib
+ 82e70d9ac0 CryptoPkg/Readme.md: typo and grammar fixes
+ 35043a5ec0 MdePkg/BaseLib: Fix out-of-bounds reads in SafeString
+ b556f2445c ArmVirtPkg: Kvmtool: Add RNG support using Arm TRNG interface
+ 9eb5ccda50 SecurityPkg/RngDxe: Add Arm support of RngDxe
+ ff29cdb968 SecurityPkg/RngDxe: Rename AArch64/RngDxe.c
+ 6cdddccf00 SecurityPkg/RngDxe: Add debug warning for NULL PcdCpuRngSupportedAlgorithm
+ 863fe9e191 SecurityPkg/RngDxe: Add AArch64 RawAlgorithm support through ArmTrngLib
+ 4b3e9d80be SecurityPkg/RngDxe: Check before advertising Cpu Rng algo
+ 199031b2b0 SecurityPkg/RngDxe: Documentation/include/parameter cleanup
+ 922bf317f1 SecurityPkg/RngDxe: Remove ArchGetSupportedRngAlgorithms()
+ aade3b93fe SecurityPkg/RngDxe: Replace Pcd with Sp80090Ctr256Guid
+ 8a89747844 SecurityPkg/RngDxe: Rename RdRandGenerateEntropy to generic name
+ e00ec499c5 ArmPkg/ArmTrngLib: Add Arm TRNG library
+ 351fe77666 ArmPkg: Add FID definitions for Arm TRNG
+ ef4cf3d88d MdePkg/ArmTrngLib: Add NULL instance of Arm TRNG Library
+ cbce5a1a93 MdePkg/ArmTrngLib: Definition for Arm TRNG library class interface
+ 3d480a93de ArmPkg/ArmHvcLibNull: Add NULL instance of ArmHvcLib
+ 9d8ed9c8ee ArmPkg: Sort HVC/SMC section alphbetically in ArmPkg.dsc
+ aa0f522471 ArmPkg/ArmMonitorLib: Add ArmMonitorLib
+ 9a50990cdb ArmPkg/ArmMonitorLib: Definition for ArmMonitorLib library class
+ dcf8c79056 ArmPkg: PCD to select conduit for monitor calls
+ cc650a0378 ArmPlatformPkg: Retire NorFlashDxe driver
+ eff44c008d OvmfPkg/VmgExitLig: HALT on #VE when access to private memory
+ 2695e49219 UefiPayloadPkg: Boot mode in PHIT HOB will not be updated
+ ee3da09bb2 MdeModulePkg/Ufs :Coverity scan flags multiple issues in edk2-stable202205
+ eae9e51d98 MdeModulePkg/scsi :Coverity scan flags multiple issues in edk2-stable202205
+ b84f32ae5b IntelFsp2Pkg: FSP should support input UPD as NULL.
+ cab1f02565 MdeModulePkg/PiSmmCore: SmmEntryPoint underflow��(CVE-2021-38578)
+ c46204e25f IntelFsp2Pkg: Update Function header to support IA32/X64.
+ 957a15adaf UefiCpuPkg/SmmCpuFeaturesLib: Clean up header file inclusion in SmmStm.c
+ ae62a6e44d UefiCpuPkg/SmmCpuFeaturesLib: Abstract arch dependent code
+ ed8bfada03 UefiCpuPkg/SmmCpuFeaturesLib: Rename the common C file
+ 8487ec0ee7 CryptoPkg/Test: Simplify BaseCryptLib host based unit tests
+ b5dbf8267b pip-requirements.txt: Bump pytool extensions and library
+ 85dba961c7 UnitTestFrameworkPkg: Support FILE_GUID override in host based unit tests
+ 720c25ab41 OvmfPkg: Call gEdkiiMemoryAcceptProtocolGuid to accept pages
+ 7dcc2f3870 OvmfPkg: Realize EdkiiMemoryAcceptProtocol in TdxDxe
+ 2af33db365 MdePkg: The prototype definition of EdkiiMemoryAcceptProtocol
+ d1e41c620f OvmfPkg: Introduce lazy accept in PlatformInitLib and PlatformPei
+ 6ca9f410d1 ShellPkg: Update shell command memmap to show unaccepted memory
+ 43e306806e MdeModulePkg: Update Dxe to handle unaccepted memory type
+ 502c01c502 MdePkg: Add UEFI Unaccepted memory definition
+ 9b648112a5 OvmfPkg: Use BZ3937_EFI_RESOURCE_MEMORY_UNACCEPTED defined in MdeModulePkg
+ 32c5a470ad MdePkg: Increase EFI_RESOURCE_MAX_MEMORY_TYPE
+ 00bbb1e584 MdeModulePkg: Add PrePiHob.h
+ df7ce74e6c RedfishPkg/RedfishDiscoverDxe: Fix memory free issue
+ 66772bc852 Maintainers.txt: Add 'Pierre Gondois' as DynamicTablesPkg reviewer
+ e9a3613ce0 ShellPkg/AcpiView: Update PCCT fields for ACPI 6.5
+ c9a4df88fd DynamicTablesPkg: Readme.md: Update available tables for generation
+ 1729fb8a82 DynamicTablesPkg/AmlLib: Allow larger AccessSize for Pcc address space
+ 8405b1480f DynamicTablesPkg: Add PCCT Generator
+ dab7bac94c DynamicTablesPkg: Add PCCT related objects
+ a5672d43a6 DynamicTablesPkg: Fix Ssdt PCI generation comments
+ 5acd6489df DynamicTablesPkg: FdtHwInfoParserLib: Remove wrong comment
+ 0bcd3cc06e DynamicTablesPkg: Remove deprecated APIs
+ 2ef32f914a DynamicTablesPkg: Fix wrong/missing fields in CmObjParser
+ a64cc43552 DynamicTablesPkg: Fix GTBlock and GTBlockTimerFrame CmObjParsers
+ 3bcc2e22ef DynamicTablesPkg: Update CmObjParser for MinorRevision
+ 44b7a856f0 DynamicTablesPkg: Update CmObjParser for IORT Rev E.d
+ 48c6e7dbcd DynamicTablesPkg: Add PrintString to CmObjParser
+ 020891f173 DynamicTablesPkg: Use correct print formatter
+ 52199bf532 MdeModulePkg/ScsiDiskDxe: Update proper device name for ScsiDisk drive
+ d98efb4682 UefiCpuPkg: Restore HpetTimer after CpuExceptionHandlerLib test
+ 99338ef81e ArmVirtPkg/ArmVirtKvmTool: Migrate to OVMF's VirtNorFlashDxe
+ b92298af82 ArmVirtPkg/ArmVirtQemu: migrate to OVMF's VirtNorFlashDxe
+ 789a723285 OvmfPkg/VirtNorFlashDxe: use EFI_MEMORY_WC and drop AlignedCopyMem()
+ 25589c4a76 OvmfPkg/VirtNorFlashDxe: avoid switching between modes in a tight loop
+ ca01e6216a OvmfPkg/VirtNorFlashDxe: avoid array mode switch after each word write
+ 83f11f9572 OvmfPkg/VirtNorFlashDxe: drop block I/O protocol implementation
+ 68d234989b OvmfPkg/VirtNorFlashDxe: remove disk I/O protocol implementation
+ 0a64106c56 OvmfPkg/VirtNorFlashDxe: remove CheckBlockLocked feature
+ c1ff81f799 OvmfPkg/VirtNorFlashDxe: clone ArmPlatformPkg's NOR flash driver
+ 16bf588b60 OvmfPkg: clone NorFlashPlatformLib into VirtNorFlashPlatformLib
+ 115cebbe4d ArmVirtPkg/ArmVirtQemu: Clear XIP flags instead of overriding them
+ b6efc505e4 ArmVirtPkg/ArmVirtQemu: omit PCD PEIM unless TPM support is enabled
+ 7136d5491e ArmVirtPkg/QemuVirtMemInfoLib: use HOB not PCD to record the memory size
+ fead469a3b ArmVirtPkg/ArmVirtQemu: avoid shadowing PEIMs unless necessary
+ 75d2be4a37 ArmVirtPkg/ArmVirtQemu: Drop unused variable PEIM
+ 07be1d34d9 ArmVirtPkg/ArmVirtQemu: enable initial ID map at early boot
+ a26050f74d ArmVirtPkg/ArmVirtQemu: use first 128 MiB as permanent PEI memory
+ 2eff4ddc77 ArmVirtPkg/ArmVirtQemu: implement ArmPlatformLib with static ID map
+ 9ca2dc7bec ArmVirtPkg/ArmVirtQemu: wire up timeout PCD to Timeout variable
+ 2997ae3873 ArmVirtPkg: make EFI_LOADER_DATA non-executable
+ 9e2c88b16e Maintainers.txt: Update maintainers and reviewers for LoongArch64
+ 9670f79937 Maintainers.txt: Update maintainers list
+ 26638d2aa3 IntelFsp2WrapperPkg: Check header revision for MultiPhase support.
+ 7464db4474 MdeModulePkg: Fix spelling error in PciSioSerialDxe
+ 56035d1c8b ArmPlatformPkg/PrePeiCore: Print the firmware version early in boot
+ db2c22633f Ps2KbdCtrller: Make wait for SUCCESS after BAT non-fatal
+ fb493ac84e ArmPlatformPkg/PrePeiCore: permit entry with the MMU enabled
+ b28acb22e0 ArmVirtPkg: do not enable iSCSI driver by default
+ f4213fed34 ArmVirtPkg: remove EbcDxe from all platforms
+ acb2acccfd BaseTools/Tests: Use quotes around PYTHON_COMMAND
+ 4fcd5d2620 CryptoPkg/Library/OpensslLib: update auto-generated files
+ 0882d6a32d CryptoPkg/Library/OpensslLib: Add generated flag to Accel INF
+ d79295b5c5 CryptoPkg/Library/OpensslLib: Update process_files.pl INF generation
+ 3b46a1e243 Revert "CryptoPkg: Update process_files.pl to auto add PCD config option"
+ 244ce33bdd CryptoPkg: Add Readme.md
+ 584b246e88 CryptoPkg: Fixed host-based unit tests
+ 0c9744787e CryptoPkg: Update DSC to improve CI test coverage
+ dfc7c3dc8c CryptoPkg: Remove PcdOpensslEcEnabled from CryptoPkg.dec
+ a57b4c11a5 CryptoPkg/Library/OpensslLib: Remove PrintLib from INF files
+ e75951ca89 CryptoPkg/Library/OpensslLib: Produce consistent set of APIs
+ ea6d859b50 CryptoPkg/Library/OpensslLib: Combine all performance optimized INFs
+ dd00f92b2f CryptoPkg/Library: Cleanup BaseCryptLib and TlsLib
+ 961fadf60c CryptoPkg/Test/UnitTest/Library/BaseCryptLib: Unit test fixes
+ 8f8372439d CryptoPkg/Library/BaseCryptLib: Update internal functions/variables
+ 8437368c69 CryptoPkg/Library/BaseCryptLib: Add missing UNI file and fix format
+ d7d9866ef4 CryptoPkg: Document and disable deprecated crypto services
+ 4d29da411f remove GCC build warning
+ 6fd754ec0f BaseTools: Fixed the multiple pairs brackets issue in GenFv
+ 2355f0c09c BaseTools: Fix check for ${PYTHON_COMMAND} in Tests/GNUmakefile
+ 913a308df9 BaseTools/Scripts/PatchCheck.py: Allow tab in Makefile
+ c6720db5dd MdeModulePkg/XhciDxe: Add boundary check for TRB ring allocation
+ 31b1638468 ArmPkg/ArmMmuLib: Reuse XIP MMU routines when splitting entries
+ 999c53e2ca ArmPkg/ArmMmuLib: permit initial configuration with MMU enabled
+ 0487cac09f ArmPkg/ArmMmuLib: Disable and re-enable MMU only when needed
+ ab644cfac5 ArmPkg/ArmMmuLib: don't replace table entries with block entries
+ 0f6eccdbf7 BaseTools: Add missing spaces for PCD expression values in AutoGenC
+ 1d0ff11526 BaseTools: Correct initialization data size check for array PCDs
+ d23eb3aa99 BaseTools/GenFds: Correct file type set for the PIC section
+ 0a29933ea9 BaseTools: Support COMPAT16 section generation
+ 225810a182 BaseTools: Add support for SUBTYPE_GUID section generation
+ 81aeb94648 BaseTools: Correct BPDG tool error prints
+ 09e74b81ba BaseTools/FMMT: Add Shrink Fv function
+ 0e6db46b1b BaseTools/FMMT: Add Extract FV function
+ b03dceb87f BaseTools: Remove duplicated words in Python tools
+ c4663e7277 pip-requirement: Upgrade the edk2-basetools version from 0.1.29 to 0.1.39
+ 9d6915ca91 UefiCpuPkg/Test: Add unit tests for MP service PPI and Protocol
+ 6f1bb567aa UefiCpuPkg: Add R8/R9 etc in EccCheck ExceptionList
+ 012e424601 UefiCpuPkg: Add Pei/DxeCpuExceptionHandlerLibUnitTest in dsc
+ 055eaacc34 UefiCpuPkg: Add Unit tests for PeiCpuExceptionHandlerLib
+ beabde5875 UefiCpuPkg: Add Unit tests for DxeCpuExceptionHandlerLib
+ b8e54e15de UefiCpuPkg/CpuPageTableLib:Support PAE paging for PageTableParse
+ a7e070808c UefiCpuPkg:Add RegisterExceptionHandler in PeiCpuExceptionHandlerLib
+ d618fe05bf BaseTools: Remove duplicated words in C tools
+ 8fc06b6e19 Fix bug on SRIOV ReservedBusNum when ARI enable.
+ 4aa7e66c06 MdeModulePkg: Fixed extra 1 SR-IOV reserved bus
+ e0200cc47a NetworkPkg: Add LoongArch64 architecture.
+ 2ce4bfb843 MdeModulePkg/DxeIplPeim : LoongArch DxeIPL implementation.
+ 380821a949 MdeModulePkg/CapsuleRuntimeDxe: Add LoongArch64 architecture.
+ dad7fc29d9 MdeModulePkg/Logo: Add LoongArch64 architecture.
+ ced203c3d5 MdePkg/BaseSafeIntLib: Add LoongArch64 architecture for BaseSafeIntLib.
++++ 221 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/ovmf/ovmf.changes
++++ and /work/SRC/openSUSE:Factory/.ovmf.new.1597/ovmf.changes
Old:
----
edk2-edk2-stable202208.tar.gz
ovmf-add-exclude-shell-flag.patch
ovmf-bsc1199156-OvmfPkg-IncompatiblePciDeviceSupportDxe-Ignore-Optio.patch
New:
----
edk2-edk2-stable202211.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ovmf.spec ++++++
--- /var/tmp/diff_new_pack.pd4WIr/_old 2022-11-30 16:07:48.211459510 +0100
+++ /var/tmp/diff_new_pack.pd4WIr/_new 2022-11-30 16:07:48.215459532 +0100
@@ -22,7 +22,7 @@
%global softfloat_version b64af41c3276f
Name: ovmf
-Version: 202208
+Version: 202211
Release: 0
Summary: Open Virtual Machine Firmware
License: BSD-2-Clause-Patent
@@ -45,22 +45,19 @@
Source101: gdb_uefi.py.in
Source102: gen-key-enrollment-iso.sh
Source103: ovmf-build-funcs.sh
-Patch1: %{name}-add-exclude-shell-flag.patch
-Patch2: %{name}-gdb-symbols.patch
-Patch3: %{name}-pie.patch
-Patch4: %{name}-disable-ia32-firmware-piepic.patch
-Patch5: %{name}-set-fixed-enroll-time.patch
-Patch6: %{name}-disable-brotli.patch
-Patch7: %{name}-ignore-spurious-GCC-12-warning.patch
-Patch8: %{name}-tools_def-add-fno-omit-frame-pointer-to-GCC48_-IA32-.patch
+Patch1: %{name}-gdb-symbols.patch
+Patch2: %{name}-pie.patch
+Patch3: %{name}-disable-ia32-firmware-piepic.patch
+Patch4: %{name}-set-fixed-enroll-time.patch
+Patch5: %{name}-disable-brotli.patch
+Patch6: %{name}-ignore-spurious-GCC-12-warning.patch
+Patch7: %{name}-tools_def-add-fno-omit-frame-pointer-to-GCC48_-IA32-.patch
# PED-1359, because nasm-2.14 doesn't support corresponding instructions.
-Patch9: %{name}-Revert-MdePkg-Remove-the-macro-definitions-regarding.patch
-Patch10: %{name}-Revert-UefiCpuPkg-Replace-Opcode-with-the-correspond.patch
-Patch11: %{name}-Revert-SourceLevelDebugPkg-Replace-Opcode-with-the-c.patch
-Patch12: %{name}-Revert-MdePkg-Replace-Opcode-with-the-corresponding-.patch
-Patch13: %{name}-Revert-MdeModulePkg-Replace-Opcode-with-the-correspo.patch
-# bsc#1199156 OVMF exposed Invalid MMIO opcode (F6) error when enabled sev and sev-es
-Patch14: %{name}-bsc1199156-OvmfPkg-IncompatiblePciDeviceSupportDxe-Ignore-Optio.patch
+Patch8: %{name}-Revert-MdePkg-Remove-the-macro-definitions-regarding.patch
+Patch9: %{name}-Revert-UefiCpuPkg-Replace-Opcode-with-the-correspond.patch
+Patch10: %{name}-Revert-SourceLevelDebugPkg-Replace-Opcode-with-the-c.patch
+Patch11: %{name}-Revert-MdePkg-Replace-Opcode-with-the-corresponding-.patch
+Patch12: %{name}-Revert-MdeModulePkg-Replace-Opcode-with-the-correspo.patch
BuildRequires: bc
BuildRequires: cross-arm-binutils
BuildRequires: cross-arm-gcc%{gcc_version}
@@ -177,15 +174,13 @@
%patch5 -p1
%patch6 -p1
%patch7 -p1
-%patch8 -p1
%if 0%{?suse_version} == 1500 && 0%{?sle_version} < 150500
+%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
-%patch13 -p1
%endif
-%patch14 -p1
# add openssl
pushd CryptoPkg/Library/OpensslLib/openssl
@@ -321,9 +316,9 @@
declare -A EXTRA_FLAGS_X64
EXTRA_FLAGS_X64=(
- [ovmf-x86_64]="-p OvmfPkg/OvmfPkgX64.dsc -D FD_SIZE_2MB -D EXCLUDE_SHELL"
+ [ovmf-x86_64]="-p OvmfPkg/OvmfPkgX64.dsc -D FD_SIZE_2MB -D BUILD_SHELL=FALSE"
[ovmf-x86_64-4m]="-p OvmfPkg/OvmfPkgX64.dsc -D FD_SIZE_4MB -D NETWORK_TLS_ENABLE"
- [ovmf-x86_64-smm]="-a IA32 -p OvmfPkg/OvmfPkgIa32X64.dsc -D FD_SIZE_4MB -D NETWORK_TLS_ENABLE -D SMM_REQUIRE -D EXCLUDE_SHELL"
+ [ovmf-x86_64-smm]="-a IA32 -p OvmfPkg/OvmfPkgIa32X64.dsc -D FD_SIZE_4MB -D NETWORK_TLS_ENABLE -D SMM_REQUIRE -D BUILD_SHELL=FALSE"
)
declare -A OUTDIR_X64
OUTDIR_X64=(
++++++ edk2-edk2-stable202208.tar.gz -> edk2-edk2-stable202211.tar.gz ++++++
/work/SRC/openSUSE:Factory/ovmf/edk2-edk2-stable202208.tar.gz /work/SRC/openSUSE:Factory/.ovmf.new.1597/edk2-edk2-stable202211.tar.gz differ: char 16, line 1
++++++ ovmf-build-funcs.sh ++++++
--- /var/tmp/diff_new_pack.pd4WIr/_old 2022-11-30 16:07:48.395460516 +0100
+++ /var/tmp/diff_new_pack.pd4WIr/_new 2022-11-30 16:07:48.399460538 +0100
@@ -29,7 +29,7 @@
local FW_VARS_ORIG="${PREFIX}-vars.bin"
local FW_CODE="${PREFIX}-${KEY}-code.bin"
local FW_VARS="${PREFIX}-${KEY}-vars.bin"
- local PFLASH_CODE="-drive if=pflash,format=raw,unit=0,readonly,file=$FW_CODE"
+ local PFLASH_CODE="-drive if=pflash,format=raw,unit=0,readonly=on,file=$FW_CODE"
local PFLASH_VARS="-drive if=pflash,format=raw,unit=1,file=$FW_VARS"
ln -s "$FW_CODE_ORIG" "$FW_CODE"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package emacs for openSUSE:Factory checked in at 2022-11-30 16:07:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/emacs (Old)
and /work/SRC/openSUSE:Factory/.emacs.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "emacs"
Wed Nov 30 16:07:42 2022 rev:170 rq:1038881 version:28.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/emacs/emacs.changes 2022-11-18 15:43:35.442577267 +0100
+++ /work/SRC/openSUSE:Factory/.emacs.new.1597/emacs.changes 2022-11-30 16:07:44.055436773 +0100
@@ -1,0 +2,15 @@
+Tue Nov 29 10:41:15 UTC 2022 - Dr. Werner Fink <werner(a)suse.de>
+
+- Update to GNU Emacs version 28.2
+ * This is a bug-fix release with no new features.
+- Add upstream commit as patch d48bb487.patch (bsc#1205822, CVE-2022-45939)
+ * shell command injection via source code files when using ctags
+- Correct offsets of the patches
+ * emacs-24.3-iconic.patch
+ * emacs-24.4-ps-bdf.patch
+ * emacs-25.2-ImageMagick7.patch
+ * emacs-27.1-Xauthority4server.patch
+ * emacs-27.1-pdftex.patch
+ * emacs-28.1.dif
+
+-------------------------------------------------------------------
Old:
----
emacs-28.1-pdf.tar.xz
emacs-28.1.tar.xz
emacs-28.1.tar.xz.sig
New:
----
d48bb487.patch
emacs-28.2-pdf.tar.xz
emacs-28.2.tar.xz
emacs-28.2.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ emacs.spec ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.739445986 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.747446029 +0100
@@ -138,7 +138,7 @@
BuildRequires: pkgconfig(xt)
BuildRequires: pkgconfig(xxf86vm)
URL: http://www.gnu.org/software/emacs/
-Version: 28.1
+Version: 28.2
Release: 0
Summary: GNU Emacs Base Package
License: GPL-3.0-or-later
@@ -187,6 +187,7 @@
Patch25: emacs-26.1-xft4x11.patch
Patch26: emacs-27.1-pdftex.patch
Patch29: emacs-27.1-Xauthority4server.patch
+Patch30: d48bb487.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{expand: %%global include_info %(test -s /usr/share/info/info.info* && echo 0 || echo 1)}
@@ -333,6 +334,7 @@
%patch25 -p0 -b .xft
%patch26 -p0 -b .fmt
%patch29 -p0 -b .xauth
+%patch30 -p0 -b .cve202245939
%patch -p0 -b .0
%if %{without tex4pdf}
pushd etc/refcards/
@@ -3165,6 +3167,7 @@
%{_datadir}/emacs/%{version}/lisp/term/bobcat.elc
%{_datadir}/emacs/%{version}/lisp/term/common-win.elc
%{_datadir}/emacs/%{version}/lisp/term/cygwin.elc
+%{_datadir}/emacs/%{version}/lisp/term/fbterm.elc
%{_datadir}/emacs/%{version}/lisp/term/internal.elc
%{_datadir}/emacs/%{version}/lisp/term/iris-ansi.elc
%{_datadir}/emacs/%{version}/lisp/term/konsole.elc
@@ -4735,6 +4738,7 @@
%{_datadir}/emacs/%{version}/lisp/term/bobcat.el%{ext_el}
%{_datadir}/emacs/%{version}/lisp/term/common-win.el%{ext_el}
%{_datadir}/emacs/%{version}/lisp/term/cygwin.el%{ext_el}
+%{_datadir}/emacs/%{version}/lisp/term/fbterm.el%{ext_el}
%{_datadir}/emacs/%{version}/lisp/term/internal.el%{ext_el}
%{_datadir}/emacs/%{version}/lisp/term/iris-ansi.el%{ext_el}
%{_datadir}/emacs/%{version}/lisp/term/konsole.el%{ext_el}
++++++ d48bb487.patch ++++++
++++ 9275 lines (skipped)
++++++ emacs-24.3-iconic.patch ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.867446686 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.871446708 +0100
@@ -4,7 +4,7 @@
--- lisp/startup.el
+++ lisp/startup.el 2016-09-19 09:15:26.871345783 +0000
-@@ -2470,6 +2470,9 @@ nil default-directory" name)
+@@ -2481,6 +2481,9 @@ nil default-directory" name)
((equal argi "-no-splash")
(setq inhibit-startup-screen t))
++++++ emacs-24.4-ps-bdf.patch ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.899446861 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.903446883 +0100
@@ -5,7 +5,7 @@
--- lisp/ldefs-boot.el
+++ lisp/ldefs-boot.el 2018-05-29 12:23:32.824206557 +0000
-@@ -26758,9 +26758,9 @@ With prefix argument ARG, restart the Pr
+@@ -26785,9 +26785,9 @@ With prefix argument ARG, restart the Pr
;;;### (autoloads nil "ps-bdf" "ps-bdf.el" (0 0 0 0))
;;; Generated autoloads from ps-bdf.el
++++++ emacs-25.2-ImageMagick7.patch ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.919446970 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.923446992 +0100
@@ -7,7 +7,7 @@
--- emacs-27.1/configure.ac
+++ emacs-27.1/configure.ac 2020-08-11 09:59:04.349950601 +0000
-@@ -2605,7 +2605,7 @@ if test "${HAVE_X11}" = "yes" || test "$
+@@ -2603,7 +2603,7 @@ if test "${HAVE_X11}" = "yes" || test "$
else
## 6.3.5 is the earliest version known to work; see Bug#17339.
## 6.8.2 makes Emacs crash; see Bug#13867.
++++++ emacs-27.1-Xauthority4server.patch ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.939447080 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.943447102 +0100
@@ -21,7 +21,7 @@
# Emacs will exit with status 15 after having received SIGTERM, which
--- lisp/server.el
+++ lisp/server.el 2021-10-08 09:40:13.683712534 +0000
-@@ -286,6 +286,11 @@ If nil, no instructions are displayed."
+@@ -287,6 +287,11 @@ If nil, no instructions are displayed."
"The directory in which to place the server socket.
If local sockets are not supported, this is nil.")
@@ -33,7 +33,7 @@
(defun server-clients-with (property value)
"Return a list of clients with PROPERTY set to VALUE."
(let (result)
-@@ -642,7 +647,8 @@ the `server-process' variable."
+@@ -643,7 +648,8 @@ the `server-process' variable."
(t (yes-or-no-p
"The current server still has clients; delete them? "))))
(let* ((server-dir (if server-use-tcp server-auth-dir server-socket-dir))
@@ -43,7 +43,7 @@
(when server-process
;; kill it dead!
(ignore-errors (delete-process server-process)))
-@@ -726,6 +732,14 @@ server or call `\\[server-force-delete]'
+@@ -727,6 +733,14 @@ server or call `\\[server-force-delete]'
:plist '(:authenticated t)))))
(unless server-process (error "Could not start server process"))
(process-put server-process :server-file server-file)
@@ -58,7 +58,7 @@
(when server-use-tcp
(let ((auth-key (server-get-auth-key)))
(process-put server-process :auth-key auth-key)
-@@ -854,7 +868,7 @@ This handles splitting the command if it
+@@ -855,7 +869,7 @@ This handles splitting the command if it
(let ((frame
(server-with-environment
(process-get proc 'env)
@@ -67,7 +67,7 @@
;; For tgetent(3); list according to ncurses(3).
"BAUDRATE" "COLUMNS" "ESCDELAY" "HOME" "LINES"
"NCURSES_ASSUMED_COLORS" "NCURSES_NO_PADDING"
-@@ -1122,6 +1136,8 @@ The following commands are accepted by t
+@@ -1123,6 +1137,8 @@ The following commands are accepted by t
nowait ; t if emacsclient does not want to wait for us.
frame ; Frame opened for the client (if any).
display ; Open frame on this display.
@@ -76,7 +76,7 @@
parent-id ; Window ID for XEmbed
dontkill ; t if client should not be killed.
commands
-@@ -1262,6 +1278,16 @@ The following commands are accepted by t
+@@ -1263,6 +1279,16 @@ The following commands are accepted by t
;; -env NAME=VALUE: An environment variable.
("-env"
(let ((var (pop args-left)))
@@ -93,7 +93,7 @@
;; XXX Variables should be encoded as in getenv/setenv.
(process-put proc 'env
(cons var (process-get proc 'env)))))
-@@ -1277,6 +1303,16 @@ The following commands are accepted by t
+@@ -1278,6 +1304,16 @@ The following commands are accepted by t
;; Unknown command.
(arg (error "Unknown command: %s" arg))))
++++++ emacs-27.1-pdftex.patch ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.963447211 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.967447233 +0100
@@ -19,14 +19,15 @@
- $(ENVADD) pdftex -output-format=pdf pl-refcard.tex
+ $(ENVADD) pdfmex -output-format=pdf pl-refcard.tex
pl-refcard.dvi: $(pl_refcard_deps)
- if ! kpsewhich -format=fmt mex > /dev/null; then \
- echo "No mex format found."; false; \
+ if kpsewhich -format=fmt mex > /dev/null; then \
+- $(ENVADD) tex pl-refcard.tex; \
+- else \
+ $(ENVADD) mex pl-refcard.tex; \
++ else \
++ $(ENVADD) tex pl-refcard.tex; \
fi
-- $(ENVADD) tex pl-refcard.tex
-+ $(ENVADD) mex pl-refcard.tex
pl-refcard.ps: pl-refcard.dvi
dvips -t a4 -o $@ pl-refcard.dvi
-
--- etc/refcards/cs-dired-ref.tex
+++ etc/refcards/cs-dired-ref.tex 2021-03-25 15:07:14.519265674 +0000
@@ -108,7 +108,8 @@ see the Emacs distribution, or {\tt http
++++++ emacs-28.1.dif ++++++
--- /var/tmp/diff_new_pack.1urpKu/_old 2022-11-30 16:07:45.983447320 +0100
+++ /var/tmp/diff_new_pack.1urpKu/_new 2022-11-30 16:07:45.987447342 +0100
@@ -138,7 +138,7 @@
.TP
.B \-\-declarations
In C and derived languages, create tags for function declarations,
-@@ -181,7 +181,7 @@ the previous ones. The regexps are of o
+@@ -183,7 +183,7 @@ the previous ones. The regexps are of o
where \fItagregexp\fP is used to match the tag. It should not match
useless characters. If the match is such that more characters than
needed are unavoidably matched by \fItagregexp\fP, it may be useful to
@@ -147,7 +147,7 @@
ignores regexps without a \fInameregexp\fP. The syntax of regexps is
the same as in emacs. The following character escape sequences are
supported: \\a, \\b, \\d, \\e, \\f, \\n, \\r, \\t, \\v, which
-@@ -260,15 +260,15 @@ tag entries for other files in place. C
+@@ -262,15 +262,15 @@ tag entries for other files in place. C
by deleting the existing entries for the given files and then
rewriting the new entries at the end of the tags file. It is often
faster to simply rebuild the entire tag file than to use this.
@@ -177,7 +177,7 @@
ebrowse${EXEEXT}
# Things that Emacs runs internally, or during the build process,
-@@ -379,7 +381,7 @@ etags${EXEEXT}: ${etags_deps}
+@@ -382,7 +382,7 @@ etags${EXEEXT}: ${etags_deps}
## etags.o files on top of each other.
## FIXME?
## Can't we use a wrapper that calls 'etags --ctags'?
++++++ emacs-28.1-pdf.tar.xz -> emacs-28.2-pdf.tar.xz ++++++
Binary files old/calccard.pdf and new/calccard.pdf differ
Binary files old/cs-dired-ref.pdf and new/cs-dired-ref.pdf differ
Binary files old/cs-refcard.pdf and new/cs-refcard.pdf differ
Binary files old/cs-survival.pdf and new/cs-survival.pdf differ
Binary files old/de-refcard.pdf and new/de-refcard.pdf differ
Binary files old/dired-ref.pdf and new/dired-ref.pdf differ
Binary files old/fr-dired-ref.pdf and new/fr-dired-ref.pdf differ
Binary files old/fr-refcard.pdf and new/fr-refcard.pdf differ
Binary files old/fr-survival.pdf and new/fr-survival.pdf differ
Binary files old/gnus-booklet.pdf and new/gnus-booklet.pdf differ
Binary files old/gnus-refcard.pdf and new/gnus-refcard.pdf differ
Binary files old/orgcard.pdf and new/orgcard.pdf differ
Binary files old/pl-refcard.pdf and new/pl-refcard.pdf differ
Binary files old/pt-br-refcard.pdf and new/pt-br-refcard.pdf differ
Binary files old/refcard.pdf and new/refcard.pdf differ
Binary files old/ru-refcard.pdf and new/ru-refcard.pdf differ
Binary files old/sk-dired-ref.pdf and new/sk-dired-ref.pdf differ
Binary files old/sk-refcard.pdf and new/sk-refcard.pdf differ
Binary files old/sk-survival.pdf and new/sk-survival.pdf differ
Binary files old/survival.pdf and new/survival.pdf differ
Binary files old/vipcard.pdf and new/vipcard.pdf differ
Binary files old/viperCard.pdf and new/viperCard.pdf differ
++++++ emacs-28.1-pdf.tar.xz -> emacs-28.2.tar.xz ++++++
/work/SRC/openSUSE:Factory/emacs/emacs-28.1-pdf.tar.xz /work/SRC/openSUSE:Factory/.emacs.new.1597/emacs-28.2.tar.xz differ: char 25, line 1
++++++ emacs.keyring ++++++
Binary files /var/tmp/diff_new_pack.1urpKu/_old and /var/tmp/diff_new_pack.1urpKu/_new differ
1
0