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
December 2023
- 1 participants
- 1464 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package syft for openSUSE:Factory checked in at 2023-12-22 22:41:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/syft (Old)
and /work/SRC/openSUSE:Factory/.syft.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "syft"
Fri Dec 22 22:41:45 2023 rev:57 rq:1134594 version:0.99.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/syft/syft.changes 2023-11-30 22:02:10.414943700 +0100
+++ /work/SRC/openSUSE:Factory/.syft.new.28375/syft.changes 2023-12-22 22:42:02.565560669 +0100
@@ -1,0 +2,62 @@
+Thu Dec 21 16:26:53 UTC 2023 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 0.99.0:
+ * chore: remove execute from test fixtures (#2450)
+ * chore(deps): update tools to latest versions (#2447)
+ * fix: don't panic when hackage missing in haskell stack yaml lock (#2448)
+ * Add binary classifier for the ERLang interpretter (#2417)
+ * Add binary classifier for Julia lang (#2427)
+ * Add binary detection for PHP composer (#2432)
+ * chore(deps): bump actions/upload-artifact from 3.1.3 to 4.0.0 (#2433)
+ * chore(deps): update CPE dictionary index (#2442)
+ * chore(deps): update stereoscope to 4b999b76ca8901d15bb97aef445dc94c38d11d5c (#2440)
+ * fix syft-json test to use pretty json for snapshot testing (#2441)
+ * refactor pkg.Collection (#2439)
+ * refactor javascript cataloger to use configuration options when creating packages (#2438)
+ * use single source of truth for archive options (#2437)
+ * fix file digest cataloger when passed coordinates (#2436)
+ * chore(deps): bump github.com/CycloneDX/cyclonedx-go from 0.7.2 to 0.8.0 (#2413)
+ * Look for a maven version in a pom from a parent dependency management section (#2423)
+ * Parse Python licenses from LicenseExpression entry in the Wheel Metadata (#2431)
+ * chore(deps): bump github/codeql-action from 2.22.10 to 3.22.11 (#2430)
+ * chore(deps): bump modernc.org/sqlite from 1.27.0 to 1.28.0 (#2429)
+ * chore(deps): update tools to latest versions (#2428)
+ * Parse Python licenses from LicenseFile entry in the Wheel Metadata (#2331)
+ * fix: use filepath instead of path for file source exclusions (#2411)
+ * chore(deps): bump github.com/charmbracelet/bubbletea (#2424)
+ * chore(deps): bump github.com/google/uuid from 1.4.0 to 1.5.0 (#2425)
+ * chore(deps): bump github/codeql-action from 2.22.9 to 2.22.10 (#2426)
+ * chore(deps): bump dawidd6/action-homebrew-bump-formula (#2420)
+ * feat: add the option to retrieve remote licenses for projects defined in a maven pom (#2409)
+ * chore(deps): bump github/codeql-action from 2.22.8 to 2.22.9 (#2400)
+ * chore(deps): bump github.com/saferwall/pe from 1.4.7 to 1.4.8 (#2415)
+ * chore(deps): bump github.com/go-git/go-git/v5 from 5.10.1 to 5.11.0 (#2414)
+ * chore(deps): bump actions/setup-go from 4.1.0 to 5.0.0 (#2401)
+ * chore(deps): update tools to latest versions (#2408)
+ * chore(deps): update CPE dictionary index (#2412)
+ * fix(java): improve identification for org.codehaus.groovy artifacts (#2404)
+ * fix(java): improve identification for commons-jelly artifacts (#2399)
+ * fix(java): improve identification for io.minio artifacts (#2398)
+ * fix(java): improve identification for com.graphql-java artifacts (#2397)
+ * chore(deps): update tools to latest versions (#2395)
+ * chore: enhance java purl generation integration test (#2393)
+ * feat: add ability to retrieve remote licenses for yarn.lock (#2338)
+ * chore(deps): bump anchore/sbom-action from 0.15.0 to 0.15.1 (#2392)
+ * Retrieve remote licenses using pom.properties when there is no pom.xml (#2315)
+ * fix(java): improve identification for org.apache.tapestry artifacts (#2384)
+ * fix(java): improve identification for io.ratpack artifacts (#2379)
+ * fix(java): improve identification for org.apache.cassandra artifacts (#2386)
+ * fix(java): improve identification for org.neo4j.procedure artifacts (#2388)
+ * fix: bump fangs for ptr summarize fix (#2387)
+ * fix(java): improve identification for org.elasticsearch artifacts (#2383)
+ * fix(java): improve identification for org.apache.geode artifacts (#2382)
+ * fix(java): improve identification for org.apache.tomcat.embed artifacts (#2381)
+ * fix(java): improve identification for io.projectreactor.netty artifacts (#2378)
+ * fix(java): improve identification for org.eclipse.platform artifacts (#2349)
+ * Generalize UI events for cataloging tasks (#2369)
+ * chore(deps): update tools to latest versions (#2376)
+ * chore(deps): bump github.com/google/go-containerregistry (#2377)
+ * chore: fix tests failing due to Mac Rosetta cache (#2374)
+ * fix: improve dotnet portable executable identification (#2133)
+
+-------------------------------------------------------------------
Old:
----
syft-0.98.0.obscpio
New:
----
syft-0.99.0.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ syft.spec ++++++
--- /var/tmp/diff_new_pack.xHo7Ps/_old 2023-12-22 22:42:04.193620346 +0100
+++ /var/tmp/diff_new_pack.xHo7Ps/_new 2023-12-22 22:42:04.197620494 +0100
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: syft
-Version: 0.98.0
+Version: 0.99.0
Release: 0
Summary: CLI tool and library for generating a Software Bill of Materials
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.xHo7Ps/_old 2023-12-22 22:42:04.237621960 +0100
+++ /var/tmp/diff_new_pack.xHo7Ps/_new 2023-12-22 22:42:04.237621960 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/anchore/syft</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.98.0</param>
+ <param name="revision">v0.99.0</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.xHo7Ps/_old 2023-12-22 22:42:04.261622840 +0100
+++ /var/tmp/diff_new_pack.xHo7Ps/_new 2023-12-22 22:42:04.265622986 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/anchore/syft</param>
- <param name="changesrevision">5c8dd4c3a7632dcfd999bab7a5b73c3180f1b628</param></service></servicedata>
+ <param name="changesrevision">3cffa0b7fd276a35123c48e45407c4f402f2c58f</param></service></servicedata>
(No newline at EOF)
++++++ syft-0.98.0.obscpio -> syft-0.99.0.obscpio ++++++
/work/SRC/openSUSE:Factory/syft/syft-0.98.0.obscpio /work/SRC/openSUSE:Factory/.syft.new.28375/syft-0.99.0.obscpio differ: char 49, line 1
++++++ syft.obsinfo ++++++
--- /var/tmp/diff_new_pack.xHo7Ps/_old 2023-12-22 22:42:04.309624599 +0100
+++ /var/tmp/diff_new_pack.xHo7Ps/_new 2023-12-22 22:42:04.309624599 +0100
@@ -1,5 +1,5 @@
name: syft
-version: 0.98.0
-mtime: 1701268954
-commit: 5c8dd4c3a7632dcfd999bab7a5b73c3180f1b628
+version: 0.99.0
+mtime: 1703111669
+commit: 3cffa0b7fd276a35123c48e45407c4f402f2c58f
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/syft/vendor.tar.gz /work/SRC/openSUSE:Factory/.syft.new.28375/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libcryptopp for openSUSE:Factory checked in at 2023-12-22 22:41:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcryptopp (Old)
and /work/SRC/openSUSE:Factory/.libcryptopp.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcryptopp"
Fri Dec 22 22:41:35 2023 rev:39 rq:1134568 version:8.9.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcryptopp/libcryptopp.changes 2023-07-18 21:55:04.470611711 +0200
+++ /work/SRC/openSUSE:Factory/.libcryptopp.new.28375/libcryptopp.changes 2023-12-22 22:41:49.277073566 +0100
@@ -1,0 +2,40 @@
+Thu Dec 21 13:48:35 UTC 2023 - pgajdos(a)suse.com
+
+- version update to 8.9.0
+ * Crypto++ 8.9 was released on October 1, 2023. The 8.9 release
+ was a minor, unplanned release. There were no CVEs and one
+ memory error.
+
+ * The 8.9 release was driven by the fix for `ProcessData`, and
+ the failures when `inString==outString`. Also see GH #1231,
+ Rabbit Produces null Keystream When inString == outString.
+
+ * Release notes
+ * ===========
+
+ * minor release, recompile of programs required
+ * expanded community input and support
+ * 88 unique contributors as of this release
+ * add additional tests to datatest.cpp
+ * fix SIMON128 Asan finding on POWER8
+ * fix AES/CFB and AES/CTR modes self test failures when using
+ Cryptogams AES on ARMv7
+ * fix ARIA/CTR mode self test failures when inString==outString
+ * fix HIGHT/CTR mode self test failures when
+ inString==outString
+ * fix Rabbit/CTR mode self test failures when
+ inString==outString
+ * fix HC128/CTR and HC256/CTR mode self test failures when
+ inString==outString
+ * fix Prime Table and dangling reference to a temporary
+ * fix Singleton::Ref() when using C++11 memory fences
+ * remove unneeded call to Crop() in Randomize()
+- modified patches
+ % libcryptopp-shared.patch (refreshed)
+- modified sources
+ % baselibs.conf
+- added patches
+ fix CVE-2023-50980 [bsc#1218219], DoS via malformed DER public key file
+ + libcryptopp-CVE-2023-50980.patch
+
+-------------------------------------------------------------------
Old:
----
CRYPTOPP_8_8_0.tar.gz
New:
----
CRYPTOPP_8_9_0.tar.gz
libcryptopp-CVE-2023-50980.patch
BETA DEBUG BEGIN:
New: fix CVE-2023-50980 [bsc#1218219], DoS via malformed DER public key file
+ libcryptopp-CVE-2023-50980.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcryptopp.spec ++++++
--- /var/tmp/diff_new_pack.xKNaXC/_old 2023-12-22 22:41:50.185106852 +0100
+++ /var/tmp/diff_new_pack.xKNaXC/_new 2023-12-22 22:41:50.185106852 +0100
@@ -17,7 +17,7 @@
%define major 8
-%define minor 8
+%define minor 9
%define patch 0
%define pkg_version %{major}%{minor}%patch
# There is no upstream interface version information.
@@ -36,6 +36,8 @@
Source2: baselibs.conf
# PATCH-FEATURE-OPENSUSE libcryptopp-shared.patch -- improve shared library creation
Patch1: libcryptopp-shared.patch
+# CVE-2023-50980 [bsc#1218219], DoS via malformed DER public key file
+Patch2: libcryptopp-CVE-2023-50980.patch
BuildRequires: dos2unix
BuildRequires: gcc-c++
BuildRequires: pkgconfig
@@ -68,8 +70,7 @@
curve crypto. This package is used for crypto++ development.
%prep
-%setup -q -n "cryptopp-CRYPTOPP_%{major}_%{minor}_%patch"
-%autopatch -p1
+%autosetup -p1 -n "cryptopp-CRYPTOPP_%{major}_%{minor}_%patch"
%build
%ifarch %{arm} i586
++++++ CRYPTOPP_8_8_0.tar.gz -> CRYPTOPP_8_9_0.tar.gz ++++++
/work/SRC/openSUSE:Factory/libcryptopp/CRYPTOPP_8_8_0.tar.gz /work/SRC/openSUSE:Factory/.libcryptopp.new.28375/CRYPTOPP_8_9_0.tar.gz differ: char 13, line 1
++++++ baselibs.conf ++++++
--- /var/tmp/diff_new_pack.xKNaXC/_old 2023-12-22 22:41:50.257109491 +0100
+++ /var/tmp/diff_new_pack.xKNaXC/_new 2023-12-22 22:41:50.261109637 +0100
@@ -1,2 +1,2 @@
-libcryptopp8_8_0
+libcryptopp8_9_0
++++++ libcryptopp-CVE-2023-50980.patch ++++++
diff --git a/gf2n.cpp b/gf2n.cpp
index 452e6982..8993baae 100644
--- a/gf2n.cpp
+++ b/gf2n.cpp
@@ -135,6 +135,9 @@ PolynomialMod2 PolynomialMod2::Monomial(size_t i)
PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t t1, size_t t2)
{
+ CRYPTOPP_ASSERT(t0 > t1);
+ CRYPTOPP_ASSERT(t1 > t2);
+
PolynomialMod2 r((word)0, t0+1);
r.SetBit(t0);
r.SetBit(t1);
@@ -144,6 +147,11 @@ PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t t1, size_t t2)
PolynomialMod2 PolynomialMod2::Pentanomial(size_t t0, size_t t1, size_t t2, size_t t3, size_t t4)
{
+ CRYPTOPP_ASSERT(t0 > t1);
+ CRYPTOPP_ASSERT(t1 > t2);
+ CRYPTOPP_ASSERT(t2 > t3);
+ CRYPTOPP_ASSERT(t3 > t4);
+
PolynomialMod2 r((word)0, t0+1);
r.SetBit(t0);
r.SetBit(t1);
diff --git a/gf2n.h b/gf2n.h
index 4aef31ee..38e2a910 100644
--- a/gf2n.h
+++ b/gf2n.h
@@ -69,9 +69,11 @@ public:
static PolynomialMod2 CRYPTOPP_API Monomial(size_t i);
/// \brief Provides x^t0 + x^t1 + x^t2
/// \return x^t0 + x^t1 + x^t2
+ /// \pre The coefficients should be provided in descending order. That is, <pre>t0 > t1 > t2<pre>.
static PolynomialMod2 CRYPTOPP_API Trinomial(size_t t0, size_t t1, size_t t2);
/// \brief Provides x^t0 + x^t1 + x^t2 + x^t3 + x^t4
/// \return x^t0 + x^t1 + x^t2 + x^t3 + x^t4
+ /// \pre The coefficients should be provided in descending order. That is, <pre>t0 > t1 > t2 > t3 > t4<pre>.
static PolynomialMod2 CRYPTOPP_API Pentanomial(size_t t0, size_t t1, size_t t2, size_t t3, size_t t4);
/// \brief Provides x^(n-1) + ... + x + 1
/// \return x^(n-1) + ... + x + 1
diff --git a/gf2n.cpp b/gf2n.cpp
index 8993baae..87d9961b 100644
--- a/gf2n.cpp
+++ b/gf2n.cpp
@@ -135,9 +135,14 @@ PolynomialMod2 PolynomialMod2::Monomial(size_t i)
PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t t1, size_t t2)
{
+ // Asserts and checks due to Bing Shi
CRYPTOPP_ASSERT(t0 > t1);
CRYPTOPP_ASSERT(t1 > t2);
+ // The test is odd because of ECIES<EC2N>. The basis is t0, but the other coefficients are not in descending order.
+ if (t1 > t0 || t2 > t0)
+ throw InvalidArgument("PolynomialMod2: coefficients must be in descending order");
+
PolynomialMod2 r((word)0, t0+1);
r.SetBit(t0);
r.SetBit(t1);
@@ -147,11 +152,16 @@ PolynomialMod2 PolynomialMod2::Trinomial(size_t t0, size_t t1, size_t t2)
PolynomialMod2 PolynomialMod2::Pentanomial(size_t t0, size_t t1, size_t t2, size_t t3, size_t t4)
{
+ // Asserts and checks due to Bing Shi
CRYPTOPP_ASSERT(t0 > t1);
CRYPTOPP_ASSERT(t1 > t2);
CRYPTOPP_ASSERT(t2 > t3);
CRYPTOPP_ASSERT(t3 > t4);
+ // The test is odd because of ECIES<EC2N>. The basis is t0, but the other coefficients are not in descending order.
+ if (t1 > t0 || t2 > t0 || t3 > t0 || t4 > t0)
+ throw InvalidArgument("PolynomialMod2: coefficients must be in descending order");
+
PolynomialMod2 r((word)0, t0+1);
r.SetBit(t0);
r.SetBit(t1);
@@ -663,7 +673,12 @@ GF2NT::GF2NT(unsigned int c0, unsigned int c1, unsigned int c2)
, t0(c0), t1(c1)
, result((word)0, m)
{
+ // Asserts and checks due to Bing Shi
CRYPTOPP_ASSERT(c0 > c1 && c1 > c2 && c2==0);
+
+ // The test is odd because of ECIES<EC2N>. The basis is c0, but the other coefficients are not in descending order.
+ if (c1 > c0 || c2 > c0)
+ throw InvalidArgument("GF2NT: coefficients must be in descending order");
}
const GF2NT::Element& GF2NT::MultiplicativeInverse(const Element &a) const
@@ -972,7 +987,12 @@ GF2NP * BERDecodeGF2NP(BufferedTransformation &bt)
GF2NT233::GF2NT233(unsigned int c0, unsigned int c1, unsigned int c2)
: GF2NT(c0, c1, c2)
{
+ // Asserts and checks due to Bing Shi
CRYPTOPP_ASSERT(c0 > c1 && c1 > c2 && c2==0);
+
+ // The test is odd because of ECIES<EC2N>. The basis is c0, but the other coefficients are not in descending order.
+ if (c1 > c0 || c2 > c0)
+ throw InvalidArgument("GF2NT: coefficients must be in descending order");
}
const GF2NT::Element& GF2NT233::Multiply(const Element &a, const Element &b) const
++++++ libcryptopp-shared.patch ++++++
--- /var/tmp/diff_new_pack.xKNaXC/_old 2023-12-22 22:41:50.289110664 +0100
+++ /var/tmp/diff_new_pack.xKNaXC/_new 2023-12-22 22:41:50.293110810 +0100
@@ -1,8 +1,8 @@
-Index: b/GNUmakefile
+Index: cryptopp-CRYPTOPP_8_9_0/GNUmakefile
===================================================================
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -173,7 +173,7 @@ else
+--- cryptopp-CRYPTOPP_8_9_0.orig/GNUmakefile
++++ cryptopp-CRYPTOPP_8_9_0/GNUmakefile
+@@ -198,7 +198,7 @@ else
PC_PREFIX = $(PREFIX)
endif
ifeq ($(LIBDIR),)
@@ -11,7 +11,7 @@
PC_LIBDIR = $${prefix}/lib
else
PC_LIBDIR = $(LIBDIR)
-@@ -1128,7 +1128,7 @@ SOLIB_COMPAT_SUFFIX=.$(LIB_MAJOR)
+@@ -1151,7 +1151,7 @@ SOLIB_COMPAT_SUFFIX=.$(LIB_MAJOR)
ifneq ($(IS_LINUX)$(IS_HURD),00)
# Linux uses full version suffix for shared library
SOLIB_VERSION_SUFFIX=.$(LIB_MAJOR).$(LIB_MINOR).$(LIB_PATCH)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openQA for openSUSE:Factory checked in at 2023-12-22 22:41:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openQA (Old)
and /work/SRC/openSUSE:Factory/.openQA.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openQA"
Fri Dec 22 22:41:23 2023 rev:532 rq:1134555 version:4.6.1703176922.1f7eb61
Changes:
--------
openQA-devel-test.changes: same change
openQA-test.changes: same change
openQA-worker-test.changes: same change
--- /work/SRC/openSUSE:Factory/openQA/openQA.changes 2023-12-19 23:17:09.172418499 +0100
+++ /work/SRC/openSUSE:Factory/.openQA.new.28375/openQA.changes 2023-12-22 22:41:35.308561535 +0100
@@ -1,0 +2,15 @@
+Thu Dec 21 21:11:17 UTC 2023 - okurz(a)suse.com
+
+- Update to version 4.6.1703176922.1f7eb61:
+ * doc: Improve wording of the introduction to MM tests
+ * doc: Improve punctuation/formatting in `WritingTests.asciidoc`
+ * doc: Rewrap lines in `WritingTests.asciidoc` to 80 characters per line
+ * doc: Move "Job dependencies" out of "Writing multi-machine tests"
+ * Remove unnecessary newline
+ * Introduce --skip-checks in openqa-clone-job
+ * Add a note for `Mojo::Base` in Documentation for Tests
+ * t: Use consistent 'Mojo::Base' instead of strict+warnings
+ * Extend tests of dependency graph to better cover restarting
+ * Fix dependencies not showing up in graph under certain conditions
+
+-------------------------------------------------------------------
Old:
----
openQA-4.6.1702976108.a4cd34a.obscpio
New:
----
openQA-4.6.1703176922.1f7eb61.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openQA-client-test.spec ++++++
--- /var/tmp/diff_new_pack.Hhb30G/_old 2023-12-22 22:41:36.456603618 +0100
+++ /var/tmp/diff_new_pack.Hhb30G/_new 2023-12-22 22:41:36.456603618 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-client
Name: %{short_name}-test
-Version: 4.6.1702976108.a4cd34a
+Version: 4.6.1703176922.1f7eb61
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA-devel-test.spec ++++++
--- /var/tmp/diff_new_pack.Hhb30G/_old 2023-12-22 22:41:36.480604497 +0100
+++ /var/tmp/diff_new_pack.Hhb30G/_new 2023-12-22 22:41:36.484604644 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-devel
Name: %{short_name}-test
-Version: 4.6.1702976108.a4cd34a
+Version: 4.6.1703176922.1f7eb61
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA-test.spec ++++++
--- /var/tmp/diff_new_pack.Hhb30G/_old 2023-12-22 22:41:36.508605524 +0100
+++ /var/tmp/diff_new_pack.Hhb30G/_new 2023-12-22 22:41:36.508605524 +0100
@@ -18,7 +18,7 @@
%define short_name openQA
Name: %{short_name}-test
-Version: 4.6.1702976108.a4cd34a
+Version: 4.6.1703176922.1f7eb61
Release: 0
Summary: Test package for openQA
License: GPL-2.0-or-later
++++++ openQA-worker-test.spec ++++++
--- /var/tmp/diff_new_pack.Hhb30G/_old 2023-12-22 22:41:36.532606404 +0100
+++ /var/tmp/diff_new_pack.Hhb30G/_new 2023-12-22 22:41:36.532606404 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-worker
Name: %{short_name}-test
-Version: 4.6.1702976108.a4cd34a
+Version: 4.6.1703176922.1f7eb61
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA.spec ++++++
--- /var/tmp/diff_new_pack.Hhb30G/_old 2023-12-22 22:41:36.560607430 +0100
+++ /var/tmp/diff_new_pack.Hhb30G/_new 2023-12-22 22:41:36.564607577 +0100
@@ -78,7 +78,7 @@
%define devel_requires %devel_no_selenium_requires chromedriver
Name: openQA
-Version: 4.6.1702976108.a4cd34a
+Version: 4.6.1703176922.1f7eb61
Release: 0
Summary: The openQA web-frontend, scheduler and tools
License: GPL-2.0-or-later
++++++ openQA-4.6.1702976108.a4cd34a.obscpio -> openQA-4.6.1703176922.1f7eb61.obscpio ++++++
/work/SRC/openSUSE:Factory/openQA/openQA-4.6.1702976108.a4cd34a.obscpio /work/SRC/openSUSE:Factory/.openQA.new.28375/openQA-4.6.1703176922.1f7eb61.obscpio differ: char 50, line 1
++++++ openQA.obsinfo ++++++
--- /var/tmp/diff_new_pack.Hhb30G/_old 2023-12-22 22:41:36.644610509 +0100
+++ /var/tmp/diff_new_pack.Hhb30G/_new 2023-12-22 22:41:36.648610656 +0100
@@ -1,5 +1,5 @@
name: openQA
-version: 4.6.1702976108.a4cd34a
-mtime: 1702976108
-commit: a4cd34aa786bfe837708b59824d543390d316626
+version: 4.6.1703176922.1f7eb61
+mtime: 1703176922
+commit: 1f7eb61adf176c29f3df125fefb00d6121860a71
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package joker for openSUSE:Factory checked in at 2023-12-22 22:41:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/joker (Old)
and /work/SRC/openSUSE:Factory/.joker.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "joker"
Fri Dec 22 22:41:21 2023 rev:3 rq:1134553 version:1.3.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/joker/joker.changes 2023-11-06 21:14:04.050799032 +0100
+++ /work/SRC/openSUSE:Factory/.joker.new.28375/joker.changes 2023-12-22 22:41:32.520459335 +0100
@@ -1,0 +2,9 @@
+Thu Dec 21 20:23:55 UTC 2023 - Jochen Breuer <brejoc(a)gmail.com> - 1.3.3
+
+- Update to version 1.3.3
+ * Updated vendor archive
+ * Create a_data.go in a reproducible way (thanks @bmwiedemann !)
+ * add abs to cljs (thanks @harold !)
+ * Bump golang.org/x/crypto from 0.14.0 to 0.17.0
+
+-------------------------------------------------------------------
Old:
----
joker-1.3.1.tar.gz
New:
----
joker-1.3.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ joker.spec ++++++
--- /var/tmp/diff_new_pack.0pRJD1/_old 2023-12-22 22:41:33.244485874 +0100
+++ /var/tmp/diff_new_pack.0pRJD1/_new 2023-12-22 22:41:33.248486021 +0100
@@ -17,7 +17,7 @@
Name: joker
-Version: 1.3.1
+Version: 1.3.3
Release: 0
Summary: Small Clojure interpreter, linter and formatter written in Go
License: EPL-1.0
++++++ joker-1.3.1.tar.gz -> joker-1.3.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/joker-1.3.1/core/data/linter_clj.joke new/joker-1.3.3/core/data/linter_clj.joke
--- old/joker-1.3.1/core/data/linter_clj.joke 2023-10-30 01:46:04.000000000 +0100
+++ new/joker-1.3.3/core/data/linter_clj.joke 2023-12-21 17:24:51.000000000 +0100
@@ -303,7 +303,6 @@
([opts stream]))
(defn PrintWriter-on [flush-fn close-fn])
-(defn abs ^Number [^Number num])
(defn NaN? ^Boolean [^Number num])
(defn infinite? ^Boolean [^Number num])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/joker-1.3.1/core/data/linter_cljx.joke new/joker-1.3.3/core/data/linter_cljx.joke
--- old/joker-1.3.1/core/data/linter_cljx.joke 2023-10-30 01:46:04.000000000 +0100
+++ new/joker-1.3.3/core/data/linter_cljx.joke 2023-12-21 17:24:51.000000000 +0100
@@ -215,6 +215,7 @@
;; Clojure core functions not supported by Joker
+(defn abs ^Number [^Number num])
(defn inst-ms [inst])
(defn inst? [x])
(defn uuid? [x])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/joker-1.3.1/core/gen_code/gen_code.go new/joker-1.3.3/core/gen_code/gen_code.go
--- old/joker-1.3.1/core/gen_code/gen_code.go 2023-10-30 01:46:04.000000000 +0100
+++ new/joker-1.3.3/core/gen_code/gen_code.go 2023-12-21 17:24:51.000000000 +0100
@@ -258,6 +258,7 @@
"%s",`[1:],
ns))
}
+ sort.Strings(coreNamespaces)
dataContent := strings.Replace(dataTemplate, "{coreNamespaces}", strings.Join(coreNamespaces, "\n"), 1)
ioutil.WriteFile("a_data.go", []byte(dataContent), 0666)
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/joker-1.3.1/core/procs.go new/joker-1.3.3/core/procs.go
--- old/joker-1.3.1/core/procs.go 2023-10-30 01:46:04.000000000 +0100
+++ new/joker-1.3.3/core/procs.go 2023-12-21 17:24:51.000000000 +0100
@@ -38,7 +38,7 @@
PRINT_IF_NOT_NIL
)
-const VERSION = "v1.3.1"
+const VERSION = "v1.3.3"
const (
CLJ Dialect = iota
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/joker-1.3.1/go.mod new/joker-1.3.3/go.mod
--- old/joker-1.3.1/go.mod 2023-10-30 01:46:04.000000000 +0100
+++ new/joker-1.3.3/go.mod 2023-12-21 17:24:51.000000000 +0100
@@ -29,10 +29,10 @@
github.com/sergi/go-diff v1.1.0 // indirect
github.com/skeema/knownhosts v1.2.0 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
- golang.org/x/crypto v0.14.0 // indirect
+ golang.org/x/crypto v0.17.0 // indirect
golang.org/x/mod v0.8.0 // indirect
golang.org/x/net v0.17.0 // indirect
- golang.org/x/sys v0.13.0 // indirect
+ golang.org/x/sys v0.15.0 // indirect
golang.org/x/tools v0.6.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/joker-1.3.1/go.sum new/joker-1.3.3/go.sum
--- old/joker-1.3.1/go.sum 2023-10-30 01:46:04.000000000 +0100
+++ new/joker-1.3.3/go.sum 2023-12-21 17:24:51.000000000 +0100
@@ -79,8 +79,8 @@
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
-golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc=
-golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
+golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
+golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
@@ -110,14 +110,14 @@
golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
-golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
+golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
-golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
+golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
@@ -125,7 +125,7 @@
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k=
+golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
++++++ vendor.tar.gz ++++++
++++ 6555 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package MozillaFirefox for openSUSE:Factory checked in at 2023-12-22 22:41:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/MozillaFirefox (Old)
and /work/SRC/openSUSE:Factory/.MozillaFirefox.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "MozillaFirefox"
Fri Dec 22 22:41:04 2023 rev:415 rq:1134603 version:121.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/MozillaFirefox/MozillaFirefox.changes 2023-12-09 22:49:58.832424365 +0100
+++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.28375/MozillaFirefox.changes 2023-12-22 22:41:10.947668916 +0100
@@ -1,0 +2,50 @@
+Wed Dec 20 12:59:57 UTC 2023 - Wolfgang Rosenauer <wr(a)rosenauer.org>
+
+- Mozilla Firefox 121.0
+ https://www.mozilla.org/en-US/firefox/121.0/releasenotes
+ MFSA 2023-56 (bsc#1217974)
+ * CVE-2023-6856 (bmo#1843782)
+ Heap-buffer-overflow affecting WebGL DrawElementsInstanced
+ method with Mesa VM driver
+ * CVE-2023-6135 (bmo#1853908)
+ NSS susceptible to "Minerva" attack
+ * CVE-2023-6865 (bmo#1864123)
+ Potential exposure of uninitialized data in EncryptingOutputStream
+ * CVE-2023-6857 (bmo#1796023)
+ Symlinks may resolve to smaller than expected buffers
+ * CVE-2023-6858 (bmo#1826791)
+ Heap buffer overflow in nsTextFragment
+ * CVE-2023-6859 (bmo#1840144)
+ Use-after-free in PR_GetIdentitiesLayer
+ * CVE-2023-6866 (bmo#1849037)
+ TypedArrays lack sufficient exception handling
+ * CVE-2023-6860 (bmo#1854669)
+ Potential sandbox escape due to VideoBridge lack of texture
+ validation
+ * CVE-2023-6867 (bmo#1863863)
+ Clickjacking permission prompts using the popup transition
+ * CVE-2023-6861 (bmo#1864118)
+ Heap buffer overflow affected nsWindow::PickerOpen(void) in
+ headless mode
+ * CVE-2023-6868 (bmo#1865488)
+ WebPush requests on Firefox for Android did not require VAPID key
+ * CVE-2023-6869 (bmo#1799036)
+ Content can paint outside of sandboxed iframe
+ * CVE-2023-6870 (bmo#1823316)
+ Android Toast notifications may obscure fullscreen event
+ notifications
+ * CVE-2023-6871 (bmo#1828334)
+ Lack of protocol handler warning in some instances
+ * CVE-2023-6872 (bmo#1849186)
+ Browsing history leaked to syslogs via GNOME
+ * CVE-2023-6863 (bmo#1868901)
+ Undefined behavior in ShutdownObserver()
+ * CVE-2023-6864 (bmo#1736385, bmo#1810805, bmo#1846328, bmo#1856090,
+ bmo#1858033, bmo#1858509, bmo#1862777, bmo#1864015)
+ Memory safety bugs fixed in Firefox 121, Firefox ESR 115.6,
+ and Thunderbird 115.6
+ * CVE-2023-6873 (bmo#1855327, bmo#1862089, bmo#1862723)
+ Memory safety bugs fixed in Firefox 121
+- requires NSS 3.95
+
+-------------------------------------------------------------------
Old:
----
firefox-120.0.1.source.tar.xz
firefox-120.0.1.source.tar.xz.asc
l10n-120.0.1.tar.xz
New:
----
firefox-121.0.source.tar.xz
firefox-121.0.source.tar.xz.asc
l10n-121.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MozillaFirefox.spec ++++++
--- /var/tmp/diff_new_pack.GODS7l/_old 2023-12-22 22:41:28.320305373 +0100
+++ /var/tmp/diff_new_pack.GODS7l/_new 2023-12-22 22:41:28.320305373 +0100
@@ -28,9 +28,9 @@
# orig_suffix b3
# major 69
# mainver %%major.99
-%define major 120
-%define mainver %major.0.1
-%define orig_version 120.0.1
+%define major 121
+%define mainver %major.0
+%define orig_version 121.0
%define orig_suffix %{nil}
%define update_channel release
%define branding 1
@@ -114,7 +114,7 @@
BuildRequires: libproxy-devel
BuildRequires: makeinfo
BuildRequires: mozilla-nspr-devel >= 4.35
-BuildRequires: mozilla-nss-devel >= 3.94
+BuildRequires: mozilla-nss-devel >= 3.95
BuildRequires: nasm >= 2.14
BuildRequires: nodejs >= 12.22.12
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
++++++ firefox-120.0.1.source.tar.xz -> firefox-121.0.source.tar.xz ++++++
/work/SRC/openSUSE:Factory/MozillaFirefox/firefox-120.0.1.source.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.28375/firefox-121.0.source.tar.xz differ: char 15, line 1
++++++ l10n-120.0.1.tar.xz -> l10n-121.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/MozillaFirefox/l10n-120.0.1.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.28375/l10n-121.0.tar.xz differ: char 26, line 1
++++++ mozilla-kde.patch ++++++
++++ 888 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/MozillaFirefox/mozilla-kde.patch
++++ and /work/SRC/openSUSE:Factory/.MozillaFirefox.new.28375/mozilla-kde.patch
++++++ tar_stamps ++++++
--- /var/tmp/diff_new_pack.GODS7l/_old 2023-12-22 22:41:28.720320036 +0100
+++ /var/tmp/diff_new_pack.GODS7l/_new 2023-12-22 22:41:28.724320183 +0100
@@ -1,11 +1,11 @@
PRODUCT="firefox"
CHANNEL="release"
-VERSION="120.0.1"
+VERSION="121.0"
VERSION_SUFFIX=""
-PREV_VERSION="120.0"
+PREV_VERSION="120.0.1"
PREV_VERSION_SUFFIX=""
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
-RELEASE_TAG="d80eefe94738ab6bd35cca64747d877c49337318"
-RELEASE_TIMESTAMP="20231129155202"
+RELEASE_TAG="8b7f7fd1873f56a4d755ea1fdcf46cbb18f9af27"
+RELEASE_TIMESTAMP="20231211174248"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package disk-encryption-tool for openSUSE:Factory checked in at 2023-12-22 22:40:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/disk-encryption-tool (Old)
and /work/SRC/openSUSE:Factory/.disk-encryption-tool.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "disk-encryption-tool"
Fri Dec 22 22:40:49 2023 rev:3 rq:1134500 version:1+git20231221.d2e7fe6
Changes:
--------
--- /work/SRC/openSUSE:Factory/disk-encryption-tool/disk-encryption-tool.changes 2023-12-15 21:47:31.570691649 +0100
+++ /work/SRC/openSUSE:Factory/.disk-encryption-tool.new.28375/disk-encryption-tool.changes 2023-12-22 22:40:59.819260565 +0100
@@ -1,0 +2,14 @@
+Thu Dec 21 15:28:58 UTC 2023 - lnussel(a)suse.com
+
+- Update to version 1+git20231221.d2e7fe6:
+ * Fix setting separate crypt password
+
+-------------------------------------------------------------------
+Wed Dec 20 17:20:08 UTC 2023 - lnussel(a)suse.com
+
+- Update to version 1+git20231220.6a5fb7f:
+ * refactor luks detection
+ * Tweak combustion deps
+ * Fix combustion support (boo#1218131)
+
+-------------------------------------------------------------------
Old:
----
disk-encryption-tool-1+git20231214.1708e01.obscpio
New:
----
disk-encryption-tool-1+git20231221.d2e7fe6.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ disk-encryption-tool.spec ++++++
--- /var/tmp/diff_new_pack.0phF6A/_old 2023-12-22 22:41:00.951302216 +0100
+++ /var/tmp/diff_new_pack.0phF6A/_new 2023-12-22 22:41:00.951302216 +0100
@@ -28,7 +28,7 @@
%endif
Name: disk-encryption-tool
-Version: 1+git20231214.1708e01%{git_version}
+Version: 1+git20231221.d2e7fe6%{git_version}
Release: 0
Summary: Tool to reencrypt kiwi raw images
License: MIT
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.0phF6A/_old 2023-12-22 22:41:00.999303982 +0100
+++ /var/tmp/diff_new_pack.0phF6A/_new 2023-12-22 22:41:01.003304129 +0100
@@ -3,6 +3,6 @@
<param name="url">https://github.com/lnussel/disk-encryption-tool.git</param>
<param name="changesrevision">702dff62d37b74244b58b41f78b41cd2befe581b</param></service><service name="tar_scm">
<param name="url">https://github.com/openSUSE/disk-encryption-tool.git</param>
- <param name="changesrevision">1708e014184aba1d69c3294a990594a35abbe71c</param></service></servicedata>
+ <param name="changesrevision">d2e7fe6e0781b71a19f35ca4fd27bca559c31fd7</param></service></servicedata>
(No newline at EOF)
++++++ disk-encryption-tool-1+git20231214.1708e01.obscpio -> disk-encryption-tool-1+git20231221.d2e7fe6.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disk-encryption-tool-1+git20231214.1708e01/README.md new/disk-encryption-tool-1+git20231221.d2e7fe6/README.md
--- old/disk-encryption-tool-1+git20231214.1708e01/README.md 2023-12-14 11:04:59.000000000 +0100
+++ new/disk-encryption-tool-1+git20231221.d2e7fe6/README.md 2023-12-21 16:03:00.000000000 +0100
@@ -39,9 +39,9 @@
script would have to look like this:
#!/bin/bash
- # combustion: encrypt
- if [ "$1" = "--encrypt" ]; then
- echo 12345 | disk-encryption-tool -v --gen-key
+ # combustion: prepare
+ if [ "$1" = "--prepare" ]; then
+ echo 12345 | disk-encryption-tool -v
else
echo root:12345 | chpasswd
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disk-encryption-tool-1+git20231214.1708e01/disk-encryption-tool new/disk-encryption-tool-1+git20231221.d2e7fe6/disk-encryption-tool
--- old/disk-encryption-tool-1+git20231214.1708e01/disk-encryption-tool 2023-12-14 11:04:59.000000000 +0100
+++ new/disk-encryption-tool-1+git20231221.d2e7fe6/disk-encryption-tool 2023-12-21 16:03:00.000000000 +0100
@@ -184,7 +184,7 @@
kv="${kv##*/}"
initrd="${initrd#"$mp"}"
log_info "create $initrd for $kv"
- chroot "$mp" dracut --add qemu --add-drivers "dm_crypt nls_iso8859-1 nls_cp437" -q --reproducible -f "$initrd" "$kv" "$@"
+ hostonly_l=no chroot "$mp" dracut -q --reproducible -f "$initrd" "$kv" "$@"
done
else
err "Unsupported boot loader or fs layout"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disk-encryption-tool-1+git20231214.1708e01/disk-encryption-tool-dracut new/disk-encryption-tool-1+git20231221.d2e7fe6/disk-encryption-tool-dracut
--- old/disk-encryption-tool-1+git20231214.1708e01/disk-encryption-tool-dracut 2023-12-14 11:04:59.000000000 +0100
+++ new/disk-encryption-tool-1+git20231221.d2e7fe6/disk-encryption-tool-dracut 2023-12-21 16:03:00.000000000 +0100
@@ -1,19 +1,23 @@
#!/bin/sh
+
exec < /dev/console >/dev/console 2>&1
type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
-script=/run/combustion/mount/combustion/script
-if [ -e "$script" ] && grep -qE '^# combustion:(.*)\<encrypt\>' "$script"; then
- systemctl start sysroot.mount
- # silence systemd
- kill -SIGRTMIN+21 1
- chmod a+x "$script"
- "$script" --encrypt
-elif getargbool 0 rd.encrypt || [ ! -e /sysroot/etc/machine-id ]; then
- systemctl start sysroot.mount
- # silence systemd
- kill -SIGRTMIN+21 1
- echo -ne '\a'
- read -n1 -s -r -t 5 -p "Press ESC to prevent encrypting the disk" inhibitor
- echo
- [ "$inhibitor" = $'\e' ] || /usr/bin/disk-encryption-tool -v --gen-key || die "Encryption failed"
+
+# XXX: this is so dirty
+systemctl start sysroot.mount
+mount --target-prefix /sysroot --fstab /sysroot/etc/fstab /var
+if [ ! -e /sysroot/var/lib/YaST2/reconfig_system ]; then
+ echo "system already configured, no encryption"
+ umount /sysroot/var
+ exit 0
+fi
+umount /sysroot/var
+
+# silence systemd
+kill -SIGRTMIN+21 1
+echo -ne '\n\n\a'
+read -n1 -s -r -t 10 -p "*** Press ESC to prevent encrypting the disk" inhibitor
+echo
+if [ "$inhibitor" != $'\e' ]; then
+ /usr/bin/disk-encryption-tool -v --gen-key || die "Encryption failed"
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disk-encryption-tool-1+git20231214.1708e01/disk-encryption-tool-dracut.service new/disk-encryption-tool-1+git20231221.d2e7fe6/disk-encryption-tool-dracut.service
--- old/disk-encryption-tool-1+git20231214.1708e01/disk-encryption-tool-dracut.service 2023-12-14 11:04:59.000000000 +0100
+++ new/disk-encryption-tool-1+git20231221.d2e7fe6/disk-encryption-tool-dracut.service 2023-12-21 16:03:00.000000000 +0100
@@ -7,12 +7,7 @@
Requires=initrd-root-device.target
After=initrd-root-device.target
-# we want to run after combustion copied the config but before combustion
-# itself runs
-Requires=combustion.service
-After=firstboot-detect.service
-After=combustion-prepare.service
-Before=combustion.service
+After=combustion.service
# After ignition completed its stuff
After=ignition-complete.target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disk-encryption-tool-1+git20231214.1708e01/jeos-firstboot-diskencrypt new/disk-encryption-tool-1+git20231221.d2e7fe6/jeos-firstboot-diskencrypt
--- old/disk-encryption-tool-1+git20231214.1708e01/jeos-firstboot-diskencrypt 2023-12-14 11:04:59.000000000 +0100
+++ new/disk-encryption-tool-1+git20231221.d2e7fe6/jeos-firstboot-diskencrypt 2023-12-21 16:03:00.000000000 +0100
@@ -59,7 +59,7 @@
local dev
for dev in "${crypt_devs[@]}"; do
echo "adding password to $dev"
- echo -n "$password" | run cryptsetup luksAddKey --verbose --batch-mode --force-password --key-file <(keyctl pipe "$crypt_keyid") "$dev"
+ echo -n "$crypt_pw" | run cryptsetup luksAddKey --verbose --batch-mode --force-password --key-file <(keyctl pipe "$crypt_keyid") "$dev"
done
fi
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/disk-encryption-tool-1+git20231214.1708e01/jeos-firstboot-enroll new/disk-encryption-tool-1+git20231221.d2e7fe6/jeos-firstboot-enroll
--- old/disk-encryption-tool-1+git20231214.1708e01/jeos-firstboot-enroll 2023-12-14 11:04:59.000000000 +0100
+++ new/disk-encryption-tool-1+git20231221.d2e7fe6/jeos-firstboot-enroll 2023-12-21 16:03:00.000000000 +0100
@@ -1,17 +1,34 @@
#!/bin/bash
-crypt_keyid=""
with_fido2=
with_tpm2=
+declare -a luks2_devices
+
# After the enrolling, other tools can find this list in the LUKS
# header
pcrs="0,2,4,7,9"
+have_luks2()
+{
+ [ "${#luks2_devices[@]}" -gt 0 ]
+}
+
+detect_luks2()
+{
+ local dev fstype
+ [ -z "$luks2_devices" ] || return 0
+ while read -r dev fstype; do
+ [ "$fstype" = 'crypto_LUKS' ] || continue
+ cryptsetup isLuks --type luks2 "$dev" || continue
+ luks2_devices+=("$dev")
+ done < <(lsblk --noheadings -o PATH,FSTYPE)
+ have_luks2
+}
+
enroll_systemd_firstboot() {
- crypt_keyid="$(keyctl id %user:cryptenroll)"
- [ -n "$crypt_keyid" ] || return 0
[ -e /usr/bin/systemd-cryptenroll ] || return 0
+ detect_luks2 || return 0
local has_fido2=${JEOS_HAS_FIDO2:-}
local has_tpm2=
@@ -100,22 +117,16 @@
}
enroll_post() {
- [ -n "$crypt_keyid" ] || return 0
[ -e /usr/bin/systemd-cryptenroll ] || return 0
+ detect_luks2 || return 0
local dev
local fstype
- if [ -z "$crypt_devs" ]; then
- while read -r dev fstype; do
- [ "$fstype" = 'crypto_LUKS' ] || continue
- crypt_devs+=("$dev")
- done < <(lsblk --noheadings -o PATH,FSTYPE)
- fi
crypttab_options="x-initrd.attach"
if [ "$with_fido2" = '1' ]; then
- for dev in "${crypt_devs[@]}"; do
+ for dev in "${luks2_devices[@]}"; do
enroll_fido2 "$dev"
done
crypttab_options+=",fido2-device=auto"
@@ -124,7 +135,7 @@
if [ "$with_tpm2" = '1' ]; then
generate_key
- for dev in "${crypt_devs[@]}"; do
+ for dev in "${luks2_devices[@]}"; do
enroll_tpm2 "$dev"
done
crypttab_options+=",tpm2-device=auto"
++++++ disk-encryption-tool.obsinfo ++++++
--- /var/tmp/diff_new_pack.0phF6A/_old 2023-12-22 22:41:01.135308986 +0100
+++ /var/tmp/diff_new_pack.0phF6A/_new 2023-12-22 22:41:01.139309134 +0100
@@ -1,5 +1,5 @@
name: disk-encryption-tool
-version: 1+git20231214.1708e01
-mtime: 1702548299
-commit: 1708e014184aba1d69c3294a990594a35abbe71c
+version: 1+git20231221.d2e7fe6
+mtime: 1703170980
+commit: d2e7fe6e0781b71a19f35ca4fd27bca559c31fd7
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package traceroute for openSUSE:Factory checked in at 2023-12-22 22:40:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/traceroute (Old)
and /work/SRC/openSUSE:Factory/.traceroute.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "traceroute"
Fri Dec 22 22:40:47 2023 rev:11 rq:1134468 version:2.1.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/traceroute/traceroute.changes 2023-11-13 22:15:58.420684251 +0100
+++ /work/SRC/openSUSE:Factory/.traceroute.new.28375/traceroute.changes 2023-12-22 22:40:53.663034060 +0100
@@ -1,0 +2,12 @@
+Tue Dec 19 18:58:12 UTC 2023 - Andreas Stieger <andreas.stieger(a)gmx.de>
+
+- update to 2.1.5:
+ * Parse interface information (rfc5837) for ICMP extensions
+ * Add `fastopen' tcp module option (cookie negotiation only)
+ * Complete tcp module option `mss' to discover possible mss
+ clamping along the path being traced.
+ * Complete tcp module option `info' to print returned tcp header
+ options too (all those that can be set or altered by `-O' for
+ tcp module).
+
+-------------------------------------------------------------------
Old:
----
traceroute-2.1.3.tar.gz
New:
----
traceroute-2.1.5.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ traceroute.spec ++++++
--- /var/tmp/diff_new_pack.GUVqji/_old 2023-12-22 22:40:56.191127075 +0100
+++ /var/tmp/diff_new_pack.GUVqji/_new 2023-12-22 22:40:56.207127665 +0100
@@ -17,7 +17,7 @@
Name: traceroute
-Version: 2.1.3
+Version: 2.1.5
Release: 0
Summary: Packet route path tracing utility
License: GPL-2.0-or-later
@@ -27,9 +27,9 @@
Patch0: traceroute-autotools.patch
Patch1: traceroute-secure_getenv.patch
BuildRequires: automake
-Provides: net-tools:%{_sbindir}/%{name}
-Provides: tcptraceroute
+Provides: tcptraceroute = %{version}
Obsoletes: tcptraceroute <= 1.5.beta7
+Provides: net-tools:%{_sbindir}/%{name}
%description
Traceroute tracks the route packets taken from an IP network on their way to a given host.
++++++ traceroute-2.1.3.tar.gz -> traceroute-2.1.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/CREDITS new/traceroute-2.1.5/CREDITS
--- old/traceroute-2.1.3/CREDITS 2023-02-13 18:51:01.000000000 +0100
+++ new/traceroute-2.1.5/CREDITS 2023-12-13 21:10:36.000000000 +0100
@@ -22,6 +22,7 @@
Sergey Salnikov (serg(a)salnikov.ru)
Richard Sheehan (richardsheehan(a)users.sourceforge.net)
Eric Dumazet (edumazet(a)google.com)
+Francois Rigault <francois.rigault(a)amadeus.com>
...
maybe you too? ;)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/ChangeLog new/traceroute-2.1.5/ChangeLog
--- old/traceroute-2.1.3/ChangeLog 2023-08-30 00:47:05.000000000 +0200
+++ new/traceroute-2.1.5/ChangeLog 2023-12-18 00:38:42.000000000 +0100
@@ -1,12 +1,43 @@
+2023-12-18 Dmitry Butskoy <Dmitry(a)Butskoy.name> - 2.1.5
+
+ * Fix rfc5837 parsing (Francois Rigault)
+
+
+2023-12-13 Dmitry Butskoy <Dmitry(a)Butskoy.name> - 2.1.4
+
+ * Parse interface information (rfc5837) for ICMP extensions
+
+ * Add `fastopen' tcp module option (cookie negotiation only)
+
+ * Complete tcp module option `mss' to discover possible mss clamping
+ along the path being traced (idea and testing from Francois Rigault).
+ The argument is optional now.
+
+ Changed mss is printed once in a form of `M=NUM' at the first probe
+ it was detected on. (Actually, the mss clamping performed by
+ some previous hop).
+
+ Note, some routers may return too short original fragment
+ in the time exceeded message, making the check impossible.
+ Besides that the responses may come in a different order.
+ All this can lead to a later place of the report
+ (using -N 1 can help for the order).
+
+ * Complete tcp module option `info' to print returned tcp header options too
+ (all those that can be set or altered by `-O' for tcp module).
+
+
2023-08-30 Dmitry Butskoy <Dmitry(a)Butskoy.name> - 2.1.3
* Fix command line parsing in wrappers.
+
2023-02-13 Dmitry Butskoy <Dmitry(a)Butskoy.name> - 2.1.2
* Fix unprivileged ICMP tracerouting with Linux kernel >= 6.1
(Eric Dumazet, SF bug #14)
+
2022-12-27 Dmitry Butskoy <Dmitry(a)Butskoy.name> - 2.1.1
* Interpret ipv4-mapped ipv6 addresses (::ffff:A.B.C.D) as true ipv4.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/Make.rules new/traceroute-2.1.5/Make.rules
--- old/traceroute-2.1.3/Make.rules 2016-02-20 21:39:46.000000000 +0100
+++ new/traceroute-2.1.5/Make.rules 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
#
# Copyright (c) 2000, 2001, 2007 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/Makefile new/traceroute-2.1.5/Makefile
--- old/traceroute-2.1.3/Makefile 2013-08-22 15:27:51.000000000 +0200
+++ new/traceroute-2.1.5/Makefile 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
#
# Copyright (c) 2000, 2001 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/VERSION new/traceroute-2.1.5/VERSION
--- old/traceroute-2.1.3/VERSION 2023-08-30 00:41:38.000000000 +0200
+++ new/traceroute-2.1.5/VERSION 2023-12-16 01:40:22.000000000 +0100
@@ -1 +1 @@
-#define VERSION 2.1.3
+#define VERSION 2.1.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/chvers.sh new/traceroute-2.1.5/chvers.sh
--- old/traceroute-2.1.3/chvers.sh 2013-12-07 17:32:30.000000000 +0100
+++ new/traceroute-2.1.5/chvers.sh 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2000, 2001 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/default.rules new/traceroute-2.1.5/default.rules
--- old/traceroute-2.1.3/default.rules 2013-09-09 16:20:06.000000000 +0200
+++ new/traceroute-2.1.5/default.rules 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
#
# Copyright (c) 2000, 2001, 2007 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/include/version.h new/traceroute-2.1.5/include/version.h
--- old/traceroute-2.1.3/include/version.h 2013-09-28 16:22:44.000000000 +0200
+++ new/traceroute-2.1.5/include/version.h 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/libsupp/clif.c new/traceroute-2.1.5/libsupp/clif.c
--- old/traceroute-2.1.3/libsupp/clif.c 2016-02-14 23:31:26.000000000 +0100
+++ new/traceroute-2.1.5/libsupp/clif.c 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2000, 2003 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: LGPL v2.1 or any later
See COPYING.LIB for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/libsupp/clif.h new/traceroute-2.1.5/libsupp/clif.h
--- old/traceroute-2.1.3/libsupp/clif.h 2013-08-06 17:20:33.000000000 +0200
+++ new/traceroute-2.1.5/libsupp/clif.h 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2000, 2003 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: LGPL v2.1 or any later
See COPYING.LIB for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/store.sh new/traceroute-2.1.5/store.sh
--- old/traceroute-2.1.3/store.sh 2013-08-25 16:46:40.000000000 +0200
+++ new/traceroute-2.1.5/store.sh 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2000, 2001 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/as_lookups.c new/traceroute-2.1.5/traceroute/as_lookups.c
--- old/traceroute-2.1.3/traceroute/as_lookups.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/as_lookups.c 2023-12-09 03:50:31.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/csum.c new/traceroute-2.1.5/traceroute/csum.c
--- old/traceroute-2.1.3/traceroute/csum.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/csum.c 2023-12-09 03:50:31.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/extension.c new/traceroute-2.1.5/traceroute/extension.c
--- old/traceroute-2.1.3/traceroute/extension.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/extension.c 2023-12-18 00:35:04.000000000 +0100
@@ -2,6 +2,7 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <ctype.h>
#include "traceroute.h"
@@ -26,8 +27,11 @@
uint8_t data[0];
};
-#define MPLS_CLASS 1
-#define MPLS_C_TYPE 1
+#define MPLS_CLASS 1
+#define MPLS_C_TYPE 1
+
+#define IFACE_INFO_CLASS 2
+#define IFACE_INFO_NAME_LEN 64
#define do_snprintf(CURR, END, FMT, ARGS...) \
@@ -37,6 +41,101 @@
} while (0)
+/* rfc 5837 stuff */
+
+static int print_iface_info (struct icmp_ext_object *obj, char *buf, size_t length) {
+ uint32_t *ui;
+ char tmp[128]; /* enough: 4 + (4 + 16) + 64 + 4 = 92 */
+ size_t data_len;
+ char *curr = buf, *end = buf + length;
+ char *start;
+ const char *roles[] = { "INC", "SUB", "OUT", "NXT" };
+
+
+ /* Copy data into temporary array of enough length
+ to avoid boundary checks on each step.
+ */
+ data_len = ntohs (obj->length) - sizeof (*obj);
+ if (data_len > sizeof (tmp)) return 0;
+
+ memset (tmp, 0, sizeof (tmp));
+ memcpy (tmp, obj->data, data_len);
+
+ ui = (uint32_t *) tmp;
+
+
+ do_snprintf (curr, end, "%s:", roles[(obj->c_type >> 6) & 0x03]);
+ start = curr;
+
+ if (obj->c_type & 0x08) /* index */
+ do_snprintf (curr, end, "%u", ntohl (*ui++));
+
+ if (obj->c_type & 0x04) { /* IP address */
+ sockaddr_any addr;
+ void *ptr;
+ size_t len;
+ uint16_t afi = ntohl (*ui++) >> 16;
+
+ memset (&addr, 0, sizeof (addr));
+
+ if (afi == 1) { /* ipv4 */
+ addr.sa.sa_family = AF_INET;
+ ptr = &addr.sin.sin_addr;
+ len = sizeof (addr.sin.sin_addr);
+ }
+ else if (afi == 2) { /* ipv6 */
+ addr.sa.sa_family = AF_INET6;
+ ptr = &addr.sin6.sin6_addr;
+ len = sizeof (addr.sin6.sin6_addr);
+ } else
+ return 0;
+
+ memcpy (ptr, ui, len);
+ ui += len / sizeof (*ui);
+
+ do_snprintf (curr, end, "%s%s", (curr > start) ? "," : "", addr2str (&addr));
+ }
+
+ if (obj->c_type & 0x02) { /* name */
+ uint8_t *name = (uint8_t *) ui;
+ uint8_t len = *name;
+ char str[IFACE_INFO_NAME_LEN * 4]; /* enough... */
+ char *p = str;
+ static char hex[16] = { '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F' };
+ int i;
+
+ if (!len || (len % sizeof (uint32_t)) || len > IFACE_INFO_NAME_LEN)
+ return 0;
+
+ for (i = 1; i < len; i++) { /* name[0] is length */
+ int ch = name[i];
+
+ if (!ch) break;
+ else if (!isascii (ch) || !isgraph (ch) || ch == '%' || ch == '"') {
+ *p++ = '%';
+ *p++ = hex[(ch >> 4) & 0x0f];
+ *p++ = hex[ch & 0x0f];
+ } else
+ *p++ = ch;
+ }
+ *p++ = '\0';
+
+ do_snprintf (curr, end, "%s\"%s\"", (curr > start) ? "," : "", str);
+
+ ui += len / sizeof (*ui);
+ }
+
+ if (obj->c_type & 0x01) /* mtu */
+ do_snprintf (curr, end, "%smtu=%u", (curr > start) ? "," : "", ntohl (*ui++));
+
+
+ if (ui > (uint32_t *) (tmp + data_len))
+ return 0;
+
+ return (curr - buf);
+}
+
+
static int try_extension (probe *pb, char *buf, size_t len) {
struct icmp_ext_header *iext = (struct icmp_ext_header *) buf;
char str[1024];
@@ -80,7 +179,7 @@
if (obj->class == MPLS_CLASS &&
obj->c_type == MPLS_C_TYPE &&
n >= 1
- ) { /* people prefer MPLS to be parsed... */
+ ) { /* people prefer MPLS (rfc4950) to be parsed... */
do_snprintf (curr, end, "MPLS:");
@@ -96,6 +195,12 @@
}
}
+ else if (obj->class == IFACE_INFO_CLASS &&
+ (i = print_iface_info (obj, curr, end - curr)) > 0
+ ) {
+ curr += i; /* successfully parsed */
+
+ }
else { /* common case... */
do_snprintf (curr, end, "%u/%u:", obj->class, obj->c_type);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/mod-icmp.c new/traceroute-2.1.5/traceroute/mod-icmp.c
--- old/traceroute-2.1.3/traceroute/mod-icmp.c 2016-03-07 01:51:54.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/mod-icmp.c 2023-12-09 03:50:31.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/mod-raw.c new/traceroute-2.1.5/traceroute/mod-raw.c
--- old/traceroute-2.1.3/traceroute/mod-raw.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/mod-raw.c 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/mod-tcp.c new/traceroute-2.1.5/traceroute/mod-tcp.c
--- old/traceroute-2.1.3/traceroute/mod-tcp.c 2016-02-18 21:33:46.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/mod-tcp.c 2023-12-13 05:05:57.000000000 +0100
@@ -1,11 +1,12 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
*/
+#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
@@ -26,6 +27,11 @@
#define IP_MTU 14
#endif
+#ifndef TCPOPT_FASTOPEN
+#define TCPOPT_FASTOPEN 34
+#define TCPOLEN_FASTOPEN_BASE 2
+#endif
+
static sockaddr_any dest_addr = {{ 0, }, };
static unsigned int dest_port = 0;
@@ -51,8 +57,10 @@
static int flags = 0; /* & 0xff == tcp_flags ... */
static int sysctl = 0;
static int reuse = 0;
-static unsigned int mss = 0;
+static int mss = -1;
+static int check_mss = 0;
static int info = 0;
+static int fastopen = 0;
#define FL_FLAGS 0x0100
#define FL_ECN 0x0200
@@ -75,14 +83,24 @@
{ "cwr", TH_CWR },
};
-static char *names_by_flags (unsigned int flags) {
+
+static char *print_tcp_info (struct tcphdr *tcp, size_t len) {
int i;
- char str[64]; /* enough... */
+ char str[128]; /* enough... */
char *curr = str;
- char *end = str + sizeof (str) / sizeof (*str);
+ char *end = str + (sizeof (str) / sizeof (*str) - 1);
+ const char *p;
+ unsigned int flags;
+ uint8_t *ptr;
+
+ if (len < sizeof (struct tcphdr) ||
+ len != tcp->doff << 2
+ ) return NULL;
+
+
+ flags = TH_FLAGS(tcp);
for (i = 0; i < sizeof (tcp_flags) / sizeof (*tcp_flags); i++) {
- const char *p;
if (!(flags & tcp_flags[i].flag)) continue;
@@ -90,11 +108,48 @@
for (p = tcp_flags[i].name; *p && curr < end; *curr++ = *p++) ;
}
+
+ ptr = (uint8_t *) (tcp + 1);
+ len -= sizeof (struct tcphdr);
+
+ while (len > 1) {
+ int op = *ptr, oplen = ptr[1];
+ char buf[16];
+ const char *name = NULL;
+
+ switch (op) {
+ case TCPOPT_EOL: len = 0; continue; /* no more... */
+ case TCPOPT_NOP: oplen = 1; break;
+ case TCPOPT_MAXSEG:
+ if (oplen == TCPOLEN_MAXSEG && oplen <= len) {
+ uint16_t rcv_mss = ntohs (*((uint16_t *) (ptr + 2)));
+ snprintf (buf, sizeof (buf), "mss=%u", rcv_mss);
+ name = buf;
+ }
+ break;
+ case TCPOPT_SACK_PERMITTED: if (oplen == TCPOLEN_SACK_PERMITTED) name = "sack"; break;
+ case TCPOPT_TIMESTAMP: if (oplen == TCPOLEN_TIMESTAMP) name = "timestamps"; break;
+ case TCPOPT_WINDOW: if (oplen == TCPOLEN_WINDOW) name = "window_scaling"; break;
+ case TCPOPT_FASTOPEN: if (oplen >= TCPOLEN_FASTOPEN_BASE) name = "fastopen"; break;
+ }
+
+ if (name) {
+ if (curr > str && curr < end) *curr++ = ',';
+ for (p = name; *p && curr < end; *curr++ = *p++) ;
+ }
+
+ if (len < oplen) break;
+ len -= oplen;
+ ptr += oplen;
+ }
+
+
*curr = '\0';
return strdup (str);
}
+
static int set_tcp_flag (CLIF_option *optn, char *arg) {
int i;
@@ -126,6 +181,16 @@
return 0;
}
+static int set_mss (CLIF_option *optn, char *arg) {
+
+ check_mss = 1;
+
+ if (arg)
+ return CLIF_set_uint (optn, arg);
+
+ return 0;
+}
+
static CLIF_option tcp_options[] = {
{ 0, "syn", 0, "Set tcp flag SYN (default if no other "
"tcp flags specified)", set_tcp_flag, 0, 0, 0 },
@@ -148,16 +213,19 @@
{ 0, "window_scaling", 0, "window_scaling option for tcp",
set_flag, (void *) FL_WSCALE, 0, CLIF_ABBREV },
{ 0, "sysctl", 0, "Use current sysctl (/proc/sys/net/*) setting "
- "for the tcp options and ecn. Always set by default "
+ "for the tcp options above and ecn. Always set by default "
"(with \"syn\") if nothing else specified",
CLIF_set_flag, &sysctl, 0, 0 },
+ { 0, "fastopen", 0, "Use fastopen tcp option (when syn, cookie negotiation only)",
+ CLIF_set_flag, &fastopen, 0, 0 },
{ 0, "reuse", 0, "Allow to reuse local port numbers "
"for the huge workloads (SO_REUSEADDR)",
CLIF_set_flag, &reuse, 0, 0 },
- { 0, "mss", "NUM", "Use value of %s for maxseg tcp option (when syn)",
- CLIF_set_uint, &mss, 0, 0 },
- { 0, "info", 0, "Print tcp flags of final tcp replies when target "
- "host is reached. Useful to determine whether "
+ { 0, "mss", "NUM", "Use value of %s (or unchanged) for maxseg tcp option (when syn), "
+ "and discover its clamping along the path being traced",
+ set_mss, &mss, 0, CLIF_OPTARG },
+ { 0, "info", 0, "Print tcp flags and options of final tcp replies "
+ "when target host is reached. Useful to determine whether "
"an application listens the port etc.",
CLIF_set_flag, &info, 0, 0 },
CLIF_END_OPTION
@@ -232,6 +300,8 @@
mtu -= af == AF_INET ? sizeof (struct iphdr) : sizeof (struct ip6_hdr);
mtu -= sizeof (struct tcphdr);
+ if (mss < 0) mss = mtu;
+
if (!raw_can_connect ()) { /* work-around for buggy kernels */
close (raw_sk);
@@ -318,7 +388,7 @@
if (flags & TH_SYN) {
*ptr++ = TCPOPT_MAXSEG; /* 2 */
*ptr++ = TCPOLEN_MAXSEG; /* 4 */
- *((uint16_t *) ptr) = htons (mss ? mss : mtu);
+ *((uint16_t *) ptr) = htons (mss);
ptr += sizeof (uint16_t);
}
@@ -353,6 +423,19 @@
*ptr++ = 2; /* assume some corect value... */
}
+ if (fastopen && (flags & TH_SYN)) {
+ *ptr++ = TCPOPT_FASTOPEN; /* 34 */
+ if (flags & TH_ACK) {
+ /* cookie size of 8 is defined in kernel's linux/tcp.h */
+ *ptr++ = TCPOLEN_FASTOPEN_BASE + 2 * sizeof (uint32_t);
+ *((uint32_t *) ptr) = random_seq (); ptr += sizeof (uint32_t);
+ *((uint32_t *) ptr) = random_seq (); ptr += sizeof (uint32_t);
+ } else
+ *ptr++ = TCPOLEN_FASTOPEN_BASE + 0; /* 2 */
+ *ptr++ = TCPOPT_NOP; /* 1 */
+ *ptr++ = TCPOPT_NOP; /* 1 */
+ }
+
csum_len = ptr - buf;
@@ -468,12 +551,28 @@
if (!pb) return NULL;
+ if (check_mss &&
+ err &&
+ len >= sizeof (*tcp) + TCPOLEN_MAXSEG
+ ) {
+ uint8_t *ptr = (uint8_t *) (tcp + 1);
+
+ if (ptr[0] == TCPOPT_MAXSEG && ptr[1] == TCPOLEN_MAXSEG) {
+ uint16_t seen_mss = ntohs (*((uint16_t *) (ptr + 2)));
+ if (mss != seen_mss) {
+ put_err (pb, "M=%u", seen_mss);
+ mss = seen_mss; /* print just once */
+ }
+ }
+ }
+
+
if (!err) {
pb->final = 1;
if (info)
- pb->ext = names_by_flags (TH_FLAGS(tcp));
+ pb->ext = print_tcp_info (tcp, len);
}
return pb;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/mod-tcpconn.c new/traceroute-2.1.5/traceroute/mod-tcpconn.c
--- old/traceroute-2.1.3/traceroute/mod-tcpconn.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/mod-tcpconn.c 2023-12-09 03:50:31.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/mod-udp.c new/traceroute-2.1.5/traceroute/mod-udp.c
--- old/traceroute-2.1.3/traceroute/mod-udp.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/mod-udp.c 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/module.c new/traceroute-2.1.5/traceroute/module.c
--- old/traceroute-2.1.3/traceroute/module.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/module.c 2023-12-09 03:50:31.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/poll.c new/traceroute-2.1.5/traceroute/poll.c
--- old/traceroute-2.1.3/traceroute/poll.c 2022-12-27 01:00:18.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/poll.c 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/random.c new/traceroute-2.1.5/traceroute/random.c
--- old/traceroute-2.1.3/traceroute/random.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/random.c 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
@@ -22,7 +22,7 @@
unsigned int random_seq (void) {
- /* To not worry about RANDOM_MAX and precision... */
+ /* Not to worry about RANDOM_MAX and precision... */
return (rand () << 16) ^ (rand () << 8) ^ rand () ^ (rand () >> 8);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/time.c new/traceroute-2.1.5/traceroute/time.c
--- old/traceroute-2.1.3/traceroute/time.c 2016-02-14 22:04:50.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/time.c 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/traceroute.8 new/traceroute-2.1.5/traceroute/traceroute.8
--- old/traceroute-2.1.3/traceroute/traceroute.8 2016-03-07 23:27:47.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/traceroute.8 2023-12-13 04:26:22.000000000 +0100
@@ -298,7 +298,9 @@
.B MPLS:L=\fIlabel\fB,E=\fIexp_use\fB,S=\fIstack_bottom\fB,T=\fITTL
(more objects separated by
.B /
-).
+). The Interface Information (rfc5837) is shown parsed as well, in a following form:
+.B \fR{\fBINC\fR|\fBSUB\fR|\fBOUT\fR|\fBNXT\fR}\fB:\fIindex\fB,\fIIP_addr\fB,"\fIname\fB",mtu=\fIMTU\fB
+(all four fields may be missing).
.TP
.B \-A, \-\-as\-path\-lookups
Perform AS path lookups in routing registries and print results
@@ -483,16 +485,47 @@
.BR ecn .
Always set by default, if nothing else specified.
.TP
-.B mss\fR=\fInum
+.B fastopen
+Use fastopen tcp option (when
+.BR syn ),
+for initial cookie negotiation only.
+.TP
+.B mss\fR=[\fInum\fR]
Use value of
.I num
-for maxseg tcp header option (when
-.BR syn ).
+(or unchanged) for maxseg tcp header option (when
+.BR syn ),
+and discover its clamping along the path being traced.
+New changed
+.I mss
+is printed once in a form of
+.B M=\fINUM
+at the first probe on which it was detected.
+Note, some routers may return too short original fragment
+in the time exceeded message, making the check impossible.
+Besides that the responses may come in a different order.
+All this can lead to a later place of the report
+(using
+.BR \-N\ 1
+can help for the order).
.TP
.B info
-Print tcp flags of final tcp replies when the target host is reached.
+Print tcp flags and supported options
+of final tcp replies when the target host is reached.
Allows to determine whether an application listens the port and
other useful things.
+Supported tcp options are all that can be set by
+.BR \-T\ \-O ,
+ie.
+.IR mss ,
+.IR sack ,
+.IR timestamps ,
+.IR window_scaling
+and
+.IR fastopen ,
+with the similar output format (a value for
+.IR mss
+and just presence for others).
.P
Default options is
.BR syn,sysctl .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/traceroute.c new/traceroute-2.1.5/traceroute/traceroute.c
--- old/traceroute-2.1.3/traceroute/traceroute.c 2023-02-13 18:37:06.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/traceroute.c 2023-12-10 05:27:41.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
@@ -169,6 +169,20 @@
}
+void put_err (probe *pb, const char *format, ...) {
+ va_list ap;
+ char *curr = pb->err_str;
+ char *end = pb->err_str + sizeof (pb->err_str) - 1;
+
+ /* It can already contain something when `--mtu' or `-T -O mss' */
+ while (curr < end && *curr) curr++;
+
+ va_start (ap, format);
+ vsnprintf (curr, end - curr, format, ap);
+ va_end (ap);
+}
+
+
/* Set initial parameters according to how we was called */
static void check_progname (const char *name) {
@@ -259,7 +273,7 @@
static char addr2str_buf[INET6_ADDRSTRLEN];
-static const char *addr2str (const sockaddr_any *addr) {
+const char *addr2str (const sockaddr_any *addr) {
getnameinfo (&addr->sa, sizeof (*addr),
addr2str_buf, sizeof (addr2str_buf), 0, 0, NI_NUMERICHOST);
@@ -1226,8 +1240,6 @@
void parse_icmp_res (probe *pb, int type, int code, int info) {
- char *str = NULL;
- char buf[sizeof (pb->err_str)];
if (af == AF_INET) {
@@ -1235,60 +1247,60 @@
if (code == ICMP_EXC_TTL)
return;
}
- else if (type == ICMP_DEST_UNREACH) {
+
+ if (type == ICMP_DEST_UNREACH) {
switch (code) {
case ICMP_UNREACH_NET:
case ICMP_UNREACH_NET_UNKNOWN:
case ICMP_UNREACH_ISOLATED:
case ICMP_UNREACH_TOSNET:
- str = "!N";
+ put_err (pb, "!N");
break;
case ICMP_UNREACH_HOST:
case ICMP_UNREACH_HOST_UNKNOWN:
case ICMP_UNREACH_TOSHOST:
- str = "!H";
+ put_err (pb, "!H");
break;
case ICMP_UNREACH_NET_PROHIB:
case ICMP_UNREACH_HOST_PROHIB:
case ICMP_UNREACH_FILTER_PROHIB:
- str = "!X";
+ put_err (pb, "!X");
break;
case ICMP_UNREACH_PORT:
/* dest host is reached */
- str = "";
break;
case ICMP_UNREACH_PROTOCOL:
- str = "!P";
+ put_err (pb, "!P");
break;
case ICMP_UNREACH_NEEDFRAG:
- snprintf (buf, sizeof (buf), "!F-%d", info);
- str = buf;
+ put_err (pb, "!F-%d", info);
break;
case ICMP_UNREACH_SRCFAIL:
- str = "!S";
+ put_err (pb, "!S");
break;
case ICMP_UNREACH_HOST_PRECEDENCE:
- str = "!V";
+ put_err (pb, "!V");
break;
case ICMP_UNREACH_PRECEDENCE_CUTOFF:
- str = "!C";
+ put_err (pb, "!C");
break;
default:
- snprintf (buf, sizeof (buf), "!<%u>", code);
- str = buf;
+ put_err (pb, "!<%u>", code);
break;
}
- }
+
+ } else
+ put_err (pb, "!<%u-%u>", type, code);
}
else if (af == AF_INET6) {
@@ -1297,49 +1309,37 @@
if (code == ICMP6_TIME_EXCEED_TRANSIT)
return;
}
- else if (type == ICMP6_DST_UNREACH) {
+
+ if (type == ICMP6_DST_UNREACH) {
switch (code) {
case ICMP6_DST_UNREACH_NOROUTE:
- str = "!N";
+ put_err (pb, "!N");
break;
case ICMP6_DST_UNREACH_BEYONDSCOPE:
case ICMP6_DST_UNREACH_ADDR:
- str = "!H";
+ put_err (pb, "!H");
break;
case ICMP6_DST_UNREACH_ADMIN:
- str = "!X";
+ put_err (pb, "!X");
break;
case ICMP6_DST_UNREACH_NOPORT:
/* dest host is reached */
- str = "";
break;
default:
- snprintf (buf, sizeof (buf), "!<%u>", code);
- str = buf;
+ put_err (pb, "!<%u>", code);
break;
}
}
- else if (type == ICMP6_PACKET_TOO_BIG) {
- snprintf (buf, sizeof (buf), "!F-%d", info);
- str = buf;
- }
- }
-
-
- if (!str) {
- snprintf (buf, sizeof (buf), "!<%u-%u>", type, code);
- str = buf;
- }
-
- if (*str) {
- strncpy (pb->err_str, str, sizeof (pb->err_str));
- pb->err_str[sizeof (pb->err_str) - 1] = '\0';
+ else if (type == ICMP6_PACKET_TOO_BIG)
+ put_err (pb, "!F-%d", info);
+ else
+ put_err (pb, "!<%u-%u>", type, code);
}
pb->final = 1;
@@ -1351,7 +1351,7 @@
static void parse_local_res (probe *pb, int ee_errno, int info) {
if (ee_errno == EMSGSIZE && info != 0) {
- snprintf (pb->err_str, sizeof(pb->err_str)-1, "!F-%d", info);
+ put_err (pb, "!F-%d", info);
pb->final = 1;
return;
}
@@ -1523,7 +1523,7 @@
but fill its `err_str' by the info obtained. Ugly, but easy...
*/
memset (pb, 0, sizeof (*pb));
- snprintf (pb->err_str, sizeof(pb->err_str)-1, "F=%d", ee->ee_info);
+ put_err (pb, "F=%d", ee->ee_info);
return;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute/traceroute.h new/traceroute-2.1.5/traceroute/traceroute.h
--- old/traceroute-2.1.3/traceroute/traceroute.h 2016-02-14 22:13:48.000000000 +0100
+++ new/traceroute-2.1.5/traceroute/traceroute.h 2023-12-10 05:03:15.000000000 +0100
@@ -1,6 +1,6 @@
/*
Copyright (c) 2006, 2007 Dmitry Butskoy
- <buc(a)citadel.stu.neva.ru>
+ <dmitry(a)butskoy.name>
License: GPL v2 or any later
See COPYING for the status of this software.
@@ -28,7 +28,7 @@
int sk;
int seq;
char *ext;
- char err_str[16]; /* assume enough */
+ char err_str[32]; /* assume enough */
};
typedef struct probe_struct probe;
@@ -58,8 +58,10 @@
#define DEF_RAW_PROT 253 /* for experimentation and testing, rfc3692 */
-void error (const char *str) __attribute__((noreturn));
-void error_or_perm (const char *str) __attribute__((noreturn));
+void error (const char *str) __attribute__ ((noreturn));
+void error_or_perm (const char *str) __attribute__ ((noreturn));
+void put_err (probe *pb, const char *format, ...) __attribute__ ((format (printf, 2, 3)));
+const char *addr2str (const sockaddr_any *addr);
double get_time (void);
void tune_socket (int sk);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/traceroute.spec new/traceroute-2.1.5/traceroute.spec
--- old/traceroute-2.1.3/traceroute.spec 2023-08-30 00:41:38.000000000 +0200
+++ new/traceroute-2.1.5/traceroute.spec 2023-12-16 01:40:22.000000000 +0100
@@ -1,6 +1,6 @@
Summary: Traces the route taken by packets over an IPv4/IPv6 network
Name: traceroute
-Version: 2.1.3
+Version: 2.1.5
Release: 1%{?dist}
Group: Applications/Internet
License: GPLv2+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/wrappers/Makefile new/traceroute-2.1.5/wrappers/Makefile
--- old/traceroute-2.1.3/wrappers/Makefile 2013-08-22 15:16:17.000000000 +0200
+++ new/traceroute-2.1.5/wrappers/Makefile 2023-12-09 03:50:30.000000000 +0100
@@ -1,6 +1,6 @@
#
# Copyright (c) 2007 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/wrappers/lft new/traceroute-2.1.5/wrappers/lft
--- old/traceroute-2.1.3/wrappers/lft 2013-07-13 14:28:57.000000000 +0200
+++ new/traceroute-2.1.5/wrappers/lft 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2007 Dmitry K. Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/wrappers/tcptraceroute new/traceroute-2.1.5/wrappers/tcptraceroute
--- old/traceroute-2.1.3/wrappers/tcptraceroute 2023-08-30 00:42:42.000000000 +0200
+++ new/traceroute-2.1.5/wrappers/tcptraceroute 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2007 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/wrappers/tracepath new/traceroute-2.1.5/wrappers/tracepath
--- old/traceroute-2.1.3/wrappers/tracepath 2023-08-30 00:42:51.000000000 +0200
+++ new/traceroute-2.1.5/wrappers/tracepath 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2008 Dmitry Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/wrappers/traceproto new/traceroute-2.1.5/wrappers/traceproto
--- old/traceroute-2.1.3/wrappers/traceproto 2023-08-30 00:43:01.000000000 +0200
+++ new/traceroute-2.1.5/wrappers/traceproto 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2007 Dmitry K. Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.1.3/wrappers/traceroute-nanog new/traceroute-2.1.5/wrappers/traceroute-nanog
--- old/traceroute-2.1.3/wrappers/traceroute-nanog 2023-08-30 00:43:08.000000000 +0200
+++ new/traceroute-2.1.5/wrappers/traceroute-nanog 2023-12-09 03:50:30.000000000 +0100
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2007 Dmitry K. Butskoy
-# <buc(a)citadel.stu.neva.ru>
+# <dmitry(a)butskoy.name>
# License: GPL v2 or any later
#
# See COPYING for the status of this software.
++++++ traceroute-secure_getenv.patch ++++++
--- /var/tmp/diff_new_pack.GUVqji/_old 2023-12-22 22:40:56.975155923 +0100
+++ /var/tmp/diff_new_pack.GUVqji/_new 2023-12-22 22:40:56.995156658 +0100
@@ -1,5 +1,7 @@
---- traceroute-2.0.20.orig/traceroute/traceroute.h
-+++ traceroute-2.0.20/traceroute/traceroute.h
+Index: traceroute-2.1.5/traceroute/traceroute.h
+===================================================================
+--- traceroute-2.1.5.orig/traceroute/traceroute.h
++++ traceroute-2.1.5/traceroute/traceroute.h
@@ -57,6 +57,13 @@ typedef struct tr_module_struct tr_modul
#define DEF_DCCP_PORT DEF_START_PORT /* is it a good choice?... */
#define DEF_RAW_PROT 253 /* for experimentation and testing, rfc3692 */
@@ -12,10 +14,12 @@
+# endif
+#endif
- void error (const char *str) __attribute__((noreturn));
- void error_or_perm (const char *str) __attribute__((noreturn));
---- traceroute-2.0.20.orig/traceroute/as_lookups.c
-+++ traceroute-2.0.20/traceroute/as_lookups.c
+ void error (const char *str) __attribute__ ((noreturn));
+ void error_or_perm (const char *str) __attribute__ ((noreturn));
+Index: traceroute-2.1.5/traceroute/as_lookups.c
+===================================================================
+--- traceroute-2.1.5.orig/traceroute/as_lookups.c
++++ traceroute-2.1.5/traceroute/as_lookups.c
@@ -39,10 +39,10 @@ const char *get_as_path (const char *que
struct addrinfo *res;
int ret;
@@ -29,8 +33,10 @@
if (!service) service = DEF_RADB_SERVICE;
---- traceroute-2.0.20.orig/libsupp/clif.c
-+++ traceroute-2.0.20/libsupp/clif.c
+Index: traceroute-2.1.5/libsupp/clif.c
+===================================================================
+--- traceroute-2.1.5.orig/libsupp/clif.c
++++ traceroute-2.1.5/libsupp/clif.c
@@ -398,7 +398,7 @@ int CLIF_parse_cmdline (int argc, char *
unsigned int dirty_flags = 0;
int dirty_plus = 0;
@@ -40,8 +46,10 @@
(parse_flags & CLIF_POSIX);
curr.argc = argc;
---- traceroute-2.0.20.orig/libsupp/clif.h
-+++ traceroute-2.0.20/libsupp/clif.h
+Index: traceroute-2.1.5/libsupp/clif.h
+===================================================================
+--- traceroute-2.1.5.orig/libsupp/clif.h
++++ traceroute-2.1.5/libsupp/clif.h
@@ -118,4 +118,12 @@ extern int CLIF_arg_func (CLIF_argument
{ "V", "version", 0, "Print version info and exit", \
CLIF_version_handler, STR, 0, CLIF_EXTRA | CLIF_EXIT }
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package protobuf for openSUSE:Factory checked in at 2023-12-22 22:40:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/protobuf (Old)
and /work/SRC/openSUSE:Factory/.protobuf.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "protobuf"
Fri Dec 22 22:40:45 2023 rev:77 rq:1134467 version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/protobuf/protobuf.changes 2023-10-31 20:24:50.776059106 +0100
+++ /work/SRC/openSUSE:Factory/.protobuf.new.28375/protobuf.changes 2023-12-22 22:40:51.166942222 +0100
@@ -1,0 +2,5 @@
+Thu Dec 21 13:53:29 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- build against modern python on sle15
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ protobuf.spec ++++++
--- /var/tmp/diff_new_pack.u9GT73/_old 2023-12-22 22:40:51.990972540 +0100
+++ /var/tmp/diff_new_pack.u9GT73/_new 2023-12-22 22:40:51.994972687 +0100
@@ -24,6 +24,7 @@
%bcond_with check
%bcond_without java
%bcond_without python3
+%{?sle15_python_module_pythons}
Name: protobuf
Version: 23.4
%global sover 23_4_0
@@ -38,7 +39,7 @@
Source1000: %{name}-rpmlintrc
Patch0: add-missing-stdint-header.patch
BuildRequires: %{python_module abseil}
-BuildRequires: %{python_module devel}
+BuildRequires: %{python_module devel >= 3.7}
BuildRequires: %{python_module python-dateutil}
BuildRequires: %{python_module setuptools}
BuildRequires: abseil-cpp-devel >= 20230125
@@ -56,8 +57,8 @@
BuildRequires: javapackages-local >= 6
%endif
-%if 0%{?suse_version} >= 1550
-# TW: generate subpackages for every python3 flavor
+%if 0%{?suse_version} >= 1500
+# generate subpackages for every python3 flavor
%define python_subpackage_only 1
%python_subpackages
%else
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libzypp for openSUSE:Factory checked in at 2023-12-22 22:40:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libzypp (Old)
and /work/SRC/openSUSE:Factory/.libzypp.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libzypp"
Fri Dec 22 22:40:37 2023 rev:484 rq:1134653 version:17.31.27
Changes:
--------
--- /work/SRC/openSUSE:Factory/libzypp/libzypp.changes 2023-12-15 21:47:23.314389866 +0100
+++ /work/SRC/openSUSE:Factory/.libzypp.new.28375/libzypp.changes 2023-12-22 22:40:39.630517763 +0100
@@ -1,0 +2,20 @@
+Fri Dec 22 17:12:31 CET 2023 - ma(a)suse.de
+
+- CheckAccessDeleted: fix 'running in container' filter
+ (bsc#1218291)
+- version 17.31.27 (22)
+
+-------------------------------------------------------------------
+Thu Dec 21 18:14:32 CET 2023 - ma(a)suse.de
+
+- Call zypp commit plugins during transactional update (fixes #506)
+- Add support for loongarch64 (fixes #504)
+- Teach MediaMultiCurl to download HTTP Multibyte ranges.
+- Teach zsync downloads to MultiCurl.
+- Expand RepoVars in URLs downloading a .repo file (bsc#1212160)
+ Convenient and helps documentation as it may refer to a single
+ command for a bunch of distributions. Like e.g. "zypper ar
+ 'https://server.my/$releasever/my.repo'".
+- version 17.31.26 (22)
+
+-------------------------------------------------------------------
Old:
----
libzypp-17.31.25.tar.bz2
New:
----
libzypp-17.31.27.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libzypp.spec ++++++
--- /var/tmp/diff_new_pack.KS8ZZ0/_old 2023-12-22 22:40:40.334543667 +0100
+++ /var/tmp/diff_new_pack.KS8ZZ0/_new 2023-12-22 22:40:40.338543813 +0100
@@ -42,7 +42,7 @@
%bcond_with enable_preview_single_rpmtrans_as_default_for_zypper
Name: libzypp
-Version: 17.31.25
+Version: 17.31.27
Release: 0
License: GPL-2.0-or-later
URL: https://github.com/openSUSE/libzypp
@@ -112,6 +112,7 @@
# required for testsuite
%if %{with mediabackend_tests}
BuildRequires: nginx
+BuildRequires: vsftpd
%endif
Requires: rpm
++++++ libzypp-17.31.25.tar.bz2 -> libzypp-17.31.27.tar.bz2 ++++++
++++ 6143 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package yast2-firstboot for openSUSE:Factory checked in at 2023-12-22 22:40:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-firstboot (Old)
and /work/SRC/openSUSE:Factory/.yast2-firstboot.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-firstboot"
Fri Dec 22 22:40:35 2023 rev:120 rq:1134619 version:5.0.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-firstboot/yast2-firstboot.changes 2023-10-20 23:17:50.564874733 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-firstboot.new.28375/yast2-firstboot.changes 2023-12-22 22:40:37.234429604 +0100
@@ -1,0 +2,6 @@
+Thu Dec 14 20:38:43 UTC 2023 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Allow selecting WSL systemd pattern (jsc#PED-5644, jsc#PED-5099)
+- 5.0.1
+
+-------------------------------------------------------------------
Old:
----
yast2-firstboot-5.0.0.tar.bz2
New:
----
yast2-firstboot-5.0.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-firstboot.spec ++++++
--- /var/tmp/diff_new_pack.dnW2d7/_old 2023-12-22 22:40:38.130462572 +0100
+++ /var/tmp/diff_new_pack.dnW2d7/_new 2023-12-22 22:40:38.130462572 +0100
@@ -17,7 +17,7 @@
Name: yast2-firstboot
-Version: 5.0.0
+Version: 5.0.1
Release: 0
Summary: YaST2 - Initial System Configuration
License: GPL-2.0-only
++++++ yast2-firstboot-5.0.0.tar.bz2 -> yast2-firstboot-5.0.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/.github/workflows/ci.yml new/yast2-firstboot-5.0.1/.github/workflows/ci.yml
--- old/yast2-firstboot-5.0.0/.github/workflows/ci.yml 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/.github/workflows/ci.yml 2023-12-22 13:06:13.000000000 +0100
@@ -1,9 +1,8 @@
-
# See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-act…
name: CI
-on: [push, pull_request]
+on: [ push, pull_request ]
jobs:
Tests:
@@ -12,36 +11,36 @@
strategy:
fail-fast: false
matrix:
- distro: [ "tumbleweed", "leap_latest" ]
+ distro: [ "tumbleweed" ]
container:
image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby
steps:
+ - name: Git Checkout
+ uses: actions/checkout@v2
- - name: Git Checkout
- uses: actions/checkout@v2
-
- - name: Install Dependencies
- run: zypper --non-interactive install --no-recommends yast2-configuration-management yast2-users
-
- # just for easier debugging...
- - name: Inspect Installed Packages
- run: rpm -qa | sort
-
- - name: Unit Tests
- run: rake test:unit
- # enable code coverage reporting
- env:
- COVERAGE: 1
-
- # send the coverage report to coveralls.io
- - name: Coveralls Report
- # send it only from the TW build to avoid duplicate submits
- if: ${{ matrix.distro == 'tumbleweed' }}
- uses: coverallsapp/github-action@master
- with:
- github-token: ${{ secrets.GITHUB_TOKEN }}
+ - name: Install Dependencies
+ run: zypper --non-interactive install --no-recommends
+ yast2-configuration-management yast2-users
+
+ # just for easier debugging...
+ - name: Inspect Installed Packages
+ run: rpm -qa | sort
+
+ - name: Unit Tests
+ run: rake test:unit
+ # enable code coverage reporting
+ env:
+ COVERAGE: 1
+
+ # send the coverage report to coveralls.io
+ - name: Coveralls Report
+ # send it only from the TW build to avoid duplicate submits
+ if: ${{ matrix.distro == 'tumbleweed' }}
+ uses: coverallsapp/github-action@master
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
Rubocop:
runs-on: ubuntu-latest
@@ -49,18 +48,17 @@
strategy:
fail-fast: false
matrix:
- distro: [ "leap_latest" ]
+ distro: [ "tumbleweed" ]
container:
image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby
steps:
+ - name: Git Checkout
+ uses: actions/checkout@v2
- - name: Git Checkout
- uses: actions/checkout@v2
-
- - name: Rubocop
- run: rake check:rubocop
+ - name: Rubocop
+ run: rake check:rubocop
Package:
runs-on: ubuntu-latest
@@ -68,25 +66,24 @@
strategy:
fail-fast: false
matrix:
- distro: [ "tumbleweed", "leap_latest" ]
+ distro: [ "tumbleweed" ]
container:
image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby
steps:
+ - name: Git Checkout
+ uses: actions/checkout@v2
- - name: Git Checkout
- uses: actions/checkout@v2
+ - name: Install Dependencies
+ run: zypper --non-interactive install --no-recommends docbook-xsl-stylesheets
- - name: Install Dependencies
- run: zypper --non-interactive install --no-recommends docbook-xsl-stylesheets
+ # just for easier debugging...
+ - name: Inspect Installed Packages
+ run: rpm -qa | sort
- # just for easier debugging...
- - name: Inspect Installed Packages
- run: rpm -qa | sort
-
- - name: Package Build
- run: yast-ci-ruby -o package
+ - name: Package Build
+ run: yast-ci-ruby -o package
Yardoc:
runs-on: ubuntu-latest
@@ -94,18 +91,17 @@
strategy:
fail-fast: false
matrix:
- distro: [ "leap_latest" ]
+ distro: [ "tumbleweed" ]
container:
image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby
steps:
+ - name: Git Checkout
+ uses: actions/checkout@v2
- - name: Git Checkout
- uses: actions/checkout@v2
-
- - name: Yardoc
- run: rake check:doc
+ - name: Yardoc
+ run: rake check:doc
# downloading the Docker image takes some time so bundling several fast
# checks into one job avoids that overhead
@@ -115,15 +111,14 @@
strategy:
fail-fast: false
matrix:
- distro: [ "leap_latest" ]
+ distro: [ "tumbleweed" ]
container:
image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby
steps:
+ - name: Git Checkout
+ uses: actions/checkout@v2
- - name: Git Checkout
- uses: actions/checkout@v2
-
- - name: POT Check
- run: rake check:pot
+ - name: POT Check
+ run: rake check:pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/.rubocop.yml new/yast2-firstboot-5.0.1/.rubocop.yml
--- old/yast2-firstboot-5.0.0/.rubocop.yml 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/.rubocop.yml 2023-12-22 13:06:13.000000000 +0100
@@ -1,6 +1,6 @@
# use the shared YaST defaults
inherit_from:
- /usr/share/YaST2/data/devtools/data/rubocop-0.71.0_yast_style.yml
+ /usr/share/YaST2/data/devtools/data/rubocop-1.24.1_yast_style.yml
# We need to be sure that everything works fine before enabling it
Style/FrozenStringLiteralComment:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/doc/testing_wsl.md new/yast2-firstboot-5.0.1/doc/testing_wsl.md
--- old/yast2-firstboot-5.0.0/doc/testing_wsl.md 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-firstboot-5.0.1/doc/testing_wsl.md 2023-12-22 13:06:13.000000000 +0100
@@ -0,0 +1,19 @@
+## Testing WSL Changes
+
+This document serve as reminder how is the optimal way to test changes done for WSL firstboot as working with
+windows server can be linux unfriendly and we would like to test without any mocking to get the best results.
+
+### Creating Testing APPX
+
+The easiest way is to use OBS. Find the target release for WSL image like `SUSE:SLE-15-SP6:Update:WSL`
+and branch there `kiwi-images-wsl` that is responsible for creation of appx. In your branch create package
+yast2-firstboot ( as it is usually inherited from target and does not live in WSL subproject ) and copy there
+modified sources with rake tarball. It is also mandatory to link or branch package `wsl-appx` as it ensures
+that certificate used for appx matches with the one used in kiwi.
+Another important think is to ensure that certificate for home repo is valid and not outdated. To check it use
+`osc signkey --sslcert home:...` and if it is invalid use `osc signkey --sslcert --create home:...`.
+
+### Installing Modified APPX
+
+Just follow instructions at https://en.opensuse.org/WSL/Manual_Installation
+Appx installer reports quite useless error when there is any issue, so use help at https://en.opensuse.org/WSL/Debugging_Hints
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/package/yast2-firstboot.changes new/yast2-firstboot-5.0.1/package/yast2-firstboot.changes
--- old/yast2-firstboot-5.0.0/package/yast2-firstboot.changes 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/package/yast2-firstboot.changes 2023-12-22 13:06:13.000000000 +0100
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Thu Dec 14 20:38:43 UTC 2023 - Josef Reidinger <jreidinger(a)suse.com>
+
+- Allow selecting WSL systemd pattern (jsc#PED-5644, jsc#PED-5099)
+- 5.0.1
+
+-------------------------------------------------------------------
Wed Aug 30 20:16:10 UTC 2023 - Josef Reidinger <jreidinger(a)suse.cz>
- 5.0.0 (bsc#1185510)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/package/yast2-firstboot.spec new/yast2-firstboot-5.0.1/package/yast2-firstboot.spec
--- old/yast2-firstboot-5.0.0/package/yast2-firstboot.spec 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/package/yast2-firstboot.spec 2023-12-22 13:06:13.000000000 +0100
@@ -17,7 +17,7 @@
Name: yast2-firstboot
-Version: 5.0.0
+Version: 5.0.1
Release: 0
Summary: YaST2 - Initial System Configuration
License: GPL-2.0-only
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/hostname.rb new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/hostname.rb
--- old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/hostname.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/hostname.rb 2023-12-22 13:06:13.000000000 +0100
@@ -56,6 +56,8 @@
def initialize
textdomain "firstboot"
+
+ super
end
def run
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/licenses.rb new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/licenses.rb
--- old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/licenses.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/licenses.rb 2023-12-22 13:06:13.000000000 +0100
@@ -34,6 +34,7 @@
def initialize
textdomain "firstboot"
+ super
@args = GetInstArgs.argmap
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/wsl.rb new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/wsl.rb
--- old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/wsl.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/wsl.rb 2023-12-22 13:06:13.000000000 +0100
@@ -92,7 +92,7 @@
# TRANSLATORS: Error message, %s is a pattern name
Yast::Report.Error(_("Cannot select pattern\n\"%s\" to install.\n" \
- "Some software might be missing.") % pattern)
+ "Some software might be missing.") % pattern)
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/wsl_product_selection.rb new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/wsl_product_selection.rb
--- old/yast2-firstboot-5.0.0/src/lib/y2firstboot/clients/wsl_product_selection.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/src/lib/y2firstboot/clients/wsl_product_selection.rb 2023-12-22 13:06:13.000000000 +0100
@@ -38,12 +38,17 @@
return :auto if products.none?
dialog = Dialogs::WSLProductSelection.new(products,
- default_product: product,
- wsl_gui_pattern: wsl_gui_pattern?)
+ default_product: product,
+ wsl_gui_pattern: wsl_gui_pattern?,
+ wsl_systemd_pattern: wsl_systemd_pattern?)
result = dialog.run
- save(product: dialog.product, wsl_gui_pattern: dialog.wsl_gui_pattern) if result == :next
+ if result == :next
+ save(product: dialog.product,
+ wsl_gui_pattern: dialog.wsl_gui_pattern,
+ wsl_systemd_pattern: dialog.wsl_systemd_pattern)
+ end
result
end
@@ -52,14 +57,17 @@
WSL_GUI_PATTERN = "wsl_gui".freeze
private_constant :WSL_GUI_PATTERN
+ WSL_SYSTEMD_PATTERN = "wsl_systemd".freeze
+ private_constant :WSL_SYSTEMD_PATTERN
# Saves changes
#
# @param product [Hash] Selected product
# @param wsl_gui_pattern [Boolean] Whether to install WSL GUI pattern
- def save(product:, wsl_gui_pattern:)
+ def save(product:, wsl_gui_pattern:, wsl_systemd_pattern:)
self.product = product
self.wsl_gui_pattern = wsl_gui_pattern
+ self.wsl_systemd_pattern = wsl_systemd_pattern
update_registration
end
@@ -101,6 +109,26 @@
end
end
+ # Whether the WSL systemd pattern should be installed
+ #
+ # @see ẂSLConfig
+ #
+ # @return [Boolean]
+ def wsl_systemd_pattern?
+ WSLConfig.instance.patterns.include?(WSL_SYSTEMD_PATTERN)
+ end
+
+ # Sets whether to install the WSL systemd pattern
+ #
+ # @param value [Boolean]
+ def wsl_systemd_pattern=(value)
+ if value
+ WSLConfig.instance.patterns.push(WSL_SYSTEMD_PATTERN).uniq!
+ else
+ WSLConfig.instance.patterns.delete(WSL_SYSTEMD_PATTERN)
+ end
+ end
+
# Updates values stored in registration
#
# Those values indicates to registration what product was selected and whether the product
@@ -109,7 +137,8 @@
# @see Registration::Storage::InstallationOptions
def update_registration
yaml_product = WSLConfig.instance.product
- force_registration = WSLConfig.instance.product_switched? || wsl_gui_pattern?
+ force_registration = WSLConfig.instance.product_switched? ||
+ wsl_gui_pattern? || wsl_systemd_pattern?
Registration::Storage::InstallationOptions.instance.yaml_product = yaml_product
Registration::Storage::InstallationOptions.instance.force_registration = force_registration
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/src/lib/y2firstboot/dialogs/wsl_product_selection.rb new/yast2-firstboot-5.0.1/src/lib/y2firstboot/dialogs/wsl_product_selection.rb
--- old/yast2-firstboot-5.0.0/src/lib/y2firstboot/dialogs/wsl_product_selection.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/src/lib/y2firstboot/dialogs/wsl_product_selection.rb 2023-12-22 13:06:13.000000000 +0100
@@ -39,18 +39,26 @@
# @return [Boolean]
attr_reader :wsl_gui_pattern
+ # Whether the WSL systemd pattern was selected
+ #
+ # @return [Boolean]
+ attr_reader :wsl_systemd_pattern
+
# Constructor
#
# @param products [Array<Hash>] All possible products
# @param default_product [Hash] Product selected by default
# @param wsl_gui_pattern [Boolean] Whether WSL GUI pattern is selected by default
- def initialize(products, default_product: nil, wsl_gui_pattern: false)
+ # @param wsl_systemd_pattern [Boolean] Whether WSL systemd pattern is selected by default
+ def initialize(products, default_product: nil, wsl_gui_pattern: false,
+ wsl_systemd_pattern: false)
textdomain "firstboot"
super()
@products = products
@product = default_product || products.first
@wsl_gui_pattern = wsl_gui_pattern
+ @wsl_systemd_pattern = wsl_systemd_pattern
end
def next_handler
@@ -65,6 +73,8 @@
_("Product Selection")
end
+ # disable rubocop metrics as yast ui is constructed with methods
+ # rubocop:disable Metrics/AbcSize
def dialog_content
items = products.map { |p| item_for(p) }
@@ -81,24 +91,40 @@
),
VSpacing(2),
# TRANSLATORS:
- Label(_("The WSL GUI pattern provides some needed packages for\n" \
- "a better experience with graphical applications in WSL.")),
+ Left(Label(_("The WSL GUI pattern provides some needed packages for\n" \
+ "a better experience with graphical applications in WSL."))),
VSpacing(1),
# TRANSLATORS: check box label
Left(CheckBox(Id(:wsl_gui_pattern),
_("Install WSL GUI pattern (requires registration)"),
- wsl_gui_pattern))
+ wsl_gui_pattern)),
+ VSpacing(2),
+ # TRANSLATORS:
+ Left(Label(_("The WSL systemd pattern provides wsl.conf adjustment\n" \
+ "and init symlink for systemd enablement in WSL."))),
+ VSpacing(1),
+ # TRANSLATORS: check box label
+ Left(CheckBox(Id(:wsl_systemd_pattern),
+ _("Install WSL systemd pattern (requires registration)"),
+ wsl_systemd_pattern))
)
)
end
+ # rubocop:enable Metrics/AbcSize
def help_text
- # TRANSLATORS: help text (1/2)
+ # TRANSLATORS: help text (1/3)
_("<p>Select the product to use with Windows Subsystem for Linux (WSL). " \
"Some products might require registration.</p>") +
- # TRANSLATORS: help text (2/2)
- _("<p>To use graphical programs in WSL you need to install the WSL GUI pattern. " \
- "In that case the system needs to be registered as well.</p>")
+ # TRANSLATORS: help text (2/3)
+ _("<p>For smoother experience with graphical programs in WSL " \
+ "the WSL GUI pattern provides recommended config, tools and libraries. " \
+ "In that case the system needs to be registered as well.</p>") +
+ # TRANSLATORS: help text (3/3)
+ _("<p>For enablement of systemd in WSL the WSL systemd pattern provides wsl.conf " \
+ "and /sbin/init adjustments. " \
+ "In that case the system needs to be registered as well. " \
+ "Relaunch is required to use systemd.</p>")
end
private
@@ -146,6 +172,7 @@
def save
@wsl_gui_pattern = Yast::UI.QueryWidget(Id(:wsl_gui_pattern), :Value)
+ @wsl_systemd_pattern = Yast::UI.QueryWidget(Id(:wsl_systemd_pattern), :Value)
selected_id = Yast::UI.QueryWidget(Id(:product_selector), :Value)
@product = products.find { |p| item_id(p) == selected_id }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/test/y2firstboot/clients/wsl_product_selection_test.rb new/yast2-firstboot-5.0.1/test/y2firstboot/clients/wsl_product_selection_test.rb
--- old/yast2-firstboot-5.0.0/test/y2firstboot/clients/wsl_product_selection_test.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/test/y2firstboot/clients/wsl_product_selection_test.rb 2023-12-22 13:06:13.000000000 +0100
@@ -104,14 +104,16 @@
let(:dialog) do
instance_double(Y2Firstboot::Dialogs::WSLProductSelection,
- run: dialog_result,
- product: selected_product,
- wsl_gui_pattern: wsl_gui_pattern)
+ run: dialog_result,
+ product: selected_product,
+ wsl_gui_pattern: wsl_gui_pattern,
+ wsl_systemd_pattern: wsl_systemd_pattern)
end
let(:dialog_result) { :abort }
let(:selected_product) { nil }
let(:wsl_gui_pattern) { nil }
+ let(:wsl_systemd_pattern) { nil }
let(:product_switched) { false }
@@ -159,6 +161,34 @@
end
end
+ context "if the WSL systemd pattern was selected" do
+ let(:wsl_systemd_pattern) { true }
+
+ before do
+ Y2Firstboot::WSLConfig.instance.patterns = []
+ end
+
+ it "stores the WSL systemd pattern in the WSL config" do
+ subject.run
+
+ expect(Y2Firstboot::WSLConfig.instance.patterns).to include("wsl_systemd")
+ end
+ end
+
+ context "if the WSL systemd pattern was not selected" do
+ let(:wsl_systemd_pattern) { false }
+
+ before do
+ Y2Firstboot::WSLConfig.instance.patterns = ["wsl_systemd"]
+ end
+
+ it "does not store the WSL systemd pattern in the WSL config" do
+ subject.run
+
+ expect(Y2Firstboot::WSLConfig.instance.patterns).to_not include("wsl_systemd")
+ end
+ end
+
it "updates the product in registration storage" do
Registration::Storage::InstallationOptions.instance.yaml_product = nil
@@ -170,6 +200,7 @@
context "if the product was switched" do
let(:product_switched) { true }
let(:wsl_gui_pattern) { false }
+ let(:wsl_systemd_pattern) { false }
it "updates registration storage to force registration" do
Registration::Storage::InstallationOptions.instance.force_registration = false
@@ -200,13 +231,30 @@
context "and the WSL GUI pattern was not selected" do
let(:wsl_gui_pattern) { false }
- it "updates registration storage to not force registration" do
- Registration::Storage::InstallationOptions.instance.force_registration = true
+ context "and the WSL systemd pattern was selected" do
+ let(:wsl_systemd_pattern) { true }
- subject.run
+ it "updates registration storage to force registration" do
+ Registration::Storage::InstallationOptions.instance.force_registration = false
- expect(Registration::Storage::InstallationOptions.instance.force_registration)
- .to eq(false)
+ subject.run
+
+ expect(Registration::Storage::InstallationOptions.instance.force_registration)
+ .to eq(true)
+ end
+ end
+
+ context "and the WSL systemd pattern was not selected" do
+ let(:wsl_systemd_pattern) { false }
+
+ it "updates registration storage to not force registration" do
+ Registration::Storage::InstallationOptions.instance.force_registration = true
+
+ subject.run
+
+ expect(Registration::Storage::InstallationOptions.instance.force_registration)
+ .to eq(false)
+ end
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firstboot-5.0.0/test/y2firstboot/dialogs/wsl_product_selection_test.rb new/yast2-firstboot-5.0.1/test/y2firstboot/dialogs/wsl_product_selection_test.rb
--- old/yast2-firstboot-5.0.0/test/y2firstboot/dialogs/wsl_product_selection_test.rb 2023-10-18 23:15:41.000000000 +0200
+++ new/yast2-firstboot-5.0.1/test/y2firstboot/dialogs/wsl_product_selection_test.rb 2023-12-22 13:06:13.000000000 +0100
@@ -43,7 +43,9 @@
subject do
described_class.new(products,
- default_product: default_product, wsl_gui_pattern: wsl_gui_pattern)
+ default_product: default_product,
+ wsl_gui_pattern: wsl_gui_pattern,
+ wsl_systemd_pattern: wsl_systemd_pattern)
end
let(:products) { [sles, sled] }
@@ -52,6 +54,7 @@
let(:default_product) { sled }
let(:wsl_gui_pattern) { false }
+ let(:wsl_systemd_pattern) { false }
let(:installed_product) { double(Y2Packager::Resolvable, name: "SLES", version_version: "15.4") }
before do
@@ -80,6 +83,12 @@
expect(widget).to_not be_nil
end
+ it "shows a check box for selecting the WSL systemd pattern" do
+ widget = find_widget(:wsl_systemd_pattern, subject.send(:dialog_content))
+
+ expect(widget).to_not be_nil
+ end
+
it "automatically selects the default product" do
widget = find_widget(/SLED/, subject.send(:dialog_content))
@@ -105,12 +114,34 @@
expect(widget.params.last).to eq(false)
end
end
+
+ context "when WSL systemd pattern is indicated as selected" do
+ let(:wsl_systemd_pattern) { true }
+
+ it "selects WSL systemd pattern checkbox by default" do
+ widget = find_widget(:wsl_systemd_pattern, subject.send(:dialog_content))
+
+ expect(widget.params.last).to eq(true)
+ end
+ end
+
+ context "when WSL systemd pattern is not indicated as selected" do
+ let(:wsl_systemd_pattern) { false }
+
+ it "does not select WSL systemd pattern checkbox by default" do
+ widget = find_widget(:wsl_systemd_pattern, subject.send(:dialog_content))
+
+ expect(widget.params.last).to eq(false)
+ end
+ end
end
describe "#next_handler" do
before do
allow(Yast::UI).to receive(:QueryWidget).and_call_original
allow(Yast::UI).to receive(:QueryWidget).with(Id(:wsl_gui_pattern), :Value).and_return(true)
+ allow(Yast::UI).to receive(:QueryWidget).with(Id(:wsl_systemd_pattern), :Value)
+ .and_return(true)
allow(Yast::UI).to receive(:QueryWidget).with(Id(:product_selector), :Value)
.and_return("SLES:15.4")
end
@@ -123,6 +154,14 @@
expect(subject.wsl_gui_pattern).to eq(true)
end
+ it "saves whether the WSL GUI pattern checkbox was selected" do
+ expect(subject.wsl_systemd_pattern).to eq(false)
+
+ subject.next_handler
+
+ expect(subject.wsl_systemd_pattern).to eq(true)
+ end
+
it "saves the selected product" do
expect(subject.product).to eq(sled)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000update-repos for openSUSE:Factory checked in at 2023-12-22 21:02:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000update-repos (Old)
and /work/SRC/openSUSE:Factory/.000update-repos.new.28375 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000update-repos"
Fri Dec 22 21:02:59 2023 rev:2404 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
New:
----
factory:non-oss_3848.2.packages.zst
factory_20231221.packages.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2023-12-22 03:06:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Fri Dec 22 03:06:28 2023 rev:3848 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.782070251 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.786070398 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__MicroOS___20231220" schemaversion="4.1">
+<image name="OBS__MicroOS___20231221" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231220</productvar>
+ <productvar name="VERSION">20231221</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231220,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231221,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231220/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231221/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
@@ -90,10 +90,8 @@
<repopackage name="appmenu-gtk-module-common"/>
<repopackage name="appmenu-gtk2-module"/>
<repopackage name="appmenu-gtk3-module"/>
- <repopackage name="AppStream"/>
<repopackage name="appstream-glib"/>
<repopackage name="appstream-glib-lang"/>
- <repopackage name="AppStream-lang"/>
<repopackage name="argyllcms"/>
<repopackage name="arphic-ukai-fonts"/>
<repopackage name="arphic-uming-fonts"/>
@@ -1230,6 +1228,7 @@
<repopackage name="libhidapi-hidraw0"/>
<repopackage name="libhiredis1_1_0"/>
<repopackage name="libhogweed6"/>
+ <repopackage name="libhugetlbfs"/>
<repopackage name="libhunspell-1_7-0"/>
<repopackage name="libhwy1"/>
<repopackage name="libhyphen0"/>
++++++ openSUSE-Addon-NonOss-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.814071421 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.818071566 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20231220" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20231221" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231220</productvar>
+ <productvar name="VERSION">20231221</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231220,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231221,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.838072297 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.842072443 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231220" schemaversion="4.1">
+<image name="OBS__openSUSE___20231221" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231220</productvar>
+ <productvar name="VERSION">20231221</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231221,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231221/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.862073173 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.866073320 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231220" schemaversion="4.1">
+<image name="OBS__openSUSE___20231221" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231220</productvar>
+ <productvar name="VERSION">20231221</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231221,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231221/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
@@ -122,10 +122,8 @@
<repopackage name="appmenu-gtk-module-common"/>
<repopackage name="appmenu-gtk2-module"/>
<repopackage name="appmenu-gtk3-module"/>
- <repopackage name="AppStream"/>
<repopackage name="appstream-glib"/>
<repopackage name="appstream-glib-lang"/>
- <repopackage name="AppStream-lang"/>
<repopackage name="arabic-ae-fonts"/>
<repopackage name="arabic-bitmap-fonts"/>
<repopackage name="arabic-fonts"/>
@@ -1726,6 +1724,7 @@
<repopackage name="libhogweed6"/>
<repopackage name="libhogweed6-32bit"/>
<repopackage name="libhogweed6-x86-64-v3"/>
+ <repopackage name="libhugetlbfs"/>
<repopackage name="libhunspell-1_7-0"/>
<repopackage name="libhwasan0"/>
<repopackage name="libhwy1"/>
++++++ openSUSE-ftp-ftp-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.886074049 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.886074049 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231220" schemaversion="4.1">
+<image name="OBS__openSUSE___20231221" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -20,7 +20,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231220-i586</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231221-i586</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231220</productvar>
+ <productvar name="VERSION">20231221</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231221,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231221/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.910074926 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.910074926 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231220" schemaversion="4.1">
+<image name="OBS__openSUSE___20231221" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231220-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231221-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231220</productvar>
+ <productvar name="VERSION">20231221</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231221,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231221/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ Aeon.product ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.962076826 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.966076971 +0100
@@ -6,7 +6,7 @@
<name>Aeon</name>
<releasepkgname>Aeon-release</releasepkgname>
<endoflife/>
- <version>20231220</version>
+ <version>20231221</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Aeon</productline>
++++++ Kalpa.product ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:33.978077409 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:33.982077556 +0100
@@ -6,7 +6,7 @@
<name>Kalpa</name>
<releasepkgname>Kalpa-release</releasepkgname>
<endoflife/>
- <version>20231220</version>
+ <version>20231221</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Kalpa</productline>
++++++ MicroOS.product ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.002078286 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.002078286 +0100
@@ -6,7 +6,7 @@
<name>MicroOS</name>
<releasepkgname>MicroOS-release</releasepkgname>
<endoflife/>
- <version>20231220</version>
+ <version>20231221</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>MicroOS</productline>
++++++ dvd.group ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.086081354 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.090081500 +0100
@@ -3,8 +3,6 @@
<packagelist relationship="recommends">
<package name="389-ds" supportstatus="unsupported"/> <!-- reason: dvd:patterns-server-directory_server -->
<package name="7zip" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
- <package name="AppStream" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde -->
- <package name="AppStream-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde -->
<package name="ImageMagick" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="ImageMagick-config-7-SUSE" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="ImageMagick-extra" supportstatus="unsupported"/> <!-- reason: common_locks:expansion -->
@@ -309,7 +307,7 @@
<package name="cups-filters" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="cups-pk-helper" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="cups-pk-helper-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
- <package name="curl" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde -->
+ <package name="curl" supportstatus="unsupported"/> <!-- reason: dvd:patterns-base-console -->
<package name="cyreal-lobster-cyrillic-fonts" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="cyrus-sasl" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde -->
<package name="cyrus-sasl-crammd5" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde -->
@@ -2056,6 +2054,7 @@
<package name="libhogweed6" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libhogweed6-32bit" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
<package name="libhogweed6-x86-64-v3" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
+ <package name="libhugetlbfs" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
<package name="libhunspell-1_7-0" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libhwasan0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-base-console -->
<package name="libhwy1" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.110082231 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.114082376 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231220</version>
+ <version>20231221</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.134083107 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.138083252 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231220</version>
+ <version>20231221</version>
<release>0</release>
<productline>openSUSE</productline>
++++++ opensuse_kalpa.group ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.178084714 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.182084860 +0100
@@ -1,8 +1,6 @@
<group name="opensuse_kalpa">
<!-- ### AUTOMATICALLY GENERATED, DO NOT EDIT ### -->
<packagelist relationship="recommends">
- <package name="AppStream" supportstatus="unsupported"/> <!-- reason: opensuse_kalpa:patterns-kalpa-base -->
- <package name="AppStream-lang" supportstatus="unsupported"/> <!-- reason: opensuse_kalpa:patterns-kalpa-base -->
<package name="Kalpa-release" supportstatus="unsupported"/> <!-- reason: opensuse_kalpa:Kalpa-release -->
<package name="Kalpa-release-appliance" supportstatus="unsupported"/> <!-- reason: opensuse_kalpa:Kalpa-release -->
<package name="Mesa" supportstatus="unsupported"/> <!-- reason: opensuse_kalpa:Kalpa-release -->
++++++ opensuse_microos.group ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.222086320 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.226086467 +0100
@@ -2,8 +2,6 @@
<!-- ### AUTOMATICALLY GENERATED, DO NOT EDIT ### -->
<packagelist relationship="recommends">
<package name="7zip" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-gnome -->
- <package name="AppStream" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
- <package name="AppStream-lang" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
<package name="ImageMagick" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
<package name="ImageMagick-config-7-SUSE" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
<package name="Mesa" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
@@ -1449,6 +1447,7 @@
<package name="libhidapi-hidraw0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:patterns-microos-base -->
<package name="libhiredis1_1_0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:patterns-microos-alt_onlyDVD -->
<package name="libhogweed6" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
+ <package name="libhugetlbfs" supportstatus="unsupported"/> <!-- reason: opensuse_microos:patterns-microos-onlyDVD -->
<package name="libhunspell-1_7-0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
<package name="libhwy1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
<package name="libhyphen0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.1Durxk/_old 2023-12-22 03:06:34.282088512 +0100
+++ /var/tmp/diff_new_pack.1Durxk/_new 2023-12-22 03:06:34.290088803 +0100
@@ -17,10 +17,12 @@
- AMF-docs
- ART
- AppCSXCAD
+ - AppStream
- AppStream-compose
- AppStream-compose-devel
- AppStream-devel
- AppStream-doc
+ - AppStream-lang
- AusweisApp
- AusweisApp2
- Bear
@@ -7983,6 +7985,8 @@
- id3lib-devel
- id3lib-examples
- id3v2
+ - identity
+ - identity-lang
- idep
- ido-devel
- idutils
@@ -9412,6 +9416,7 @@
- kubectl-operator
- kubectl-tree
- kubectl-view-allocations
+ - kubectl-view-secret
- kubectl-who-can
- kubectx
- kubefirst
@@ -12548,7 +12553,6 @@
- libhttrack2
- libhubbub-devel
- libhubbub0
- - libhugetlbfs
- libhugetlbfs-devel
- libhugetlbfs-tests
- libhunspell-1_7-0-32bit
@@ -14576,7 +14580,7 @@
- librsb0
- librseq-devel
- librseq0
- - librssguard-4_5_5
+ - librssguard-4_6_3
- librssguard-devel
- librsvg-2-2-32bit
- librsvg-devel
@@ -14956,15 +14960,15 @@
- libsundials_nvec6
- libsundials_nvec6-mvapich2
- libsundials_nvec6-openmpi4
- - libsundials_sunlinsol4_6_2
- - libsundials_sunlinsol4_6_2-mvapich2
- - libsundials_sunlinsol4_6_2-openmpi4
+ - libsundials_sunlinsol4
+ - libsundials_sunlinsol4-mvapich2
+ - libsundials_sunlinsol4-openmpi4
- libsundials_sunmatrix4
- libsundials_sunmatrix4-mvapich2
- libsundials_sunmatrix4-openmpi4
- - libsundials_sunnonlin3_6_2
- - libsundials_sunnonlin3_6_2-mvapich2
- - libsundials_sunnonlin3_6_2-openmpi4
+ - libsundials_sunnonlin3
+ - libsundials_sunnonlin3-mvapich2
+ - libsundials_sunnonlin3-openmpi4
- libsuperlu-gnu-hpc
- libsuperlu6
- libsuperlu6-32bit
@@ -24040,11 +24044,15 @@
- python310-google-auth-httplib2
- python310-google-auth-oauthlib
- python310-google-cloud-appengine-logging
+ - python310-google-cloud-audit-log
+ - python310-google-cloud-compute
- python310-google-cloud-core
- python310-google-cloud-domains
+ - python310-google-cloud-firestore
- python310-google-cloud-iam
- python310-google-cloud-kms
- python310-google-cloud-kms-inventory
+ - python310-google-cloud-logging
- python310-google-cloud-run
- python310-google-cloud-secret-manager
- python310-google-cloud-service-directory
@@ -27507,11 +27515,15 @@
- python311-google-auth-httplib2
- python311-google-auth-oauthlib
- python311-google-cloud-appengine-logging
+ - python311-google-cloud-audit-log
+ - python311-google-cloud-compute
- python311-google-cloud-core
- python311-google-cloud-domains
+ - python311-google-cloud-firestore
- python311-google-cloud-iam
- python311-google-cloud-kms
- python311-google-cloud-kms-inventory
+ - python311-google-cloud-logging
- python311-google-cloud-run
- python311-google-cloud-secret-manager
- python311-google-cloud-service-directory
@@ -30944,11 +30956,15 @@
- python39-google-auth-httplib2
- python39-google-auth-oauthlib
- python39-google-cloud-appengine-logging
+ - python39-google-cloud-audit-log
+ - python39-google-cloud-compute
- python39-google-cloud-core
- python39-google-cloud-domains
+ - python39-google-cloud-firestore
- python39-google-cloud-iam
- python39-google-cloud-kms
- python39-google-cloud-kms-inventory
+ - python39-google-cloud-logging
- python39-google-cloud-run
- python39-google-cloud-secret-manager
- python39-google-cloud-service-directory
1
0
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 2023-12-22 03:06:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Fri Dec 22 03:06:25 2023 rev:2659 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
Kalpa-release.spec: same change
MicroOS-release.spec: same change
openSUSE-Addon-NonOss-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.JPPkLv/_old 2023-12-22 03:06:30.413947254 +0100
+++ /var/tmp/diff_new_pack.JPPkLv/_new 2023-12-22 03:06:30.453948716 +0100
@@ -16147,6 +16147,7 @@
Provides: weakremover(librssguard-4_3_3)
Provides: weakremover(librssguard-4_3_4)
Provides: weakremover(librssguard-4_5_3)
+Provides: weakremover(librssguard-4_5_5)
Provides: weakremover(librsvg-lang)
Provides: weakremover(librtlsdr0)
Provides: weakremover(librtmidi4)
@@ -16518,6 +16519,9 @@
Provides: weakremover(libsundials_sunlinsol4_3_0-openmpi2)
Provides: weakremover(libsundials_sunlinsol4_3_0-openmpi3)
Provides: weakremover(libsundials_sunlinsol4_3_0-openmpi4)
+Provides: weakremover(libsundials_sunlinsol4_6_2)
+Provides: weakremover(libsundials_sunlinsol4_6_2-mvapich2)
+Provides: weakremover(libsundials_sunlinsol4_6_2-openmpi4)
Provides: weakremover(libsundials_sunmatrix4-openmpi1)
Provides: weakremover(libsundials_sunmatrix4-openmpi2)
Provides: weakremover(libsundials_sunmatrix4-openmpi3)
@@ -16527,6 +16531,9 @@
Provides: weakremover(libsundials_sunnonlin3_3_0-openmpi2)
Provides: weakremover(libsundials_sunnonlin3_3_0-openmpi3)
Provides: weakremover(libsundials_sunnonlin3_3_0-openmpi4)
+Provides: weakremover(libsundials_sunnonlin3_6_2)
+Provides: weakremover(libsundials_sunnonlin3_6_2-mvapich2)
+Provides: weakremover(libsundials_sunnonlin3_6_2-openmpi4)
Provides: weakremover(libsuperlu)
Provides: weakremover(libsuperlu5)
Provides: weakremover(libsuperlu5-32bit)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package os-autoinst for openSUSE:Factory checked in at 2023-12-21 23:40:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/os-autoinst (Old)
and /work/SRC/openSUSE:Factory/.os-autoinst.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "os-autoinst"
Thu Dec 21 23:40:14 2023 rev:408 rq:1134556 version:4.6.1703186166.3e0b4eb
Changes:
--------
--- /work/SRC/openSUSE:Factory/os-autoinst/os-autoinst.changes 2023-12-19 23:17:16.596688856 +0100
+++ /work/SRC/openSUSE:Factory/.os-autoinst.new.1840/os-autoinst.changes 2023-12-21 23:40:18.650256252 +0100
@@ -1,0 +2,10 @@
+Thu Dec 21 21:24:16 UTC 2023 - okurz(a)suse.com
+
+- Update to version 4.6.1703186166.3e0b4eb:
+ * systemd: Fix too strict os-autoinst-openvswitch init timeout
+ * Add usb-kbd on riscv64 as well
+ * Disable isa-fdc only on architectures which use ISA
+ * Make qemu-img compress file using multiple threads
+ * Improve zone handling in setup-multi-machine
+
+-------------------------------------------------------------------
Old:
----
os-autoinst-4.6.1702845126.bd10c5a.obscpio
New:
----
os-autoinst-4.6.1703186166.3e0b4eb.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ os-autoinst-test.spec ++++++
--- /var/tmp/diff_new_pack.Rij427/_old 2023-12-21 23:40:20.842336300 +0100
+++ /var/tmp/diff_new_pack.Rij427/_new 2023-12-21 23:40:20.850336592 +0100
@@ -19,7 +19,7 @@
%define name_ext -test
%define short_name os-autoinst
Name: %{short_name}%{?name_ext}
-Version: 4.6.1702845126.bd10c5a
+Version: 4.6.1703186166.3e0b4eb
Release: 0
Summary: test package for os-autoinst
License: GPL-2.0-or-later
++++++ os-autoinst.spec ++++++
--- /var/tmp/diff_new_pack.Rij427/_old 2023-12-21 23:40:21.174348424 +0100
+++ /var/tmp/diff_new_pack.Rij427/_new 2023-12-21 23:40:21.194349155 +0100
@@ -17,7 +17,7 @@
Name: os-autoinst
-Version: 4.6.1702845126.bd10c5a
+Version: 4.6.1703186166.3e0b4eb
Release: 0
Summary: OS-level test automation
License: GPL-2.0-or-later
++++++ os-autoinst-4.6.1702845126.bd10c5a.obscpio -> os-autoinst-4.6.1703186166.3e0b4eb.obscpio ++++++
/work/SRC/openSUSE:Factory/os-autoinst/os-autoinst-4.6.1702845126.bd10c5a.obscpio /work/SRC/openSUSE:Factory/.os-autoinst.new.1840/os-autoinst-4.6.1703186166.3e0b4eb.obscpio differ: char 49, line 1
++++++ os-autoinst.obsinfo ++++++
--- /var/tmp/diff_new_pack.Rij427/_old 2023-12-21 23:40:21.778370481 +0100
+++ /var/tmp/diff_new_pack.Rij427/_new 2023-12-21 23:40:21.818371942 +0100
@@ -1,5 +1,5 @@
name: os-autoinst
-version: 4.6.1702845126.bd10c5a
-mtime: 1702845126
-commit: bd10c5a79e11025bfe84f417a97b0dd3790d964f
+version: 4.6.1703186166.3e0b4eb
+mtime: 1703186166
+commit: 3e0b4eb97e4c25ac3a6114dae1295d1feb074511
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package bitwarden for openSUSE:Factory checked in at 2023-12-21 23:40:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/bitwarden (Old)
and /work/SRC/openSUSE:Factory/.bitwarden.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bitwarden"
Thu Dec 21 23:40:10 2023 rev:19 rq:1134547 version:2023.12.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/bitwarden/bitwarden.changes 2023-12-07 19:12:22.183606595 +0100
+++ /work/SRC/openSUSE:Factory/.bitwarden.new.1840/bitwarden.changes 2023-12-21 23:40:16.382173428 +0100
@@ -1,0 +2,6 @@
+Thu Dec 21 19:46:36 UTC 2023 - Bruno Pitrus <brunopitrus(a)hotmail.com>
+
+- New upstream release 2023.12.1
+ * Make autofill overlay off by default
+
+-------------------------------------------------------------------
Old:
----
bitwarden-2023.12.0.obscpio
New:
----
bitwarden-2023.12.1.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ bitwarden.spec ++++++
--- /var/tmp/diff_new_pack.DaXbYw/_old 2023-12-21 23:40:17.762223824 +0100
+++ /var/tmp/diff_new_pack.DaXbYw/_new 2023-12-21 23:40:17.762223824 +0100
@@ -18,7 +18,7 @@
#
Name: bitwarden
-Version: 2023.12.0
+Version: 2023.12.1
Release: 0
Summary: A secure and free password manager for all of your devices
Group: Productivity/Security
++++++ _service ++++++
--- /var/tmp/diff_new_pack.DaXbYw/_old 2023-12-21 23:40:17.810225576 +0100
+++ /var/tmp/diff_new_pack.DaXbYw/_new 2023-12-21 23:40:17.814225722 +0100
@@ -2,8 +2,8 @@
<service name="obs_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/bitwarden/clients.git</param>
- <param name="revision">desktop-v2023.12.0</param>
- <param name="version">2023.12.0</param>
+ <param name="revision">desktop-v2023.12.1</param>
+ <param name="version">2023.12.1</param>
<param name="filename">bitwarden</param>
<param name="exclude">bitwarden_license/*</param>
<!-- The code in bitwarden_license MUST NOT be included in published tarballs as it is non-redistributable! -->
++++++ bitwarden-2023.12.0.obscpio -> bitwarden-2023.12.1.obscpio ++++++
/work/SRC/openSUSE:Factory/bitwarden/bitwarden-2023.12.0.obscpio /work/SRC/openSUSE:Factory/.bitwarden.new.1840/bitwarden-2023.12.1.obscpio differ: char 49, line 1
++++++ bitwarden.obsinfo ++++++
--- /var/tmp/diff_new_pack.DaXbYw/_old 2023-12-21 23:40:17.866227622 +0100
+++ /var/tmp/diff_new_pack.DaXbYw/_new 2023-12-21 23:40:17.870227768 +0100
@@ -1,5 +1,5 @@
name: bitwarden
-version: 2023.12.0
-mtime: 1701877704
-commit: 104f37ba4252b618f6960b3eadbadf142294c43d
+version: 2023.12.1
+mtime: 1703171146
+commit: 2502ac1d41341c795f336c3482b53408c98d2836
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package grype for openSUSE:Factory checked in at 2023-12-21 23:40:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/grype (Old)
and /work/SRC/openSUSE:Factory/.grype.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "grype"
Thu Dec 21 23:40:04 2023 rev:46 rq:1134542 version:0.73.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/grype/grype.changes 2023-11-30 22:06:05.211773452 +0100
+++ /work/SRC/openSUSE:Factory/.grype.new.1840/grype.changes 2023-12-21 23:40:10.973975937 +0100
@@ -1,0 +2,24 @@
+Thu Dec 21 19:04:26 UTC 2023 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 0.73.5:
+ * chore(deps): bump github.com/CycloneDX/cyclonedx-go from 0.7.2
+ to 0.8.0 (#1633)
+ * chore(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0
+ (#1641)
+ * chore(deps): bump github.com/containerd/containerd from 1.7.8
+ to 1.7.11 (#1642)
+ * chore(deps): bump actions/upload-artifact from 3.1.3 to 4.0.0
+ (#1638)
+ * chore(deps): bump sigstore/cosign-installer from 3.2.0 to 3.3.0
+ (#1632)
+ * chore(deps): bump github.com/charmbracelet/bubbletea (#1635)
+ * chore(deps): bump github.com/google/uuid from 1.4.0 to 1.5.0
+ (#1636)
+ * chore(deps): bump actions/setup-go from 4.1.0 to 5.0.0 (#1630)
+ * chore(deps): bump anchore/sbom-action from 0.15.0 to 0.15.1
+ (#1626)
+ * chore: pin action to correct sha (#1598)
+ * chore(deps): bump github.com/google/go-containerregistry
+ (#1625)
+
+-------------------------------------------------------------------
Old:
----
grype-0.73.4.obscpio
New:
----
grype-0.73.5.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ grype.spec ++++++
--- /var/tmp/diff_new_pack.jHDiO6/_old 2023-12-21 23:40:13.406064749 +0100
+++ /var/tmp/diff_new_pack.jHDiO6/_new 2023-12-21 23:40:13.406064749 +0100
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: grype
-Version: 0.73.4
+Version: 0.73.5
Release: 0
Summary: A vulnerability scanner for container images and filesystems
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.jHDiO6/_old 2023-12-21 23:40:13.442066063 +0100
+++ /var/tmp/diff_new_pack.jHDiO6/_new 2023-12-21 23:40:13.450066356 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/anchore/grype</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.73.4</param>
+ <param name="revision">v0.73.5</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.jHDiO6/_old 2023-12-21 23:40:13.474067232 +0100
+++ /var/tmp/diff_new_pack.jHDiO6/_new 2023-12-21 23:40:13.478067379 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/anchore/grype</param>
- <param name="changesrevision">a4bced160291e81dbdeaa415d20e64b8741ee00d</param></service></servicedata>
+ <param name="changesrevision">55ef6b610883c8898651114bf22621b0cc73cfbc</param></service></servicedata>
(No newline at EOF)
++++++ grype-0.73.4.obscpio -> grype-0.73.5.obscpio ++++++
/work/SRC/openSUSE:Factory/grype/grype-0.73.4.obscpio /work/SRC/openSUSE:Factory/.grype.new.1840/grype-0.73.5.obscpio differ: char 49, line 1
++++++ grype.obsinfo ++++++
--- /var/tmp/diff_new_pack.jHDiO6/_old 2023-12-21 23:40:13.514068694 +0100
+++ /var/tmp/diff_new_pack.jHDiO6/_new 2023-12-21 23:40:13.518068839 +0100
@@ -1,5 +1,5 @@
name: grype
-version: 0.73.4
-mtime: 1701354154
-commit: a4bced160291e81dbdeaa415d20e64b8741ee00d
+version: 0.73.5
+mtime: 1703178173
+commit: 55ef6b610883c8898651114bf22621b0cc73cfbc
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/grype/vendor.tar.gz /work/SRC/openSUSE:Factory/.grype.new.1840/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libgda for openSUSE:Factory checked in at 2023-12-21 23:40:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libgda (Old)
and /work/SRC/openSUSE:Factory/.libgda.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libgda"
Thu Dec 21 23:40:00 2023 rev:96 rq:1134549 version:6.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libgda/libgda.changes 2022-06-08 14:25:36.076552953 +0200
+++ /work/SRC/openSUSE:Factory/.libgda.new.1840/libgda.changes 2023-12-21 23:40:06.569815110 +0100
@@ -1,0 +2,5 @@
+Thu Dec 21 16:43:30 UTC 2023 - Bernhard Wiedemann <bwiedemann(a)suse.com>
+
+- Add reproducible.patch to override build date (boo#1047218)
+
+-------------------------------------------------------------------
New:
----
reproducible.patch
BETA DEBUG BEGIN:
New:
- Add reproducible.patch to override build date (boo#1047218)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libgda.spec ++++++
--- /var/tmp/diff_new_pack.xzkqcW/_old 2023-12-21 23:40:07.201838190 +0100
+++ /var/tmp/diff_new_pack.xzkqcW/_new 2023-12-21 23:40:07.201838190 +0100
@@ -39,6 +39,8 @@
Patch4: https://gitlab.gnome.org/GNOME/libgda/-/commit/bebdffb4de586fb43fd07ac54912…
# PATCH-FIX-UPSTREAM libgda-fix-meson-060.patch bjorn.lie(a)gmail.com -- Fix build with meson 0.61.0 and newer
Patch5: libgda-fix-meson-060.patch
+# PATCH-FIX-UPSTREAM https://gitlab.gnome.org/GNOME/libgda/-/merge_requests/192
+Patch6: reproducible.patch
BuildRequires: db-devel
BuildRequires: fdupes
++++++ reproducible.patch ++++++
merged upstream:
https://gitlab.gnome.org/GNOME/libgda/-/merge_requests/192
From c9837a3438622d49fe6a727d2512e0f0bb3827d7 Mon Sep 17 00:00:00 2001
From: "Bernhard M. Wiedemann" <bwiedemann(a)suse.de>
Date: Wed, 2 Feb 2022 14:25:57 +0100
Subject: [PATCH] Allow to override build date with SOURCE_DATE_EPOCH
in order to make builds reproducible.
See https://reproducible-builds.org/ for why this is good
and https://reproducible-builds.org/specs/source-date-epoch/
for the definition of this variable.
Also use UTC to be independent of timezone.
---
meson.build | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index 62b465941..bc4cecace 100644
--- a/meson.build
+++ b/meson.build
@@ -321,10 +321,18 @@ found_jdbc = false
dates = compiler.run('''
#include<glib.h>
#include <glib/gprintf.h>
+#include <stdlib.h>
void main (void) {
GDateTime *dt;
- dt = g_date_time_new_now_local ();
+ char *source_date_epoch;
+ gint64 epoch;
+ /* This assumes that the SOURCE_DATE_EPOCH environment variable will contain
+ a correct, positive integer */
+ if ((source_date_epoch = getenv("SOURCE_DATE_EPOCH")) == NULL ||
+ (epoch = (time_t)strtoll(source_date_epoch, NULL, 10)) <= 0 ||
+ (dt = g_date_time_new_from_unix_utc(epoch)) == NULL)
+ dt = g_date_time_new_now_utc ();
g_print (g_date_time_format(dt, "%F"));
}
''',
--
GitLab
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package minio-client for openSUSE:Factory checked in at 2023-12-21 23:39:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/minio-client (Old)
and /work/SRC/openSUSE:Factory/.minio-client.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "minio-client"
Thu Dec 21 23:39:53 2023 rev:62 rq:1134525 version:20231220T071422Z
Changes:
--------
--- /work/SRC/openSUSE:Factory/minio-client/minio-client.changes 2023-12-15 21:47:54.811541145 +0100
+++ /work/SRC/openSUSE:Factory/.minio-client.new.1840/minio-client.changes 2023-12-21 23:39:59.657562694 +0100
@@ -1,0 +2,14 @@
+Wed Dec 20 12:54:16 UTC 2023 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 20231220T071422Z:
+ * Set exitcode on copy/mirror source failure (#4798)
+ * update dependencies to address new CVE (#4799)
+ * tier: Support AWS web identity token file for MinIO EKS pods
+ (#4789)
+ * use explicit operation handling for anonymous operations to
+ prevent undesirable checks (#4791)
+ * decom: status clearly shows that the it is about raw disk usage
+ (#4792)
+ * Read new key license_v2 from SUBNET response (#4788)
+
+-------------------------------------------------------------------
Old:
----
mc-20231214T003741Z.obscpio
New:
----
mc-20231220T071422Z.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ minio-client.spec ++++++
--- /var/tmp/diff_new_pack.qG5KHE/_old 2023-12-21 23:40:00.729601842 +0100
+++ /var/tmp/diff_new_pack.qG5KHE/_new 2023-12-21 23:40:00.733601988 +0100
@@ -22,14 +22,14 @@
%define binary_name minio-client
Name: minio-client
-Version: 20231214T003741Z
+Version: 20231220T071422Z
Release: 0
Summary: Client for MinIO
License: AGPL-3.0-only
URL: https://github.com/minio/mc
Source: %{archive_name}-%{version}.tar.gz
Source1: vendor.tar.gz
-BuildRequires: go >= 1.19
+BuildRequires: go >= 1.21
%description
MinIO Client is a replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage.
++++++ _service ++++++
--- /var/tmp/diff_new_pack.qG5KHE/_old 2023-12-21 23:40:00.773603448 +0100
+++ /var/tmp/diff_new_pack.qG5KHE/_new 2023-12-21 23:40:00.777603595 +0100
@@ -5,7 +5,7 @@
<param name="exclude">.git</param>
<param name="changesgenerate">enable</param>
<param name="versionformat">@PARENT_TAG@</param>
- <param name="revision">RELEASE.2023-12-14T00-37-41Z</param>
+ <param name="revision">RELEASE.2023-12-20T07-14-22Z</param>
<param name="match-tag">RELEASE.*</param>
<param name="versionrewrite-pattern">RELEASE\.(.*)-(.*)-(.*)-(.*)-(.*)</param>
<param name="versionrewrite-replacement">\1\2\3\4\5</param>
@@ -19,7 +19,7 @@
<param name="compression">gz</param>
</service>
<service name="go_modules" mode="manual">
- <param name="archive">mc-20231214T003741Z.obscpio</param>
+ <param name="archive">mc-20231220T071422Z.obscpio</param>
</service>
</services>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.qG5KHE/_old 2023-12-21 23:40:00.797604326 +0100
+++ /var/tmp/diff_new_pack.qG5KHE/_new 2023-12-21 23:40:00.797604326 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/minio/mc</param>
- <param name="changesrevision">8da737f8fd63de58dc475bf88eb9e285d206e3ae</param></service></servicedata>
+ <param name="changesrevision">8e1573ec1b9c174e9f8d82ee9996d002c1d9caaa</param></service></servicedata>
(No newline at EOF)
++++++ mc-20231214T003741Z.obscpio -> mc-20231220T071422Z.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/CREDITS new/mc-20231220T071422Z/CREDITS
--- old/mc-20231214T003741Z/CREDITS 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/CREDITS 2023-12-20 08:14:22.000000000 +0100
@@ -139,33 +139,6 @@
================================================================
-github.com/benbjohnson/clock
-https://github.com/benbjohnson/clock
-----------------------------------------------------------------
-The MIT License (MIT)
-
-Copyright (c) 2014 Ben Johnson
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-
-================================================================
-
github.com/beorn7/perks
https://github.com/beorn7/perks
----------------------------------------------------------------
@@ -3756,6 +3729,213 @@
----------------------------------------------------------------
Apache License
Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "{}"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright {yyyy} {name of copyright owner}
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+================================================================
+
+github.com/matttproud/golang_protobuf_extensions/v2
+https://github.com/matttproud/golang_protobuf_extensions/v2
+----------------------------------------------------------------
+ Apache License
+ Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/admin-decom-status.go new/mc-20231220T071422Z/cmd/admin-decom-status.go
--- old/mc-20231214T003741Z/cmd/admin-decom-status.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/admin-decom-status.go 2023-12-20 08:14:22.000000000 +0100
@@ -139,14 +139,14 @@
cellText[0] = []string{
"ID",
"Pools",
- "Capacity",
+ "Raw Drives Usage",
"Status",
}
for idx, pool := range poolStatuses {
idx++
totalSize := uint64(pool.Decommission.TotalSize)
- currentSize := uint64(pool.Decommission.CurrentSize)
- capacity := humanize.IBytes(totalSize-currentSize) + " (used) / " + humanize.IBytes(totalSize) + " (total)"
+ usedCurrent := uint64(pool.Decommission.TotalSize - pool.Decommission.CurrentSize)
+ capacity := fmt.Sprintf("%.1f%% (total: %s)", 100*float64(usedCurrent)/float64(totalSize), humanize.IBytes(totalSize))
status := "Active"
if pool.Decommission != nil {
if pool.Decommission.Complete {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/anonymous-main.go new/mc-20231220T071422Z/cmd/anonymous-main.go
--- old/mc-20231214T003741Z/cmd/anonymous-main.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/anonymous-main.go 2023-12-20 08:14:22.000000000 +0100
@@ -425,27 +425,34 @@
ctx, cancelAnonymous := context.WithCancel(globalContext)
defer cancelAnonymous()
- var operation, anonymousStr string
+ var targetURL, anonymousStr string
+ var perms accessPerms
var probeErr *probe.Error
- perms := accessPerms(args.Get(1))
- targetURL := args.Get(2)
- if perms.isValidAccessPERM() {
- operation = "set"
+
+ operation := args.First()
+ switch operation {
+ case "set":
+ perms = accessPerms(args.Get(1))
+ if !perms.isValidAccessPERM() {
+ fatalIf(errDummy().Trace(), "Invalid access permission: `"+string(perms)+"`.")
+ }
+ targetURL = args.Get(2)
probeErr = doSetAccess(ctx, targetURL, perms)
if probeErr == nil {
perms, _, probeErr = doGetAccess(ctx, targetURL)
}
- } else if perms.isValidAccessFile() {
+ case "set-json":
+ perms = accessPerms(args.Get(1))
+ if !perms.isValidAccessFile() {
+ fatalIf(errDummy().Trace(), "Invalid access file: `"+string(perms)+"`.")
+ }
+ targetURL = args.Get(2)
probeErr = doSetAccessJSON(ctx, targetURL, perms)
- operation = "set-json"
- } else {
+ case "get", "get-json":
targetURL = args.Get(1)
- operation = "get"
- if args.First() == "get-json" {
- operation = "get-json"
- }
perms, anonymousStr, probeErr = doGetAccess(ctx, targetURL)
-
+ default:
+ fatalIf(errDummy().Trace(), "Invalid operation: `"+operation+"`.")
}
// Upon error exit.
if probeErr != nil {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/cp-main.go new/mc-20231220T071422Z/cmd/cp-main.go
--- old/mc-20231214T003741Z/cmd/cp-main.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/cp-main.go 2023-12-20 08:14:22.000000000 +0100
@@ -659,6 +659,11 @@
}
}
+ // Source has error
+ if errSeen && totalObjects == 0 && retErr == nil {
+ retErr = exitStatus(globalErrorExitStatus)
+ }
+
return retErr
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/cp-url.go new/mc-20231220T071422Z/cmd/cp-url.go
--- old/mc-20231214T003741Z/cmd/cp-url.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/cp-url.go 2023-12-20 08:14:22.000000000 +0100
@@ -361,6 +361,10 @@
go func() {
defer close(finalCopyURLsCh)
for cpURLs := range copyURLsCh {
+ if cpURLs.Error != nil {
+ finalCopyURLsCh <- cpURLs
+ continue
+ }
// Skip objects older than --older-than parameter if specified
if o.olderThan != "" && isOlder(cpURLs.SourceContent.Time, o.olderThan) {
continue
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/ilm-tier-add.go new/mc-20231220T071422Z/cmd/ilm-tier-add.go
--- old/mc-20231214T003741Z/cmd/ilm-tier-add.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/ilm-tier-add.go 2023-12-20 08:14:22.000000000 +0100
@@ -56,6 +56,14 @@
Usage: "use AWS S3 role",
},
cli.StringFlag{
+ Name: "aws-role-arn",
+ Usage: "use AWS S3 role name",
+ },
+ cli.StringFlag{
+ Name: "aws-web-identity-file",
+ Usage: "use AWS S3 web identity file",
+ },
+ cli.StringFlag{
Name: "account-name",
Value: "",
Usage: "Azure Blob Storage account name",
@@ -204,14 +212,25 @@
return minioCfg
case madmin.S3:
- accessKey := ctx.String("access-key")
- secretKey := ctx.String("secret-key")
+ accessKey := ctx.IsSet("access-key")
+ secretKey := ctx.IsSet("secret-key")
useAwsRole := ctx.IsSet("use-aws-role")
- if accessKey == "" && secretKey == "" && !useAwsRole {
- fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s remote tier requires access credentials or AWS role", tierType))
- }
- if (accessKey != "" || secretKey != "") && useAwsRole {
- fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s remote tier requires access credentials", tierType))
+ awsRoleArn := ctx.IsSet("aws-role-arn")
+ awsWebIdentity := ctx.IsSet("aws-web-identity-file")
+
+ // Extensive flag check
+ switch {
+ case !accessKey && !secretKey && !useAwsRole && !awsRoleArn && !awsWebIdentity:
+ fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s: No authentication mechanism was provided", tierType))
+ case (accessKey || secretKey) && (useAwsRole || awsRoleArn || awsWebIdentity):
+ fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s: Static credentials cannot be combined with AWS role authentication", tierType))
+ case useAwsRole && (awsRoleArn || awsWebIdentity):
+ fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s: --use-aws-role cannot be combined with --aws-role-arn or --aws-web-identity-file", tierType))
+ case (awsRoleArn && !awsWebIdentity) || (!awsRoleArn && awsWebIdentity):
+ fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s: Both --use-aws-role and --aws-web-identity-file are required to enable web identity token based authentication", tierType))
+ case (accessKey && !secretKey) || (!accessKey && secretKey):
+ fatalIf(errInvalidArgument().Trace(), fmt.Sprintf("%s: Both --access-key and --secret-key are required to enable static credentials authentication", tierType))
+
}
bucket := ctx.String("bucket")
@@ -245,7 +264,13 @@
if ctx.IsSet("use-aws-role") {
s3Opts = append(s3Opts, madmin.S3AWSRole())
}
- s3Cfg, e := madmin.NewTierS3(tierName, accessKey, secretKey, bucket, s3Opts...)
+ if ctx.IsSet("aws-role-arn") {
+ s3Opts = append(s3Opts, madmin.S3AWSRoleARN(ctx.String("aws-role-arn")))
+ }
+ if ctx.IsSet("aws-web-identity-file") {
+ s3Opts = append(s3Opts, madmin.S3AWSRoleWebIdentityTokenFile(ctx.String("aws-web-identity-file")))
+ }
+ s3Cfg, e := madmin.NewTierS3(tierName, ctx.String("access-key"), ctx.String("secret-key"), bucket, s3Opts...)
fatalIf(probe.NewError(e), "Invalid configuration for AWS S3 compatible remote tier")
return s3Cfg
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/subnet-utils.go new/mc-20231220T071422Z/cmd/subnet-utils.go
--- old/mc-20231214T003741Z/cmd/subnet-utils.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/subnet-utils.go 2023-12-20 08:14:22.000000000 +0100
@@ -653,7 +653,7 @@
func extractAndSaveSubnetCreds(alias, resp string) (string, string, error) {
parsedResp := gjson.Parse(resp)
- lic, e := extractSubnetCred("license", parsedResp)
+ lic, e := extractSubnetCred("license_v2", parsedResp)
if e != nil {
return "", "", e
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/cmd/tofu.go new/mc-20231220T071422Z/cmd/tofu.go
--- old/mc-20231214T003741Z/cmd/tofu.go 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/cmd/tofu.go 2023-12-20 08:14:22.000000000 +0100
@@ -23,7 +23,6 @@
"context"
"crypto/ecdsa"
"crypto/ed25519"
- "crypto/elliptic"
"crypto/rsa"
"crypto/sha1"
"crypto/sha256"
@@ -60,7 +59,11 @@
return nil, e
}
case *ecdsa.PublicKey:
- publicKeyBytes = elliptic.Marshal(pub.Curve, pub.X, pub.Y)
+ pubKey, e := pub.ECDH()
+ if e != nil {
+ return nil, e
+ }
+ publicKeyBytes = pubKey.Bytes()
case ed25519.PublicKey:
publicKeyBytes = pub
default:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/go.mod new/mc-20231220T071422Z/go.mod
--- old/mc-20231214T003741Z/go.mod 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/go.mod 2023-12-20 08:14:22.000000000 +0100
@@ -3,37 +3,37 @@
go 1.19
require (
- github.com/charmbracelet/bubbletea v0.24.2
+ github.com/charmbracelet/bubbletea v0.25.0
github.com/cheggaaa/pb v1.0.29
github.com/dustin/go-humanize v1.0.1
- github.com/fatih/color v1.15.0
+ github.com/fatih/color v1.16.0
github.com/go-ole/go-ole v1.3.0 // indirect
github.com/goccy/go-json v0.10.2 // indirect
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510
- github.com/google/uuid v1.3.1
+ github.com/google/uuid v1.5.0
github.com/inconshreveable/mousetrap v1.1.0
github.com/json-iterator/go v1.1.12
- github.com/klauspost/compress v1.16.7
+ github.com/klauspost/compress v1.17.4
github.com/mattn/go-ieproxy v0.0.11
- github.com/mattn/go-isatty v0.0.19
+ github.com/mattn/go-isatty v0.0.20
github.com/minio/cli v1.24.2
github.com/minio/colorjson v1.0.6
github.com/minio/filepath v1.0.0
github.com/minio/md5-simd v1.1.2 // indirect
- github.com/minio/minio-go/v7 v7.0.65-0.20231130060928-54e115c40e66
+ github.com/minio/minio-go/v7 v7.0.66
github.com/minio/selfupdate v0.6.0
github.com/minio/sha256-simd v1.0.1
github.com/mitchellh/go-homedir v1.1.0
github.com/pkg/xattr v0.4.9
github.com/posener/complete v1.2.3
- github.com/prometheus/client_golang v1.16.0
+ github.com/prometheus/client_golang v1.17.0
github.com/prometheus/prom2json v1.3.3
github.com/rjeczalik/notify v0.9.3
github.com/rs/xid v1.5.0
- github.com/shirou/gopsutil/v3 v3.23.8
- github.com/tidwall/gjson v1.16.0
- golang.org/x/crypto v0.16.0 // indirect
- golang.org/x/net v0.17.0
+ github.com/shirou/gopsutil/v3 v3.23.11
+ github.com/tidwall/gjson v1.17.0
+ golang.org/x/crypto v0.17.0 // indirect
+ golang.org/x/net v0.19.0
golang.org/x/text v0.14.0
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c
gopkg.in/h2non/filetype.v1 v1.0.5
@@ -41,34 +41,35 @@
)
require (
- github.com/charmbracelet/bubbles v0.16.1
- github.com/charmbracelet/lipgloss v0.8.0
- github.com/gdamore/tcell/v2 v2.6.0
+ github.com/charmbracelet/bubbles v0.17.1
+ github.com/charmbracelet/lipgloss v0.9.1
+ github.com/gdamore/tcell/v2 v2.7.0
github.com/golang-jwt/jwt/v4 v4.5.0
github.com/juju/ratelimit v1.0.2
- github.com/minio/madmin-go/v3 v3.0.37-0.20231211192618-d20cff0b11d9
- github.com/minio/pkg/v2 v2.0.5
+ github.com/minio/madmin-go/v3 v3.0.37
+ github.com/minio/pkg/v2 v2.0.7
github.com/muesli/reflow v0.3.0
- github.com/navidys/tvxwidgets v0.3.0
+ github.com/navidys/tvxwidgets v0.4.1
github.com/olekukonko/tablewriter v0.0.5
- github.com/prometheus/client_model v0.4.0
- github.com/rivo/tview v0.0.0-20230909130259-ba6a2a345459
- github.com/vbauerster/mpb/v8 v8.6.2
+ github.com/prometheus/client_model v0.5.0
+ github.com/rivo/tview v0.0.0-20231206124440-5f078138442e
+ github.com/vbauerster/mpb/v8 v8.7.1
golang.org/x/term v0.15.0
)
require (
- aead.dev/minisign v0.2.0 // indirect
+ aead.dev/minisign v0.2.1 // indirect
github.com/VividCortex/ewma v1.2.0 // indirect
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/kr/pretty v0.3.1 // indirect
+ github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
github.com/minio/mux v1.9.0 // indirect
github.com/rogpeppe/go-internal v1.10.0 // indirect
github.com/safchain/ethtool v0.3.0 // indirect
github.com/shoenig/go-m1cpu v0.1.6 // indirect
- google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb // indirect
- google.golang.org/genproto/googleapis/rpc v0.0.0-20230913181813-007df8e322eb // indirect
+ google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0 // indirect
+ google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0 // indirect
)
require (
@@ -84,8 +85,8 @@
github.com/golang/protobuf v1.5.3 // indirect
github.com/hashicorp/errwrap v1.1.0 // indirect
github.com/hashicorp/go-multierror v1.1.1 // indirect
- github.com/jedib0t/go-pretty/v6 v6.4.7
- github.com/klauspost/cpuid/v2 v2.2.5 // indirect
+ github.com/jedib0t/go-pretty/v6 v6.4.9
+ github.com/klauspost/cpuid/v2 v2.2.6 // indirect
github.com/kr/text v0.2.0 // indirect
github.com/lestrrat-go/backoff/v2 v2.0.8 // indirect
github.com/lestrrat-go/blackmagic v1.0.2 // indirect
@@ -94,7 +95,7 @@
github.com/lestrrat-go/jwx v1.2.27 // indirect
github.com/lestrrat-go/option v1.0.1 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
- github.com/lufia/plan9stats v0.0.0-20230326075908-cb1d2100619a // indirect
+ github.com/lufia/plan9stats v0.0.0-20231016141302-07b5767bb0ed // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-localereader v0.0.1 // indirect
github.com/mattn/go-runewidth v0.0.15 // indirect
@@ -107,26 +108,26 @@
github.com/philhofer/fwd v1.1.2 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/power-devops/perfstat v0.0.0-20221212215047-62379fc7944b // indirect
- github.com/prometheus/common v0.44.0 // indirect
- github.com/prometheus/procfs v0.11.1
+ github.com/prometheus/common v0.45.0 // indirect
+ github.com/prometheus/procfs v0.12.0
github.com/rivo/uniseg v0.4.4 // indirect
github.com/secure-io/sio-go v0.3.1 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/tidwall/match v1.1.1 // indirect
github.com/tidwall/pretty v1.2.1 // indirect
- github.com/tinylib/msgp v1.1.8 // indirect
- github.com/tklauser/go-sysconf v0.3.12 // indirect
- github.com/tklauser/numcpus v0.6.1 // indirect
+ github.com/tinylib/msgp v1.1.9 // indirect
+ github.com/tklauser/go-sysconf v0.3.13 // indirect
+ github.com/tklauser/numcpus v0.7.0 // indirect
github.com/yusufpapurcu/wmi v1.2.3 // indirect
- go.etcd.io/etcd/api/v3 v3.5.9 // indirect
- go.etcd.io/etcd/client/pkg/v3 v3.5.9 // indirect
- go.etcd.io/etcd/client/v3 v3.5.9 // indirect
+ go.etcd.io/etcd/api/v3 v3.5.11 // indirect
+ go.etcd.io/etcd/client/pkg/v3 v3.5.11 // indirect
+ go.etcd.io/etcd/client/v3 v3.5.11 // indirect
go.uber.org/multierr v1.11.0 // indirect
- go.uber.org/zap v1.25.0 // indirect
- golang.org/x/sync v0.3.0 // indirect
+ go.uber.org/zap v1.26.0 // indirect
+ golang.org/x/sync v0.5.0 // indirect
golang.org/x/sys v0.15.0
- google.golang.org/genproto v0.0.0-20230913181813-007df8e322eb // indirect
- google.golang.org/grpc v1.58.3 // indirect
+ google.golang.org/genproto v0.0.0-20231212172506-995d672761c0 // indirect
+ google.golang.org/grpc v1.60.1 // indirect
google.golang.org/protobuf v1.31.0 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20231214T003741Z/go.sum new/mc-20231220T071422Z/go.sum
--- old/mc-20231214T003741Z/go.sum 2023-12-14 01:37:41.000000000 +0100
+++ new/mc-20231220T071422Z/go.sum 2023-12-20 08:14:22.000000000 +0100
@@ -1,5 +1,6 @@
-aead.dev/minisign v0.2.0 h1:kAWrq/hBRu4AARY6AlciO83xhNnW9UaC8YipS2uhLPk=
aead.dev/minisign v0.2.0/go.mod h1:zdq6LdSd9TbuSxchxwhpA9zEb9YXcVGoE8JakuiGaIQ=
+aead.dev/minisign v0.2.1 h1:Z+7HA9dsY/eGycYj6kpWHpcJpHtjAwGiJFvbiuO9o+M=
+aead.dev/minisign v0.2.1/go.mod h1:oCOjeA8VQNEbuSCFaaUXKekOusa/mll6WtMoO5JY4M4=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/VividCortex/ewma v1.2.0 h1:f58SaIzcDXrSy3kWaHNvuJgJ3Nmz59Zji6XoJR/q1ow=
github.com/VividCortex/ewma v1.2.0/go.mod h1:nz4BbCtbLyFDeC9SUHbtcT5644juEuWfUAUnGx7j5l4=
@@ -7,17 +8,16 @@
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d/go.mod h1:asat636LX7Bqt5lYEZ27JNDcqxfjdBQuJ/MM4CN/Lzo=
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8=
-github.com/benbjohnson/clock v1.3.0 h1:ip6w0uFQkncKQ979AypyG0ER7mqUSBdKLOgAle/AT8A=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44=
github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
-github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY=
-github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc=
-github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY=
-github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg=
-github.com/charmbracelet/lipgloss v0.8.0 h1:IS00fk4XAHcf8uZKc3eHeMUTCxUH6NkaTrdyCQk84RU=
-github.com/charmbracelet/lipgloss v0.8.0/go.mod h1:p4eYUZZJ/0oXTuCQKFF8mqyKCz0ja6y+7DniDDw5KKU=
+github.com/charmbracelet/bubbles v0.17.1 h1:0SIyjOnkrsfDo88YvPgAWvZMwXe26TP6drRvmkjyUu4=
+github.com/charmbracelet/bubbles v0.17.1/go.mod h1:9HxZWlkCqz2PRwsCbYl7a3KXvGzFaDHpYbSYMJ+nE3o=
+github.com/charmbracelet/bubbletea v0.25.0 h1:bAfwk7jRz7FKFl9RzlIULPkStffg5k6pNt5dywy4TcM=
+github.com/charmbracelet/bubbletea v0.25.0/go.mod h1:EN3QDR1T5ZdWmdfDzYcqOCAps45+QIJbLOBxmVNWNNg=
+github.com/charmbracelet/lipgloss v0.9.1 h1:PNyd3jvaJbg4jRHKWXnCj1akQm4rh8dbEzN1p/u1KWg=
+github.com/charmbracelet/lipgloss v0.9.1/go.mod h1:1mPmG4cxScwUQALAAnacHaigiiHB9Pmr+v1VEawJl6I=
github.com/cheggaaa/pb v1.0.29 h1:FckUN5ngEk2LpvuG0fw1GEFx6LtyY2pWI/Z2QgCnEYo=
github.com/cheggaaa/pb v1.0.29/go.mod h1:W40334L7FMC5JKWldsTWbdGjLo0RxUKK73K+TuPxX30=
github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY=
@@ -36,14 +36,14 @@
github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU=
-github.com/fatih/color v1.15.0 h1:kOqh6YHBtK8aywxGerMG2Eq3H6Qgoqeo13Bk2Mv/nBs=
-github.com/fatih/color v1.15.0/go.mod h1:0h5ZqXfHYED7Bhv2ZJamyIOUej9KtShiJESRwBDUSsw=
+github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM=
+github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE=
github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo=
github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M=
github.com/gdamore/encoding v1.0.0 h1:+7OoQ1Bc6eTm5niUzBa0Ctsh6JbMW6Ra+YNuAtDBdko=
github.com/gdamore/encoding v1.0.0/go.mod h1:alR0ol34c49FCSBLjhosxzcPHQbf2trDkoo5dl+VrEg=
-github.com/gdamore/tcell/v2 v2.6.0 h1:OKbluoP9VYmJwZwq/iLb4BxwKcwGthaa1YNBJIyCySg=
-github.com/gdamore/tcell/v2 v2.6.0/go.mod h1:be9omFATkdr0D9qewWW3d+MEvl5dha+Etb5y65J2H8Y=
+github.com/gdamore/tcell/v2 v2.7.0 h1:I5LiGTQuwrysAt1KS9wg1yFfOI3arI3ucFrxtd/xqaA=
+github.com/gdamore/tcell/v2 v2.7.0/go.mod h1:hl/KtAANGBecfIPxk+FzKvThTqI84oplgbPEmVX60b8=
github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
github.com/go-ole/go-ole v1.3.0 h1:Dt6ye7+vXGIKZ7Xtk4s6/xVdGDQynvom7xCFEdWr6uE=
github.com/go-ole/go-ole v1.3.0/go.mod h1:5LS6F96DhAwUc7C+1HLexzMXY1xGRSryjyPPKW6zv78=
@@ -60,13 +60,14 @@
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
-github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
+github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
+github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
-github.com/google/uuid v1.3.1 h1:KjJaJ9iWZ3jOFZIf1Lqf4laDRCasjl0BCmnEGxkdLb4=
-github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU=
+github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I=
github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
@@ -75,19 +76,19 @@
github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM=
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
-github.com/jedib0t/go-pretty/v6 v6.4.7 h1:lwiTJr1DEkAgzljsUsORmWsVn5MQjt1BPJdPCtJ6KXE=
-github.com/jedib0t/go-pretty/v6 v6.4.7/go.mod h1:Ndk3ase2CkQbXLLNf5QDHoYb6J9WtVfmHZu9n8rk2xs=
+github.com/jedib0t/go-pretty/v6 v6.4.9 h1:vZ6bjGg2eBSrJn365qlxGcaWu09Id+LHtrfDWlB2Usc=
+github.com/jedib0t/go-pretty/v6 v6.4.9/go.mod h1:Ndk3ase2CkQbXLLNf5QDHoYb6J9WtVfmHZu9n8rk2xs=
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
github.com/juju/ratelimit v1.0.2 h1:sRxmtRiajbvrcLQT7S+JbqU0ntsb9W2yhSdNN8tWfaI=
github.com/juju/ratelimit v1.0.2/go.mod h1:qapgC/Gy+xNh9UxzV13HGGl/6UXNN+ct+vwSgWNm/qk=
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
-github.com/klauspost/compress v1.16.7 h1:2mk3MPGNzKyxErAw8YaohYh69+pa4sIQSC0fPGCFR9I=
-github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
+github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4=
+github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM=
github.com/klauspost/cpuid/v2 v2.0.1/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
-github.com/klauspost/cpuid/v2 v2.2.5 h1:0E5MSMDEoAulmXNFquVs//DdoomxaoTY1kUhbc/qbZg=
-github.com/klauspost/cpuid/v2 v2.2.5/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws=
+github.com/klauspost/cpuid/v2 v2.2.6 h1:ndNyv040zDGIDh8thGkXYjnFtiN02M1PVVF+JE/48xc=
+github.com/klauspost/cpuid/v2 v2.2.6/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws=
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
@@ -111,8 +112,8 @@
github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I=
-github.com/lufia/plan9stats v0.0.0-20230326075908-cb1d2100619a h1:N9zuLhTvBSRt0gWSiJswwQ2HqDmtX/ZCDJURnKUt1Ik=
-github.com/lufia/plan9stats v0.0.0-20230326075908-cb1d2100619a/go.mod h1:JKx41uQRwqlTZabZc+kILPrO/3jlKnQ2Z8b7YiVw5cE=
+github.com/lufia/plan9stats v0.0.0-20231016141302-07b5767bb0ed h1:036IscGBfJsFIgJQzlui7nK1Ncm0tp2ktmPj8xO4N/0=
+github.com/lufia/plan9stats v0.0.0-20231016141302-07b5767bb0ed/go.mod h1:ilwx/Dta8jXAgpFYFvSWEMwxmbWXyiUHkd5FwyKhb5k=
github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
@@ -121,35 +122,36 @@
github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE=
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
-github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=
-github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
+github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
+github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4=
github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88=
github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU=
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk=
github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
-github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U=
github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo=
github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
+github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg=
+github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k=
github.com/minio/cli v1.24.2 h1:J+fCUh9mhPLjN3Lj/YhklXvxj8mnyE/D6FpFduXJ2jg=
github.com/minio/cli v1.24.2/go.mod h1:bYxnK0uS629N3Bq+AOZZ+6lwF77Sodk4+UL9vNuXhOY=
github.com/minio/colorjson v1.0.6 h1:m7TUvpvt0u7FBmVIEQNIa0T4NBQlxrcMBp4wJKsg2Ik=
github.com/minio/colorjson v1.0.6/go.mod h1:LUXwS5ZGNb6Eh9f+t+3uJiowD3XsIWtsvTriUBeqgYs=
github.com/minio/filepath v1.0.0 h1:fvkJu1+6X+ECRA6G3+JJETj4QeAYO9sV43I79H8ubDY=
github.com/minio/filepath v1.0.0/go.mod h1:/nRZA2ldl5z6jT9/KQuvZcQlxZIMQoFFQPvEXx9T/Bw=
-github.com/minio/madmin-go/v3 v3.0.37-0.20231211192618-d20cff0b11d9 h1:Rpz09w+Y9Bcq3MvNbxA/IFynLjVm6L62o5P7oMwNMWc=
-github.com/minio/madmin-go/v3 v3.0.37-0.20231211192618-d20cff0b11d9/go.mod h1:4QN2NftLSV7MdlT50dkrenOMmNVHluxTvlqJou3hte8=
+github.com/minio/madmin-go/v3 v3.0.37 h1:u8gl6xg6Vt+LLwes/8rJhAq2wtpIRWRULptNVQtH9JE=
+github.com/minio/madmin-go/v3 v3.0.37/go.mod h1:4QN2NftLSV7MdlT50dkrenOMmNVHluxTvlqJou3hte8=
github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=
github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM=
-github.com/minio/minio-go/v7 v7.0.65-0.20231130060928-54e115c40e66 h1:9pgbcTmr0yvwlQJHsS72QDyNkZajKXCxnszpJtM5B4I=
-github.com/minio/minio-go/v7 v7.0.65-0.20231130060928-54e115c40e66/go.mod h1:R4WVUR6ZTedlCcGwZRauLMIKjgyaWxhs4Mqi/OMPmEc=
+github.com/minio/minio-go/v7 v7.0.66 h1:bnTOXOHjOqv/gcMuiVbN9o2ngRItvqE774dG9nq0Dzw=
+github.com/minio/minio-go/v7 v7.0.66/go.mod h1:DHAgmyQEGdW3Cif0UooKOyrT3Vxs82zNdV6tkKhRtbs=
github.com/minio/mux v1.9.0 h1:dWafQFyEfGhJvK6AwLOt83bIG5bxKxKJnKMCi0XAaoA=
github.com/minio/mux v1.9.0/go.mod h1:1pAare17ZRL5GpmNL+9YmqHoWnLmMZF9C/ioUCfy0BQ=
-github.com/minio/pkg/v2 v2.0.5 h1:I5LGA7rMwo/T8qRp3UDoPCZKtnUHDBoXP025TvxUqCc=
-github.com/minio/pkg/v2 v2.0.5/go.mod h1:ya1jPY/rtVp3HarxwDQJkclR8Rd2QxwxA9kwS436ovs=
+github.com/minio/pkg/v2 v2.0.7 h1:vJZ+XUTDeUe/cHpPZSyG/+54252dg6RQKU5K1jXfy/A=
+github.com/minio/pkg/v2 v2.0.7/go.mod h1:yayUTo82b0RK+e97hGb1naC787mOtUEyDs3SIcwSyHI=
github.com/minio/selfupdate v0.6.0 h1:i76PgT0K5xO9+hjzKcacQtO7+MjJ4JKA8Ak8XQ9DDwU=
github.com/minio/selfupdate v0.6.0/go.mod h1:bO02GTIPCMQFTEvE5h4DjYB58bCoZ35XLeBf0buTDdM=
github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM=
@@ -169,8 +171,8 @@
github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8=
github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo=
github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8=
-github.com/navidys/tvxwidgets v0.3.0 h1:n04eW19PyUpnEochKGn15ZvCmKkcpzA188vH6XBnOMA=
-github.com/navidys/tvxwidgets v0.3.0/go.mod h1:Cr8CTnbinH2X8bY/vwb8914mku3qImHQ8fmeqxwc9Cg=
+github.com/navidys/tvxwidgets v0.4.1 h1:abITHN2R0AN1G5XYBDCeTBfR+E1FRsDKN5j1FKI8ags=
+github.com/navidys/tvxwidgets v0.4.1/go.mod h1:VJRhOCt9q4cuqN1UebaWRAc0MG4pmpHMBWL3tRSoqdI=
github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=
github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=
github.com/philhofer/fwd v1.1.2 h1:bnDivRJ1EWPjUIRXV5KfORO897HTbpFAQddBdE8t7Gw=
@@ -188,18 +190,18 @@
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE=
github.com/power-devops/perfstat v0.0.0-20221212215047-62379fc7944b h1:0LFwY6Q3gMACTjAbMZBjXAqTOzOwFaj2Ld6cjeQ7Rig=
github.com/power-devops/perfstat v0.0.0-20221212215047-62379fc7944b/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE=
-github.com/prometheus/client_golang v1.16.0 h1:yk/hx9hDbrGHovbci4BY+pRMfSuuat626eFsHb7tmT8=
-github.com/prometheus/client_golang v1.16.0/go.mod h1:Zsulrv/L9oM40tJ7T815tM89lFEugiJ9HzIqaAx4LKc=
-github.com/prometheus/client_model v0.4.0 h1:5lQXD3cAg1OXBf4Wq03gTrXHeaV0TQvGfUooCfx1yqY=
-github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU=
-github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY=
-github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY=
-github.com/prometheus/procfs v0.11.1 h1:xRC8Iq1yyca5ypa9n1EZnWZkt7dwcoRPQwX/5gwaUuI=
-github.com/prometheus/procfs v0.11.1/go.mod h1:eesXgaPo1q7lBpVMoMy0ZOFTth9hBn4W/y0/p/ScXhY=
+github.com/prometheus/client_golang v1.17.0 h1:rl2sfwZMtSthVU752MqfjQozy7blglC+1SOtjMAMh+Q=
+github.com/prometheus/client_golang v1.17.0/go.mod h1:VeL+gMmOAxkS2IqfCq0ZmHSL+LjWfWDUmp1mBz9JgUY=
+github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw=
+github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI=
+github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM=
+github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY=
+github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo=
+github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo=
github.com/prometheus/prom2json v1.3.3 h1:IYfSMiZ7sSOfliBoo89PcufjWO4eAR0gznGcETyaUgo=
github.com/prometheus/prom2json v1.3.3/go.mod h1:Pv4yIPktEkK7btWsrUTWDDDrnpUrAELaOCj+oFwlgmc=
-github.com/rivo/tview v0.0.0-20230909130259-ba6a2a345459 h1:siWUqEVzxnotJ195QmJ05UyP6PSFfYmexlte3piUPDg=
-github.com/rivo/tview v0.0.0-20230909130259-ba6a2a345459/go.mod h1:nVwGv4MP47T0jvlk7KuTTjjuSmrGO4JF0iaiNt4bufE=
+github.com/rivo/tview v0.0.0-20231206124440-5f078138442e h1:mPy47VW9tkqImnSPgcjnEHJuG3XHDBtXj2hDb1qBrRs=
+github.com/rivo/tview v0.0.0-20231206124440-5f078138442e/go.mod h1:c0SPlNPXkM+/Zgjn/0vD3W0Ds1yxstN7lpquqLDpWCg=
github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
github.com/rivo/uniseg v0.4.3/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
@@ -216,8 +218,8 @@
github.com/safchain/ethtool v0.3.0/go.mod h1:SA9BwrgyAqNo7M+uaL6IYbxpm5wk3L7Mm6ocLW+CJUs=
github.com/secure-io/sio-go v0.3.1 h1:dNvY9awjabXTYGsTF1PiCySl9Ltofk9GA3VdWlo7rRc=
github.com/secure-io/sio-go v0.3.1/go.mod h1:+xbkjDzPjwh4Axd07pRKSNriS9SCiYksWnZqdnfpQxs=
-github.com/shirou/gopsutil/v3 v3.23.8 h1:xnATPiybo6GgdRoC4YoGnxXZFRc3dqQTGi73oLvvBrE=
-github.com/shirou/gopsutil/v3 v3.23.8/go.mod h1:7hmCaBn+2ZwaZOr6jmPBZDfawwMGuo1id3C6aM8EDqQ=
+github.com/shirou/gopsutil/v3 v3.23.11 h1:i3jP9NjCPUz7FiZKxlMnODZkdSIp2gnzfrvsu9CuWEQ=
+github.com/shirou/gopsutil/v3 v3.23.11/go.mod h1:1FrWgea594Jp7qmjHUUPlJDTPgcsb9mGnXDxavtikzM=
github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFtM=
github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ=
github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU=
@@ -236,37 +238,39 @@
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
-github.com/tidwall/gjson v1.16.0 h1:SyXa+dsSPpUlcwEDuKuEBJEz5vzTvOea+9rjyYodQFg=
-github.com/tidwall/gjson v1.16.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
+github.com/tidwall/gjson v1.17.0 h1:/Jocvlh98kcTfpN2+JzGQWQcqrPQwDrVEMApx/M5ZwM=
+github.com/tidwall/gjson v1.17.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA=
github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4=
github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
-github.com/tinylib/msgp v1.1.8 h1:FCXC1xanKO4I8plpHGH2P7koL/RzZs12l/+r7vakfm0=
-github.com/tinylib/msgp v1.1.8/go.mod h1:qkpG+2ldGg4xRFmx+jfTvZPxfGFhi64BcnL9vkCm/Tw=
-github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU=
+github.com/tinylib/msgp v1.1.9 h1:SHf3yoO2sGA0veCJeCBYLHuttAVFHGm2RHgNodW7wQU=
+github.com/tinylib/msgp v1.1.9/go.mod h1:BCXGB54lDD8qUEPmiG0cQQUANC4IUQyB2ItS2UDlO/k=
github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI=
-github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk=
+github.com/tklauser/go-sysconf v0.3.13 h1:GBUpcahXSpR2xN01jhkNAbTLRk2Yzgggk8IM08lq3r4=
+github.com/tklauser/go-sysconf v0.3.13/go.mod h1:zwleP4Q4OehZHGn4CYZDipCgg9usW5IJePewFCGVEa0=
github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY=
-github.com/vbauerster/mpb/v8 v8.6.2 h1:9EhnJGQRtvgDVCychJgR96EDCOqgg2NsMuk5JUcX4DA=
-github.com/vbauerster/mpb/v8 v8.6.2/go.mod h1:oVJ7T+dib99kZ/VBjoBaC8aPXiSAihnzuKmotuihyFo=
+github.com/tklauser/numcpus v0.7.0 h1:yjuerZP127QG9m5Zh/mSO4wqurYil27tHrqwRoRjpr4=
+github.com/tklauser/numcpus v0.7.0/go.mod h1:bb6dMVcj8A42tSE7i32fsIUCbQNllK5iDguyOZRUzAY=
+github.com/vbauerster/mpb/v8 v8.7.1 h1:bQoSMMTFAg/gjsLrBYmO8gbRcZt7aDq6WI2IMa9BTqM=
+github.com/vbauerster/mpb/v8 v8.7.1/go.mod h1:fWgXcAu4W+0cBSUh4ZlaKJyC2KtgU27ZSTaiIk0QNsQ=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
github.com/yusufpapurcu/wmi v1.2.3 h1:E1ctvB7uKFMOJw3fdOW32DwGE9I7t++CRUEMKvFoFiw=
github.com/yusufpapurcu/wmi v1.2.3/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0=
-go.etcd.io/etcd/api/v3 v3.5.9 h1:4wSsluwyTbGGmyjJktOf3wFQoTBIURXHnq9n/G/JQHs=
-go.etcd.io/etcd/api/v3 v3.5.9/go.mod h1:uyAal843mC8uUVSLWz6eHa/d971iDGnCRpmKd2Z+X8k=
-go.etcd.io/etcd/client/pkg/v3 v3.5.9 h1:oidDC4+YEuSIQbsR94rY9gur91UPL6DnxDCIYd2IGsE=
-go.etcd.io/etcd/client/pkg/v3 v3.5.9/go.mod h1:y+CzeSmkMpWN2Jyu1npecjB9BBnABxGM4pN8cGuJeL4=
-go.etcd.io/etcd/client/v3 v3.5.9 h1:r5xghnU7CwbUxD/fbUtRyJGaYNfDun8sp/gTr1hew6E=
-go.etcd.io/etcd/client/v3 v3.5.9/go.mod h1:i/Eo5LrZ5IKqpbtpPDuaUnDOUv471oDg8cjQaUr2MbA=
+go.etcd.io/etcd/api/v3 v3.5.11 h1:B54KwXbWDHyD3XYAwprxNzTe7vlhR69LuBgZnMVvS7E=
+go.etcd.io/etcd/api/v3 v3.5.11/go.mod h1:Ot+o0SWSyT6uHhA56al1oCED0JImsRiU9Dc26+C2a+4=
+go.etcd.io/etcd/client/pkg/v3 v3.5.11 h1:bT2xVspdiCj2910T0V+/KHcVKjkUrCZVtk8J2JF2z1A=
+go.etcd.io/etcd/client/pkg/v3 v3.5.11/go.mod h1:seTzl2d9APP8R5Y2hFL3NVlD6qC/dOT+3kvrqPyTas4=
+go.etcd.io/etcd/client/v3 v3.5.11 h1:ajWtgoNSZJ1gmS8k+icvPtqsqEav+iUorF7b0qozgUU=
+go.etcd.io/etcd/client/v3 v3.5.11/go.mod h1:a6xQUEqFJ8vztO1agJh/KQKOMfFI8og52ZconzcDJwE=
go.uber.org/goleak v1.2.0 h1:xqgm/S+aQvhWFTtR0XK3Jvg7z8kGV8P4X14IzwN3Eqk=
go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
-go.uber.org/zap v1.25.0 h1:4Hvk6GtkucQ790dqmj7l1eEnRdKm3k3ZUrUMS2d5+5c=
-go.uber.org/zap v1.25.0/go.mod h1:JIAUzQIH94IC4fOJQm7gMmBJP5k7wQfdcnYdPoEXJYk=
+go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo=
+go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
@@ -274,12 +278,12 @@
golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211209193657-4570a0811e8b/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
-golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
+golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
+golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
-golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
@@ -288,19 +292,18 @@
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.3.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
-golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM=
-golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
+golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c=
+golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E=
-golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
+golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
+golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20180926160741-c2ed4eda69e7/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -320,7 +323,6 @@
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@@ -330,7 +332,6 @@
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
-golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
@@ -339,7 +340,6 @@
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
-golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
@@ -349,20 +349,19 @@
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
-golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ=
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
-google.golang.org/genproto v0.0.0-20230913181813-007df8e322eb h1:XFBgcDwm7irdHTbz4Zk2h7Mh+eis4nfJEFQFYzJzuIA=
-google.golang.org/genproto v0.0.0-20230913181813-007df8e322eb/go.mod h1:yZTlhN0tQnXo3h00fuXNCxJdLdIdnVFVBaRJ5LWBbw4=
-google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb h1:lK0oleSc7IQsUxO3U5TjL9DWlsxpEBemh+zpB7IqhWI=
-google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb/go.mod h1:KjSP20unUpOx5kyQUFa7k4OJg0qeJ7DEZflGDu2p6Bk=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230913181813-007df8e322eb h1:Isk1sSH7bovx8Rti2wZK0UZF6oraBDK74uoyLEEVFN0=
-google.golang.org/genproto/googleapis/rpc v0.0.0-20230913181813-007df8e322eb/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M=
-google.golang.org/grpc v1.58.3 h1:BjnpXut1btbtgN/6sp+brB2Kbm2LjNXnidYujAVbSoQ=
-google.golang.org/grpc v1.58.3/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0=
+google.golang.org/genproto v0.0.0-20231212172506-995d672761c0 h1:YJ5pD9rF8o9Qtta0Cmy9rdBwkSjrTCT6XTiUQVOtIos=
+google.golang.org/genproto v0.0.0-20231212172506-995d672761c0/go.mod h1:l/k7rMz0vFTBPy+tFSGvXEd3z+BcoG1k7EHbqm+YBsY=
+google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0 h1:s1w3X6gQxwrLEpxnLd/qXTVLgQE2yXwaOaoa6IlY/+o=
+google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0/go.mod h1:CAny0tYF+0/9rmDB9fahA9YLzX3+AEVl1qXbv5hhj6c=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0 h1:/jFB8jK5R3Sq3i/lmeZO0cATSzFfZaJq1J2Euan3XKU=
+google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0/go.mod h1:FUoWkonphQm3RhTS+kOEhF8h0iDpm4tdXolVCeZ9KKA=
+google.golang.org/grpc v1.60.1 h1:26+wFr+cNqSGFcOXcabYC0lUVJVRa2Sb2ortSK7VrEU=
+google.golang.org/grpc v1.60.1/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM=
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
++++++ mc.obsinfo ++++++
--- /var/tmp/diff_new_pack.qG5KHE/_old 2023-12-21 23:40:01.149617179 +0100
+++ /var/tmp/diff_new_pack.qG5KHE/_new 2023-12-21 23:40:01.153617326 +0100
@@ -1,5 +1,5 @@
name: mc
-version: 20231214T003741Z
-mtime: 1702514261
-commit: 8da737f8fd63de58dc475bf88eb9e285d206e3ae
+version: 20231220T071422Z
+mtime: 1703056462
+commit: 8e1573ec1b9c174e9f8d82ee9996d002c1d9caaa
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/minio-client/vendor.tar.gz /work/SRC/openSUSE:Factory/.minio-client.new.1840/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package vips for openSUSE:Factory checked in at 2023-12-21 23:39:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vips (Old)
and /work/SRC/openSUSE:Factory/.vips.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vips"
Thu Dec 21 23:39:51 2023 rev:49 rq:1134511 version:8.15.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/vips/vips.changes 2023-06-20 16:49:36.079809620 +0200
+++ /work/SRC/openSUSE:Factory/.vips.new.1840/vips.changes 2023-12-21 23:39:58.245511130 +0100
@@ -1,0 +2,55 @@
+Thu Dec 7 03:24:55 UTC 2023 - ming li <mli(a)suse.com>
+
+- Update to version 8.15.0:
+ * add support for target_clones attribute [lovell]
+ * use with (un)premultiply for ~10% perf gain on AVX CPUs
+ * use with XYZ to LAB colourspace conversion for ~10% perf gain on AVX CPUs
+ * add fast path to extract_band and bandjoin for uchar images [lovell]
+ * reduce `vips_sharpen` max `sigma` to 10 [lovell]
+ * inline scRGB to XYZ colourspace conversion, ~2x faster [lovell]
+ * set "interlaced=1" for interlaced GIF images [kleisauke]
+ * add @line_art to find_trim [miltoncandelero]
+ * improve C++ binding [MathemanFlo]
+ * add `inplace()` / `VImage::new_from_memory_copy()`
+ * add overloads for `draw_*()` / `VImage::thumbnail_buffer()`
+ * allow negative line spacing in text [donghuikugou]
+ * add VIPS_META_BITS_PER_SAMPLE metadata, deprecate the
+ "palette-bit-depth" and "heif-bitdepth" meta fields [MathemanFlo]
+ * add "revalidate" to foreign loaders [jcupitt]
+ * add `premultiplied` option to smartcrop [lovell]
+ * add "prewitt" and "scharr" edge detectors, "sobel" is more accurate for
+ non-uchar formats [jcupitt]
+ * add support for forms in pdfium loader [kleisauke]
+ * swap built-in profiles with ICC v4 variants [kleisauke]
+ * remove libgsf dependency in favor of libarchive [kleisauke]
+ * better chunking for small shrinks [jcupitt]
+ * use alpha range of 0.0 - 1.0 for scRGB images [DarthSim]
+ * add support for 16-bit float TIFFs [DarthSim]
+ * add direct mode to dzsave [jcupitt]
+ * require C++11 as a minimum standard [kleisauke]
+ * add support for SIMD via Highway [kleisauke]
+ * threaded write in tiffsave for tiled JPEG and JPEG2000 [jcupitt]
+ * add vips_thread_execute() to the public API [jcupitt]
+ * add "keep" flag to foreign savers, deprecate "strip" [a3mar]
+ * improve scRGB handling [jcupitt]
+
+ update to version 8.14.5:
+ * fix a crash with alpha plus icc_import and icc_export [jcupitt]
+ * fix a crash in jxlsave [jcupitt]
+
+ update to version 8.14.4:
+ * fix null-pointer dereference during svgload [kleisauke]
+ * heif{load,save}: guard against NULL strings [kleisauke]
+ * pdfiumload: fix rendering of pages with different sizes [DarthSim]
+
+ update to version 8.14.3:
+ * fix ICC handling of greyscale images with a incompatible profile [kleisauke]
+ * fix use-after-free during tiff pyramid save [kleisauke]
+ * fix vips7 PNG load and save when using libspng [jcupitt]
+ * tiffload: slightly relax tile size sanity check [lovell]
+ * heifsave: limit dimensions to a maximum edge of 16384 [lovell]
+ * colourspace: ensure CMYK conversion uses the embedded ICC profile [kleisauke]
+ * ensure chromatic adaptation during icc_{im,ex}port() [kleisauke]
+ * improve ICC compatibility check for CMYK images [kleisauke]
+
+-------------------------------------------------------------------
Old:
----
vips-8.14.2.tar.xz
New:
----
vips-8.15.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vips.spec ++++++
--- /var/tmp/diff_new_pack.iVFhz6/_old 2023-12-21 23:39:59.149544142 +0100
+++ /var/tmp/diff_new_pack.iVFhz6/_new 2023-12-21 23:39:59.153544289 +0100
@@ -23,7 +23,7 @@
%define short_version_ 8.0
%define somajor 42
Name: vips
-Version: 8.14.2
+Version: 8.15.0
Release: 0
Summary: C/C++ library for processing large images
License: LGPL-2.1-only
@@ -35,6 +35,7 @@
BuildRequires: gcc-c++
BuildRequires: gettext
BuildRequires: giflib-devel
+BuildRequires: libarchive-devel
BuildRequires: libjxl-devel
BuildRequires: meson
BuildRequires: pkgconfig
@@ -161,7 +162,7 @@
%files modules-%{short_version}
%license LICENSE
-%{_libdir}/vips-modules-8.14/
+%{_libdir}/vips-modules-8.15/
%files -n typelib-1_0-Vips-%{short_version_}
%license LICENSE
++++++ vips-8.14.2.tar.xz -> vips-8.15.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/vips/vips-8.14.2.tar.xz /work/SRC/openSUSE:Factory/.vips.new.1840/vips-8.15.0.tar.xz differ: char 26, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package yamagi-quake2-ctf for openSUSE:Factory checked in at 2023-12-21 23:39:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yamagi-quake2-ctf (Old)
and /work/SRC/openSUSE:Factory/.yamagi-quake2-ctf.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yamagi-quake2-ctf"
Thu Dec 21 23:39:48 2023 rev:6 rq:1134512 version:1.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/yamagi-quake2-ctf/yamagi-quake2-ctf.changes 2022-12-12 17:42:04.585920128 +0100
+++ /work/SRC/openSUSE:Factory/.yamagi-quake2-ctf.new.1840/yamagi-quake2-ctf.changes 2023-12-21 23:39:56.521448171 +0100
@@ -1,0 +2,6 @@
+Sun Dec 17 15:04:50 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.10:
+ * Fix build on ARM Macs.
+
+-------------------------------------------------------------------
Old:
----
quake2-ctf-1.09.tar.xz
New:
----
quake2-ctf-1.10.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yamagi-quake2-ctf.spec ++++++
--- /var/tmp/diff_new_pack.2I6eOf/_old 2023-12-21 23:39:57.077468475 +0100
+++ /var/tmp/diff_new_pack.2I6eOf/_new 2023-12-21 23:39:57.077468475 +0100
@@ -1,7 +1,7 @@
#
# spec file for package yamagi-quake2-ctf
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2017-2022, Martin Hauke <mardnh(a)gmx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -18,7 +18,7 @@
Name: yamagi-quake2-ctf
-Version: 1.09
+Version: 1.10
Release: 0
Summary: Quake II - Three Wave Capture The Flag for yamagi-quake2
License: GPL-2.0-or-later
++++++ quake2-ctf-1.09.tar.xz -> quake2-ctf-1.10.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/quake2-ctf-1.09/CHANGELOG new/quake2-ctf-1.10/CHANGELOG
--- old/quake2-ctf-1.09/CHANGELOG 2022-12-03 17:14:30.000000000 +0100
+++ new/quake2-ctf-1.10/CHANGELOG 2023-11-04 14:08:05.000000000 +0100
@@ -1,4 +1,7 @@
-Three Wave Capture The Flag 1.07 to 1.09
+Three Wave Capture The Flag 1.09 to 1.10
+- Fix build on ARM Macs.
+
+Three Wave Capture The Flag 1.08 to 1.09
- Several small bugfixes.
Three Wave Capture The Flag 1.07 to 1.08
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/quake2-ctf-1.09/Makefile new/quake2-ctf-1.10/Makefile
--- old/quake2-ctf-1.09/Makefile 2022-12-03 17:14:30.000000000 +0100
+++ new/quake2-ctf-1.10/Makefile 2023-11-04 14:08:05.000000000 +0100
@@ -47,8 +47,12 @@
endif
endif # windows but MINGW_CHOST not defined
else
+ifneq ($(YQ2_OSTYPE), Darwin)
# Normalize some abiguous YQ2_ARCH strings
-YQ2_ARCH ?= $(shell uname -m | sed -e 's/i.86/i386/' -e 's/amd64/x86_64/' -e 's/^arm.*/arm/')
+YQ2_ARCH ?= $(shell uname -m | sed -e 's/i.86/i386/' -e 's/amd64/x86_64/' -e 's/arm64/aarch64/' -e 's/^arm.*/arm/')
+else
+YQ2_ARCH ?= $(shell uname -m)
+endif
endif
# On Windows / MinGW $(CC) is undefined by default.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gdal for openSUSE:Factory checked in at 2023-12-21 23:39:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gdal (Old)
and /work/SRC/openSUSE:Factory/.gdal.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gdal"
Thu Dec 21 23:39:45 2023 rev:83 rq:1134509 version:3.8.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/gdal/gdal.changes 2023-12-15 21:51:04.242498892 +0100
+++ /work/SRC/openSUSE:Factory/.gdal.new.1840/gdal.changes 2023-12-21 23:39:53.885351909 +0100
@@ -1,0 +2,7 @@
+Wed Dec 20 19:33:45 UTC 2023 - Bruno Friedmann <bruno(a)ioda-net.ch>
+
+- update to bugfix release 3.8.2
+ * Full list of changes in
+ https://github.com/OSGeo/gdal/blob/v3.8.2/NEWS.md
+
+-------------------------------------------------------------------
Old:
----
gdal-3.8.1.tar.xz
gdal-3.8.1.tar.xz.md5
gdalautotest-3.8.1.tar.gz
New:
----
gdal-3.8.2.tar.xz
gdal-3.8.2.tar.xz.md5
gdalautotest-3.8.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gdal.spec ++++++
--- /var/tmp/diff_new_pack.Lv9PpU/_old 2023-12-21 23:39:56.073431811 +0100
+++ /var/tmp/diff_new_pack.Lv9PpU/_new 2023-12-21 23:39:56.073431811 +0100
@@ -31,7 +31,7 @@
%bcond_with deflate_support
%bcond_with tests_support
Name: gdal
-Version: 3.8.1
+Version: 3.8.2
Release: 0
Summary: GDAL/OGR - a translator library for raster and vector geospatial data formats
License: BSD-3-Clause AND MIT AND SUSE-Public-Domain
++++++ gdal-3.8.1.tar.xz -> gdal-3.8.2.tar.xz ++++++
/work/SRC/openSUSE:Factory/gdal/gdal-3.8.1.tar.xz /work/SRC/openSUSE:Factory/.gdal.new.1840/gdal-3.8.2.tar.xz differ: char 26, line 1
++++++ gdal-3.8.1.tar.xz.md5 -> gdal-3.8.2.tar.xz.md5 ++++++
--- /work/SRC/openSUSE:Factory/gdal/gdal-3.8.1.tar.xz.md5 2023-12-15 21:51:04.214497868 +0100
+++ /work/SRC/openSUSE:Factory/.gdal.new.1840/gdal-3.8.2.tar.xz.md5 2023-12-21 23:39:53.857350886 +0100
@@ -1 +1 @@
-ceda8651ef94cdf99370c1d3ad6be53b gdal-3.8.1.tar.xz
+178461c9c1cd4503e36559a1063bb752 gdal-3.8.2.tar.xz
++++++ gdalautotest-3.8.1.tar.gz -> gdalautotest-3.8.2.tar.gz ++++++
/work/SRC/openSUSE:Factory/gdal/gdalautotest-3.8.1.tar.gz /work/SRC/openSUSE:Factory/.gdal.new.1840/gdalautotest-3.8.2.tar.gz differ: char 90, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fortio for openSUSE:Factory checked in at 2023-12-21 23:39:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fortio (Old)
and /work/SRC/openSUSE:Factory/.fortio.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fortio"
Thu Dec 21 23:39:39 2023 rev:56 rq:1134505 version:1.63.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/fortio/fortio.changes 2023-12-10 19:39:48.487314188 +0100
+++ /work/SRC/openSUSE:Factory/.fortio.new.1840/fortio.changes 2023-12-21 23:39:44.997027334 +0100
@@ -1,0 +2,10 @@
+Wed Dec 20 12:57:29 UTC 2023 - opensuse_buildservice(a)ojkastl.de
+
+- Update to version 1.63.1:
+ * fix timeout not used by proxy client in fetch2 (#875)
+ * Bump google.golang.org/grpc from 1.60.0 to 1.60.1 (#877)
+ * Bump actions/setup-go from 4.1.0 to 5.0.0 (#869)
+ * Bump github.com/google/uuid from 1.4.0 to 1.5.0 (#872)
+ * Bump google.golang.org/grpc from 1.59.0 to 1.60.0 (#871)
+
+-------------------------------------------------------------------
Old:
----
fortio-1.63.0.obscpio
New:
----
fortio-1.63.1.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fortio.spec ++++++
--- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:45.841058155 +0100
+++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:45.841058155 +0100
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: fortio
-Version: 1.63.0
+Version: 1.63.1
Release: 0
Summary: Load testing library, command line tool, advanced echo server and web UI
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:45.869059177 +0100
+++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:45.873059324 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/fortio/fortio</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v1.63.0</param>
+ <param name="revision">v1.63.1</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:45.889059908 +0100
+++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:45.893060054 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/fortio/fortio</param>
- <param name="changesrevision">6b492e20fffc070f3ab624cf960793a01651cd19</param></service></servicedata>
+ <param name="changesrevision">63083144350d8b9acabd2908a51b2953c9f83262</param></service></servicedata>
(No newline at EOF)
++++++ fortio-1.63.0.obscpio -> fortio-1.63.1.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/.github/workflows/codecov.yml new/fortio-1.63.1/.github/workflows/codecov.yml
--- old/fortio-1.63.0/.github/workflows/codecov.yml 2023-12-09 01:00:11.000000000 +0100
+++ new/fortio-1.63.1/.github/workflows/codecov.yml 2023-12-19 21:07:52.000000000 +0100
@@ -15,7 +15,7 @@
with:
fetch-depth: 2
- name: Set up Go
- uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # pin@v4
+ uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # pin@v4
with:
go-version: '1.20'
check-latest: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/README.md new/fortio-1.63.1/README.md
--- old/fortio-1.63.0/README.md 2023-12-09 01:00:11.000000000 +0100
+++ new/fortio-1.63.1/README.md 2023-12-19 21:07:52.000000000 +0100
@@ -1,4 +1,4 @@
-<!-- 1.63.0 -->
+<!-- 1.63.1 -->
# Fortio
[![Awesome Go](https://fortio.org/mentioned-badge.svg)](https://github.com/avelino/awe…
@@ -60,13 +60,13 @@
The [releases](https://github.com/fortio/fortio/releases) page has binaries for many OS/architecture combinations (see assets):
```shell
-curl -L https://github.com/fortio/fortio/releases/download/v1.63.0/fortio-linux_amd… \
+curl -L https://github.com/fortio/fortio/releases/download/v1.63.1/fortio-linux_amd… \
| sudo tar -C / -xvzpf -
# or the debian package
-wget https://github.com/fortio/fortio/releases/download/v1.63.0/fortio_1.63.0_am…
-dpkg -i fortio_1.63.0_amd64.deb
+wget https://github.com/fortio/fortio/releases/download/v1.63.1/fortio_1.63.1_am…
+dpkg -i fortio_1.63.1_amd64.deb
# or the rpm
-rpm -i https://github.com/fortio/fortio/releases/download/v1.63.0/fortio-1.63.0-1.…
+rpm -i https://github.com/fortio/fortio/releases/download/v1.63.1/fortio-1.63.1-1.…
# and more, see assets in release page
```
@@ -76,7 +76,7 @@
brew install fortio
```
-On Windows, download https://github.com/fortio/fortio/releases/download/v1.63.0/fortio_win_1.63.… and extract `fortio.exe` to any location, then using the Windows Command Prompt:
+On Windows, download https://github.com/fortio/fortio/releases/download/v1.63.1/fortio_win_1.63.… and extract `fortio.exe` to any location, then using the Windows Command Prompt:
```
fortio.exe server
```
@@ -130,7 +130,7 @@
<!-- use release/updateFlags.sh to update this section -->
<pre>
<!-- USAGE_START -->
-Φορτίο 1.63.0 usage:
+Φορτίο 1.63.1 usage:
fortio command [flags] target
where command is one of: load (load testing), server (starts ui, rest api,
http-echo, redirect, proxies, tcp-echo, udp-echo and grpc ping servers),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/fhttp/http_forwarder.go new/fortio-1.63.1/fhttp/http_forwarder.go
--- old/fortio-1.63.0/fhttp/http_forwarder.go 2023-12-09 01:00:11.000000000 +0100
+++ new/fortio-1.63.1/fhttp/http_forwarder.go 2023-12-19 21:07:52.000000000 +0100
@@ -260,18 +260,28 @@
}
}
+func setClientOptions(client *http.Client, opts *HTTPOptions) {
+ log.Debugf("Setting client options to %+v", opts)
+ client.Timeout = opts.HTTPReqTimeOut
+ tls, _ := opts.TLSConfig()
+ client.Transport = &http.Transport{
+ // TODO make configurable, should be fine for now for most but extreme -c values
+ MaxIdleConnsPerHost: 128, // must be more than incoming parallelization; divided by number of fan out if using parallel mode
+ MaxIdleConns: 256,
+ // This avoids Accept-Encoding: gzip being added to outgoing requests when no encoding accept is specified
+ // yet if passed by request, it will do gzip end to end. Issue #624.
+ DisableCompression: true,
+ Proxy: http.ProxyFromEnvironment,
+ TLSHandshakeTimeout: DefaultHTTPOptions.HTTPReqTimeOut,
+ TLSClientConfig: tls,
+ }
+}
+
// CreateProxyClient http client for connection reuse.
func CreateProxyClient() *http.Client {
- client := &http.Client{
- Transport: &http.Transport{
- // TODO make configurable, should be fine for now for most but extreme -c values
- MaxIdleConnsPerHost: 128, // must be more than incoming parallelization; divided by number of fan out if using parallel mode
- MaxIdleConns: 256,
- // This avoids Accept-Encoding: gzip being added to outgoing requests when no encoding accept is specified
- // yet if passed by request, it will do gzip end to end. Issue #624.
- DisableCompression: true,
- },
- }
+ log.Debugf("Creating proxy client")
+ client := &http.Client{}
+ setClientOptions(client, DefaultHTTPOptions)
return client
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/fhttp/http_server.go new/fortio-1.63.1/fhttp/http_server.go
--- old/fortio-1.63.0/fhttp/http_server.go 2023-12-09 01:00:11.000000000 +0100
+++ new/fortio-1.63.1/fhttp/http_server.go 2023-12-19 21:07:52.000000000 +0100
@@ -18,7 +18,6 @@
import (
"bytes"
- "crypto/tls"
"fmt"
"io"
"net"
@@ -29,6 +28,7 @@
"sort"
"strconv"
"strings"
+ "sync"
"sync/atomic"
"time"
@@ -504,7 +504,17 @@
// -- Fetch er (simple http proxy) --
-var proxyClient = CreateProxyClient()
+var (
+ sharedProxyClient *http.Client
+ once sync.Once
+)
+
+func getProxyClient() *http.Client {
+ once.Do(func() {
+ sharedProxyClient = CreateProxyClient()
+ })
+ return sharedProxyClient
+}
// FetcherHandler2 is the handler for the fetcher/proxy that supports h2 input and makes a
// new request with all headers copied (allows to test sticky routing)
@@ -531,10 +541,8 @@
return
}
OnBehalfOfRequest(req, r)
- tr := proxyClient.Transport.(*http.Transport)
- if tr.TLSClientConfig == nil || tr.TLSClientConfig.InsecureSkipVerify != opts.Insecure {
- tr.TLSClientConfig = &tls.Config{InsecureSkipVerify: opts.Insecure} //nolint:gosec // as requested by the options.
- }
+ proxyClient := getProxyClient()
+ setClientOptions(proxyClient, opts)
resp, err := proxyClient.Do(req)
if err != nil {
msg := fmt.Sprintf("Error for %q: %v", url, err)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/go.mod new/fortio-1.63.1/go.mod
--- old/fortio-1.63.0/go.mod 2023-12-09 01:00:11.000000000 +0100
+++ new/fortio-1.63.1/go.mod 2023-12-19 21:07:52.000000000 +0100
@@ -12,9 +12,9 @@
fortio.org/testscript v0.3.1
fortio.org/version v1.0.3
github.com/golang/protobuf v1.5.3
- github.com/google/uuid v1.4.0
+ github.com/google/uuid v1.5.0
golang.org/x/net v0.19.0
- google.golang.org/grpc v1.59.0
+ google.golang.org/grpc v1.60.1
)
// Local dev of dependencies changes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fortio-1.63.0/go.sum new/fortio-1.63.1/go.sum
--- old/fortio-1.63.0/go.sum 2023-12-09 01:00:11.000000000 +0100
+++ new/fortio-1.63.1/go.sum 2023-12-19 21:07:52.000000000 +0100
@@ -23,8 +23,8 @@
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
-github.com/google/uuid v1.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4=
-github.com/google/uuid v1.4.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU=
+github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb h1:c0vyKkb6yr3KR7jEfJaOSv4lG7xPkbN6r52aJz1d8a8=
golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI=
golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c=
@@ -38,8 +38,8 @@
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/genproto/googleapis/rpc v0.0.0-20231127180814-3a041ad873d4 h1:DC7wcm+i+P1rN3Ff07vL+OndGg5OhNddHyTA+ocPqYE=
google.golang.org/genproto/googleapis/rpc v0.0.0-20231127180814-3a041ad873d4/go.mod h1:eJVxU6o+4G1PSczBr85xmyvSNYAKvAYgkub40YGomFM=
-google.golang.org/grpc v1.59.0 h1:Z5Iec2pjwb+LEOqzpB2MR12/eKFhDPhuqW91O+4bwUk=
-google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98=
+google.golang.org/grpc v1.60.1 h1:26+wFr+cNqSGFcOXcabYC0lUVJVRa2Sb2ortSK7VrEU=
+google.golang.org/grpc v1.60.1/go.mod h1:OlCHIeLYqSSsLi6i49B5QGdzaMZK9+M7LXN2FKz4eGM=
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
++++++ fortio.obsinfo ++++++
--- /var/tmp/diff_new_pack.A1IP5J/_old 2023-12-21 23:39:46.033065166 +0100
+++ /var/tmp/diff_new_pack.A1IP5J/_new 2023-12-21 23:39:46.033065166 +0100
@@ -1,5 +1,5 @@
name: fortio
-version: 1.63.0
-mtime: 1702080011
-commit: 6b492e20fffc070f3ab624cf960793a01651cd19
+version: 1.63.1
+mtime: 1703016472
+commit: 63083144350d8b9acabd2908a51b2953c9f83262
++++++ vendor.tar.gz ++++++
++++ 5005 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package lxqt-panel for openSUSE:Factory checked in at 2023-12-21 23:39:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lxqt-panel (Old)
and /work/SRC/openSUSE:Factory/.lxqt-panel.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lxqt-panel"
Thu Dec 21 23:39:18 2023 rev:29 rq:1134437 version:1.4.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/lxqt-panel/lxqt-panel.changes 2023-11-07 21:26:16.699336493 +0100
+++ /work/SRC/openSUSE:Factory/.lxqt-panel.new.1840/lxqt-panel.changes 2023-12-21 23:39:31.068518706 +0100
@@ -1,0 +2,6 @@
+Thu Dec 21 12:10:53 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- boo#1218288: Require liblxqt
+ Panel plugins can depend on lxqt-backlight_backend
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ lxqt-panel.spec ++++++
--- /var/tmp/diff_new_pack.kS5sEK/_old 2023-12-21 23:39:32.140557854 +0100
+++ /var/tmp/diff_new_pack.kS5sEK/_new 2023-12-21 23:39:32.144558000 +0100
@@ -63,6 +63,8 @@
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xtst)
Requires: lxqt-menu-data
+# boo#1218288 -- mvetter(a)suse.com
+Requires: liblxqt
Recommends: %{name}-lang
%description
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package patterns-lxqt for openSUSE:Factory checked in at 2023-12-21 23:39:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/patterns-lxqt (Old)
and /work/SRC/openSUSE:Factory/.patterns-lxqt.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "patterns-lxqt"
Thu Dec 21 23:39:16 2023 rev:16 rq:1134436 version:20231212
Changes:
--------
--- /work/SRC/openSUSE:Factory/patterns-lxqt/patterns-lxqt.changes 2022-09-15 22:59:55.833340776 +0200
+++ /work/SRC/openSUSE:Factory/.patterns-lxqt.new.1840/patterns-lxqt.changes 2023-12-21 23:39:29.960478244 +0100
@@ -1,0 +2,6 @@
+Thu Dec 21 12:11:33 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- boo#1218288: Require liblxqt
+ Other parts can depend on the binaries shipped there
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ patterns-lxqt.spec ++++++
--- /var/tmp/diff_new_pack.4tQcgX/_old 2023-12-21 23:39:30.668504099 +0100
+++ /var/tmp/diff_new_pack.4tQcgX/_new 2023-12-21 23:39:30.672504245 +0100
@@ -1,7 +1,7 @@
#
# spec file for package patterns-lxqt
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%bcond_with betatest
Name: patterns-lxqt
-Version: 20220914
+Version: 20231212
Release: 0
Summary: Patterns for Installation (LXQt)
License: MIT
@@ -38,8 +38,9 @@
-################################################################################
+
+################################################################################
%package lxqt
%pattern_graphicalenvironments
Summary: LXQt Desktop Environment
@@ -63,6 +64,8 @@
Requires: lxqt-session
Requires: lxqt-sudo
Requires: lxqt-themes
+# boo#1218288 -- mvetter(a)suse.com
+Requires: liblxqt
Requires: oxygen5-icon-theme
Requires: pattern() = x11
Recommends: xdg-desktop-portal-lxqt
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package sundials for openSUSE:Factory checked in at 2023-12-21 23:39:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sundials (Old)
and /work/SRC/openSUSE:Factory/.sundials.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sundials"
Thu Dec 21 23:39:13 2023 rev:14 rq:1134432 version:6.7.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/sundials/sundials.changes 2023-12-06 23:50:45.668835789 +0100
+++ /work/SRC/openSUSE:Factory/.sundials.new.1840/sundials.changes 2023-12-21 23:39:27.440386218 +0100
@@ -1,0 +2,9 @@
+Tue Dec 19 17:06:44 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 6.7.0:
+ * Many changes, see
+ https://github.com/LLNL/sundials/releases/tag/v6.7.0.
+- Adapt shlib names for sunlinsol and sunnonlin libraries in
+ keeping with upstream so versioning changes.
+
+-------------------------------------------------------------------
Old:
----
sundials-6.6.2.tar.gz
New:
----
sundials-6.7.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sundials.spec ++++++
--- /var/tmp/diff_new_pack.4o1nLG/_old 2023-12-21 23:39:28.968442018 +0100
+++ /var/tmp/diff_new_pack.4o1nLG/_new 2023-12-21 23:39:28.968442018 +0100
@@ -1,5 +1,5 @@
#
-# spec file
+# spec file for package sundials
#
# Copyright (c) 2023 SUSE LLC
#
@@ -87,12 +87,12 @@
%define shlib_idas libsundials_idas5%{?my_suffix}
%define shlib_kinsol libsundials_kinsol6%{?my_suffix}
%define shlib_nvec libsundials_nvec6%{?my_suffix}
-%define shlib_sunlinsol libsundials_sunlinsol4_6_2%{?my_suffix}
+%define shlib_sunlinsol libsundials_sunlinsol4%{?my_suffix}
%define shlib_sunmatrix libsundials_sunmatrix4%{?my_suffix}
-%define shlib_sunnonlin libsundials_sunnonlin3_6_2%{?my_suffix}
+%define shlib_sunnonlin libsundials_sunnonlin3%{?my_suffix}
Name: %{package_name}
-Version: 6.6.2
+Version: 6.7.0
Release: 0
Summary: Suite of nonlinear solvers
# SUNDIALS is licensed under BSD with some additional (but unrestrictive) clauses.
++++++ sundials-6.6.2.tar.gz -> sundials-6.7.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/sundials/sundials-6.6.2.tar.gz /work/SRC/openSUSE:Factory/.sundials.new.1840/sundials-6.7.0.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gamemode for openSUSE:Factory checked in at 2023-12-21 23:39:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gamemode (Old)
and /work/SRC/openSUSE:Factory/.gamemode.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gamemode"
Thu Dec 21 23:39:12 2023 rev:12 rq:1134551 version:1.8.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/gamemode/gamemode.changes 2023-05-11 14:13:53.345480679 +0200
+++ /work/SRC/openSUSE:Factory/.gamemode.new.1840/gamemode.changes 2023-12-21 23:39:25.448313473 +0100
@@ -1,0 +2,34 @@
+Thu Dec 21 20:13:21 UTC 2023 - Matthias Bach <marix(a)marix.org>
+
+- Fix package setting a wrong mode for /etc/security/limits.d.
+- Drop unused rpmlint filter.
+
+-------------------------------------------------------------------
+Wed Dec 13 11:54:01 UTC 2023 - Matthias Bach <marix(a)marix.org>
+
+- Fix GameMode's PolicyKit rules not applying.
+
+-------------------------------------------------------------------
+Wed Dec 13 08:03:00 UTC 2023 - Matthias Bach <marix(a)marix.org>
+
+- Update to version 1.8.1
+ * Fix syntax error in polkit rules.
+
+-------------------------------------------------------------------
+Fri Dec 8 18:07:49 UTC 2023 - Matthias Bach <marix(a)marix.org> - 1.8
+
+- Update to version 1.8
+ * Requires users to be a member of the "gamemode" group to
+ utilise priviledged functionality like modifying the CPU
+ governor.
+ * Adds CPU core pinning and parking capability.
+ * Allows disabling the Linux kernel split lock mitigation.
+ * Fixes building when pidfd_open is available.
+ * Unifies privileged group configuration between pam, systemd,
+ and polkit.
+ * Various other bugfixes and improved default configuration
+- Drop workaround for problematic pidfd_open dection on Tumbleweed
+ now that compilation with pidfd_open is fixed upstream.
+- Drop no longer required only-build-shared-library.patch.
+
+-------------------------------------------------------------------
Old:
----
gamemode-1.7.tar.xz
gamemode-1.7.tar.xz.asc
only-build-shared-library.patch
New:
----
gamemode-1.8.1.tar.xz
gamemode-1.8.1.tar.xz.asc
BETA DEBUG BEGIN:
Old: now that compilation with pidfd_open is fixed upstream.
- Drop no longer required only-build-shared-library.patch.
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gamemode.spec ++++++
--- /var/tmp/diff_new_pack.xeVdoj/_old 2023-12-21 23:39:25.932331148 +0100
+++ /var/tmp/diff_new_pack.xeVdoj/_new 2023-12-21 23:39:25.932331148 +0100
@@ -18,7 +18,7 @@
Name: gamemode
-Version: 1.7
+Version: 1.8.1
Release: 0
Summary: Daemon/library combo for changing Linux system performance on demand
License: BSD-3-Clause
@@ -30,13 +30,13 @@
Source3: README.openSUSE
Source4: baselibs.conf
Source5: feral.keyring
-Patch0: only-build-shared-library.patch
BuildRequires: cmake
BuildRequires: libinih-devel
BuildRequires: meson
BuildRequires: ninja
BuildRequires: pkgconfig
BuildRequires: polkit-devel
+BuildRequires: sysuser-tools
BuildRequires: pkgconfig(dbus-1)
# Yes, it needs both
BuildRequires: pkgconfig(libsystemd)
@@ -66,12 +66,16 @@
gamemoderun %%command%%
+Note that some functionalities, like modifying the CPU governor, require
+the user to be in the priviledged "gamemode" group.
+
%package -n gamemoded
Summary: The GameMode daemon required by GameMode enabled games
Group: Amusements/Games/Other
Recommends: libgamemode
Suggests: gamemode
Suggests: libgamemodeauto
+%sysusers_requires
%description -n gamemoded
GameMode is a daemon/lib combo for Linux that allows games to request
@@ -132,9 +136,6 @@
cp %{SOURCE3} .
-# Work around broken pidfd_open detection on Tumbleweed
-sed -i 's/pidfd_open = .*/pidfd_open = false/' meson.build
-
%build
%meson -Dwith-examples=false
%meson_build
@@ -144,15 +145,18 @@
%install
%meson_install
-# We don't want to create the gamemode group as without further
-# configuration to actually use it, it does not provide any value
-rm %{buildroot}/%{_sysusersdir}/gamemode.conf
+
+# Fix gamemode PolKit rules being overriden by default rules
+mv %{buildroot}/%{_datadir}/polkit-1/rules.d/gamemode.rules %{buildroot}/%{_datadir}/polkit-1/rules.d/40-gamemode.rules
%post -n libgamemode0 -p /sbin/ldconfig
%postun -n libgamemode0 -p /sbin/ldconfig
%post -n libgamemodeauto0 -p /sbin/ldconfig
%postun -n libgamemodeauto0 -p /sbin/ldconfig
+%post -n gamemoded
+%sysusers_create %{name}.conf
+
%files
%{_bindir}/gamemodelist
%{_bindir}/gamemoderun
@@ -163,12 +167,18 @@
%files -n gamemoded
%{_bindir}/gamemoded
%{_libexecdir}/cpugovctl
+%{_libexecdir}/cpucorectl
%{_libexecdir}/gpuclockctl
+%{_libexecdir}/procsysctl
%{_userunitdir}/gamemoded.service
%{_datadir}/polkit-1/actions/com.feralinteractive.GameMode.policy
+%{_datadir}/polkit-1/rules.d/40-gamemode.rules
%{_datadir}/dbus-1/services/com.feralinteractive.GameMode.service
%{_datadir}/metainfo/io.github.feralinteractive.gamemode.metainfo.xml
%{_mandir}/*/gamemoded*
+%{_sysusersdir}/%{name}.conf
+%dir %{_sysconfdir}/security/limits.d
+%config(noreplace) %{_sysconfdir}/security/limits.d/10-gamemode.conf
%doc example/gamemode.ini README.openSUSE
%license LICENSE.txt
++++++ README.openSUSE ++++++
--- /var/tmp/diff_new_pack.xeVdoj/_old 2023-12-21 23:39:25.960332171 +0100
+++ /var/tmp/diff_new_pack.xeVdoj/_new 2023-12-21 23:39:25.964332317 +0100
@@ -12,3 +12,9 @@
systemctl --user restart gamemoded
+Permissions
+===========
+
+Some feature, like renicing the process run in GameMode, require elevated priviledges.
+To grant these, add your user to the "gamemode" group.
+
++++++ gamemode-1.7.tar.xz -> gamemode-1.8.1.tar.xz ++++++
++++ 2061 lines of diff (skipped)
++++++ gamemode-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.xeVdoj/_old 2023-12-21 23:39:26.076336407 +0100
+++ /var/tmp/diff_new_pack.xeVdoj/_new 2023-12-21 23:39:26.080336553 +0100
@@ -11,6 +11,3 @@
# Libgamemodeauto loads the dependency via dlopen, so it cannot be picked up automatically.
addFilter('libgamemodeauto.* explicit-lib-dependency libgamemode')
-# Libgamemodeauto actually has a % in its description.
-addFilter('libgamemodeauto.* unexpanded-macro %description -l C %command')
-
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package nudoku for openSUSE:Factory checked in at 2023-12-21 23:39:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nudoku (Old)
and /work/SRC/openSUSE:Factory/.nudoku.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nudoku"
Thu Dec 21 23:39:10 2023 rev:7 rq:1134426 version:3.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/nudoku/nudoku.changes 2020-11-23 10:36:51.969780598 +0100
+++ /work/SRC/openSUSE:Factory/.nudoku.new.1840/nudoku.changes 2023-12-21 23:39:24.620283236 +0100
@@ -1,0 +2,10 @@
+Thu Dec 21 10:46:48 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 3.0.0:
+ * Fix build failure with ncurses 6.3
+ * Add call to PKG_PROG_PKG_CONFIG and pkg-check ncurses libs #46
+ * Fix build with musl
+ * Add highlighting of user input #56
+ * Fix toggling marks removing solution #51
+
+-------------------------------------------------------------------
Old:
----
nudoku-2.1.0.tar.gz
New:
----
nudoku-3.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nudoku.spec ++++++
--- /var/tmp/diff_new_pack.Rms5QE/_old 2023-12-21 23:39:25.052299012 +0100
+++ /var/tmp/diff_new_pack.Rms5QE/_new 2023-12-21 23:39:25.056299158 +0100
@@ -1,7 +1,7 @@
#
# spec file for package nudoku
#
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: nudoku
-Version: 2.1.0
+Version: 3.0.0
Release: 0
Summary: Ncurses based sudoku game
License: GPL-3.0-only
@@ -42,7 +42,7 @@
%build
autoreconf -fi
%configure --enable-cairo
-make %{?_smp_mflags}
+%make_build
%install
%make_install
++++++ nudoku-2.1.0.tar.gz -> nudoku-3.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/.github/workflows/c-cpp.yml new/nudoku-3.0.0/.github/workflows/c-cpp.yml
--- old/nudoku-2.1.0/.github/workflows/c-cpp.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/nudoku-3.0.0/.github/workflows/c-cpp.yml 2023-12-21 11:44:39.000000000 +0100
@@ -0,0 +1,23 @@
+name: C/C++ CI
+
+on:
+ push:
+ branches: [ "master" ]
+ pull_request:
+ branches: [ "master" ]
+
+jobs:
+ build:
+
+ runs-on: ubuntu-22.04
+
+ steps:
+ - uses: actions/checkout@v3
+ - name: install dependencies
+ run: sudo apt-get -y install autoconf autopoint build-essential pkg-config gettext
+ - name: autoreconf
+ run: autoreconf -i
+ - name: configure
+ run: ./configure
+ - name: make
+ run: make
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/ChangeLog new/nudoku-3.0.0/ChangeLog
--- old/nudoku-2.1.0/ChangeLog 2020-11-20 10:47:40.000000000 +0100
+++ new/nudoku-3.0.0/ChangeLog 2023-12-21 11:44:39.000000000 +0100
@@ -1,3 +1,10 @@
+2.1.0 to 3.0.0 (2023-12-21)
+ * Fix build failure with ncurses 6.3
+ * Add call to PKG_PROG_PKG_CONFIG and pkg-check ncurses libs #46
+ * Fix build with musl
+ * Add highlighting of user input #56
+ * Fix toggling marks removing solution #51
+
2.0.0 to 2.1.0 (2020-11-20)
* Use actual terminal background color (instead of black) as background
color (pr #31)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/README.md new/nudoku-3.0.0/README.md
--- old/nudoku-2.1.0/README.md 2020-11-20 10:47:40.000000000 +0100
+++ new/nudoku-3.0.0/README.md 2023-12-21 11:44:39.000000000 +0100
@@ -4,63 +4,9 @@
## Install ##
-### Using package manager ###
+nudoku is easily installable via many package managers.
-#### Arch Linux ####
-I heard rumors of nudoku being in the [AUR](https://aur.archlinux.org/packages/nudoku-git/).
-
-#### Debian and derivates ####
-Contained in official stable repositories since Debian Stretch.
-
-```
-apt-get install nudoku
-```
-
-#### EL 7 (CentOS/Oracle Linux/Scientific Linux/RedHat ####
-You need to enable the EPEL repository and run:
-
-```
-yum install nudoku
-```
-
-#### Fedora ####
-nudoku is in the official Fedora repository since June 2016:
-
-```
-dnf install nudoku
-```
-
-#### Funtoo/Gentoo ####
-Contained in official repo since 2018-02-16. Before that you had to use [strangeland-overlay](https://github.com/jubalh/strangeland-overlay).
-
-```
-emerge nudoku -a
-```
-
-### NixOS ###
-nudoku is [available](https://github.com/NixOS/nixpkgs/tree/master/pkgs/games/nudoku) in the Nix package manager.
-
-### NetBSD ###
-nudoku is [available](https://pkgsrc.se/games/nudoku) in the Nix package manager.
-
-### openSUSE ###
-
-Since openSUSE Leap 42.1 (and Tumbleweed) you can find nudoku in the official repository.
-
-```
-zypper in nudoku
-```
-
-### VoidLinux ###
-nudoku is [available](https://github.com/void-linux/void-packages/tree/master/srcpkgs/… on Void.
-
-### macOS ###
-
-There is a [formula](https://formulae.brew.sh/formula/nudoku) for [Homebrew](https://brew.sh/)
-
-```
-brew install nudoku
-```
+[![Packaging status](https://repology.org/badge/vertical-allrepos/nudoku.svg)](https://r…
### From Source ###
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/configure.ac new/nudoku-3.0.0/configure.ac
--- old/nudoku-2.1.0/configure.ac 2020-11-20 10:47:40.000000000 +0100
+++ new/nudoku-3.0.0/configure.ac 2023-12-21 11:44:39.000000000 +0100
@@ -2,14 +2,15 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([nudoku], [2.1.0], [jubalh(a)iodoru.org])
+AC_INIT([nudoku], [3.0.0], [jubalh(a)iodoru.org])
AC_CONFIG_SRCDIR([src/main.c])
AM_INIT_AUTOMAKE([foreign])
+# Check for pkg-config
+PKG_PROG_PKG_CONFIG()
+
# Checks for programs.
AC_PROG_CC
-# Use C99.
-AC_PROG_CC_C99
# Options
AC_ARG_ENABLE(
@@ -35,9 +36,9 @@
fi
have_wide_ncurses=no
-AC_CHECK_LIB(ncursesw, initscr, [have_wide_ncurses=yes])
+PKG_CHECK_MODULES([ncursesw], [ncursesw], [have_wide_ncurses=yes], [])
if test $have_wide_ncurses = no; then
- AC_CHECK_LIB(ncurses, initscr, [], [
+ PKG_CHECK_MODULES([ncurses], [ncurses], [], [
echo "nudoku requires ncurses"
exit 1
])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/man/nudoku.6 new/nudoku-3.0.0/man/nudoku.6
--- old/nudoku-2.1.0/man/nudoku.6 2020-11-20 10:47:40.000000000 +0100
+++ new/nudoku-3.0.0/man/nudoku.6 2023-12-21 11:44:39.000000000 +0100
@@ -1,5 +1,5 @@
.\" Manpage for nudoku.
-.TH man 6 "20 November 2020" "2.1.0" "nudoku man page"
+.TH man 6 "21 December 2023" "3.0.0" "nudoku man page"
.SH NAME
nudoku \- ncurses based sudoku game
.SH SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/src/Makefile.am new/nudoku-3.0.0/src/Makefile.am
--- old/nudoku-2.1.0/src/Makefile.am 2020-11-20 10:47:40.000000000 +0100
+++ new/nudoku-3.0.0/src/Makefile.am 2023-12-21 11:44:39.000000000 +0100
@@ -2,9 +2,9 @@
#-DDEBUG
if HAVE_WIDE_NCURSES
-nudoku_LDADD = -lncursesw
+nudoku_LDADD = ${ncursesw_LIBS}
else
-nudoku_LDADD = -lncurses
+nudoku_LDADD = ${ncurses_LIBS}
endif
bin_PROGRAMS = nudoku
nudoku_SOURCES = main.c sudoku.c sudoku.h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nudoku-2.1.0/src/main.c new/nudoku-3.0.0/src/main.c
--- old/nudoku-2.1.0/src/main.c 2020-11-20 10:47:40.000000000 +0100
+++ new/nudoku-3.0.0/src/main.c 2023-12-21 11:44:39.000000000 +0100
@@ -25,6 +25,7 @@
#include <ncurses.h> /* ncurses */
#include <time.h> /* time */
#include <string.h> /* strcmp, strlen */
+#include <locale.h> /* setlocale */
#include "sudoku.h" /* sudoku functions */
#ifdef ENABLE_CAIRO
#include "outp.h" /* output functions */
@@ -54,6 +55,7 @@
#define SUDOKU_LENGTH STREAM_LENGTH - 1
#define COLOR_HIGHLIGHT 4
#define COLOR_HIGHLIGHT_CURSOR 5
+#define COLOR_USER_HIGHLIGHT 6
#ifdef DEBUG
#define EXAMPLE_STREAM "4.....8.5.3..........7......2.....6.....8.4......1.......6.3.7.5..2.....1.4......"
@@ -213,6 +215,8 @@
init_pair(COLOR_HIGHLIGHT, COLOR_BLACK, COLOR_WHITE);
// Cursor highlight color
init_pair(COLOR_HIGHLIGHT_CURSOR, COLOR_BLACK, COLOR_MAGENTA);
+ // User input highlight color
+ init_pair(COLOR_USER_HIGHLIGHT, COLOR_BLACK, COLOR_CYAN);
}
else
{
@@ -379,18 +383,22 @@
{
if (x == x_cursor && y == y_cursor)
wattron(grid, COLOR_PAIR(COLOR_HIGHLIGHT_CURSOR));
+ else if (isUserInput)
+ wattron(grid, COLOR_PAIR(COLOR_USER_HIGHLIGHT));
else
wattron(grid, COLOR_PAIR(COLOR_HIGHLIGHT));
}
- if(isUserInput)
+ if(isUserInput && selected != c)
wattron(grid, COLOR_PAIR(3));
mvwprintw(grid, y, x, "%c", c);
- if(isUserInput)
+ if(isUserInput && selected != c)
wattroff(grid, COLOR_PAIR(3));
if (g_useColor && g_useHighlights && selected == c)
{
if (x == x_cursor && y == y_cursor)
wattroff(grid, COLOR_PAIR(COLOR_HIGHLIGHT_CURSOR));
+ else if (isUserInput)
+ wattroff(grid, COLOR_PAIR(COLOR_USER_HIGHLIGHT));
else
wattroff(grid, COLOR_PAIR(COLOR_HIGHLIGHT));
}
@@ -619,7 +627,7 @@
{
char t[256];
sprintf(t, _(" with the help of %d hints"), g_hint_counter);
- mvwprintw(status, 0, 6, t);
+ mvwprintw(status, 0, 6, "%s", t);
}
g_playing = false;
@@ -659,7 +667,7 @@
break;
case 'm':
// Ignore 'm' if we have no colors
- if (g_useColor)
+ if (g_playing && g_useColor)
{
g_useHighlights = !g_useHighlights;
fill_grid(user_board, plain_board, x, y);
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package klee for openSUSE:Factory checked in at 2023-12-21 23:39:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/klee (Old)
and /work/SRC/openSUSE:Factory/.klee.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "klee"
Thu Dec 21 23:39:06 2023 rev:37 rq:1134421 version:3.0+20231023
Changes:
--------
--- /work/SRC/openSUSE:Factory/klee/klee.changes 2023-06-23 21:52:47.430678855 +0200
+++ /work/SRC/openSUSE:Factory/.klee.new.1840/klee.changes 2023-12-21 23:39:18.736068362 +0100
@@ -1,0 +2,53 @@
+Thu Dec 14 07:40:13 UTC 2023 - jslaby(a)suse.cz
+
+- Update to version 3.0+20231023:
+ * replace deprecated (as of c++20) std::is_pod with std::trivial &&
+ std::is_standard_layout
+ * Make KDAlloc the default memory allocator
+ * Remove broken experimental optimisation for validity (--cex-cache-exp)
+ * Add code to only keep in the --help menu the KLEE/Kleaver option categories
+ * Move some options to the klee namespace and declare them in
+ OptionCategories.h
+ * Replaced --suppress-external-warnings and --all-external-warnings with
+ --external-call-warnings=none|once-per-function|all.
+ * Combine all `ConstantExpr::toMemory` cases into one.
+ * Using std::memcpy prevents alignment problems and removes an unnecessary
+ special case
+ * Implement getLocationInfo in the same style as getSize
+ * Have CoWPtr::get and CoWPtr::getOwned return pointers instead of references
+ * rename Allocator::location_info to Allocator::locationInfo for consistency
+ * Consistently use ".ktest" when referring to .ktest files in the help menu
+ * Remove parentheses around klee_ intrinsics from the help menu
+ * Fixed a couple of spelling issues in the help menu
+ * Improved help message for --exit-on-error-type=Abort
+ * and more
+- clean up spec file and switch to manual service
+- switch to LLVM 16
+- added patches
+ * 0001-Add-support-to-build-newer-LLVM-versions.patch
+ * 0001-test-disable-failing-tests-with-llvm-15.patch
+ * 0002-Add-support-for-newer-libc-Simplify-path-detection.patch
+ * 0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch
+ * 0004-Fix-klee-libc-memchr.c-compiler-warning.patch
+ * 0005-Fix-klee_eh_cxx.cpp-compiler-error.patch
+ * 0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch
+ * 0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch
+ * 0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch
+ * 0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch
+ * 0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch
+ * 0011-Add-support-for-opaque-pointers.patch
+ * 0012-Fix-test-cases-to-support-opaque-pointers.patch
+ * 0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch
+ * 0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch
+ * 0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch
+ * 0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch
+ * 0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch
+ * 0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch
+ * 0019-Handle-check-for-thrown-libc-exceptions-more-general.patch
+ * 0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch
+ * 0021-Support-newer-LLVM-versions-in-lit.patch
+ * 0022-Enable-CI-to-test-newer-LLVM-versions.patch
+- removed patches
+ * 0001-test-disable-until-it-is-fixed.patch (appears to be unnecessary now)
+
+-------------------------------------------------------------------
Old:
----
0001-test-disable-until-it-is-fixed.patch
klee-3.0+20230611.obscpio
New:
----
0001-Add-support-to-build-newer-LLVM-versions.patch
0001-test-disable-failing-tests-with-llvm-15.patch
0002-Add-support-for-newer-libc-Simplify-path-detection.patch
0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch
0004-Fix-klee-libc-memchr.c-compiler-warning.patch
0005-Fix-klee_eh_cxx.cpp-compiler-error.patch
0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch
0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch
0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch
0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch
0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch
0011-Add-support-for-opaque-pointers.patch
0012-Fix-test-cases-to-support-opaque-pointers.patch
0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch
0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch
0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch
0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch
0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch
0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch
0019-Handle-check-for-thrown-libc-exceptions-more-general.patch
0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch
0021-Support-newer-LLVM-versions-in-lit.patch
0022-Enable-CI-to-test-newer-LLVM-versions.patch
klee-3.0+20231023.obscpio
BETA DEBUG BEGIN:
Old:- removed patches
* 0001-test-disable-until-it-is-fixed.patch (appears to be unnecessary now)
BETA DEBUG END:
BETA DEBUG BEGIN:
New:- added patches
* 0001-Add-support-to-build-newer-LLVM-versions.patch
* 0001-test-disable-failing-tests-with-llvm-15.patch
New: * 0001-Add-support-to-build-newer-LLVM-versions.patch
* 0001-test-disable-failing-tests-with-llvm-15.patch
* 0002-Add-support-for-newer-libc-Simplify-path-detection.patch
New: * 0001-test-disable-failing-tests-with-llvm-15.patch
* 0002-Add-support-for-newer-libc-Simplify-path-detection.patch
* 0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch
New: * 0002-Add-support-for-newer-libc-Simplify-path-detection.patch
* 0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch
* 0004-Fix-klee-libc-memchr.c-compiler-warning.patch
New: * 0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch
* 0004-Fix-klee-libc-memchr.c-compiler-warning.patch
* 0005-Fix-klee_eh_cxx.cpp-compiler-error.patch
New: * 0004-Fix-klee-libc-memchr.c-compiler-warning.patch
* 0005-Fix-klee_eh_cxx.cpp-compiler-error.patch
* 0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch
New: * 0005-Fix-klee_eh_cxx.cpp-compiler-error.patch
* 0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch
* 0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch
New: * 0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch
* 0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch
* 0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch
New: * 0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch
* 0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch
* 0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch
New: * 0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch
* 0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch
* 0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch
New: * 0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch
* 0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch
* 0011-Add-support-for-opaque-pointers.patch
New: * 0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch
* 0011-Add-support-for-opaque-pointers.patch
* 0012-Fix-test-cases-to-support-opaque-pointers.patch
New: * 0011-Add-support-for-opaque-pointers.patch
* 0012-Fix-test-cases-to-support-opaque-pointers.patch
* 0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch
New: * 0012-Fix-test-cases-to-support-opaque-pointers.patch
* 0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch
* 0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch
New: * 0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch
* 0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch
* 0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch
New: * 0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch
* 0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch
* 0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch
New: * 0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch
* 0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch
* 0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch
New: * 0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch
* 0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch
* 0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch
New: * 0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch
* 0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch
* 0019-Handle-check-for-thrown-libc-exceptions-more-general.patch
New: * 0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch
* 0019-Handle-check-for-thrown-libc-exceptions-more-general.patch
* 0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch
New: * 0019-Handle-check-for-thrown-libc-exceptions-more-general.patch
* 0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch
* 0021-Support-newer-LLVM-versions-in-lit.patch
New: * 0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch
* 0021-Support-newer-LLVM-versions-in-lit.patch
* 0022-Enable-CI-to-test-newer-LLVM-versions.patch
New: * 0021-Support-newer-LLVM-versions-in-lit.patch
* 0022-Enable-CI-to-test-newer-LLVM-versions.patch
- removed patches
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ klee.spec ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.556098307 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.556098307 +0100
@@ -16,8 +16,7 @@
#
-%define llvm_version_major 14
-%define llvm_version %{llvm_version_major}
+%define llvm_version 16
%ifarch x86_64
%define with_uclibc 1
@@ -31,14 +30,37 @@
Summary: LLVM Execution Engine
License: NCSA
Group: Development/Languages/Other
-Version: 3.0+20230611
+Version: 3.0+20231023
Release: 0
URL: http://klee.github.io/
Source0: %{name}-%{version}.tar.xz
Source1: %{name}-rpmlintrc
-Source2: https://raw.githubusercontent.com/llvm/llvm-project/llvmorg-%{llvm_version_…
-Source3: https://raw.githubusercontent.com/llvm/llvm-project/llvmorg-%{llvm_version_…
-Patch0: 0001-test-disable-until-it-is-fixed.patch
+Source2: https://raw.githubusercontent.com/llvm/llvm-project/llvmorg-%{llvm_version}…
+Source3: https://raw.githubusercontent.com/llvm/llvm-project/llvmorg-%{llvm_version}…
+Patch1: 0001-Add-support-to-build-newer-LLVM-versions.patch
+Patch2: 0002-Add-support-for-newer-libc-Simplify-path-detection.patch
+Patch3: 0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch
+Patch4: 0004-Fix-klee-libc-memchr.c-compiler-warning.patch
+Patch5: 0005-Fix-klee_eh_cxx.cpp-compiler-error.patch
+Patch6: 0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch
+Patch7: 0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch
+Patch8: 0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch
+Patch9: 0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch
+Patch10: 0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch
+Patch11: 0011-Add-support-for-opaque-pointers.patch
+Patch12: 0012-Fix-test-cases-to-support-opaque-pointers.patch
+Patch13: 0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch
+Patch14: 0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch
+Patch15: 0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch
+Patch16: 0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch
+Patch17: 0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch
+Patch18: 0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch
+Patch19: 0019-Handle-check-for-thrown-libc-exceptions-more-general.patch
+Patch20: 0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch
+Patch21: 0021-Support-newer-LLVM-versions-in-lit.patch
+Patch22: 0022-Enable-CI-to-test-newer-LLVM-versions.patch
+Patch100: 0001-test-disable-failing-tests-with-llvm-15.patch
+
BuildRequires: clang%{llvm_version}
BuildRequires: cmake
BuildRequires: gperftools-devel
++++++ 0001-Add-support-to-build-newer-LLVM-versions.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Thu, 12 Oct 2023 10:23:34 +0100
Subject: Add support to build newer LLVM versions
Patch-mainline: no
References: llvm16
`-DLLVM_ENABLE_PROJECTS` does not include runtimes anymore,
instead a `-DLLVM_ENABLE_RUNTIMES` should be used in addition
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
scripts/build/p-libcxx.inc | 29 ++++++++++++++++++++++-------
scripts/build/p-llvm.inc | 21 +++++++++++++--------
2 files changed, 35 insertions(+), 15 deletions(-)
diff --git a/scripts/build/p-libcxx.inc b/scripts/build/p-libcxx.inc
index 641fad61..b0263c00 100644
--- a/scripts/build/p-libcxx.inc
+++ b/scripts/build/p-libcxx.inc
@@ -30,7 +30,6 @@ build_libcxx() {
local LLVM_VERSION_MAJOR="${LLVM_VERSION/.*/}"
local cmake_flags=(
- "-DLLVM_ENABLE_PROJECTS=libcxx;libcxxabi"
"-DLLVM_ENABLE_THREADS:BOOL=OFF"
"-DLIBCXX_ENABLE_THREADS:BOOL=OFF"
"-DLIBCXX_ENABLE_SHARED:BOOL=ON"
@@ -40,6 +39,13 @@ build_libcxx() {
)
# Static ABI libraries are not supported under OS X
+ if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+ cmake_flags+=("-DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi")
+ cmake_flags+=("-DLLVM_ENABLE_PROJECTS=")
+ cmake_flags+=("-DLLVM_ENABLE_PROJECTS_USED:BOOL=ON")
+ else
+ cmake_flags+=("-DLLVM_ENABLE_PROJECTS=libcxx;libcxxabi")
+ fi
if [[ "${OS}" == "osx" ]]; then
cmake_flags+=("-DLIBCXX_ENABLE_STATIC_ABI_LIBRARY:BOOL=OFF")
else
@@ -53,7 +59,11 @@ build_libcxx() {
export LLVM_COMPILER_PATH="$(dirname "${BITCODE_CC}")"
cmake "${cmake_flags[@]}" "${LIBCXX_SRC}/llvm"
- make cxx -j$(nproc) || make cxx
+ if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+ make runtimes - j"$(nproc)" || make cxx || return 1
+ else
+ make cxx - j"$(nproc)" || make cxx || return 1
+ fi
)
}
@@ -65,19 +75,24 @@ install_libcxx() {
export LLVM_COMPILER=clang
export LLVM_COMPILER_PATH="$(dirname "${BITCODE_CC}")"
- cd "${LIBCXX_BUILD}/projects"
- make install
+ if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+ cd "${LIBCXX_BUILD}/runtimes" || return 1
+ make install || return 1
+ else
+ cd "${LIBCXX_BUILD}/projects" || return 1
+ make install || return 1
+ fi
local libraries
if [[ "${OS}" == "osx" ]]; then
- libraries=("${LIBCXX_INSTALL}"/lib/lib*.dylib)
+ libraries=("${LIBCXX_INSTALL}"/lib/*/lib*.dylib)
else
- libraries=("${LIBCXX_INSTALL}"/lib/lib*.so)
+ libraries=("${LIBCXX_INSTALL}"/lib/*/lib*.so)
fi
local LLVM_VERSION_MAJOR="${LLVM_VERSION/.*/}"
- libraries+=("${LIBCXX_INSTALL}"/lib/lib*.a)
+ libraries+=("${LIBCXX_INSTALL}"/lib/*/lib*.a)
for p in "${libraries[@]}" ; do
diff --git a/scripts/build/p-llvm.inc b/scripts/build/p-llvm.inc
index abf895ae..462d69f5 100644
--- a/scripts/build/p-llvm.inc
+++ b/scripts/build/p-llvm.inc
@@ -174,16 +174,21 @@ configure_llvm() {
)
if [[ "${SANITIZER_BUILD:-}" == "memory" ]]; then
- # We have to build without libunwind if RTTI is disables
+ # We have to build without libunwind if RTTI is disabled
CONFIG+=("-DLLVM_ENABLE_PROJECTS=${ENABLED_LLVM_PROJECTS}")
else
- CONFIG+=(
- "-DLLVM_BUILD_LLVM_DYLIB:BOOL=ON"
- "-DLLVM_LINK_LLVM_DYLIB:BOOL=ON"
- "-DLLVM_BUILD_STATIC:BOOL=OFF"
- "-DLIBCLANG_BUILD_STATIC:BOOL=OFF"
- )
- CONFIG+=("-DLLVM_ENABLE_PROJECTS=${ENABLED_LLVM_PROJECTS};libcxx;libcxxabi;libunwind")
+ CONFIG+=(
+ "-DLLVM_BUILD_LLVM_DYLIB:BOOL=ON"
+ "-DLLVM_LINK_LLVM_DYLIB:BOOL=ON"
+ "-DLLVM_BUILD_STATIC:BOOL=OFF"
+ "-DLIBCLANG_BUILD_STATIC:BOOL=OFF"
+ )
+ if [[ "${LLVM_VERSION_SHORT}" -ge "14" ]]; then
+ CONFIG+=("-DLLVM_ENABLE_PROJECTS=${ENABLED_LLVM_PROJECTS}")
+ CONFIG+=("-DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi")
+ else
+ CONFIG+=("-DLLVM_ENABLE_PROJECTS=${ENABLED_LLVM_PROJECTS};libcxx;libcxxabi")
+ fi
fi
if [[ -n ${SANITIZER_BUILD} ]]; then
--
2.43.0
++++++ 0001-test-disable-failing-tests-with-llvm-15.patch ++++++
From: Jiri Slaby <jslaby(a)suse.cz>
Date: Thu, 14 Dec 2023 10:25:08 +0100
Subject: test: disable failing tests with llvm 15
Patch-mainline: no
References: llvm16
This should be solved, but until then, disable these temporarily.
Links: https://github.com/klee/klee/pull/1664#issuecomment-1855364303
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/Feature/VarArgByVal.c | 2 +-
test/Runtime/POSIX/DirConsistency.c | 1 +
test/Runtime/POSIX/SymFileConsistency.c | 1 +
3 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/test/Feature/VarArgByVal.c b/test/Feature/VarArgByVal.c
index 7b979f61..582b584f 100644
--- a/test/Feature/VarArgByVal.c
+++ b/test/Feature/VarArgByVal.c
@@ -1,4 +1,4 @@
-// REQUIRES: geq-llvm-15.0
+// REQUIRES: lt-llvm-15.0
/* This test checks that KLEE correctly handles variadic arguments with the
byval attribute */
diff --git a/test/Runtime/POSIX/DirConsistency.c b/test/Runtime/POSIX/DirConsistency.c
index 5d7e47a1..9183db24 100644
--- a/test/Runtime/POSIX/DirConsistency.c
+++ b/test/Runtime/POSIX/DirConsistency.c
@@ -1,3 +1,4 @@
+// REQUIRES: lt-llvm-15.0
// RUN: %clang %s -emit-llvm %O0opt -c -g -o %t.bc
// RUN: rm -rf %t.klee-out %t.klee-out-tmp
// RUN: %gentmp %t.klee-out-tmp
diff --git a/test/Runtime/POSIX/SymFileConsistency.c b/test/Runtime/POSIX/SymFileConsistency.c
index d97f65f0..e2b8b9a8 100644
--- a/test/Runtime/POSIX/SymFileConsistency.c
+++ b/test/Runtime/POSIX/SymFileConsistency.c
@@ -1,4 +1,5 @@
// REQUIRES: posix-runtime
+// REQUIRES: lt-llvm-15.0
// RUN: %clang %s -emit-llvm %O0opt -c -g -o %t.bc
// RUN: rm -rf %t.klee-out-tmp
// RUN: %klee --output-dir=%t.klee-out-tmp --libc=uclibc --posix-runtime --exit-on-error %t.bc --sym-files 1 1 > %t1.log
--
2.43.0
++++++ 0002-Add-support-for-newer-libc-Simplify-path-detection.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Thu, 12 Oct 2023 10:28:42 +0100
Subject: Add support for newer `libc++`; Simplify path detection
Patch-mainline: no
References: llvm16
`libc++` include headers are now split between platform dependent and
platform independent code.
Before, only include files for the platform independent code were
considered. Add support to automatically find platform dependent
includes as well.
Simplify the detection of libraries and paths.
Instead of pointing to the `v1` directory, pointing to the include
directory for `-DKLEE_LIBCXX_INCLUDE_PATH` is enough.
Update build script to support this as well.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
CMakeLists.txt | 65 +++++++++++++-----------------
runtime/klee-eh-cxx/CMakeLists.txt | 8 +++-
scripts/build/p-klee.inc | 2 +-
3 files changed, 37 insertions(+), 38 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 19e9fc06..6c55eae9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -496,51 +496,44 @@ option(ENABLE_KLEE_LIBCXX "Enable libc++ for klee" OFF)
if (ENABLE_KLEE_LIBCXX)
message(STATUS "klee-libc++ support enabled")
set(SUPPORT_KLEE_LIBCXX 1) # For config.h
- set(KLEE_LIBCXX_DIR "" CACHE PATH "Path to directory containing libc++ shared object (bitcode)")
- if (NOT EXISTS "${KLEE_LIBCXX_DIR}")
- message(FATAL_ERROR
- "KLEE_LIBCXX_DIR (\"${KLEE_LIBCXX_DIR}\") does not exist.\n"
- "Try passing -DKLEE_LIBCXX_DIR=<path> to CMake where <path> is the path"
- "to the directory containing the libc++ shared object file (as bitcode).")
- endif()
- set(KLEE_LIBCXX_INCLUDE_DIR "" CACHE PATH "Path to libc++ include directory")
- if (NOT EXISTS "${KLEE_LIBCXX_INCLUDE_DIR}")
- message(FATAL_ERROR
- "KLEE_LIBCXX_INCLUDE_DIR (\"${KLEE_LIBCXX_INCLUDE_DIR}\") does not exist.\n"
- "Try passing -DKLEE_LIBCXX_INCLUDE_DIR=<path> to CMake where <path> is the"
- "libc++ include directory.")
- endif()
- message(STATUS "Use libc++ include path: \"${KLEE_LIBCXX_INCLUDE_DIR}\"")
-
- # Find the library bitcode archive
-
- # Check for static first
- set(KLEE_LIBCXX_BC_NAME "libc++.bca")
- set(KLEE_LIBCXX_BC_PATH "${KLEE_LIBCXX_DIR}/lib/${KLEE_LIBCXX_BC_NAME}")
- if (NOT EXISTS "${KLEE_LIBCXX_BC_PATH}")
- # Check for dynamic so lib
- set(KLEE_LIBCXX_BC_NAME "libc++.so.bc")
- set(KLEE_LIBCXX_BC_PATH "${KLEE_LIBCXX_DIR}/lib/${KLEE_LIBCXX_BC_NAME}")
- if (NOT EXISTS "${KLEE_LIBCXX_BC_PATH}")
- set(KLEE_LIBCXX_BC_NAME "libc++.dylib.bc")
- set(KLEE_LIBCXX_BC_PATH "${KLEE_LIBCXX_DIR}/lib/${KLEE_LIBCXX_BC_NAME}")
- if (NOT EXISTS "${KLEE_LIBCXX_BC_PATH}")
- message(FATAL_ERROR
- "libc++ library not found at \"${KLEE_LIBCXX_DIR}\"")
- endif()
- endif()
- endif()
+ find_file(KLEE_LIBCXX_BC_PATH
+ NAMES libc++.bca libc++.so.bc libc++.dylib.bc
+ DOC "Path to directory containing libc++ shared object (bitcode)"
+ PATH_SUFFIXES "lib" "lib/x86_64-unknown-linux-gnu"
+ HINTS ${KLEE_LIBCXX_DIR}
+ REQUIRED
+ )
message(STATUS "Found libc++ library: \"${KLEE_LIBCXX_BC_PATH}\"")
+ find_path(KLEE_LIBCXX_PLATFORM_INCLUDE_PATH
+ NAMES __config_site #We are searching for a platform-specific C++ library header called `__config_site`
+ DOC "Path to platform-specific libc++ include directory"
+ PATH_SUFFIXES "x86_64-unknown-linux-gnu/c++/v1" "include/x86_64-unknown-linux-gnu/c++/v1"
+ HINTS ${KLEE_LIBCXX_INCLUDE_DIR}
+ NO_DEFAULT_PATH # Make sure we don't pick-up the standard library's path
+ )
+
+ find_path(KLEE_LIBCXX_INCLUDE_PATH
+ NAMES cerrno #We are searching for a C++ library header called `cerrno`
+ DOC "Path to libc++ include directory"
+ PATH_SUFFIXES "c++/v1" "include/c++/v1"
+ HINTS ${KLEE_LIBCXX_INCLUDE_DIR}
+ REQUIRED
+ NO_DEFAULT_PATH # Make sure we don't pick-up the standard library's path
+ )
+
+ message(STATUS "Found libc++ include path: ${KLEE_LIBCXX_INCLUDE_PATH} and ${KLEE_LIBCXX_PLATFORM_INCLUDE_PATH} ")
+
+
# Copy KLEE_LIBCXX_BC_PATH so KLEE can find it where it is expected.
file(MAKE_DIRECTORY "${KLEE_RUNTIME_DIRECTORY}")
execute_process(COMMAND ${CMAKE_COMMAND} -E copy
"${KLEE_LIBCXX_BC_PATH}"
- "${KLEE_RUNTIME_DIRECTORY}/${KLEE_LIBCXX_BC_NAME}"
+ "${KLEE_RUNTIME_DIRECTORY}/${KLEE_LIBCXX_BC_PATH}"
)
list(APPEND KLEE_COMPONENT_CXX_DEFINES
- -DKLEE_LIBCXX_BC_NAME=\"${KLEE_LIBCXX_BC_NAME}\")
+ -DKLEE_LIBCXX_BC_NAME=\"${KLEE_LIBCXX_BC_PATH}\")
else()
message(STATUS "libc++ support disabled")
diff --git a/runtime/klee-eh-cxx/CMakeLists.txt b/runtime/klee-eh-cxx/CMakeLists.txt
index e016757b..470e3f0a 100644
--- a/runtime/klee-eh-cxx/CMakeLists.txt
+++ b/runtime/klee-eh-cxx/CMakeLists.txt
@@ -16,8 +16,14 @@ set(ADDITIONAL_CXX_FLAGS
-nostdinc++
-I "${KLEE_LIBCXXABI_SRC_DIR}/src"
-I "${KLEE_LIBCXXABI_SRC_DIR}/include"
- -I "${KLEE_LIBCXX_INCLUDE_DIR}"
+ -I "${KLEE_LIBCXX_INCLUDE_PATH}"
+)
+
+if (KLEE_LIBCXX_PLATFORM_INCLUDE_PATH)
+ list(APPEND ADDITIONAL_CXX_FLAGS
+ -I "${KLEE_LIBCXX_PLATFORM_INCLUDE_PATH}"
)
+endif ()
# Build it
include("${CMAKE_SOURCE_DIR}/cmake/compile_bitcode_library.cmake")
prefix_with_path("${SRC_FILES}" "${CMAKE_CURRENT_SOURCE_DIR}/" prefixed_files)
diff --git a/scripts/build/p-klee.inc b/scripts/build/p-klee.inc
index 82dedeaa..b7384b91 100644
--- a/scripts/build/p-klee.inc
+++ b/scripts/build/p-klee.inc
@@ -49,7 +49,7 @@ if [ "${USE_LIBCXX}" -eq 1 ]; then
CMAKE_ARGUMENTS+=(
"-DENABLE_KLEE_LIBCXX=TRUE"
"-DKLEE_LIBCXX_DIR=${LIBCXX_INSTALL}"
- "-DKLEE_LIBCXX_INCLUDE_DIR=${LIBCXX_INSTALL}/include/c++/v1"
+ "-DKLEE_LIBCXX_INCLUDE_DIR=${LIBCXX_INSTALL}/include/"
"-DENABLE_KLEE_EH_CXX=TRUE"
"-DKLEE_LIBCXXABI_SRC_DIR=${LIBCXX_SRC}/libcxxabi"
)
--
2.43.0
++++++ 0003-Replace-libcxx_include-with-libcxx_includes-for-mult.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Thu, 12 Oct 2023 10:32:32 +0100
Subject: Replace `%libcxx_include` with `%libcxx_includes` for multi-include
directories
Patch-mainline: no
References: llvm16
To support multiple include directories for c++ header files, use
`%libcxx_includes`. This string contains the `-I` compiler directive for
each include path as well.
Update test cases to use new directive.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/CXX/symex/libc++/atexit.cpp | 2 +-
test/CXX/symex/libc++/can_catch_test.cpp | 2 +-
test/CXX/symex/libc++/catch_recover.cpp | 2 +-
.../symex/libc++/catch_with_adjusted_exception_pointer.cpp | 2 +-
test/CXX/symex/libc++/cout.cpp | 2 +-
test/CXX/symex/libc++/cout_sym.cpp | 2 +-
test/CXX/symex/libc++/dynamic_cast.cpp | 2 +-
test/CXX/symex/libc++/exception.cpp | 2 +-
test/CXX/symex/libc++/exception_inheritance.cpp | 2 +-
test/CXX/symex/libc++/general_catch.cpp | 2 +-
test/CXX/symex/libc++/landingpad.cpp | 2 +-
test/CXX/symex/libc++/multi_throw.cpp | 2 +-
test/CXX/symex/libc++/multi_unwind.cpp | 2 +-
test/CXX/symex/libc++/nested.cpp | 2 +-
test/CXX/symex/libc++/nested_fail.cpp | 2 +-
test/CXX/symex/libc++/rethrow.cpp | 2 +-
test/CXX/symex/libc++/simple_exception.cpp | 2 +-
test/CXX/symex/libc++/simple_exception_fail.cpp | 2 +-
test/CXX/symex/libc++/symbolic_exception.cpp | 2 +-
test/CXX/symex/libc++/throw_specifiers.cpp | 2 +-
test/CXX/symex/libc++/throwing_exception_destructor.cpp | 2 +-
test/CXX/symex/libc++/uncaught_exception.cpp | 2 +-
test/CXX/symex/libc++/vector.cpp | 2 +-
test/lit.cfg | 5 ++++-
test/lit.site.cfg.in | 4 +++-
25 files changed, 30 insertions(+), 25 deletions(-)
diff --git a/test/CXX/symex/libc++/atexit.cpp b/test/CXX/symex/libc++/atexit.cpp
index fa8df475..d084958b 100644
--- a/test/CXX/symex/libc++/atexit.cpp
+++ b/test/CXX/symex/libc++/atexit.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: uclibc
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/can_catch_test.cpp b/test/CXX/symex/libc++/can_catch_test.cpp
index c70d14a2..4c59c126 100644
--- a/test/CXX/symex/libc++/can_catch_test.cpp
+++ b/test/CXX/symex/libc++/can_catch_test.cpp
@@ -1,7 +1,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libcxx --libc=uclibc %t.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/catch_recover.cpp b/test/CXX/symex/libc++/catch_recover.cpp
index c77bea91..8eee326a 100644
--- a/test/CXX/symex/libc++/catch_recover.cpp
+++ b/test/CXX/symex/libc++/catch_recover.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/catch_with_adjusted_exception_pointer.cpp b/test/CXX/symex/libc++/catch_with_adjusted_exception_pointer.cpp
index e3bf08ad..57751b23 100644
--- a/test/CXX/symex/libc++/catch_with_adjusted_exception_pointer.cpp
+++ b/test/CXX/symex/libc++/catch_with_adjusted_exception_pointer.cpp
@@ -1,7 +1,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libcxx --libc=uclibc %t.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/cout.cpp b/test/CXX/symex/libc++/cout.cpp
index 62cd0406..d845a1ea 100644
--- a/test/CXX/symex/libc++/cout.cpp
+++ b/test/CXX/symex/libc++/cout.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: uclibc
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/cout_sym.cpp b/test/CXX/symex/libc++/cout_sym.cpp
index 177c3ed7..69420ac9 100644
--- a/test/CXX/symex/libc++/cout_sym.cpp
+++ b/test/CXX/symex/libc++/cout_sym.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: uclibc
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/dynamic_cast.cpp b/test/CXX/symex/libc++/dynamic_cast.cpp
index a2fc8b82..f8a039ce 100644
--- a/test/CXX/symex/libc++/dynamic_cast.cpp
+++ b/test/CXX/symex/libc++/dynamic_cast.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: uclibc
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc
diff --git a/test/CXX/symex/libc++/exception.cpp b/test/CXX/symex/libc++/exception.cpp
index 4d6805f6..c36db2d9 100644
--- a/test/CXX/symex/libc++/exception.cpp
+++ b/test/CXX/symex/libc++/exception.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/exception_inheritance.cpp b/test/CXX/symex/libc++/exception_inheritance.cpp
index ca207eb4..4551bc18 100644
--- a/test/CXX/symex/libc++/exception_inheritance.cpp
+++ b/test/CXX/symex/libc++/exception_inheritance.cpp
@@ -1,7 +1,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libcxx --libc=uclibc %t.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/general_catch.cpp b/test/CXX/symex/libc++/general_catch.cpp
index c544f7a3..eb045d16 100644
--- a/test/CXX/symex/libc++/general_catch.cpp
+++ b/test/CXX/symex/libc++/general_catch.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/landingpad.cpp b/test/CXX/symex/libc++/landingpad.cpp
index 13dd6bc4..c23b8ee2 100644
--- a/test/CXX/symex/libc++/landingpad.cpp
+++ b/test/CXX/symex/libc++/landingpad.cpp
@@ -4,7 +4,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libcxx --libc=uclibc %t.bc | FileCheck %s
// Expect the following output:
diff --git a/test/CXX/symex/libc++/multi_throw.cpp b/test/CXX/symex/libc++/multi_throw.cpp
index 52e8d9b9..626585f4 100644
--- a/test/CXX/symex/libc++/multi_throw.cpp
+++ b/test/CXX/symex/libc++/multi_throw.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/multi_unwind.cpp b/test/CXX/symex/libc++/multi_unwind.cpp
index cf29422c..ab8d7a5c 100644
--- a/test/CXX/symex/libc++/multi_unwind.cpp
+++ b/test/CXX/symex/libc++/multi_unwind.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/nested.cpp b/test/CXX/symex/libc++/nested.cpp
index 21222642..1273a3b9 100644
--- a/test/CXX/symex/libc++/nested.cpp
+++ b/test/CXX/symex/libc++/nested.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/nested_fail.cpp b/test/CXX/symex/libc++/nested_fail.cpp
index d0b8ca09..4dce0279 100644
--- a/test/CXX/symex/libc++/nested_fail.cpp
+++ b/test/CXX/symex/libc++/nested_fail.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/rethrow.cpp b/test/CXX/symex/libc++/rethrow.cpp
index 149fe693..213cb1af 100644
--- a/test/CXX/symex/libc++/rethrow.cpp
+++ b/test/CXX/symex/libc++/rethrow.cpp
@@ -1,7 +1,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libcxx --libc=uclibc %t.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/simple_exception.cpp b/test/CXX/symex/libc++/simple_exception.cpp
index 0196e1eb..0ca8f8ed 100644
--- a/test/CXX/symex/libc++/simple_exception.cpp
+++ b/test/CXX/symex/libc++/simple_exception.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/simple_exception_fail.cpp b/test/CXX/symex/libc++/simple_exception_fail.cpp
index bda2cd33..793d9201 100644
--- a/test/CXX/symex/libc++/simple_exception_fail.cpp
+++ b/test/CXX/symex/libc++/simple_exception_fail.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/symbolic_exception.cpp b/test/CXX/symex/libc++/symbolic_exception.cpp
index 3f29fa04..50d682ba 100644
--- a/test/CXX/symex/libc++/symbolic_exception.cpp
+++ b/test/CXX/symex/libc++/symbolic_exception.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/throw_specifiers.cpp b/test/CXX/symex/libc++/throw_specifiers.cpp
index 96195cd4..efd6a0be 100644
--- a/test/CXX/symex/libc++/throw_specifiers.cpp
+++ b/test/CXX/symex/libc++/throw_specifiers.cpp
@@ -3,7 +3,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libcxx --libc=uclibc %t.bc | FileCheck %s
diff --git a/test/CXX/symex/libc++/throwing_exception_destructor.cpp b/test/CXX/symex/libc++/throwing_exception_destructor.cpp
index 02d7cdb9..7505027c 100644
--- a/test/CXX/symex/libc++/throwing_exception_destructor.cpp
+++ b/test/CXX/symex/libc++/throwing_exception_destructor.cpp
@@ -2,7 +2,7 @@
// REQUIRES: uclibc
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm -O0 -std=c++11 -c -I "%libcxx_include" -g -nostdinc++ -o %t.bc
+// RUN: %clangxx %s -emit-llvm -O0 -std=c++11 -c %libcxx_includes -g -nostdinc++ -o %t.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libcxx --libc=uclibc --exit-on-error %t.bc
diff --git a/test/CXX/symex/libc++/uncaught_exception.cpp b/test/CXX/symex/libc++/uncaught_exception.cpp
index 848013a0..4f9444a6 100644
--- a/test/CXX/symex/libc++/uncaught_exception.cpp
+++ b/test/CXX/symex/libc++/uncaught_exception.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: eh-cxx
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/CXX/symex/libc++/vector.cpp b/test/CXX/symex/libc++/vector.cpp
index 6f69ad65..33821b9e 100644
--- a/test/CXX/symex/libc++/vector.cpp
+++ b/test/CXX/symex/libc++/vector.cpp
@@ -2,7 +2,7 @@
// Disabling msan because it times out on CI
// REQUIRES: libcxx
// REQUIRES: uclibc
-// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 -I "%libcxx_include" -g -nostdinc++ -o %t1.bc
+// RUN: %clangxx %s -emit-llvm %O0opt -c -std=c++11 %libcxx_includes -g -nostdinc++ -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out --exit-on-error --libc=uclibc --libcxx %t1.bc 2>&1 | FileCheck %s
diff --git a/test/lit.cfg b/test/lit.cfg
index cb47d3d4..c442c409 100644
--- a/test/lit.cfg
+++ b/test/lit.cfg
@@ -156,8 +156,11 @@ config.substitutions.append(
('%gentmp', os.path.join(klee_src_root, 'scripts/genTempFiles.sh'))
)
+# Prepare the full include expression, i.e. for all given paths. For example, ["path1","path2"]
+# becomes "-I path1 -I path2"
config.substitutions.append(
- ('%libcxx_include', getattr(config, 'libcxx_include_dir', None)))
+ ('%libcxx_includes', " ".join( ["-I "+ p for p in getattr(config, 'libcxx_include_dirs', [])] ))
+ )
# Add feature for the LLVM version in use, so it can be tested in REQUIRES and
# XFAIL checks. We also add "not-XXX" variants, for the same reason.
diff --git a/test/lit.site.cfg.in b/test/lit.site.cfg.in
index c7063057..d185982b 100644
--- a/test/lit.site.cfg.in
+++ b/test/lit.site.cfg.in
@@ -9,7 +9,9 @@ config.klee_obj_root = "@KLEE_BINARY_DIR@"
config.klee_tools_dir = "@KLEE_TOOLS_DIR@"
config.llvm_tools_dir = "@LLVM_TOOLS_DIR@"
-config.libcxx_include_dir = "@KLEE_LIBCXX_INCLUDE_DIR@"
+config.libcxx_include_dirs = ["@KLEE_LIBCXX_INCLUDE_PATH@"]
+if len("@KLEE_LIBCXX_PLATFORM_INCLUDE_PATH@") > 0:
+ config.libcxx_include_dirs.append("@KLEE_LIBCXX_PLATFORM_INCLUDE_PATH@")
# Needed to check if a hack needs to be applied
config.llvm_version_major = "@LLVM_VERSION_MAJOR@"
--
2.43.0
++++++ 0004-Fix-klee-libc-memchr.c-compiler-warning.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Thu, 12 Oct 2023 10:34:01 +0100
Subject: Fix `klee-libc/memchr.c` compiler warning
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
runtime/klee-libc/memchr.c | 23 +++++++++--------------
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git a/runtime/klee-libc/memchr.c b/runtime/klee-libc/memchr.c
index fe0670a7..3cd47cdf 100644
--- a/runtime/klee-libc/memchr.c
+++ b/runtime/klee-libc/memchr.c
@@ -36,19 +36,14 @@
#include <string.h>
-void *
-memchr(s, c, n)
- const void *s;
- int c;
- size_t n;
-{
- if (n != 0) {
- const unsigned char *p = s;
+void *memchr(const void *s, int c, size_t n) {
+ if (n != 0) {
+ const unsigned char *p = s;
- do {
- if (*p++ == c)
- return ((void *)(p - 1));
- } while (--n != 0);
- }
- return (NULL);
+ do {
+ if (*p++ == c)
+ return ((void *)(p - 1));
+ } while (--n != 0);
+ }
+ return (NULL);
}
--
2.43.0
++++++ 0005-Fix-klee_eh_cxx.cpp-compiler-error.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Thu, 12 Oct 2023 10:34:33 +0100
Subject: Fix `klee_eh_cxx.cpp` compiler error
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
runtime/klee-eh-cxx/klee_eh_cxx.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/runtime/klee-eh-cxx/klee_eh_cxx.cpp b/runtime/klee-eh-cxx/klee_eh_cxx.cpp
index 9d86bef4..cb5e0c7c 100644
--- a/runtime/klee-eh-cxx/klee_eh_cxx.cpp
+++ b/runtime/klee-eh-cxx/klee_eh_cxx.cpp
@@ -90,7 +90,7 @@ get_thrown_object_ptr(_Unwind_Exception* unwind_exception)
// Our implementation of a personality function for handling
// libcxxabi-exceptions. Follows how libcxxabi's __gxx_personality_v0 handles
// exceptions.
-[[gnu::used]] extern "C" std::int32_t
+extern "C" std::int32_t
_klee_eh_cxx_personality(_Unwind_Exception *exceptionPointer,
const std::size_t num_bytes,
const unsigned char *lp_clauses) {
--
2.43.0
++++++ 0006-Refactor-invocation-of-old-pass-manager-into-legacy-.patch ++++++
++++ 1002 lines (skipped)
++++++ 0007-Use-KLEE-s-uClibc-v1.4-as-default-to-support-the-com.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Sun, 29 Oct 2023 20:38:55 +0000
Subject: Use KLEE's uClibc v1.4 as default to support the compilation with
newer compilers
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
.github/workflows/build.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 96122bcb..fa924a37 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -24,7 +24,7 @@ env:
SOLVERS: STP:Z3
STP_VERSION: 2.3.3
TCMALLOC_VERSION: 2.9.1
- UCLIBC_VERSION: klee_uclibc_v1.3
+ UCLIBC_VERSION: klee_uclibc_v1.4
USE_TCMALLOC: 1
USE_LIBCXX: 1
Z3_VERSION: 4.8.15
--
2.43.0
++++++ 0008-Assume-C-compiler-s-default-standard-is-std-gnu17.patch ++++++
++++ 1159 lines (skipped)
++++++ 0009-Explicitly-build-KLEE-s-exception-handling-runtime-w.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 12:03:22 +0000
Subject: Explicitly build KLEE's exception handling runtime with C++11
Patch-mainline: no
References: llvm16
Currently, we assume C++11 support being used to by the tested software.
This needs to change if newer C++ standards should be supported.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
runtime/klee-eh-cxx/CMakeLists.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/runtime/klee-eh-cxx/CMakeLists.txt b/runtime/klee-eh-cxx/CMakeLists.txt
index 470e3f0a..b51b8544 100644
--- a/runtime/klee-eh-cxx/CMakeLists.txt
+++ b/runtime/klee-eh-cxx/CMakeLists.txt
@@ -17,6 +17,7 @@ set(ADDITIONAL_CXX_FLAGS
-I "${KLEE_LIBCXXABI_SRC_DIR}/src"
-I "${KLEE_LIBCXXABI_SRC_DIR}/include"
-I "${KLEE_LIBCXX_INCLUDE_PATH}"
+ -std=c++11
)
if (KLEE_LIBCXX_PLATFORM_INCLUDE_PATH)
--
2.43.0
++++++ 0010-Explicitly-enable-opaque-pointer-support-for-LLVM-15.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:26:01 +0000
Subject: Explicitly enable opaque pointer support for LLVM 15
Patch-mainline: no
References: llvm16
This automatically lifts old-style pointers to opaque pointerws.
More recent versions use opaque pointers automatically and do not need
an explicit enabling.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/Concrete/Makefile.cmake.test.in | 6 ++++--
tools/klee/main.cpp | 4 ++++
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/test/Concrete/Makefile.cmake.test.in b/test/Concrete/Makefile.cmake.test.in
index 2282bb08..765ea690 100644
--- a/test/Concrete/Makefile.cmake.test.in
+++ b/test/Concrete/Makefile.cmake.test.in
@@ -14,6 +14,8 @@ LLVMCC := @LLVMCC@
LLVMAS := @LLVM_AS@
LLVMLINK := @LLVM_LINK@
LLVMCC.CFlags := @OZERO_OPT@ -Wall
+LLVMAS.Flags := @LLVM_AS_FLAGS@
+LLVMLINK.Flags := @LLVM_LINK_FLAGS@
# Make sure source files can match the pattern rules
VPATH := @CMAKE_CURRENT_SOURCE_DIR@
@@ -28,7 +30,7 @@ Output/%.bc: %.c Output/.dir
$(LLVMCC) -emit-llvm -c $(LLVMCC.CFlags) $< -o $@
Output/%.bc: %.ll $(LLVMAS) Output/.dir
- $(LLVMAS) -f $< -o $@
+ $(LLVMAS) $(LLVMAS.Flags) -f $< -o $@
# We build a separate testingUtils bitcode for each test, to make sure parallel
# tests don't interact with one another.
@@ -36,7 +38,7 @@ Output/%_testingUtils.bc: _testingUtils.c Output/.dir
$(LLVMCC) -emit-llvm -c $(LLVMCC.CFlags) $< -o $@
Output/linked_%.bc: Output/%.bc Output/%_testingUtils.bc
- $(LLVMLINK) $< Output/$*_testingUtils.bc -o $@
+ $(LLVMLINK) $(LLVMLINK.Flags) $< Output/$*_testingUtils.bc -o $@
.PRECIOUS: Output/.dir
diff --git a/tools/klee/main.cpp b/tools/klee/main.cpp
index a3062d24..340daf0b 100644
--- a/tools/klee/main.cpp
+++ b/tools/klee/main.cpp
@@ -1202,6 +1202,10 @@ int main(int argc, char **argv, char **envp) {
// Load the bytecode...
std::string errorMsg;
LLVMContext ctx;
+#if LLVM_VERSION_CODE == LLVM_VERSION(15, 0)
+ // We have to force the upgrade to opaque pointer explicitly for LLVM 15.
+ ctx.setOpaquePointers(true);
+#endif
std::vector<std::unique_ptr<llvm::Module>> loadedModules;
if (!klee::loadFile(InputFile, ctx, loadedModules, errorMsg)) {
klee_error("error loading program '%s': %s", InputFile.c_str(),
--
2.43.0
++++++ 0011-Add-support-for-opaque-pointers.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:46:22 +0000
Subject: Add support for opaque pointers
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
lib/Core/Executor.cpp | 119 ++++++++++++++++++++++-----
lib/Core/ExternalDispatcher.cpp | 20 ++++-
lib/Core/GetElementPtrTypeIterator.h | 8 --
lib/Module/FunctionAlias.cpp | 8 +-
lib/Module/IntrinsicCleaner.cpp | 11 ++-
5 files changed, 132 insertions(+), 34 deletions(-)
diff --git a/lib/Core/Executor.cpp b/lib/Core/Executor.cpp
index b4da6a08..58c15141 100644
--- a/lib/Core/Executor.cpp
+++ b/lib/Core/Executor.cpp
@@ -14,7 +14,9 @@
#include "CoreStats.h"
#include "ExecutionState.h"
#include "ExternalDispatcher.h"
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
#include "GetElementPtrTypeIterator.h"
+#endif
#include "ImpliedValue.h"
#include "Memory.h"
#include "MemoryManager.h"
@@ -67,6 +69,9 @@
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Operator.h"
+#if LLVM_VERSION_CODE >= LLVM_VERSION(15, 0)
+#include "llvm/IR/GetElementPtrTypeIterator.h"
+#endif
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FileSystem.h"
@@ -1464,24 +1469,25 @@ MemoryObject *Executor::serializeLandingpad(ExecutionState &state,
stateTerminated = false;
std::vector<unsigned char> serialized;
-
for (unsigned current_clause_id = 0; current_clause_id < lpi.getNumClauses();
++current_clause_id) {
- llvm::Constant *current_clause = lpi.getClause(current_clause_id);
if (lpi.isCatch(current_clause_id)) {
// catch-clause
serialized.push_back(0);
std::uint64_t ti_addr = 0;
- llvm::BitCastOperator *clause_bitcast =
- dyn_cast<llvm::BitCastOperator>(current_clause);
- if (clause_bitcast) {
- llvm::GlobalValue *clause_type =
+ llvm::Constant *catchClause = lpi.getClause(current_clause_id);
+ llvm::Constant *typeInfo = catchClause->stripPointerCasts();
+ if (auto *gv = dyn_cast<llvm::GlobalVariable>(typeInfo)) {
+ ti_addr = globalAddresses[gv]->getZExtValue();
+ } else if (auto *clause_bitcast =
+ dyn_cast<llvm::BitCastOperator>(catchClause)) {
+ auto *clause_type =
dyn_cast<GlobalValue>(clause_bitcast->getOperand(0));
ti_addr = globalAddresses[clause_type]->getZExtValue();
- } else if (current_clause->isNullValue()) {
+ } else if (catchClause->isNullValue()) {
ti_addr = 0;
} else {
terminateStateOnExecError(
@@ -1493,15 +1499,16 @@ MemoryObject *Executor::serializeLandingpad(ExecutionState &state,
serialized.resize(old_size + 8);
memcpy(serialized.data() + old_size, &ti_addr, sizeof(ti_addr));
} else if (lpi.isFilter(current_clause_id)) {
- if (current_clause->isNullValue()) {
+ llvm::Constant *filter_clause = lpi.getClause(current_clause_id);
+
+ if (filter_clause->isNullValue()) {
// special handling for a catch-all filter clause, i.e., "[0 x i8*]"
// for this case we serialize 1 element..
serialized.push_back(1);
// which is a 64bit-wide 0.
serialized.resize(serialized.size() + 8, 0);
} else {
- llvm::ConstantArray const *ca =
- cast<llvm::ConstantArray>(current_clause);
+ const auto *ca = cast<llvm::ConstantArray>(filter_clause);
// serialize `num_elements+1` as unsigned char
unsigned const num_elements = ca->getNumOperands();
@@ -1520,18 +1527,16 @@ MemoryObject *Executor::serializeLandingpad(ExecutionState &state,
// serialize the exception-types occurring in this filter-clause
for (llvm::Value const *v : ca->operands()) {
- llvm::BitCastOperator const *bitcast =
- dyn_cast<llvm::BitCastOperator>(v);
- if (!bitcast) {
- terminateStateOnExecError(state,
- "Internal: expected value inside a "
- "filter-clause to be a bitcast");
- stateTerminated = true;
- return nullptr;
+ llvm::GlobalValue const *clause_value = nullptr;
+
+ if (auto const *bitcast = dyn_cast<llvm::BitCastOperator>(v)) {
+ clause_value = dyn_cast<GlobalValue>(bitcast->getOperand(0));
+ }
+
+ if (auto *gv = dyn_cast<llvm::GlobalVariable>(v)) {
+ clause_value = gv;
}
- llvm::GlobalValue const *clause_value =
- dyn_cast<GlobalValue>(bitcast->getOperand(0));
if (!clause_value) {
terminateStateOnExecError(state,
"Internal: expected value inside a "
@@ -2150,7 +2155,7 @@ void Executor::executeInstruction(ExecutionState &state, KInstruction *ki) {
unwindToNextLandingpad(state);
} else {
// a clause (or a catch-all clause or filter clause) matches:
- // remember the stack index and switch to cleanup phase
+ // remember the stack index and switch to clean-up phase
state.unwindingInformation =
std::make_unique<CleanupPhaseUnwindingInformation>(
sui->exceptionObject, cast<ConstantExpr>(result),
@@ -2457,8 +2462,12 @@ void Executor::executeInstruction(ExecutionState &state, KInstruction *ki) {
if (f) {
const FunctionType *fType = f->getFunctionType();
+#if LLVM_VERSION_MAJOR >= 15
+ const FunctionType *fpType = cb.getFunctionType();
+#else
const FunctionType *fpType =
dyn_cast<FunctionType>(fp->getType()->getPointerElementType());
+#endif
// special case the call with a bitcast case
if (fType != fpType) {
@@ -3365,10 +3374,17 @@ template <typename TypeIt>
void Executor::computeOffsetsSeqTy(KGEPInstruction *kgepi,
ref<ConstantExpr> &constantOffset,
uint64_t index, const TypeIt it) {
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
assert(it->getNumContainedTypes() == 1 &&
"Sequential type must contain one subtype");
uint64_t elementSize =
kmodule->targetData->getTypeStoreSize(it->getContainedType(0));
+#else
+ assert(it.isSequential() && "Called with non-sequential type");
+ // Get the size of a single element
+ uint64_t elementSize =
+ kmodule->targetData->getTypeStoreSize(it.getIndexedType());
+#endif
const Value *operand = it.getOperand();
if (const Constant *c = dyn_cast<Constant>(operand)) {
ref<ConstantExpr> index =
@@ -3387,13 +3403,21 @@ void Executor::computeOffsets(KGEPInstruction *kgepi, TypeIt ib, TypeIt ie) {
ConstantExpr::alloc(0, Context::get().getPointerWidth());
uint64_t index = 1;
for (TypeIt ii = ib; ii != ie; ++ii) {
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
if (StructType *st = dyn_cast<StructType>(*ii)) {
+#else
+ if (StructType *st = ii.getStructTypeOrNull()) {
+#endif
const StructLayout *sl = kmodule->targetData->getStructLayout(st);
const ConstantInt *ci = cast<ConstantInt>(ii.getOperand());
uint64_t addend = sl->getElementOffset((unsigned) ci->getZExtValue());
constantOffset = constantOffset->Add(ConstantExpr::alloc(addend,
Context::get().getPointerWidth()));
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
} else if (ii->isArrayTy() || ii->isVectorTy() || ii->isPointerTy()) {
+#else
+ } else if (ii.isSequential()) {
+#endif
computeOffsetsSeqTy(kgepi, constantOffset, index, ii);
} else
assert("invalid type" && 0);
@@ -3405,15 +3429,66 @@ void Executor::computeOffsets(KGEPInstruction *kgepi, TypeIt ib, TypeIt ie) {
void Executor::bindInstructionConstants(KInstruction *KI) {
if (GetElementPtrInst *gepi = dyn_cast<GetElementPtrInst>(KI->inst)) {
KGEPInstruction *kgepi = static_cast<KGEPInstruction *>(KI);
- computeOffsets(kgepi, gep_type_begin(gepi), gep_type_end(gepi));
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
+ computeOffsets(kgepi, klee::gep_type_begin(gepi), klee::gep_type_end(gepi));
+#else
+ computeOffsets(kgepi, llvm::gep_type_begin(gepi), llvm::gep_type_end(gepi));
+#endif
} else if (InsertValueInst *ivi = dyn_cast<InsertValueInst>(KI->inst)) {
KGEPInstruction *kgepi = static_cast<KGEPInstruction *>(KI);
+#if LLVM_VERSION_CODE <= LLVM_VERSION(10, 0)
computeOffsets(kgepi, iv_type_begin(ivi), iv_type_end(ivi));
assert(kgepi->indices.empty() && "InsertValue constant offset expected");
+#else
+ llvm::Value *agg = ivi->getAggregateOperand();
+ llvm::Type *current_type = agg->getType();
+ uint64_t offset = 0;
+ for (auto index : ivi->indices()) {
+ if (StructType *st = dyn_cast<llvm::StructType>(current_type)) {
+ const StructLayout *sl = kmodule->targetData->getStructLayout(st);
+ uint64_t addend = sl->getElementOffset(index);
+ offset = offset + addend;
+ } else if (current_type->isArrayTy() || current_type->isVectorTy() ||
+ current_type->isPointerTy()) {
+ uint64_t elementSize = kmodule->targetData->getTypeStoreSize(
+ current_type->getArrayElementType());
+ offset += elementSize * index;
+ } else {
+ assert(0 && "Unknown type");
+ }
+
+ current_type = GetElementPtrInst::getTypeAtIndex(current_type, index);
+ }
+ kgepi->offset = offset;
+#endif
} else if (ExtractValueInst *evi = dyn_cast<ExtractValueInst>(KI->inst)) {
KGEPInstruction *kgepi = static_cast<KGEPInstruction *>(KI);
+#if LLVM_VERSION_CODE <= LLVM_VERSION(10, 0)
computeOffsets(kgepi, ev_type_begin(evi), ev_type_end(evi));
assert(kgepi->indices.empty() && "ExtractValue constant offset expected");
+#else
+
+ llvm::Value *agg = evi->getAggregateOperand();
+ llvm::Type *current_type = agg->getType();
+ uint64_t offset = 0;
+ for (auto index : evi->indices()) {
+ if (StructType *st = dyn_cast<llvm::StructType>(current_type)) {
+ const StructLayout *sl = kmodule->targetData->getStructLayout(st);
+ uint64_t addend = sl->getElementOffset(index);
+ offset = offset + addend;
+ } else if (current_type->isArrayTy() || current_type->isVectorTy() ||
+ current_type->isPointerTy()) {
+ uint64_t elementSize = kmodule->targetData->getTypeStoreSize(
+ current_type->getArrayElementType());
+ offset += elementSize * index;
+ } else {
+ assert(0 && "Unknown type");
+ }
+
+ current_type = GetElementPtrInst::getTypeAtIndex(current_type, index);
+ }
+ kgepi->offset = offset;
+#endif
}
}
diff --git a/lib/Core/ExternalDispatcher.cpp b/lib/Core/ExternalDispatcher.cpp
index 718b1c31..7b43218b 100644
--- a/lib/Core/ExternalDispatcher.cpp
+++ b/lib/Core/ExternalDispatcher.cpp
@@ -250,7 +250,7 @@ bool ExternalDispatcherImpl::runProtectedCall(Function *f, uint64_t *args) {
}
// FIXME: This might have been relevant for the old JIT but the MCJIT
-// has a completly different implementation so this comment below is
+// has a completely different implementation so this comment below is
// likely irrelevant and misleading.
//
// For performance purposes we construct the stub in such a way that the
@@ -283,13 +283,20 @@ Function *ExternalDispatcherImpl::createDispatcher(KCallable *target,
llvm::IRBuilder<> Builder(dBB);
// Get a Value* for &gTheArgsP, as an i64**.
+#if LLVM_VERSION_CODE >= LLVM_VERSION(15, 0)
+ auto argI64sp = Builder.CreateIntToPtr(
+ ConstantInt::get(Type::getInt64Ty(ctx), (uintptr_t)&gTheArgsP),
+ PointerType::getUnqual(PointerType::getUnqual(Type::getInt64Ty(ctx))),
+ "argsp");
+ auto argI64s = Builder.CreateLoad(Builder.getPtrTy(), argI64sp, "args");
+#else
auto argI64sp = Builder.CreateIntToPtr(
ConstantInt::get(Type::getInt64Ty(ctx), (uintptr_t)(void *)&gTheArgsP),
PointerType::getUnqual(PointerType::getUnqual(Type::getInt64Ty(ctx))),
"argsp");
auto argI64s = Builder.CreateLoad(
argI64sp->getType()->getPointerElementType(), argI64sp, "args");
-
+#endif
// Get the target function type.
FunctionType *FTy = target->getFunctionType();
@@ -306,6 +313,14 @@ Function *ExternalDispatcherImpl::createDispatcher(KCallable *target,
if (argTy->isX86_FP80Ty() && idx & 0x01)
idx++;
+#if LLVM_VERSION_CODE >= LLVM_VERSION(15, 0)
+ auto argI64p =
+ Builder.CreateGEP(Builder.getPtrTy(), argI64s,
+ ConstantInt::get(Type::getInt32Ty(ctx), idx));
+
+ auto argp = Builder.CreateBitCast(argI64p, PointerType::getUnqual(argTy));
+ args[i] = Builder.CreateLoad(argTy, argp);
+#else
auto argI64p =
Builder.CreateGEP(argI64s->getType()->getPointerElementType(), argI64s,
ConstantInt::get(Type::getInt32Ty(ctx), idx));
@@ -313,6 +328,7 @@ Function *ExternalDispatcherImpl::createDispatcher(KCallable *target,
auto argp = Builder.CreateBitCast(argI64p, PointerType::getUnqual(argTy));
args[i] =
Builder.CreateLoad(argp->getType()->getPointerElementType(), argp);
+#endif
unsigned argSize = argTy->getPrimitiveSizeInBits();
idx += ((!!argSize ? argSize : 64) + 63) / 64;
diff --git a/lib/Core/GetElementPtrTypeIterator.h b/lib/Core/GetElementPtrTypeIterator.h
index d8b0e097..4e0314cb 100644
--- a/lib/Core/GetElementPtrTypeIterator.h
+++ b/lib/Core/GetElementPtrTypeIterator.h
@@ -144,14 +144,6 @@ public:
return iv_type_iterator::end(IV->idx_end());
}
- inline vce_type_iterator vce_type_begin(const llvm::ConstantExpr *CE) {
- return vce_type_iterator::begin(CE->getOperand(0)->getType(),
- CE->getIndices().begin());
- }
- inline vce_type_iterator vce_type_end(const llvm::ConstantExpr *CE) {
- return vce_type_iterator::end(CE->getIndices().end());
- }
-
template <typename ItTy>
inline generic_gep_type_iterator<ItTy> gep_type_begin(llvm::Type *Op0, ItTy I,
ItTy E) {
diff --git a/lib/Module/FunctionAlias.cpp b/lib/Module/FunctionAlias.cpp
index aa80b35d..c00bde58 100644
--- a/lib/Module/FunctionAlias.cpp
+++ b/lib/Module/FunctionAlias.cpp
@@ -134,10 +134,16 @@ bool FunctionAliasPass::runOnModule(Module &M) {
}
const FunctionType *FunctionAliasPass::getFunctionType(const GlobalValue *gv) {
+#if LLVM_VERSION_CODE >= LLVM_VERSION(15, 0)
+ if (auto *ft = dyn_cast<FunctionType>(gv->getType()))
+ return ft;
+ return dyn_cast<FunctionType>(gv->getValueType());
+#else
const Type *type = gv->getType();
while (type->isPointerTy())
type = type->getPointerElementType();
- return cast<FunctionType>(type);
+ return dyn_cast<FunctionType>(type);
+#endif
}
bool FunctionAliasPass::checkType(const GlobalValue *match,
diff --git a/lib/Module/IntrinsicCleaner.cpp b/lib/Module/IntrinsicCleaner.cpp
index ad7c0631..40ff2874 100644
--- a/lib/Module/IntrinsicCleaner.cpp
+++ b/lib/Module/IntrinsicCleaner.cpp
@@ -100,9 +100,14 @@ bool IntrinsicCleanerPass::runOnBasicBlock(BasicBlock &b, Module &M) {
Builder.CreatePointerCast(dst, i8pp, "vacopy.cast.dst");
auto castedSrc =
Builder.CreatePointerCast(src, i8pp, "vacopy.cast.src");
+#if LLVM_VERSION_CODE >= LLVM_VERSION(15, 0)
+ auto load = Builder.CreateLoad(Builder.getInt8PtrTy(), castedSrc,
+ "vacopy.read");
+#else
auto load =
Builder.CreateLoad(castedSrc->getType()->getPointerElementType(),
castedSrc, "vacopy.read");
+#endif
Builder.CreateStore(load, castedDst, false /* isVolatile */);
} else {
assert(WordSize == 8 && "Invalid word size!");
@@ -110,9 +115,13 @@ bool IntrinsicCleanerPass::runOnBasicBlock(BasicBlock &b, Module &M) {
auto pDst = Builder.CreatePointerCast(dst, i64p, "vacopy.cast.dst");
auto pSrc = Builder.CreatePointerCast(src, i64p, "vacopy.cast.src");
+#if LLVM_VERSION_CODE >= LLVM_VERSION(15, 0)
+ auto pSrcType = Builder.getPtrTy();
+ auto pDstType = Builder.getPtrTy();
+#else
auto pSrcType = pSrc->getType()->getPointerElementType();
auto pDstType = pDst->getType()->getPointerElementType();
-
+#endif
auto val = Builder.CreateLoad(pSrcType, pSrc);
Builder.CreateStore(val, pDst, ii);
--
2.43.0
++++++ 0012-Fix-test-cases-to-support-opaque-pointers.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:48:58 +0000
Subject: Fix test cases to support opaque pointers
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/CXX/LandingPad.cpp | 2 +
test/Concrete/CMakeLists.txt | 4 ++
test/Feature/KleeStats.c | 2 +-
test/Feature/VarArgByVal.c | 8 +--
test/Feature/VarArgByValOld.c | 131 ++++++++++++++++++++++++++++++++++
test/Feature/asm_lifting.ll | 2 +-
6 files changed, 143 insertions(+), 6 deletions(-)
create mode 100644 test/Feature/VarArgByValOld.c
diff --git a/test/CXX/LandingPad.cpp b/test/CXX/LandingPad.cpp
index 18cad7c8..6b6e6748 100644
--- a/test/CXX/LandingPad.cpp
+++ b/test/CXX/LandingPad.cpp
@@ -1,3 +1,5 @@
+// REQUIRES: lt-llvm-15.0
+// Different LLVM IR syntax with opaque ptr - it's a nullptr directly, no constant
// RUN: %clangxx %s -emit-llvm -c -o %t1.bc
// RUN: rm -rf %t.klee-out
// RUN: %klee --output-dir=%t.klee-out %t1.bc 2>&1 | FileCheck %s
diff --git a/test/Concrete/CMakeLists.txt b/test/Concrete/CMakeLists.txt
index e7cf2416..a073482c 100644
--- a/test/Concrete/CMakeLists.txt
+++ b/test/Concrete/CMakeLists.txt
@@ -8,4 +8,8 @@
#===------------------------------------------------------------------------===#
set(OZERO_OPT "-O0 -Xclang -disable-O0-optnone")
+if ("${LLVM_VERSION_MAJOR}" EQUAL 15)
+ set(LLVM_AS_FLAGS "-opaque-pointers")
+ set(LLVM_LINK_FLAGS "-opaque-pointers")
+endif ()
configure_file(Makefile.cmake.test.in Makefile.cmake.test @ONLY)
diff --git a/test/Feature/KleeStats.c b/test/Feature/KleeStats.c
index 2a498beb..8045f22e 100644
--- a/test/Feature/KleeStats.c
+++ b/test/Feature/KleeStats.c
@@ -29,7 +29,7 @@ int main(){
// First check we find a line with the expected format
// CHECK-STATS: Path,Instrs,Time(s),ICov(%),BCov(%),ICount,TSolver(%),ActiveStates,MaxActiveStates,Mem(MiB),MaxMem(MiB)
// Check there is a line with .klee-out dir, non zero instruction, less than 1 second execution time and 100 ICov.
-// CHECK-STATS: {{.*\.klee-out,[1-9]+,[0-9]+\.([0-9]+),100\.00}}
+// CHECK-STATS: {{.*\.klee-out,[1-9][0-9]+,[0-9]+\.([0-9]+),100\.00}}
// Check other formats
// CHECK-STATS-ABS-TIMES: Path,Time(s),TUser(s),TResolve(s),TCex(s),TSolver(s),TFork(s)
diff --git a/test/Feature/VarArgByVal.c b/test/Feature/VarArgByVal.c
index 551e6c63..7b979f61 100644
--- a/test/Feature/VarArgByVal.c
+++ b/test/Feature/VarArgByVal.c
@@ -1,4 +1,5 @@
-/* This test checks that KLEE correctly handles variadic arguments with the
+// REQUIRES: geq-llvm-15.0
+/* This test checks that KLEE correctly handles variadic arguments with the
byval attribute */
// RUN: %clang %s -emit-llvm %O0opt -c -g -o %t1.bc
@@ -7,9 +8,8 @@
// RUN: FileCheck %s --input-file=%t.klee-out/assembly.ll
//
// TODO: Make noundef unconditional when LLVM 14 is the oldest supported version.
-// CHECK: @test1({{.*}}, i32 {{(noundef )?}}-1, %struct.foo* {{(noundef )?}}byval{{.*}} %struct.bar* {{(noundef )?}}byval
-// CHECK: @test2({{.*}}, %struct.foo* {{(noundef )?}}byval{{.*}} %struct.bar* {{(noundef )?}}byval
-
+// CHECK: call void (ptr, i32, ...) @test1(ptr sret(%struct.foo) align 8 {{.*}}, i32 noundef -1, ptr noundef byval(%struct.foo) align 8 {{.*}}, ptr noundef byval(%struct.bar) align 8 {{.*}})
+// CHECK: call void (ptr, i32, i64, ...) @test2(ptr sret(%struct.foo) align 8 %tmp, i32 noundef {{.*}}, i64 noundef {{.*}}, i32 noundef {{.*}}, ptr noundef byval(%struct.foo) align 8 {{.*}}, i64 noundef {{.*}}, ptr noundef byval(%struct.bar) align 8 {{.*}}, ptr noundef byval(%struct.foo) align 8 {{.*}}, ptr noundef byval(%struct.bar) align 8 {{.*}})
#include <stdarg.h>
#include <assert.h>
#include <stdio.h>
diff --git a/test/Feature/VarArgByValOld.c b/test/Feature/VarArgByValOld.c
new file mode 100644
index 00000000..011046d8
--- /dev/null
+++ b/test/Feature/VarArgByValOld.c
@@ -0,0 +1,131 @@
+// REQUIRES: lt-llvm-15.0
+/* This test checks that KLEE correctly handles variadic arguments with the
+ byval attribute */
+
+// RUN: %clang %s -emit-llvm %O0opt -c -g -o %t1.bc
+// RUN: rm -rf %t.klee-out
+// RUN: %klee --exit-on-error --output-dir=%t.klee-out %t1.bc
+// RUN: FileCheck %s --input-file=%t.klee-out/assembly.ll
+//
+// TODO: Make noundef unconditional when LLVM 14 is the oldest supported version.
+// CHECK: @test1({{.*}}, i32 {{(noundef )?}}-1, %struct.foo* {{(noundef )?}}byval{{.*}} %struct.bar* {{(noundef )?}}byval
+// CHECK: @test2({{.*}}, %struct.foo* {{(noundef )?}}byval{{.*}} %struct.bar* {{(noundef )?}}byval
+#include <assert.h>
+#include <stdarg.h>
+#include <stdio.h>
+
+struct foo {
+ char f1;
+ long long f2;
+ long long f3;
+ char f4;
+ long f5;
+ int f6;
+ char f7;
+};
+
+struct bar {
+ long long int f1;
+ char f2;
+ long long f3;
+ char f4;
+ long f5;
+};
+
+struct foo test1(int x, ...) {
+ va_list ap;
+ va_start(ap, x);
+ assert(x == -1);
+
+ struct foo f = va_arg(ap, struct foo);
+ assert(f.f1 == 1);
+ assert(f.f2 == 2);
+ assert(f.f3 == 3);
+ assert(f.f4 == 4);
+ assert(f.f5 == 5);
+ assert(f.f6 == 6);
+ assert(f.f7 == 7);
+
+ struct bar b = va_arg(ap, struct bar);
+ assert(b.f1 == 11);
+ assert(b.f2 == 12);
+ assert(b.f3 == 13);
+ assert(b.f4 == 14);
+ assert(b.f5 == 15);
+
+ va_end(ap);
+
+ f.f1++;
+ return f;
+}
+
+struct foo test2(int x, long long int l, ...) {
+ va_list ap;
+ va_start(ap, l);
+ assert(x == 10);
+ assert(l == 1000);
+
+ int i = va_arg(ap, int);
+ assert(i == 10);
+
+ struct foo f = va_arg(ap, struct foo);
+ assert(f.f1 == 1);
+ assert(f.f2 == 2);
+ assert(f.f3 == 3);
+ assert(f.f4 == 4);
+ assert(f.f5 == 5);
+ assert(f.f6 == 6);
+ assert(f.f7 == 7);
+
+ l = va_arg(ap, long long int);
+ assert(l == 1000);
+
+ struct bar b = va_arg(ap, struct bar);
+ assert(b.f1 == 11);
+ assert(b.f2 == 12);
+ assert(b.f3 == 13);
+ assert(b.f4 == 14);
+ assert(b.f5 == 15);
+
+ f = va_arg(ap, struct foo);
+ assert(f.f1 == 10);
+ assert(f.f2 == 20);
+ assert(f.f3 == 30);
+ assert(f.f4 == 40);
+ assert(f.f5 == 50);
+ assert(f.f6 == 60);
+ assert(f.f7 == 70);
+
+ b = va_arg(ap, struct bar);
+ assert(b.f1 == 1);
+ assert(b.f2 == 3);
+ assert(b.f3 == 5);
+ assert(b.f4 == 7);
+ assert(b.f5 == 9);
+
+ va_end(ap);
+
+ f.f1++;
+ return f;
+}
+
+int main() {
+ struct foo f = {1, 2, 3, 4, 5, 6, 7};
+ struct bar b = {11, 12, 13, 14, 15};
+ struct foo res = test1(-1, f, b);
+ assert(res.f1 == 2);
+ assert(res.f2 == 2);
+ assert(res.f3 == 3);
+ assert(res.f4 == 4);
+ assert(res.f5 == 5);
+ assert(res.f6 == 6);
+ assert(res.f7 == 7);
+ // check that f was not modified, as it's passed by value
+ assert(f.f1 == 1);
+
+ int i = 10;
+ long long int l = 1000;
+ struct foo f2 = {10, 20, 30, 40, 50, 60, 70};
+ struct bar b2 = {1, 3, 5, 7, 9};
+ test2(i, l, i, f, l, b, f2, b2);
+}
diff --git a/test/Feature/asm_lifting.ll b/test/Feature/asm_lifting.ll
index d99db0cf..115bc2f9 100644
--- a/test/Feature/asm_lifting.ll
+++ b/test/Feature/asm_lifting.ll
@@ -17,7 +17,7 @@ entry:
%1 = getelementptr inbounds [47 x i8], [47 x i8]* %0, i64 0, i64 0
; Make sure memory barrier with function arguments is kept
%2 = call i8* asm sideeffect "", "=r,0,~{memory},~{dirflag},~{fpsr},~{flags}"(i8* nonnull %1)
- ; CHECK: %2 = call i8* asm sideeffect "", "=r,0,~{memory},~{dirflag},~{fpsr},~{flags}"(i8* nonnull %1)
+ ; CHECK: %2 = call {{.*}} asm sideeffect "", "=r,0,~{memory},~{dirflag},~{fpsr},~{flags}"({{.*}} nonnull %1)
ret i32 0
}
--
2.43.0
++++++ 0013-Fix-test-case-using-unsupported-CHECK_NEXT-instead-o.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:50:51 +0000
Subject: Fix test case: using unsupported `CHECK_NEXT` instead of `CHECK-NEXT`
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/Concrete/_testingUtils.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/test/Concrete/_testingUtils.c b/test/Concrete/_testingUtils.c
index fa395820..d51c6969 100644
--- a/test/Concrete/_testingUtils.c
+++ b/test/Concrete/_testingUtils.c
@@ -69,12 +69,11 @@ int main(int argc, char *argv[])
printf("print_i1(0)\n");
print_i1(0);
// CHECK: i1(0)
- // CHECK_NEXT: 0
+ // CHECK-NEXT: 0
printf("print_i1(1)\n");
print_i1(1);
// CHECK: i1(1)
- // CHECK_NEXT: 1
-
+ // CHECK-NEXT: 1
}
#endif
--
2.43.0
++++++ 0014-Use-APIs-of-newer-LLVM-versions-instead-of-unsupport.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:52:37 +0000
Subject: Use APIs of newer LLVM versions instead of unsupported ones
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
include/klee/Expr/Expr.h | 8 +++++++-
lib/Core/Executor.cpp | 18 ++++++++++++++++++
lib/Module/LowerSwitch.cpp | 14 ++++++--------
lib/Module/RaiseAsm.cpp | 6 ++++++
4 files changed, 37 insertions(+), 9 deletions(-)
diff --git a/include/klee/Expr/Expr.h b/include/klee/Expr/Expr.h
index 15075eb8..eb936c3d 100644
--- a/include/klee/Expr/Expr.h
+++ b/include/klee/Expr/Expr.h
@@ -1117,7 +1117,13 @@ public:
}
/// isAllOnes - Is this constant all ones.
- bool isAllOnes() const { return getAPValue().isAllOnesValue(); }
+ bool isAllOnes() const {
+#if LLVM_VERSION_CODE <= LLVM_VERSION(13, 0)
+ return getAPValue().isAllOnesValue();
+#else
+ return getAPValue().isAllOnes();
+#endif
+ }
/* Constant Operations */
diff --git a/lib/Core/Executor.cpp b/lib/Core/Executor.cpp
index 58c15141..792b0c76 100644
--- a/lib/Core/Executor.cpp
+++ b/lib/Core/Executor.cpp
@@ -2985,7 +2985,11 @@ void Executor::executeInstruction(ExecutionState &state, KInstruction *ki) {
llvm::APFloat Arg(*fpWidthToSemantics(arg->getWidth()), arg->getAPValue());
uint64_t value = 0;
bool isExact = true;
+#if LLVM_VERSION_CODE >= LLVM_VERSION(16, 0)
+ auto valueRef = llvm::MutableArrayRef(value);
+#else
auto valueRef = makeMutableArrayRef(value);
+#endif
Arg.convertToInteger(valueRef, resultType, false,
llvm::APFloat::rmTowardZero, &isExact);
bindLocal(ki, state, ConstantExpr::alloc(value, resultType));
@@ -3003,7 +3007,11 @@ void Executor::executeInstruction(ExecutionState &state, KInstruction *ki) {
uint64_t value = 0;
bool isExact = true;
+#if LLVM_VERSION_CODE >= LLVM_VERSION(16, 0)
+ auto valueRef = llvm::MutableArrayRef(value);
+#else
auto valueRef = makeMutableArrayRef(value);
+#endif
Arg.convertToInteger(valueRef, resultType, true,
llvm::APFloat::rmTowardZero, &isExact);
bindLocal(ki, state, ConstantExpr::alloc(value, resultType));
@@ -4846,7 +4854,12 @@ size_t Executor::getAllocationAlignment(const llvm::Value *allocSite) const {
type = GO->getType();
}
} else if (const AllocaInst *AI = dyn_cast<AllocaInst>(allocSite)) {
+#if LLVM_VERSION_CODE <= LLVM_VERSION(10, 0)
alignment = AI->getAlignment();
+
+#else
+ alignment = AI->getAlign().value();
+#endif
type = AI->getAllocatedType();
} else if (isa<InvokeInst>(allocSite) || isa<CallInst>(allocSite)) {
// FIXME: Model the semantics of the call to use the right alignment
@@ -4869,7 +4882,12 @@ size_t Executor::getAllocationAlignment(const llvm::Value *allocSite) const {
assert(type != NULL);
// No specified alignment. Get the alignment for the type.
if (type->isSized()) {
+#if LLVM_VERSION_CODE >= LLVM_VERSION(16, 0)
+ alignment = kmodule->targetData->getPrefTypeAlign(type).value();
+#else
alignment = kmodule->targetData->getPrefTypeAlignment(type);
+#endif
+
} else {
klee_warning_once(allocSite, "Cannot determine memory alignment for "
"\"%s\". Using alignment of %zu.",
diff --git a/lib/Module/LowerSwitch.cpp b/lib/Module/LowerSwitch.cpp
index 84b04b24..f8473156 100644
--- a/lib/Module/LowerSwitch.cpp
+++ b/lib/Module/LowerSwitch.cpp
@@ -70,9 +70,8 @@ void LowerSwitchPass::switchConvert(CaseItr begin, CaseItr end,
// iterate through all the cases, creating a new BasicBlock for each
for (CaseItr it = begin; it < end; ++it) {
- BasicBlock *newBlock = BasicBlock::Create(F->getContext(), "NodeBlock");
- Function::iterator FI = origBlock->getIterator();
- F->getBasicBlockList().insert(++FI, newBlock);
+ BasicBlock *newBlock = BasicBlock::Create(F->getContext(), "NodeBlock", F);
+
Builder.SetInsertPoint(newBlock);
auto cmpValue = Builder.CreateICmpEQ(value, it->value, "case.cmp");
Builder.CreateCondBr(cmpValue, it->block, curHead);
@@ -106,10 +105,10 @@ void LowerSwitchPass::processSwitchInst(SwitchInst *SI) {
// Create a new, empty default block so that the new hierarchy of
// if-then statements go to this and the PHI nodes are happy.
- BasicBlock* newDefault = BasicBlock::Create(F->getContext(), "newDefault");
+ BasicBlock *newDefault =
+ BasicBlock::Create(F->getContext(), "newDefault", F, defaultBlock);
llvm::IRBuilder<> Builder(newDefault);
- F->getBasicBlockList().insert(defaultBlock->getIterator(), newDefault);
Builder.CreateBr(defaultBlock);
// If there is an entry in any PHI nodes for the default edge, make sure
@@ -132,11 +131,10 @@ void LowerSwitchPass::processSwitchInst(SwitchInst *SI) {
// the if comparisons will happen in the same order
// as the cases appear in the switch
std::reverse(cases.begin(), cases.end());
-
- switchConvert(cases.begin(), cases.end(), switchValue, origBlock, newDefault);
+ switchConvert(cases.begin(), cases.end(), switchValue, origBlock, newDefault);
// We are now done with the switch instruction, so delete it
- origBlock->getInstList().erase(SI);
+ SI->eraseFromParent();
}
}
diff --git a/lib/Module/RaiseAsm.cpp b/lib/Module/RaiseAsm.cpp
index ec447bc4..799218c9 100644
--- a/lib/Module/RaiseAsm.cpp
+++ b/lib/Module/RaiseAsm.cpp
@@ -91,8 +91,14 @@ bool RaiseAsmPass::runOnModule(Module &M) {
klee_warning("Warning: unable to select target: %s", Err.c_str());
TLI = 0;
} else {
+#if LLVM_VERSION_CODE >= LLVM_VERSION(16, 0)
+ TM = Target->createTargetMachine(TargetTriple, "", "", TargetOptions(),
+ std::nullopt);
+#else
TM = Target->createTargetMachine(TargetTriple, "", "", TargetOptions(),
None);
+#endif
+
TLI = TM->getSubtargetImpl(*(M.begin()))->getTargetLowering();
triple = llvm::Triple(TargetTriple);
--
2.43.0
++++++ 0015-Add-support-for-Intrinsic-get_rounding-for-LLVM-16.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:53:48 +0000
Subject: Add support for `Intrinsic::get_rounding` for LLVM 16
Patch-mainline: no
References: llvm16
`Intrinsic::flt_rounds` got removed
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
lib/Module/IntrinsicCleaner.cpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/lib/Module/IntrinsicCleaner.cpp b/lib/Module/IntrinsicCleaner.cpp
index 40ff2874..af77ed70 100644
--- a/lib/Module/IntrinsicCleaner.cpp
+++ b/lib/Module/IntrinsicCleaner.cpp
@@ -366,7 +366,11 @@ bool IntrinsicCleanerPass::runOnBasicBlock(BasicBlock &b, Module &M) {
case Intrinsic::experimental_noalias_scope_decl:
#endif
case Intrinsic::floor:
+#if LLVM_VERSION_CODE < LLVM_VERSION(16, 0)
case Intrinsic::flt_rounds:
+#else
+ case Intrinsic::get_rounding:
+#endif
case Intrinsic::frameaddress:
case Intrinsic::get_dynamic_area_offset:
case Intrinsic::invariant_end:
--
2.43.0
++++++ 0016-Add-support-to-aligned_alloc-generated-by-LLVM.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:54:46 +0000
Subject: Add support to `aligned_alloc` generated by LLVM
Patch-mainline: no
References: llvm16
Handle like `memalign` for now.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
lib/Core/SpecialFunctionHandler.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/Core/SpecialFunctionHandler.cpp b/lib/Core/SpecialFunctionHandler.cpp
index 488fba51..79a86112 100644
--- a/lib/Core/SpecialFunctionHandler.cpp
+++ b/lib/Core/SpecialFunctionHandler.cpp
@@ -87,6 +87,7 @@ static constexpr std::array handlerInfo = {
addDNR("klee_abort", handleAbort),
addDNR("klee_silent_exit", handleSilentExit),
addDNR("klee_report_error", handleReportError),
+ add("aligned_alloc", handleMemalign, true),
add("calloc", handleCalloc, true),
add("free", handleFree, false),
add("klee_assume", handleAssume, false),
--
2.43.0
++++++ 0017-Disable-unsupported-passes-for-newer-LLVM-versions.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:56:27 +0000
Subject: Disable unsupported passes for newer LLVM versions
Patch-mainline: no
References: llvm16
Similar functionality needs to be added using a new pass manager
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
lib/Module/OptimizeLegacy.cpp | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/lib/Module/OptimizeLegacy.cpp b/lib/Module/OptimizeLegacy.cpp
index 53488924..20c8ac2a 100644
--- a/lib/Module/OptimizeLegacy.cpp
+++ b/lib/Module/OptimizeLegacy.cpp
@@ -98,14 +98,18 @@ static void AddStandardCompilePasses(legacy::PassManager &PM) {
addPass(PM, createInstructionCombiningPass()); // Clean up after IPCP & DAE
addPass(PM, createCFGSimplificationPass()); // Clean up after IPCP & DAE
+#if LLVM_VERSION_CODE <= LLVM_VERSION(15, 0)
addPass(PM, createPruneEHPass()); // Remove dead EH info
+#endif
addPass(PM, createPostOrderFunctionAttrsLegacyPass());
addPass(PM,
createReversePostOrderFunctionAttrsPass()); // Deduce function attrs
if (!DisableInline)
addPass(PM, createFunctionInliningPass()); // Inline small functions
- addPass(PM, createArgumentPromotionPass()); // Scalarize uninlined fn args
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
+ addPass(PM, createArgumentPromotionPass()); // Scalarize uninlined fn args
+#endif
addPass(PM, createInstructionCombiningPass()); // Cleanup for scalarrepl.
addPass(PM, createJumpThreadingPass()); // Thread jumps.
@@ -118,7 +122,9 @@ static void AddStandardCompilePasses(legacy::PassManager &PM) {
addPass(PM, createReassociatePass()); // Reassociate expressions
addPass(PM, createLoopRotatePass());
addPass(PM, createLICMPass()); // Hoist loop invariants
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
addPass(PM, createLoopUnswitchPass()); // Unswitch loops.
+#endif
// FIXME : Removing instcombine causes nestedloop regression.
addPass(PM, createInstructionCombiningPass());
addPass(PM, createIndVarSimplifyPass()); // Canonicalize indvars
@@ -197,13 +203,17 @@ void klee::optimizeModule(llvm::Module *M,
if (!DisableInline)
addPass(Passes, createFunctionInliningPass()); // Inline small functions
- addPass(Passes, createPruneEHPass()); // Remove dead EH info
+#if LLVM_VERSION_CODE <= LLVM_VERSION(15, 0)
+ addPass(Passes, createPruneEHPass()); // Remove dead EH info
+#endif
addPass(Passes, createGlobalOptimizerPass()); // Optimize globals again.
addPass(Passes, createGlobalDCEPass()); // Remove dead functions
+#if LLVM_VERSION_CODE <= LLVM_VERSION(14, 0)
// If we didn't decide to inline a function, check to see if we can
// transform it to pass arguments by value instead of by reference.
addPass(Passes, createArgumentPromotionPass());
+#endif
// The IPO passes may leave cruft around. Clean up after them.
addPass(Passes, createInstructionCombiningPass());
--
2.43.0
++++++ 0018-Disable-2018-10-30-llvm-pr39177.ll-for-newer-LLVM-ve.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:57:41 +0000
Subject: Disable `2018-10-30-llvm-pr39177.ll` for newer LLVM versions.
Patch-mainline: no
References: llvm16
The optimiser generates different code and calls fwrite directly instead.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/regression/2018-10-30-llvm-pr39177.ll | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/test/regression/2018-10-30-llvm-pr39177.ll b/test/regression/2018-10-30-llvm-pr39177.ll
index 027d0d30..b28947ab 100644
--- a/test/regression/2018-10-30-llvm-pr39177.ll
+++ b/test/regression/2018-10-30-llvm-pr39177.ll
@@ -1,5 +1,7 @@
+; REQUIRES: lt-llvm-15.0
+; The optimizer is more efficient and uses fwrite directly in newer LLVM versions
; RUN: rm -rf %t.klee-out
-; RUN: %llvmas -f %s -o - | %klee -optimize -output-dir=%t.klee-out | FileCheck %s
+; RUN: %klee -optimize -output-dir=%t.klee-out %s | FileCheck %s
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
--
2.43.0
++++++ 0019-Handle-check-for-thrown-libc-exceptions-more-general.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 14:59:07 +0000
Subject: Handle check for thrown libc++ exceptions more general
Patch-mainline: no
References: llvm16
The wording changed slightly in newer versions.
Update the test case to support this.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/CXX/symex/libc++/nested_fail.cpp | 2 +-
test/CXX/symex/libc++/simple_exception_fail.cpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/test/CXX/symex/libc++/nested_fail.cpp b/test/CXX/symex/libc++/nested_fail.cpp
index 4dce0279..fe2df4c9 100644
--- a/test/CXX/symex/libc++/nested_fail.cpp
+++ b/test/CXX/symex/libc++/nested_fail.cpp
@@ -24,4 +24,4 @@ int main(int argc, char **args) {
}
return 0;
}
-// CHECK: terminating with uncaught exception of type char*
+// CHECK: terminating {{.*}} uncaught exception of type char*
diff --git a/test/CXX/symex/libc++/simple_exception_fail.cpp b/test/CXX/symex/libc++/simple_exception_fail.cpp
index 793d9201..c3e295c2 100644
--- a/test/CXX/symex/libc++/simple_exception_fail.cpp
+++ b/test/CXX/symex/libc++/simple_exception_fail.cpp
@@ -11,4 +11,4 @@
int main(int argc, char **args) {
throw std::runtime_error("foo");
}
-// CHECK: terminating with uncaught exception of type std::runtime_error: foo
\ No newline at end of file
+// CHECK: terminating {{.*}} uncaught exception of type std::runtime_error: foo
\ No newline at end of file
--
2.43.0
++++++ 0020-Update-test-case-for-expressions-using-udiv-urem-sdi.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 15:00:58 +0000
Subject: Update test case for expressions using `udiv`, `urem`, `sdiv` and
`srem`
Patch-mainline: no
References: llvm16
They are not supported anymore for newer LLVM versions.
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/Concrete/ConstantExpr.ll | 29 +-----
test/Concrete/ConstantExprOld.ll | 166 +++++++++++++++++++++++++++++++
2 files changed, 167 insertions(+), 28 deletions(-)
create mode 100644 test/Concrete/ConstantExprOld.ll
diff --git a/test/Concrete/ConstantExpr.ll b/test/Concrete/ConstantExpr.ll
index efe9f141..b85ce36a 100644
--- a/test/Concrete/ConstantExpr.ll
+++ b/test/Concrete/ConstantExpr.ll
@@ -1,3 +1,4 @@
+; REQUIRES: geq-llvm-15.0
; RUN: %S/ConcreteTest.py --klee='%klee' --lli=%lli %s
; Most of the test below use the *address* of gInt as part of their computation,
@@ -86,32 +87,6 @@ define void @"test_simple_arith"() {
ret void
}
-
-define void @"test_div_and_mod"() {
- %t1 = add i32 udiv(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
- %t2 = add i32 urem(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
- %t3 = add i32 sdiv(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
- %t4 = add i32 srem(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
-
- %p = ptrtoint i32* @gInt to i32
-
- %i1 = udiv i32 %p, 13
- %i2 = urem i32 %p, 13
- %i3 = sdiv i32 %p, 13
- %i4 = srem i32 %p, 13
-
- %x1 = sub i32 %t1, %i1
- %x2 = sub i32 %t2, %i2
- %x3 = sub i32 %t3, %i3
- %x4 = sub i32 %t4, %i4
-
- call void @print_i32(i32 %x1)
- call void @print_i32(i32 %x2)
- call void @print_i32(i32 %x3)
- call void @print_i32(i32 %x4)
-
- ret void
-}
define void @test_cmp() {
%t1 = add i8 zext(i1 icmp ult (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
@@ -142,8 +117,6 @@ define void @test_cmp() {
define i32 @main() {
call void @test_simple_arith()
- call void @test_div_and_mod()
-
call void @test_cmp()
call void @test_int_to_ptr()
diff --git a/test/Concrete/ConstantExprOld.ll b/test/Concrete/ConstantExprOld.ll
new file mode 100644
index 00000000..2e6438bc
--- /dev/null
+++ b/test/Concrete/ConstantExprOld.ll
@@ -0,0 +1,166 @@
+; REQUIRES: lt-llvm-15.0
+; RUN: %S/ConcreteTest.py --klee='%klee' --lli=%lli %s
+
+; Most of the test below use the *address* of gInt as part of their computation,
+; and then perform some operation (like x | ~x) which makes the result
+; deterministic. They do, however, assume that the sign bit of the address as a
+; 64-bit value will never be set.
+@gInt = global i32 10
+@gIntWithConstant = global i32 sub(i32 ptrtoint(i32* @gInt to i32),
+ i32 ptrtoint(i32* @gInt to i32))
+
+define void @"test_int_to_ptr"() {
+ %t1 = add i8 ptrtoint(i8* inttoptr(i32 100 to i8*) to i8), 0
+ %t2 = add i32 ptrtoint(i32* inttoptr(i8 100 to i32*) to i32), 0
+ %t3 = add i32 ptrtoint(i32* inttoptr(i64 100 to i32*) to i32), 0
+ %t4 = add i64 ptrtoint(i8* inttoptr(i32 100 to i8*) to i64), 0
+
+ call void @print_i8(i8 %t1)
+ call void @print_i32(i32 %t2)
+ call void @print_i32(i32 %t3)
+ call void @print_i64(i64 %t4)
+
+ ret void
+}
+
+define void @"test_constant_ops"() {
+ %t1 = add i8 trunc(i64 add(i64 ptrtoint(i32* @gInt to i64), i64 -10) to i8), 10
+ %t2 = and i64 sub(i64 sext(i32 ptrtoint(i32* @gInt to i32) to i64), i64 ptrtoint(i32* @gInt to i64)), 4294967295
+ %t3 = and i64 sub(i64 zext(i32 ptrtoint(i32* @gInt to i32) to i64), i64 ptrtoint(i32* @gInt to i64)), 4294967295
+
+ %t4 = icmp eq i8 trunc(i64 ptrtoint(i32* @gInt to i64) to i8), %t1
+ %t5 = zext i1 %t4 to i8
+
+ call void @print_i8(i8 %t5)
+ call void @print_i64(i64 %t2)
+ call void @print_i64(i64 %t3)
+
+ ret void
+}
+
+define void @"test_logical_ops"() {
+ %t1 = add i32 -10, and(i32 ptrtoint(i32* @gInt to i32), i32 xor(i32 ptrtoint(i32* @gInt to i32), i32 -1))
+ %t2 = add i32 -10, or(i32 ptrtoint(i32* @gInt to i32), i32 xor(i32 ptrtoint(i32* @gInt to i32), i32 -1))
+ %t3 = add i32 -10, xor(i32 xor(i32 ptrtoint(i32* @gInt to i32), i32 1024), i32 ptrtoint(i32* @gInt to i32))
+
+ call void @print_i32(i32 %t1)
+ call void @print_i32(i32 %t2)
+ call void @print_i32(i32 %t3)
+
+ ; or the address with 1 to ensure the addresses will differ in 'ne' below
+ %t4 = shl i64 lshr(i64 or(i64 ptrtoint(i32* @gInt to i64), i64 1), i64 8), 8
+ %t5 = shl i64 ashr(i64 or(i64 ptrtoint(i32* @gInt to i64), i64 1), i64 8), 8
+ %t6 = lshr i64 shl(i64 or(i64 ptrtoint(i32* @gInt to i64), i64 1), i64 8), 8
+
+ %t7 = icmp eq i64 %t4, %t5
+ %t8 = icmp ne i64 %t4, %t6
+
+ %t9 = zext i1 %t7 to i8
+ %t10 = zext i1 %t8 to i8
+
+ call void @print_i8(i8 %t9)
+ call void @print_i8(i8 %t10)
+
+ ret void
+}
+
+%test.struct.type = type { i32, i32 }
+@test_struct = global %test.struct.type { i32 0, i32 10 }
+
+define void @"test_misc"() {
+ ; probability that @gInt == 100 is very very low
+ %t1 = add i32 select(i1 icmp eq (i32* @gInt, i32* inttoptr(i32 100 to i32*)), i32 10, i32 0), 0
+ call void @print_i32(i32 %t1)
+
+ %t2 = load i32, i32* getelementptr(%test.struct.type, %test.struct.type* @test_struct, i32 0, i32 1)
+ call void @print_i32(i32 %t2)
+
+ ret void
+}
+
+define void @"test_simple_arith"() {
+ %t1 = add i32 add(i32 ptrtoint(i32* @gInt to i32), i32 0), 0
+ %t2 = add i32 sub(i32 0, i32 ptrtoint(i32* @gInt to i32)), %t1
+ %t3 = mul i32 mul(i32 ptrtoint(i32* @gInt to i32), i32 10), %t2
+
+ call void @print_i32(i32 %t3)
+
+ ret void
+}
+
+define void @"test_div_and_mod"() {
+ %t1 = add i32 udiv(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
+ %t2 = add i32 urem(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
+ %t3 = add i32 sdiv(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
+ %t4 = add i32 srem(i32 ptrtoint(i32* @gInt to i32), i32 13), 0
+
+ %p = ptrtoint i32* @gInt to i32
+
+ %i1 = udiv i32 %p, 13
+ %i2 = urem i32 %p, 13
+ %i3 = sdiv i32 %p, 13
+ %i4 = srem i32 %p, 13
+
+ %x1 = sub i32 %t1, %i1
+ %x2 = sub i32 %t2, %i2
+ %x3 = sub i32 %t3, %i3
+ %x4 = sub i32 %t4, %i4
+
+ call void @print_i32(i32 %x1)
+ call void @print_i32(i32 %x2)
+ call void @print_i32(i32 %x3)
+ call void @print_i32(i32 %x4)
+
+ ret void
+}
+
+define void @test_cmp() {
+ %t1 = add i8 zext(i1 icmp ult (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t2 = add i8 zext(i1 icmp ule (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t3 = add i8 zext(i1 icmp uge (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t4 = add i8 zext(i1 icmp ugt (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t5 = add i8 zext(i1 icmp slt (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t6 = add i8 zext(i1 icmp sle (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t7 = add i8 zext(i1 icmp sge (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t8 = add i8 zext(i1 icmp sgt (i64 ptrtoint(i32* @gInt to i64), i64 0) to i8), 1
+ %t9 = add i8 zext(i1 icmp eq (i64 ptrtoint(i32* @gInt to i64), i64 10) to i8), 1
+ %t10 = add i8 zext(i1 icmp ne (i64 ptrtoint(i32* @gInt to i64), i64 10) to i8), 1
+
+ call void @print_i1(i8 %t1)
+ call void @print_i1(i8 %t2)
+ call void @print_i1(i8 %t3)
+ call void @print_i1(i8 %t4)
+ call void @print_i1(i8 %t5)
+ call void @print_i1(i8 %t6)
+ call void @print_i1(i8 %t7)
+ call void @print_i1(i8 %t8)
+ call void @print_i1(i8 %t9)
+ call void @print_i1(i8 %t10)
+
+ ret void
+}
+
+define i32 @main() {
+ call void @test_simple_arith()
+
+ call void @test_div_and_mod()
+
+ call void @test_cmp()
+
+ call void @test_int_to_ptr()
+
+ call void @test_constant_ops()
+
+ call void @test_logical_ops()
+
+ call void @test_misc()
+
+ ret i32 0
+}
+
+; defined in print_int.c
+declare void @print_i1(i8)
+declare void @print_i8(i8)
+declare void @print_i16(i16)
+declare void @print_i32(i32)
+declare void @print_i64(i64)
--
2.43.0
++++++ 0021-Support-newer-LLVM-versions-in-lit.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 15:02:08 +0000
Subject: Support newer LLVM versions in `lit`
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
test/lit.cfg | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/test/lit.cfg b/test/lit.cfg
index c442c409..ec654a47 100644
--- a/test/lit.cfg
+++ b/test/lit.cfg
@@ -164,7 +164,7 @@ config.substitutions.append(
# Add feature for the LLVM version in use, so it can be tested in REQUIRES and
# XFAIL checks. We also add "not-XXX" variants, for the same reason.
-known_llvm_versions = { "9.0", "10.0", "11.0", "11.1", "12.0", "13.0", "14.0" }
+known_llvm_versions = { "9.0", "10.0", "11.0", "11.1", "12.0", "13.0", "14.0", "15.0", "16.0", "17.0" }
current_llvm_version_tuple = (int(config.llvm_version_major), int(config.llvm_version_minor))
current_llvm_version = "%s.%s" % current_llvm_version_tuple
--
2.43.0
++++++ 0022-Enable-CI-to-test-newer-LLVM-versions.patch ++++++
From: Martin Nowack <m.nowack(a)imperial.ac.uk>
Date: Mon, 30 Oct 2023 15:03:34 +0000
Subject: Enable CI to test newer LLVM versions
Patch-mainline: no
References: llvm16
Signed-off-by: Jiri Slaby <jslaby(a)suse.cz>
---
.github/workflows/build.yaml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index fa924a37..a329a02c 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -36,6 +36,8 @@ jobs:
strategy:
matrix:
name: [
+ "LLVM 16",
+ "LLVM 15",
"LLVM 14",
"LLVM 13",
"LLVM 12",
@@ -53,6 +55,12 @@ jobs:
"No TCMalloc, optimised runtime",
]
include:
+ - name: "LLVM 16"
+ env:
+ LLVM_VERSION: 16
+ - name: "LLVM 15"
+ env:
+ LLVM_VERSION: 15
- name: "LLVM 14"
env:
LLVM_VERSION: 14
--
2.43.0
++++++ FileCheck.cpp ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.824108094 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.828108240 +0100
@@ -18,7 +18,9 @@
#include "llvm/FileCheck/FileCheck.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/InitLLVM.h"
+#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Process.h"
+#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/WithColor.h"
#include "llvm/Support/raw_ostream.h"
#include <cmath>
@@ -79,7 +81,7 @@
"checks that some error message does not occur, for example."));
static cl::opt<bool> AllowUnusedPrefixes(
- "allow-unused-prefixes", cl::init(false), cl::ZeroOrMore,
+ "allow-unused-prefixes",
cl::desc("Allow prefixes to be specified but not appear in the test."));
static cl::opt<bool> MatchFullLines(
@@ -102,12 +104,12 @@
"non-overlapping CHECK-DAG implementation.\n"));
static cl::opt<bool> Verbose(
- "v", cl::init(false), cl::ZeroOrMore,
+ "v",
cl::desc("Print directive pattern matches, or add them to the input dump\n"
"if enabled.\n"));
static cl::opt<bool> VerboseVerbose(
- "vv", cl::init(false), cl::ZeroOrMore,
+ "vv",
cl::desc("Print information helpful in diagnosing internal FileCheck\n"
"issues, or add it to the input dump if enabled. Implies\n"
"-v.\n"));
@@ -367,6 +369,8 @@
return "bad-not";
case Check::CheckBadCount:
return "bad-count";
+ case Check::CheckMisspelled:
+ return "misspelled";
case Check::CheckNone:
llvm_unreachable("invalid FileCheckType");
}
@@ -630,7 +634,7 @@
// -dump-input-filter. However, in case the resulting ellipsis would occupy
// more lines than the input lines and annotations it elides, buffer the
// elided lines and annotations so we can print them instead.
- raw_ostream *LineOS = &OS;
+ raw_ostream *LineOS;
if ((!PrevLineInFilter || PrevLineInFilter + DumpInputContext < Line) &&
(NextLineInFilter == UINT_MAX ||
Line + DumpInputContext < NextLineInFilter))
++++++ _service ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.848108971 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.852109117 +0100
@@ -1,5 +1,5 @@
<services>
- <service name="obs_scm" mode="disabled">
+ <service name="obs_scm" mode="manual">
<param name="url">https://github.com/klee/klee</param>
<param name="scm">git</param>
<param name="changesgenerate">enable</param>
@@ -7,7 +7,7 @@
<param name="versionrewrite-pattern">v(.*)</param>
<param name="versionrewrite-replacement">\1</param>
</service>
- <service name="set_version" mode="disabled" />
+ <service name="set_version" mode="manual" />
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.868109701 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.872109847 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/klee/klee</param>
- <param name="changesrevision">c10e9e926700773e01f44fbb1917deac7be2aaea</param></service></servicedata>
+ <param name="changesrevision">fc83f06b17221bf5ef20e30d9da1ccff927beb17</param></service></servicedata>
(No newline at EOF)
++++++ klee-3.0+20230611.obscpio -> klee-3.0+20231023.obscpio ++++++
/work/SRC/openSUSE:Factory/klee/klee-3.0+20230611.obscpio /work/SRC/openSUSE:Factory/.klee.new.1840/klee-3.0+20231023.obscpio differ: char 48, line 1
++++++ klee-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.908111162 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.912111308 +0100
@@ -1,3 +1,2 @@
-addFilter("shlib-policy-name-error .*libkleeRuntest")
addFilter("devel-file-in-non-devel-package")
++++++ klee.obsinfo ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.928111892 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.932112038 +0100
@@ -1,5 +1,5 @@
name: klee
-version: 3.0+20230611
-mtime: 1686507804
-commit: c10e9e926700773e01f44fbb1917deac7be2aaea
+version: 3.0+20231023
+mtime: 1698093351
+commit: fc83f06b17221bf5ef20e30d9da1ccff927beb17
++++++ not.cpp ++++++
--- /var/tmp/diff_new_pack.xFDEff/_old 2023-12-21 23:39:19.948112622 +0100
+++ /var/tmp/diff_new_pack.xFDEff/_new 2023-12-21 23:39:19.952112768 +0100
@@ -58,7 +58,8 @@
for (int i = 0; i < argc; ++i)
Argv.push_back(argv[i]);
std::string ErrMsg;
- int Result = sys::ExecuteAndWait(*Program, Argv, None, {}, 0, 0, &ErrMsg);
+ int Result =
+ sys::ExecuteAndWait(*Program, Argv, std::nullopt, {}, 0, 0, &ErrMsg);
#ifdef _WIN32
// Handle abort() in msvcrt -- It has exit code as 3. abort(), aka
// unreachable, should be recognized as a crash. However, some binaries use
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package minetest for openSUSE:Factory checked in at 2023-12-21 23:38:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/minetest (Old)
and /work/SRC/openSUSE:Factory/.minetest.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "minetest"
Thu Dec 21 23:38:58 2023 rev:26 rq:1134387 version:5.8.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/minetest/minetest.changes 2023-12-13 18:34:41.341798013 +0100
+++ /work/SRC/openSUSE:Factory/.minetest.new.1840/minetest.changes 2023-12-21 23:39:05.679591579 +0100
@@ -1,0 +2,7 @@
+Thu Dec 21 07:29:27 UTC 2023 - Dmitry Markov <werwolf131313(a)gmail.com>
+
+- Change gameid set (boo#1218223)
+ * Add environment with additional startup options
+ * Change ExecStart with additional startup options env
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ minetest.spec ++++++
--- /var/tmp/diff_new_pack.qb9XA6/_old 2023-12-21 23:39:06.827633502 +0100
+++ /var/tmp/diff_new_pack.qb9XA6/_new 2023-12-21 23:39:06.831633648 +0100
@@ -83,9 +83,9 @@
%endif
Requires: %{name}-data = %{version}
Requires: opengl-games-utils
+Recommends: %{name}-game
Recommends: %{name}-lang
-Recommends: minetest-game
-Provides: minetest-runtime = %{version}
+Provides: %{name}-runtime = %{version}
Provides: bundled(irrlicht) = %{irrlichtmt_version}
%description
@@ -100,8 +100,8 @@
Group: Amusements/Games/3D/Simulation
Requires: %{name}-data = %{version}
Requires(pre): shadow
-Recommends: minetest-game
-Provides: minetest-runtime = %{version}
+Recommends: %{name}-game
+Provides: %{name}-runtime = %{version}
%{?systemd_requires}
%description -n %{name}server
@@ -190,8 +190,13 @@
%fdupes %{buildroot}%{_datadir}/
install -Dpm 0644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}@.service
-install -Dpm 0644 minetest.conf.example \
- %{buildroot}%{_sysconfdir}/%{name}/minetest.conf.example
+install -Dpm 0644 %{name}.conf.example \
+ %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf.example
+
+cat >%{buildroot}%{_sysconfdir}/%{name}/%{name}.env.example <<%%
+# mintestet options for further configuration, e.g. to set the gameid with "--gameid ..."
+MINETEST_OPTIONS=""
+%%
mkdir -p %{buildroot}%{_localstatedir}/lib/%{name}/
@@ -234,7 +239,9 @@
%attr(0755,%{minetestuser},%{minetestgroup}) %{_localstatedir}/lib/%{name}/
%{_mandir}/man6/%{name}server.6%{?ext_man}
%dir %{_sysconfdir}/%{name}
-%config %{_sysconfdir}/%{name}/minetest.conf.example
+%config %{_sysconfdir}/%{name}/%{name}.conf.example
+%config %{_sysconfdir}/%{name}/%{name}.env.example
+
%{_unitdir}/%{name}@.service
%files data
++++++ minetest@.service ++++++
--- /var/tmp/diff_new_pack.qb9XA6/_old 2023-12-21 23:39:06.879635400 +0100
+++ /var/tmp/diff_new_pack.qb9XA6/_new 2023-12-21 23:39:06.883635547 +0100
@@ -21,7 +21,8 @@
User=minetest
Group=minetest
Type=simple
-ExecStart=/usr/bin/minetestserver --config /etc/minetest/%i.conf --world /var/lib/minetest/%i/
+EnvironmentFile=/etc/minetest/%i.env
+ExecStart=/usr/bin/minetestserver --config /etc/minetest/%i.conf --world /var/lib/minetest/%i/ $MINETEST_OPTIONS
[Install]
WantedBy=multi-user.target
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-xarray for openSUSE:Factory checked in at 2023-12-21 23:38:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-xarray (Old)
and /work/SRC/openSUSE:Factory/.python-xarray.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-xarray"
Thu Dec 21 23:38:54 2023 rev:44 rq:1134379 version:2023.12.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-xarray/python-xarray.changes 2023-09-13 20:47:59.349403643 +0200
+++ /work/SRC/openSUSE:Factory/.python-xarray.new.1840/python-xarray.changes 2023-12-21 23:39:02.067459674 +0100
@@ -1,0 +2,336 @@
+Wed Dec 20 20:40:53 UTC 2023 - Sebastian Wagner <sebix(a)sebix.at>
+
+- remove obsolete patch file xarray-pr8139-pandas-fill_value.patch
+
+-------------------------------------------------------------------
+Wed Dec 13 17:02:28 UTC 2023 - Sebastian Wagner <sebix(a)sebix.at>
+
+- update to version 2023.12.0:
+ - This release brings new `hypothesis <https://hypothesis.works/>`_ strategies for testing, significantly faster rolling aggregations as well as:
+``ffill`` and ``bfill`` with ``numbagg``, a new :py:meth:`Dataset.eval` method, and improvements to
+ - reading and writing Zarr arrays (including a new ``"a-"`` mode).:
+ - Thanks to our 16 contributors:
+ - Anderson Banihirwe, Ben Mares, Carl Andersson, Deepak Cherian, Doug Latornell, Gregorio L. Trevisan, Illviljan, Jens Hedegaard Nielsen, Justus Magin, Mathias Hauser, Max Jones, Maximilian Roos, Michael Niklas, Patrick Hoefler, Ryan Abernathey, Tom Nicholas:
+ - New Features:
+ - Added hypothesis strategies for generating :py:class:`xarray.Variable` objects containing arbitrary data, useful for parametrizing downstream tests.
+ Accessible under :py:mod:`testing.strategies`, and documented in a new page on testing in the User Guide.
+ (:issue:`6911`, :pull:`8404`)
+ By `Tom Nicholas <https://github.com/TomNicholas>`_.
+ - :py:meth:`rolling` uses `numbagg <https://github.com/numbagg/numbagg>`_ for
+ most of its computations by default. Numbagg is up to 5x faster than bottleneck
+ where parallelization is possible. Where parallelization isn't possible — for
+ example a 1D array — it's about the same speed as bottleneck, and 2-5x faster
+ than pandas' default functions. (:pull:`8493`). numbagg is an optional
+ dependency, so requires installing separately.
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Use a concise format when plotting datetime arrays. (:pull:`8449`).
+ By `Jimmy Westling <https://github.com/illviljan>`_.
+ - Avoid overwriting unchanged existing coordinate variables when appending with :py:meth:`Dataset.to_zarr` by setting ``mode='a-'``.
+ By `Ryan Abernathey <https://github.com/rabernat>`_ and `Deepak Cherian <https://github.com/dcherian>`_.
+ - :py:meth:`~xarray.DataArray.rank` now operates on dask-backed arrays, assuming
+ the core dim has exactly one chunk. (:pull:`8475`).
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Add a :py:meth:`Dataset.eval` method, similar to the pandas' method of the
+ same name. (:pull:`7163`). This is currently marked as experimental and
+ doesn't yet support the ``numexpr`` engine.
+ - :py:meth:`Dataset.drop_vars` & :py:meth:`DataArray.drop_vars` allow passing a
+ callable, similar to :py:meth:`Dataset.where` & :py:meth:`Dataset.sortby` & others.
+ (:pull:`8511`).
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Breaking changes:
+ - Explicitly warn when creating xarray objects with repeated dimension names.
+ Such objects will also now raise when :py:meth:`DataArray.get_axis_num` is called,
+ which means many functions will raise.
+ This latter change is technically a breaking change, but whilst allowed,
+ this behaviour was never actually supported! (:issue:`3731`, :pull:`8491`)
+ By `Tom Nicholas <https://github.com/TomNicholas>`_.
+ - Deprecations:
+ - As part of an effort to standardize the API, we're renaming the ``dims``
+ keyword arg to ``dim`` for the minority of functions which current use
+ ``dims``. This started with :py:func:`xarray.dot` & :py:meth:`DataArray.dot`
+ and we'll gradually roll this out across all functions. The warnings are
+ currently ``PendingDeprecationWarning``, which are silenced by default. We'll
+ convert these to ``DeprecationWarning`` in a future release.
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Raise a ``FutureWarning`` warning that the type of :py:meth:`Dataset.dims` will be changed
+ from a mapping of dimension names to lengths to a set of dimension names.
+ This is to increase consistency with :py:meth:`DataArray.dims`.
+ To access a mapping of dimension names to lengths please use :py:meth:`Dataset.sizes`.
+ The same change also applies to `DatasetGroupBy.dims`.
+ (:issue:`8496`, :pull:`8500`)
+ By `Tom Nicholas <https://github.com/TomNicholas>`_.
+ - :py:meth:`Dataset.drop` & :py:meth:`DataArray.drop` are now deprecated, since pending deprecation for
+ several years. :py:meth:`DataArray.drop_sel` & :py:meth:`DataArray.drop_var`
+ replace them for labels & variables respectively. (:pull:`8497`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Bug fixes:
+ - Fix dtype inference for ``pd.CategoricalIndex`` when categories are backed by a ``pd.ExtensionDtype`` (:pull:`8481`)
+ - Fix writing a variable that requires transposing when not writing to a region (:pull:`8484`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Static typing of ``p0`` and ``bounds`` arguments of :py:func:`xarray.DataArray.curvefit` and :py:func:`xarray.Dataset.curvefit`
+ was changed to ``Mapping`` (:pull:`8502`).
+ By `Michael Niklas <https://github.com/headtr1ck>`_.
+ - Fix typing of :py:func:`xarray.DataArray.to_netcdf` and :py:func:`xarray.Dataset.to_netcdf`
+ when ``compute`` is evaluated to bool instead of a Literal (:pull:`8268`).
+ By `Jens Hedegaard Nielsen <https://github.com/jenshnielsen>`_.
+ - Documentation:
+ - Added illustration of updating the time coordinate values of a resampled dataset using
+ time offset arithmetic.
+ This is the recommended technique to replace the use of the deprecated ``loffset`` parameter
+ in ``resample`` (:pull:`8479`).
+ By `Doug Latornell <https://github.com/douglatornell>`_.
+ - Improved error message when attempting to get a variable which doesn't exist from a Dataset.
+ (:pull:`8474`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Fix default value of ``combine_attrs`` in :py:func:`xarray.combine_by_coords` (:pull:`8471`)
+ By `Gregorio L. Trevisan <https://github.com/gtrevisan>`_.
+ - Internal Changes:
+ - :py:meth:`DataArray.bfill` & :py:meth:`DataArray.ffill` now use numbagg <https://github.com/numbagg/numbagg>`_ by
+ default, which is up to 5x faster where parallelization is possible. (:pull:`8339`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Update mypy version to 1.7 (:issue:`8448`, :pull:`8501`).
+ By `Michael Niklas <https://github.com/headtr1ck>`_.
+- update to version 2023.11.0:
+ `This is our 10th year anniversary release! <https://github.com/pydata/xarray/discussions/8462>`_ Thank you for your love and support.
+ - This release brings the ability to use ``opt_einsum`` for :py:func:`xarray.dot` by default,:
+ - support for auto-detecting ``region`` when writing partial datasets to Zarr, and the use of h5py:
+ - drivers with ``h5netcdf``.:
+ - Thanks to the 19 contributors to this release:
+ - Aman Bagrecha, Anderson Banihirwe, Ben Mares, Deepak Cherian, Dimitri Papadopoulos Orfanos, Ezequiel Cimadevilla Alvarez,:
+ - Illviljan, Justus Magin, Katelyn FitzGerald, Kai Muehlbauer, Martin Durant, Maximilian Roos, Metamess, Sam Levang, Spencer Clark, Tom Nicholas, mgunyho, templiert:
+ - New Features:
+ - Use `opt_einsum <https://optimized-einsum.readthedocs.io/en/stable/>`_ for :py:func:`xarray.dot` by default if installed.
+ By `Deepak Cherian <https://github.com/dcherian>`_. (:issue:`7764`, :pull:`8373`).
+ - Add ``DataArray.dt.total_seconds()`` method to match the Pandas API. (:pull:`8435`).
+ By `Ben Mares <https://github.com/maresb>`_.
+ - Allow passing ``region="auto"`` in :py:meth:`Dataset.to_zarr` to automatically infer the
+ region to write in the original store. Also implement automatic transpose when dimension
+ order does not match the original store. (:issue:`7702`, :issue:`8421`, :pull:`8434`).
+ By `Sam Levang <https://github.com/slevang>`_.
+ - Allow the usage of h5py drivers (eg: ros3) via h5netcdf (:pull:`8360`).
+ By `Ezequiel Cimadevilla <https://github.com/zequihg50>`_.
+ - Enable VLEN string fill_values, preserve VLEN string dtypes (:issue:`1647`, :issue:`7652`, :issue:`7868`, :pull:`7869`).
+ By `Kai Mühlbauer <https://github.com/kmuehlbauer>`_.
+ - Breaking changes:
+ - drop support for `cdms2 <https://github.com/CDAT/cdms>`_. Please use
+ `xcdat <https://github.com/xCDAT/xcdat>`_ instead (:pull:`8441`).
+ By `Justus Magin <https://github.com/keewis>`_.
+ - Following pandas, :py:meth:`infer_freq` will return ``"Y"``, ``"YS"``,
+ ``"QE"``, ``"ME"``, ``"h"``, ``"min"``, ``"s"``, ``"ms"``, ``"us"``, or
+ ``"ns"`` instead of ``"A"``, ``"AS"``, ``"Q"``, ``"M"``, ``"H"``, ``"T"``,
+ ``"S"``, ``"L"``, ``"U"``, or ``"N"``. This is to be consistent with the
+ deprecation of the latter frequency strings (:issue:`8394`, :pull:`8415`). By
+ `Spencer Clark <https://github.com/spencerkclark>`_.
+ - Bump minimum tested pint version to ``>=0.22``. By `Deepak Cherian <https://github.com/dcherian>`_.
+ - Minimum supported versions for the following packages have changed: ``h5py >=3.7``, ``h5netcdf>=1.1``.
+ By `Kai Mühlbauer <https://github.com/kmuehlbauer>`_.
+ - Deprecations:
+ - The PseudoNetCDF backend has been removed. By `Deepak Cherian <https://github.com/dcherian>`_.
+ - Supplying dimension-ordered sequences to :py:meth:`DataArray.chunk` &
+ :py:meth:`Dataset.chunk` is deprecated in favor of supplying a dictionary of
+ dimensions, or a single ``int`` or ``"auto"`` argument covering all
+ dimensions. Xarray favors using dimensions names rather than positions, and
+ this was one place in the API where dimension positions were used.
+ (:pull:`8341`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Following pandas, the frequency strings ``"A"``, ``"AS"``, ``"Q"``, ``"M"``,
+ ``"H"``, ``"T"``, ``"S"``, ``"L"``, ``"U"``, and ``"N"`` are deprecated in
+ favor of ``"Y"``, ``"YS"``, ``"QE"``, ``"ME"``, ``"h"``, ``"min"``, ``"s"``,
+ ``"ms"``, ``"us"``, and ``"ns"``, respectively. These strings are used, for
+ example, in :py:func:`date_range`, :py:func:`cftime_range`,
+ :py:meth:`DataArray.resample`, and :py:meth:`Dataset.resample` among others
+ (:issue:`8394`, :pull:`8415`). By `Spencer Clark
+ <https://github.com/spencerkclark>`_.
+ - Rename :py:meth:`Dataset.to_array` to :py:meth:`Dataset.to_dataarray` for
+ consistency with :py:meth:`DataArray.to_dataset` &
+ :py:func:`open_dataarray` functions. This is a "soft" deprecation — the
+ existing methods work and don't raise any warnings, given the relatively small
+ benefits of the change.
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Finally remove ``keep_attrs`` kwarg from :py:meth:`DataArray.resample` and
+ :py:meth:`Dataset.resample`. These were deprecated a long time ago.
+ By `Deepak Cherian <https://github.com/dcherian>`_.
+ - Bug fixes:
+ - Port `bug fix from pandas <https://github.com/pandas-dev/pandas/pull/55283>`_
+ to eliminate the adjustment of resample bin edges in the case that the
+ resampling frequency has units of days and is greater than one day
+ (e.g. ``"2D"``, ``"3D"`` etc.) and the ``closed`` argument is set to
+ ``"right"`` to xarray's implementation of resample for data indexed by a
+ :py:class:`CFTimeIndex` (:pull:`8393`).
+ By `Spencer Clark <https://github.com/spencerkclark>`_.
+ - Fix to once again support date offset strings as input to the loffset
+ parameter of resample and test this functionality (:pull:`8422`, :issue:`8399`).
+ By `Katelyn FitzGerald <https://github.com/kafitzgerald>`_.
+ - Fix a bug where :py:meth:`DataArray.to_dataset` silently drops a variable
+ if a coordinate with the same name already exists (:pull:`8433`, :issue:`7823`).
+ By `András Gunyhó <https://github.com/mgunyho>`_.
+ - Fix for :py:meth:`DataArray.to_zarr` & :py:meth:`Dataset.to_zarr` to close
+ the created zarr store when passing a path with `.zip` extension (:pull:`8425`).
+ By `Carl Andersson <https://github.com/CarlAndersson>_`.
+ - Documentation:
+ - Small updates to documentation on distributed writes: See :ref:`io.zarr.appending` to Zarr.
+ By `Deepak Cherian <https://github.com/dcherian>`_.
+- update to version 2023.10.1:
+ - This release updates our minimum numpy version in ``pyproject.toml`` to 1.22,:
+ - consistent with our documentation below.:
+- update to version 2023.10.0:
+ - This release brings performance enhancements to reading Zarr datasets, the ability to use `numbagg <https://github.com/numbagg/numbagg>`_ for reductions,:
+ - an expansion in API for ``rolling_exp``, fixes two regressions with datetime decoding,:
+ - and many other bugfixes and improvements. Groupby reductions will also use ``numbagg`` if ``flox>=0.8.1`` and ``numbagg`` are both installed.:
+ - Thanks to our 13 contributors:
+ - Anderson Banihirwe, Bart Schilperoort, Deepak Cherian, Illviljan, Kai Mühlbauer, Mathias Hauser, Maximilian Roos, Michael Niklas, Pieter Eendebak, Simon Høxbro Hansen, Spencer Clark, Tom White, olimcc:
+ - New Features:
+ - Support high-performance reductions with `numbagg <https://github.com/numbagg/numbagg>`_.
+ This is enabled by default if ``numbagg`` is installed.
+ By `Deepak Cherian <https://github.com/dcherian>`_. (:pull:`8316`)
+ - Add ``corr``, ``cov``, ``std`` & ``var`` to ``.rolling_exp``.
+ By `Maximilian Roos <https://github.com/max-sixty>`_. (:pull:`8307`)
+ - :py:meth:`DataArray.where` & :py:meth:`Dataset.where` accept a callable for
+ the ``other`` parameter, passing the object as the only argument. Previously,
+ this was only valid for the ``cond`` parameter. (:issue:`8255`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - ``.rolling_exp`` functions can now take a ``min_weight`` parameter, to only
+ output values when there are sufficient recent non-nan values.
+ ``numbagg>=0.3.1`` is required. (:pull:`8285`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - :py:meth:`DataArray.sortby` & :py:meth:`Dataset.sortby` accept a callable for
+ the ``variables`` parameter, passing the object as the only argument.
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - ``.rolling_exp`` functions can now operate on dask-backed arrays, assuming the
+ core dim has exactly one chunk. (:pull:`8284`).
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Breaking changes:
+ - Made more arguments keyword-only (e.g. ``keep_attrs``, ``skipna``) for many :py:class:`xarray.DataArray` and
+ :py:class:`xarray.Dataset` methods (:pull:`6403`). By `Mathias Hauser <https://github.com/mathause>`_.
+ - :py:meth:`Dataset.to_zarr` & :py:meth:`DataArray.to_zarr` require keyword
+ arguments after the initial 7 positional arguments.
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Deprecations:
+ - Rename :py:meth:`Dataset.reset_encoding` & :py:meth:`DataArray.reset_encoding`
+ to :py:meth:`Dataset.drop_encoding` & :py:meth:`DataArray.drop_encoding` for
+ consistency with other ``drop`` & ``reset`` methods — ``drop`` generally
+ removes something, while ``reset`` generally resets to some default or
+ standard value. (:pull:`8287`, :issue:`8259`)
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Bug fixes:
+ - :py:meth:`DataArray.rename` & :py:meth:`Dataset.rename` would emit a warning
+ when the operation was a no-op. (:issue:`8266`)
+ By `Simon Hansen <https://github.com/hoxbro>`_.
+ - Fixed a regression introduced in the previous release checking time-like units
+ when encoding/decoding masked data (:issue:`8269`, :pull:`8277`).
+ By `Kai Mühlbauer <https://github.com/kmuehlbauer>`_.
+ - Fix datetime encoding precision loss regression introduced in the previous
+ release for datetimes encoded with units requiring floating point values, and
+ a reference date not equal to the first value of the datetime array
+ (:issue:`8271`, :pull:`8272`). By `Spencer Clark
+ <https://github.com/spencerkclark>`_.
+ - Fix excess metadata requests when using a Zarr store. Prior to this, metadata
+ was re-read every time data was retrieved from the array, now metadata is retrieved only once
+ when they array is initialized.
+ (:issue:`8290`, :pull:`8297`).
+ By `Oliver McCormack <https://github.com/olimcc>`_.
+ - Fix to_zarr ending in a ReadOnlyError when consolidated metadata was used and the
+ write_empty_chunks was provided.
+ (:issue:`8323`, :pull:`8326`)
+ By `Matthijs Amesz <https://github.com/Metamess>`_.
+ - Documentation:
+ - Added page on the interoperability of xarray objects.
+ (:pull:`7992`) By `Tom Nicholas <https://github.com/TomNicholas>`_.
+ - Added xarray-regrid to the list of xarray related projects (:pull:`8272`).
+ By `Bart Schilperoort <https://github.com/BSchilperoort>`_.
+ - Internal Changes:
+ - More improvements to support the Python `array API standard <https://data-apis.org/array-api/latest/>`_
+ by using duck array ops in more places in the codebase. (:pull:`8267`)
+ By `Tom White <https://github.com/tomwhite>`_.
+- update to version 2023.09.0:
+ - This release continues work on the new :py:class:`xarray.Coordinates` object, allows to provide `preferred_chunks` when:
+ - reading from netcdf files, enables :py:func:`xarray.apply_ufunc` to handle missing core dimensions and fixes several bugs.:
+ - Thanks to the 24 contributors to this release: Alexander Fischer, Amrest Chinkamol, Benoit Bovy, Darsh Ranjan, Deepak Cherian,:
+ - Gianfranco Costamagna, Gregorio L. Trevisan, Illviljan, Joe Hamman, JR, Justus Magin, Kai Mühlbauer, Kian-Meng Ang, Kyle Sunden,:
+ - Martin Raspaud, Mathias Hauser, Mattia Almansi, Maximilian Roos, András Gunyhó, Michael Niklas, Richard Kleijn, Riulinchen,:
+ - Tom Nicholas and Wiktor Kraśnicki.:
+ - We welcome the following new contributors to Xarray!: Alexander Fischer, Amrest Chinkamol, Darsh Ranjan, Gianfranco Costamagna, Gregorio L. Trevisan,:
+ - Kian-Meng Ang, Riulinchen and Wiktor Kraśnicki.:
+ - New Features:
+ - Added the :py:meth:`Coordinates.assign` method that can be used to combine
+ different collections of coordinates prior to assign them to a Dataset or
+ DataArray (:pull:`8102`) at once.
+ By `Benoît Bovy <https://github.com/benbovy>`_.
+ - Provide `preferred_chunks` for data read from netcdf files (:issue:`1440`, :pull:`7948`).
+ By `Martin Raspaud <https://github.com/mraspaud>`_.
+ - Added `on_missing_core_dims` to :py:meth:`apply_ufunc` to allow for copying or
+ dropping a :py:class:`Dataset`'s variables with missing core dimensions (:pull:`8138`).
+ By `Maximilian Roos <https://github.com/max-sixty>`_.
+ - Breaking changes:
+ - The :py:class:`Coordinates` constructor now creates a (pandas) index by
+ default for each dimension coordinate. To keep the previous behavior (no index
+ created), pass an empty dictionary to ``indexes``. The constructor now also
+ extracts and add the indexes from another :py:class:`Coordinates` object
+ passed via ``coords`` (:pull:`8107`).
+ By `Benoît Bovy <https://github.com/benbovy>`_.
+ - Static typing of ``xlim`` and ``ylim`` arguments in plotting functions now must
+ be ``tuple[float, float]`` to align with matplotlib requirements. (:issue:`7802`, :pull:`8030`).
+ By `Michael Niklas <https://github.com/headtr1ck>`_.
+ - Deprecations:
+ - Deprecate passing a :py:class:`pandas.MultiIndex` object directly to the
+ :py:class:`Dataset` and :py:class:`DataArray` constructors as well as to
+ :py:meth:`Dataset.assign` and :py:meth:`Dataset.assign_coords`.
+ A new Xarray :py:class:`Coordinates` object has to be created first using
+ :py:meth:`Coordinates.from_pandas_multiindex` (:pull:`8094`).
+ By `Benoît Bovy <https://github.com/benbovy>`_.
+ - Bug fixes:
+ - Improved static typing of reduction methods (:pull:`6746`).
+ By `Richard Kleijn <https://github.com/rhkleijn>`_.
+ - Fix bug where empty attrs would generate inconsistent tokens (:issue:`6970`, :pull:`8101`).
+ By `Mattia Almansi <https://github.com/malmans2>`_.
+ - Improved handling of multi-coordinate indexes when updating coordinates, including bug fixes
+ (and improved warnings for deprecated features) for pandas multi-indexes (:pull:`8094`).
+ By `Benoît Bovy <https://github.com/benbovy>`_.
+ - Fixed a bug in :py:func:`merge` with ``compat='minimal'`` where the coordinate
+ names were not updated properly internally (:issue:`7405`, :issue:`7588`,
+ :pull:`8104`).
+ By `Benoît Bovy <https://github.com/benbovy>`_.
+ - Fix bug where :py:class:`DataArray` instances on the right-hand side
+ of :py:meth:`DataArray.__setitem__` lose dimension names (:issue:`7030`, :pull:`8067`).
+ By `Darsh Ranjan <https://github.com/dranjan>`_.
+ - Return ``float64`` in presence of ``NaT`` in :py:class:`~core.accessor_dt.DatetimeAccessor` and
+ special case ``NaT`` handling in :py:meth:`~core.accessor_dt.DatetimeAccessor.isocalendar`
++++ 41 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/python-xarray/python-xarray.changes
++++ and /work/SRC/openSUSE:Factory/.python-xarray.new.1840/python-xarray.changes
Old:
----
xarray-2023.8.0.tar.gz
xarray-pr8139-pandas-fill_value.patch
New:
----
xarray-2023.12.0.tar.gz
BETA DEBUG BEGIN:
Old:
- remove obsolete patch file xarray-pr8139-pandas-fill_value.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-xarray.spec ++++++
--- /var/tmp/diff_new_pack.vjL7Gy/_old 2023-12-21 23:39:04.407545127 +0100
+++ /var/tmp/diff_new_pack.vjL7Gy/_new 2023-12-21 23:39:04.407545127 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-xarray
-Version: 2023.8.0
+Version: 2023.12.0
Release: 0
Summary: N-D labeled arrays and datasets in Python
License: Apache-2.0
@@ -27,12 +27,10 @@
# PATCH-FEATURE-UPSTREAM local_dataset.patch gh#pydata/xarray#5377 mcepl(a)suse.com
# fix xr.tutorial.open_dataset to work with the preloaded cache.
Patch0: local_dataset.patch
-# PATCH-FIX-UPSTREAM xarray-pr8139-pandas-fill_value.patch gh#pydata/xarray#8125, gh#pydata/xarray#8139
-Patch1: https://github.com/pydata/xarray/pull/8139.patch#/xarray-pr8139-pandas-fill…
BuildRequires: %{python_module base >= 3.9}
-BuildRequires: %{python_module numpy-devel >= 1.20}
+BuildRequires: %{python_module numpy-devel >= 1.22}
BuildRequires: %{python_module packaging >= 21.3}
-BuildRequires: %{python_module pandas >= 1.3}
+BuildRequires: %{python_module pandas >= 1.4}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools_scm}
BuildRequires: %{python_module setuptools}
++++++ xarray-2023.8.0.tar.gz -> xarray-2023.12.0.tar.gz ++++++
++++ 37076 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-sphinx-tabs for openSUSE:Factory checked in at 2023-12-21 23:38:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-sphinx-tabs (Old)
and /work/SRC/openSUSE:Factory/.python-sphinx-tabs.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-sphinx-tabs"
Thu Dec 21 23:38:52 2023 rev:7 rq:1134376 version:3.4.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-sphinx-tabs/python-sphinx-tabs.changes 2023-10-12 11:55:56.626996188 +0200
+++ /work/SRC/openSUSE:Factory/.python-sphinx-tabs.new.1840/python-sphinx-tabs.changes 2023-12-21 23:39:00.951418920 +0100
@@ -1,0 +2,15 @@
+Thu Dec 21 06:24:22 UTC 2023 - Steve Kowalik <steven.kowalik(a)suse.com>
+
+- Update to 3.4.4:
+ * Added
+ + Testing for Python 3.11 and 3.12
+ * Removed
+ + Dependency on unsupported sphinx_testing package
+ * Fixed
+ + tests for sphinx 7.2
+ + slice assignment in update_context(), which was removing JS scripts
+ from other sphinx extensions/themes on pages where tabs were not used
+- Drop patches sphinx71.patch and sphinx72.patch, included upstream.
+- Switch to pyproject macros.
+
+-------------------------------------------------------------------
Old:
----
sphinx71.patch
sphinx72.patch
v3.4.1.tar.gz
New:
----
v3.4.4.tar.gz
BETA DEBUG BEGIN:
Old: from other sphinx extensions/themes on pages where tabs were not used
- Drop patches sphinx71.patch and sphinx72.patch, included upstream.
- Switch to pyproject macros.
Old: from other sphinx extensions/themes on pages where tabs were not used
- Drop patches sphinx71.patch and sphinx72.patch, included upstream.
- Switch to pyproject macros.
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-sphinx-tabs.spec ++++++
--- /var/tmp/diff_new_pack.8011j2/_old 2023-12-21 23:39:01.611443022 +0100
+++ /var/tmp/diff_new_pack.8011j2/_new 2023-12-21 23:39:01.611443022 +0100
@@ -31,21 +31,18 @@
%{?sle15_python_module_pythons}
Name: python-sphinx-tabs
-Version: 3.4.1
+Version: 3.4.4
Release: 0
Summary: Tabbed views for Sphinx
License: MIT
-Group: Development/Languages/Python
URL: https://github.com/executablebooks/sphinx-tabs
# Use the github tag instead of the pythonhosted.org to get the tests folder
Source: https://github.com/executablebooks/sphinx-tabs/archive/refs/tags/v%{version…
-# PATCH-FIX-UPSTREAM https://github.com/executablebooks/sphinx-tabs/commit/f60a10e13b3a6a8d1d27f… Make the tests pass with Sphinx 7.1
-Patch1: sphinx71.patch
-# PATCH-FIX-UPSTREAM https://github.com/executablebooks/sphinx-tabs/pull/179 Fix tests for Sphinx 7.2
-Patch2: sphinx72.patch
BuildRequires: %{python_module Pygments}
BuildRequires: %{python_module Sphinx}
BuildRequires: %{python_module docutils}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-Pygments
@@ -67,11 +64,11 @@
%autosetup -p1 -n sphinx-tabs-%{version}
%build
-%python_build
+%pyproject_wheel
%install
%if !%{with test}
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
@@ -84,6 +81,6 @@
%if !%{with test}
%files %{python_files}
%{python_sitelib}/sphinx_tabs
-%{python_sitelib}/sphinx_tabs-%{version}*-info
+%{python_sitelib}/sphinx_tabs-%{version}.dist-info
%endif
++++++ v3.4.1.tar.gz -> v3.4.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/.github/workflows/tests.yml new/sphinx-tabs-3.4.4/.github/workflows/tests.yml
--- old/sphinx-tabs-3.4.1/.github/workflows/tests.yml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/.github/workflows/tests.yml 2023-10-22 22:17:37.000000000 +0200
@@ -20,14 +20,15 @@
runs-on: ubuntu-latest
strategy:
matrix:
- python-version: ["3.7", "3.8", "3.9", "3.10"]
+ python-version: ["3.9", "3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v1
+ uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
+ allow-prereleases: true
- name: Install dependencies
run: |
python -m pip install --upgrade pip
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/.readthedocs.yml new/sphinx-tabs-3.4.4/.readthedocs.yml
--- old/sphinx-tabs-3.4.1/.readthedocs.yml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/.readthedocs.yml 2023-10-22 22:17:37.000000000 +0200
@@ -1,7 +1,11 @@
version: 2
+build:
+ os: ubuntu-22.04
+ tools:
+ python: "3"
+
python:
- version: 3
install:
- method: pip
path: .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/CHANGELOG.md new/sphinx-tabs-3.4.4/CHANGELOG.md
--- old/sphinx-tabs-3.4.1/CHANGELOG.md 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/CHANGELOG.md 2023-10-22 22:17:37.000000000 +0200
@@ -1,6 +1,24 @@
# Change Log
-## 3.4.1 - 2022-97-02
+## 3.4.2 - 2023-19-22
+
+### Added
+* Testing for Python 3.11 and 3.12
+
+### Removed
+* Dependency on unsupported sphinx_testing package
+
+## 3.4.2 - 2023-19-22
+
+### Fixed
+
+* tests for sphinx 7.2
+* slice assignment in update_context(), which was removing JS scripts from other sphinx extensions/themes on pages where tabs were not used
+
+### Added
+* Note in docs to clarify that include directive can't be used within a code-tab
+
+## 3.4.1 - 2022-07-02
### Added
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/docs/index.rst new/sphinx-tabs-3.4.4/docs/index.rst
--- old/sphinx-tabs-3.4.1/docs/index.rst 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/docs/index.rst 2023-10-22 22:17:37.000000000 +0200
@@ -385,3 +385,6 @@
}
Code tabs support highlighting using `custom syntax highlighters <https://pygments.org/docs/lexerdevelopment/>`_ that have been loaded in the sphinx configuration. To use custom lexers, pass the lexers alias as the first argument of `code-tab`.
+
+.. note::
+ Sphinx's `include` directive does not work inside `code-tab`. Use `tab` or `group-tab` instead.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/setup.py new/sphinx-tabs-3.4.4/setup.py
--- old/sphinx-tabs-3.4.1/setup.py 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/setup.py 2023-10-22 22:17:37.000000000 +0200
@@ -33,7 +33,6 @@
"pytest-cov",
"pytest-regressions",
"pygments",
- "sphinx_testing",
"bs4",
"rinohtype",
],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/sphinx_tabs/__init__.py new/sphinx-tabs-3.4.4/sphinx_tabs/__init__.py
--- old/sphinx-tabs-3.4.1/sphinx_tabs/__init__.py 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/sphinx_tabs/__init__.py 2023-10-22 22:17:37.000000000 +0200
@@ -1,3 +1 @@
-__version__ = "3.4.1"
-
-__import__("pkg_resources").declare_namespace(__name__)
+__version__ = "3.4.4"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/sphinx_tabs/tabs.py new/sphinx-tabs-3.4.4/sphinx_tabs/tabs.py
--- old/sphinx-tabs-3.4.1/sphinx_tabs/tabs.py 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/sphinx_tabs/tabs.py 2023-10-22 22:17:37.000000000 +0200
@@ -325,12 +325,12 @@
if not visitor.found_tabs_directive and not include_assets_in_all_pages:
paths = [Path("_static") / f for f in FILES]
if "css_files" in context:
- context["css_files"] = context["css_files"][:]
+ context["css_files"][:] = context["css_files"]
for path in paths:
if path.suffix == ".css" and path in context["css_files"]:
context["css_files"].remove(path.as_posix())
if "script_files" in context:
- context["script_files"] = context["script_files"][:]
+ context["script_files"][:] = context["script_files"]
for path in paths:
if path.suffix == ".js" and path.as_posix() in context["script_files"]:
context["script_files"].remove(path.as_posix())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/conftest.py new/sphinx-tabs-3.4.4/tests/conftest.py
--- old/sphinx-tabs-3.4.1/tests/conftest.py 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/conftest.py 2023-10-22 22:17:37.000000000 +0200
@@ -2,7 +2,7 @@
import pytest
from pathlib import Path
from bs4 import BeautifulSoup
-from sphinx.testing.path import path
+import sphinx
from sphinx_tabs.tabs import FILES
@@ -18,7 +18,7 @@
@pytest.fixture(scope="session")
def rootdir():
"""Pytest uses this to find test documents."""
- return path(__file__).parent.abspath() / "roots"
+ return Path(__file__).parent.absolute() / "roots"
@pytest.fixture(autouse=True)
@@ -116,13 +116,18 @@
extension = ".xml"
# convert absolute filenames
- for node in doctree.traverse(lambda n: "source" in n):
+ for node in doctree.findall(lambda n: "source" in n):
node["source"] = Path(node["source"]).name
if regress:
text = doctree.pformat() # type: str
for find, rep in (replace or {}).items():
text = text.replace(find, rep)
+ if sphinx.version_info < (7, 1):
+ text = text.replace(
+ '<document source="index.rst">',
+ "<document source=\"index.rst\" translation_progress=\"{'total': 0, 'translated': 0}\">",
+ )
file_regression.check(text, extension=extension)
return doctree
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_basic.xml new/sphinx-tabs-3.4.4/tests/test_build/test_basic.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_basic.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_basic.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<container classes="sphinx-tabs" type="tab-element">
<div aria-label="Tabbed content" classes="closeable" role="tablist">
<button aria-controls="panel-0-0-0" aria-selected="true" classes="sphinx-tabs-tab" ids="tab-0-0-0" name="0-0" role="tab" tabindex="0">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_index_.html new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_index_.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_index_.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_index_.html 2023-10-22 22:17:37.000000000 +0200
@@ -18,7 +18,7 @@
<section id="fruits">
<h1>
Fruits
- <a class="headerlink" href="#fruits" title="Permalink to this heading">
+ <a class="headerlink" href="#fruits" title="Link to this heading">
¶
</a>
</h1>
@@ -54,7 +54,7 @@
<section id="luminaries">
<h1>
Luminaries
- <a class="headerlink" href="#luminaries" title="Permalink to this heading">
+ <a class="headerlink" href="#luminaries" title="Link to this heading">
¶
</a>
</h1>
@@ -82,7 +82,7 @@
<section id="code-tabs">
<h1>
Code Tabs
- <a class="headerlink" href="#code-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#code-tabs" title="Link to this heading">
¶
</a>
</h1>
@@ -182,7 +182,7 @@
<section id="group-tabs">
<h1>
Group Tabs
- <a class="headerlink" href="#group-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#group-tabs" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_index_.xml new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_index_.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_index_.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_index_.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<compound classes="toctree-wrapper">
<toctree caption="True" entries="(None,\ 'no_tabs1') (None,\ 'no_tabs2')" glob="False" hidden="False" includefiles="no_tabs1 no_tabs2" includehidden="False" maxdepth="-1" numbered="0" parent="index" rawentries="" titlesonly="False">
<section ids="fruits" names="fruits">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.html new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.html 2023-10-22 22:17:37.000000000 +0200
@@ -18,7 +18,7 @@
<section id="fruits">
<h1>
Fruits
- <a class="headerlink" href="#fruits" title="Permalink to this heading">
+ <a class="headerlink" href="#fruits" title="Link to this heading">
¶
</a>
</h1>
@@ -54,7 +54,7 @@
<section id="luminaries">
<h1>
Luminaries
- <a class="headerlink" href="#luminaries" title="Permalink to this heading">
+ <a class="headerlink" href="#luminaries" title="Link to this heading">
¶
</a>
</h1>
@@ -82,7 +82,7 @@
<section id="code-tabs">
<h1>
Code Tabs
- <a class="headerlink" href="#code-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#code-tabs" title="Link to this heading">
¶
</a>
</h1>
@@ -182,7 +182,7 @@
<section id="group-tabs">
<h1>
Group Tabs
- <a class="headerlink" href="#group-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#group-tabs" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.xml new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs1_.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<compound classes="toctree-wrapper">
<toctree caption="True" entries="(None,\ 'no_tabs1') (None,\ 'no_tabs2')" glob="False" hidden="False" includefiles="no_tabs1 no_tabs2" includehidden="False" maxdepth="-1" numbered="0" parent="index" rawentries="" titlesonly="False">
<section ids="fruits" names="fruits">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.html new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.html 2023-10-22 22:17:37.000000000 +0200
@@ -18,7 +18,7 @@
<section id="fruits">
<h1>
Fruits
- <a class="headerlink" href="#fruits" title="Permalink to this heading">
+ <a class="headerlink" href="#fruits" title="Link to this heading">
¶
</a>
</h1>
@@ -54,7 +54,7 @@
<section id="luminaries">
<h1>
Luminaries
- <a class="headerlink" href="#luminaries" title="Permalink to this heading">
+ <a class="headerlink" href="#luminaries" title="Link to this heading">
¶
</a>
</h1>
@@ -82,7 +82,7 @@
<section id="code-tabs">
<h1>
Code Tabs
- <a class="headerlink" href="#code-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#code-tabs" title="Link to this heading">
¶
</a>
</h1>
@@ -182,7 +182,7 @@
<section id="group-tabs">
<h1>
Group Tabs
- <a class="headerlink" href="#group-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#group-tabs" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.xml new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_html_assets_policy_no_tabs2_.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<compound classes="toctree-wrapper">
<toctree caption="True" entries="(None,\ 'no_tabs1') (None,\ 'no_tabs2')" glob="False" hidden="False" includefiles="no_tabs1 no_tabs2" includehidden="False" maxdepth="-1" numbered="0" parent="index" rawentries="" titlesonly="False">
<section ids="fruits" names="fruits">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_index_.html new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_index_.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_index_.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_index_.html 2023-10-22 22:17:37.000000000 +0200
@@ -18,7 +18,7 @@
<section id="fruits">
<h1>
Fruits
- <a class="headerlink" href="#fruits" title="Permalink to this heading">
+ <a class="headerlink" href="#fruits" title="Link to this heading">
¶
</a>
</h1>
@@ -54,7 +54,7 @@
<section id="luminaries">
<h1>
Luminaries
- <a class="headerlink" href="#luminaries" title="Permalink to this heading">
+ <a class="headerlink" href="#luminaries" title="Link to this heading">
¶
</a>
</h1>
@@ -82,7 +82,7 @@
<section id="code-tabs">
<h1>
Code Tabs
- <a class="headerlink" href="#code-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#code-tabs" title="Link to this heading">
¶
</a>
</h1>
@@ -182,7 +182,7 @@
<section id="group-tabs">
<h1>
Group Tabs
- <a class="headerlink" href="#group-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#group-tabs" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_index_.xml new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_index_.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_index_.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_index_.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<compound classes="toctree-wrapper">
<toctree caption="True" entries="(None,\ 'no_tabs1') (None,\ 'no_tabs2')" glob="False" hidden="False" includefiles="no_tabs1 no_tabs2" includehidden="False" maxdepth="-1" numbered="0" parent="index" rawentries="" titlesonly="False">
<section ids="fruits" names="fruits">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs1_.html new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs1_.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs1_.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs1_.html 2023-10-22 22:17:37.000000000 +0200
@@ -18,7 +18,7 @@
<section id="fruits">
<h1>
Fruits
- <a class="headerlink" href="#fruits" title="Permalink to this heading">
+ <a class="headerlink" href="#fruits" title="Link to this heading">
¶
</a>
</h1>
@@ -54,7 +54,7 @@
<section id="luminaries">
<h1>
Luminaries
- <a class="headerlink" href="#luminaries" title="Permalink to this heading">
+ <a class="headerlink" href="#luminaries" title="Link to this heading">
¶
</a>
</h1>
@@ -82,7 +82,7 @@
<section id="code-tabs">
<h1>
Code Tabs
- <a class="headerlink" href="#code-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#code-tabs" title="Link to this heading">
¶
</a>
</h1>
@@ -182,7 +182,7 @@
<section id="group-tabs">
<h1>
Group Tabs
- <a class="headerlink" href="#group-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#group-tabs" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs1_.xml new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs1_.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs1_.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs1_.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<compound classes="toctree-wrapper">
<toctree caption="True" entries="(None,\ 'no_tabs1') (None,\ 'no_tabs2')" glob="False" hidden="False" includefiles="no_tabs1 no_tabs2" includehidden="False" maxdepth="-1" numbered="0" parent="index" rawentries="" titlesonly="False">
<section ids="fruits" names="fruits">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs2_.html new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs2_.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs2_.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs2_.html 2023-10-22 22:17:37.000000000 +0200
@@ -18,7 +18,7 @@
<section id="fruits">
<h1>
Fruits
- <a class="headerlink" href="#fruits" title="Permalink to this heading">
+ <a class="headerlink" href="#fruits" title="Link to this heading">
¶
</a>
</h1>
@@ -54,7 +54,7 @@
<section id="luminaries">
<h1>
Luminaries
- <a class="headerlink" href="#luminaries" title="Permalink to this heading">
+ <a class="headerlink" href="#luminaries" title="Link to this heading">
¶
</a>
</h1>
@@ -82,7 +82,7 @@
<section id="code-tabs">
<h1>
Code Tabs
- <a class="headerlink" href="#code-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#code-tabs" title="Link to this heading">
¶
</a>
</h1>
@@ -182,7 +182,7 @@
<section id="group-tabs">
<h1>
Group Tabs
- <a class="headerlink" href="#group-tabs" title="Permalink to this heading">
+ <a class="headerlink" href="#group-tabs" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs2_.xml new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs2_.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_conditional_assets_no_tabs2_.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_conditional_assets_no_tabs2_.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<compound classes="toctree-wrapper">
<toctree caption="True" entries="(None,\ 'no_tabs1') (None,\ 'no_tabs2')" glob="False" hidden="False" includefiles="no_tabs1 no_tabs2" includehidden="False" maxdepth="-1" numbered="0" parent="index" rawentries="" titlesonly="False">
<section ids="fruits" names="fruits">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_custom_lexer.xml new/sphinx-tabs-3.4.4/tests/test_build/test_custom_lexer.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_custom_lexer.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_custom_lexer.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<container classes="sphinx-tabs" type="tab-element">
<div aria-label="Tabbed content" classes="closeable" role="tablist">
<button aria-controls="panel-0-QllP" aria-selected="true" classes="sphinx-tabs-tab code-tab group-tab" ids="tab-0-QllP" name="QllP" role="tab" tabindex="0">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_disable_closing.xml new/sphinx-tabs-3.4.4/tests/test_build/test_disable_closing.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_disable_closing.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_disable_closing.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<container classes="sphinx-tabs" type="tab-element">
<div aria-label="Tabbed content" role="tablist">
<button aria-controls="panel-0-0-0" aria-selected="true" classes="sphinx-tabs-tab" ids="tab-0-0-0" name="0-0" role="tab" tabindex="0">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_disable_css_loading.xml new/sphinx-tabs-3.4.4/tests/test_build/test_disable_css_loading.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_disable_css_loading.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_disable_css_loading.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<container classes="sphinx-tabs" type="tab-element">
<div aria-label="Tabbed content" classes="closeable" role="tablist">
<button aria-controls="panel-0-0-0" aria-selected="true" classes="sphinx-tabs-tab" ids="tab-0-0-0" name="0-0" role="tab" tabindex="0">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_nested_markup.html new/sphinx-tabs-3.4.4/tests/test_build/test_nested_markup.html
--- old/sphinx-tabs-3.4.1/tests/test_build/test_nested_markup.html 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_nested_markup.html 2023-10-22 22:17:37.000000000 +0200
@@ -4,7 +4,7 @@
<section id="markup-in-tab-titles">
<h1>
Markup in Tab Titles
- <a class="headerlink" href="#markup-in-tab-titles" title="Permalink to this heading">
+ <a class="headerlink" href="#markup-in-tab-titles" title="Link to this heading">
¶
</a>
</h1>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_nested_markup.xml new/sphinx-tabs-3.4.4/tests/test_build/test_nested_markup.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_nested_markup.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_nested_markup.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<section ids="markup-in-tab-titles" names="markup\ in\ tab\ titles">
<title>
Markup in Tab Titles
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_no_tabs.xml new/sphinx-tabs-3.4.4/tests/test_build/test_no_tabs.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_no_tabs.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_no_tabs.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,3 +1,3 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<paragraph>
There are no tabs here
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_other_with_assets.xml new/sphinx-tabs-3.4.4/tests/test_build/test_other_with_assets.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_other_with_assets.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_other_with_assets.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<container classes="sphinx-tabs" type="tab-element">
<div aria-label="Tabbed content" classes="closeable" role="tablist">
<button aria-controls="panel-0-Qysr" aria-selected="true" classes="sphinx-tabs-tab code-tab group-tab" ids="tab-0-Qysr" name="Qysr" role="tab" tabindex="0">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sphinx-tabs-3.4.1/tests/test_build/test_rinohtype_pdf.xml new/sphinx-tabs-3.4.4/tests/test_build/test_rinohtype_pdf.xml
--- old/sphinx-tabs-3.4.1/tests/test_build/test_rinohtype_pdf.xml 2022-07-02 11:44:47.000000000 +0200
+++ new/sphinx-tabs-3.4.4/tests/test_build/test_rinohtype_pdf.xml 2023-10-22 22:17:37.000000000 +0200
@@ -1,4 +1,4 @@
-<document source="index.rst">
+<document source="index.rst" translation_progress="{'total': 0, 'translated': 0}">
<section ids="testing-pdf" names="testing\ pdf">
<title>
TESTING PDF
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-retrying for openSUSE:Factory checked in at 2023-12-21 23:38:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-retrying (Old)
and /work/SRC/openSUSE:Factory/.python-retrying.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-retrying"
Thu Dec 21 23:38:50 2023 rev:7 rq:1134366 version:1.3.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-retrying/python-retrying.changes 2022-12-07 17:36:12.200945963 +0100
+++ /work/SRC/openSUSE:Factory/.python-retrying.new.1840/python-retrying.changes 2023-12-21 23:39:00.351397008 +0100
@@ -1,0 +2,6 @@
+Thu Dec 21 03:40:17 UTC 2023 - Steve Kowalik <steven.kowalik(a)suse.com>
+
+- Switch to pyproject macros.
+- Stop using greedy globs in %files.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-retrying.spec ++++++
--- /var/tmp/diff_new_pack.HPJ3lt/_old 2023-12-21 23:39:00.787412930 +0100
+++ /var/tmp/diff_new_pack.HPJ3lt/_new 2023-12-21 23:39:00.787412930 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-retrying
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,16 +16,15 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-retrying
Version: 1.3.4
Release: 0
Summary: Retrying library for Python
License: Apache-2.0
-Group: Development/Languages/Python
URL: https://github.com/rholder/retrying
Source: https://files.pythonhosted.org/packages/source/r/retrying/retrying-%{versio…
-BuildRequires: %{python_module base}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-six >= 1.7.0
@@ -40,14 +39,16 @@
%setup -q -n retrying-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%files %{python_files}
%license LICENSE
%doc AUTHORS.rst README.rst
-%{python_sitelib}/*
+%{python_sitelib}/retrying.py
+%pycache_only %{python_sitelib}/__pycache__/retrying.*.py*
+%{python_sitelib}/retrying-%{version}.dist-info
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cppcheck for openSUSE:Factory checked in at 2023-12-21 23:38:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cppcheck (Old)
and /work/SRC/openSUSE:Factory/.cppcheck.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cppcheck"
Thu Dec 21 23:38:44 2023 rev:36 rq:1134347 version:2.12.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/cppcheck/cppcheck.changes 2023-11-13 22:24:51.316304785 +0100
+++ /work/SRC/openSUSE:Factory/.cppcheck.new.1840/cppcheck.changes 2023-12-21 23:38:56.403252835 +0100
@@ -1,0 +2,5 @@
+Wed Dec 20 23:14:07 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- add CVE-2023-39070.patch (CVE-2023-39070, bsc#1215233)
+
+-------------------------------------------------------------------
New:
----
CVE-2023-39070.patch
BETA DEBUG BEGIN:
New:
- add CVE-2023-39070.patch (CVE-2023-39070, bsc#1215233)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cppcheck.spec ++++++
--- /var/tmp/diff_new_pack.TJRq6M/_old 2023-12-21 23:38:57.131279420 +0100
+++ /var/tmp/diff_new_pack.TJRq6M/_new 2023-12-21 23:38:57.135279565 +0100
@@ -25,6 +25,7 @@
Source: https://github.com/danmar/cppcheck/archive/refs/tags/%{version}.tar.gz#/%{n…
Patch0: eb076d87.patch
Patch1: werror-return-type.patch
+Patch2: CVE-2023-39070.patch
BuildRequires: cmake
BuildRequires: docbook-xsl-stylesheets
BuildRequires: fdupes
++++++ CVE-2023-39070.patch ++++++
From 76695f6be2685a1ee7436e563bc550eab506952a Mon Sep 17 00:00:00 2001
From: Dirk Mueller <dmueller(a)suse.com>
Date: Tue, 19 Dec 2023 20:44:22 +0100
Subject: [PATCH] Fix #12272 (removeContradiction() Avoid use-after-free on
multiple remove) (#5707)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
As reported in
https://sourceforge.net/p/cppcheck/discussion/general/thread/fa43fb8ab1/
removeContradiction() minValue/maxValue.remove(..) can access free'd
memory as it removes all matching values by iterating over the complete
list. Creating a full copy instead of a reference avoids this issue.
Signed-off-by: Dirk Müller <dirk(a)dmllr.de>
---
lib/preprocessor.cpp | 16 +++++++-----
lib/token.cpp | 60 +++++++++++++++++++++++---------------------
2 files changed, 42 insertions(+), 34 deletions(-)
Index: cppcheck-2.12.1/lib/token.cpp
===================================================================
--- cppcheck-2.12.1.orig/lib/token.cpp
+++ cppcheck-2.12.1/lib/token.cpp
@@ -1955,64 +1955,68 @@ static bool isAdjacent(const ValueFlow::
return std::abs(x.intvalue - y.intvalue) == 1;
}
-static bool removePointValue(std::list<ValueFlow::Value>& values, ValueFlow::Value& x)
+static bool removePointValue(std::list<ValueFlow::Value>& values, std::list<ValueFlow::Value>::iterator& x)
{
- const bool isPoint = x.bound == ValueFlow::Value::Bound::Point;
+ const bool isPoint = x->bound == ValueFlow::Value::Bound::Point;
if (!isPoint)
- x.decreaseRange();
+ x->decreaseRange();
else
- values.remove(x);
+ x = values.erase(x);
return isPoint;
}
static bool removeContradiction(std::list<ValueFlow::Value>& values)
{
bool result = false;
- for (ValueFlow::Value& x : values) {
- if (x.isNonValue())
+ for (auto itx = values.begin(); itx != values.end(); ++itx) {
+ if (itx->isNonValue())
continue;
- for (ValueFlow::Value& y : values) {
- if (y.isNonValue())
+
+ auto ity = itx;
+ ++ity;
+ for (; ity != values.end(); ++ity) {
+ if (ity->isNonValue())
continue;
- if (x == y)
+ if (*itx == *ity)
continue;
- if (x.valueType != y.valueType)
+ if (itx->valueType != ity->valueType)
continue;
- if (x.isImpossible() == y.isImpossible())
+ if (itx->isImpossible() == ity->isImpossible())
continue;
- if (x.isSymbolicValue() && !ValueFlow::Value::sameToken(x.tokvalue, y.tokvalue))
+ if (itx->isSymbolicValue() && !ValueFlow::Value::sameToken(itx->tokvalue, ity->tokvalue))
continue;
- if (!x.equalValue(y)) {
- auto compare = [](const ValueFlow::Value& x, const ValueFlow::Value& y) {
- return x.compareValue(y, less{});
+ if (!itx->equalValue(*ity)) {
+ auto compare = [](const std::list<ValueFlow::Value>::const_iterator& x, const std::list<ValueFlow::Value>::const_iterator& y) {
+ return x->compareValue(*y, less{});
};
- const ValueFlow::Value& maxValue = std::max(x, y, compare);
- const ValueFlow::Value& minValue = std::min(x, y, compare);
+ auto itMax = std::max(itx, ity, compare);
+ auto itMin = std::min(itx, ity, compare);
// TODO: Adjust non-points instead of removing them
- if (maxValue.isImpossible() && maxValue.bound == ValueFlow::Value::Bound::Upper) {
- values.remove(minValue);
+ if (itMax->isImpossible() && itMax->bound == ValueFlow::Value::Bound::Upper) {
+ values.erase(itMin);
return true;
}
- if (minValue.isImpossible() && minValue.bound == ValueFlow::Value::Bound::Lower) {
- values.remove(maxValue);
+ if (itMin->isImpossible() && itMin->bound == ValueFlow::Value::Bound::Lower) {
+ values.erase(itMax);
return true;
}
continue;
}
- const bool removex = !x.isImpossible() || y.isKnown();
- const bool removey = !y.isImpossible() || x.isKnown();
- if (x.bound == y.bound) {
+ const bool removex = !itx->isImpossible() || ity->isKnown();
+ const bool removey = !ity->isImpossible() || itx->isKnown();
+ if (itx->bound == ity->bound) {
if (removex)
- values.remove(x);
+ values.erase(itx);
if (removey)
- values.remove(y);
+ values.erase(ity);
+ // itx and ity are invalidated
return true;
}
result = removex || removey;
bool bail = false;
- if (removex && removePointValue(values, x))
+ if (removex && removePointValue(values, itx))
bail = true;
- if (removey && removePointValue(values, y))
+ if (removey && removePointValue(values, ity))
bail = true;
if (bail)
return true;
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-ipykernel for openSUSE:Factory checked in at 2023-12-21 23:38:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ipykernel (Old)
and /work/SRC/openSUSE:Factory/.python-ipykernel.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-ipykernel"
Thu Dec 21 23:38:34 2023 rev:44 rq:1134337 version:6.27.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-ipykernel/python-ipykernel.changes 2023-11-27 22:43:29.702100630 +0100
+++ /work/SRC/openSUSE:Factory/.python-ipykernel.new.1840/python-ipykernel.changes 2023-12-21 23:38:47.074912191 +0100
@@ -1,0 +2,6 @@
+Wed Dec 20 21:56:25 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 6.27.1:
+ * Fix edit magic payload type #1171 (@blink1073)
+
+-------------------------------------------------------------------
Old:
----
ipykernel-6.27.0.tar.gz
New:
----
ipykernel-6.27.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-ipykernel.spec ++++++
--- /var/tmp/diff_new_pack.YqqSaL/_old 2023-12-21 23:38:47.942943888 +0100
+++ /var/tmp/diff_new_pack.YqqSaL/_new 2023-12-21 23:38:47.946944035 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-ipykernel
-Version: 6.27.0
+Version: 6.27.1
Release: 0
Summary: IPython Kernel for Jupyter
License: BSD-3-Clause
++++++ ipykernel-6.27.0.tar.gz -> ipykernel-6.27.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ipykernel-6.27.0/CHANGELOG.md new/ipykernel-6.27.1/CHANGELOG.md
--- old/ipykernel-6.27.0/CHANGELOG.md 2020-02-02 01:00:00.000000000 +0100
+++ new/ipykernel-6.27.1/CHANGELOG.md 2020-02-02 01:00:00.000000000 +0100
@@ -2,6 +2,22 @@
<!-- <START NEW CHANGELOG ENTRY> -->
+## 6.27.1
+
+([Full Changelog](https://github.com/ipython/ipykernel/compare/v6.27.0...f9c517e86…)
+
+### Bugs fixed
+
+- Fix edit magic payload type [#1171](https://github.com/ipython/ipykernel/pull/1171) ([@blink1073](https://github.com/blink1073))
+
+### Contributors to this release
+
+([GitHub contributors page for this release](https://github.com/ipython/ipykernel/graphs/contributors?from=2023…)
+
+[@blink1073](https://github.com/search?q=repo%3Aipython%2Fipykernel+involves%3Ablink1073+updated%3A2023-11-21..2023-11-27&type=Issues)
+
+<!-- <END NEW CHANGELOG ENTRY> -->
+
## 6.27.0
([Full Changelog](https://github.com/ipython/ipykernel/compare/v6.26.0...465d34483…)
@@ -26,8 +42,6 @@
[@blink1073](https://github.com/search?q=repo%3Aipython%2Fipykernel+involves%3Ablink1073+updated%3A2023-10-24..2023-11-21&type=Issues) | [@jjvraw](https://github.com/search?q=repo%3Aipython%2Fipykernel+involves%3Ajjvraw+updated%3A2023-10-24..2023-11-21&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Aipython%2Fipykernel+involves%3Apre-commit-ci+updated%3A2023-10-24..2023-11-21&type=Issues)
-<!-- <END NEW CHANGELOG ENTRY> -->
-
## 6.26.0
([Full Changelog](https://github.com/ipython/ipykernel/compare/v6.25.2...966e0a41f…)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ipykernel-6.27.0/PKG-INFO new/ipykernel-6.27.1/PKG-INFO
--- old/ipykernel-6.27.0/PKG-INFO 2020-02-02 01:00:00.000000000 +0100
+++ new/ipykernel-6.27.1/PKG-INFO 2020-02-02 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: ipykernel
-Version: 6.27.0
+Version: 6.27.1
Summary: IPython Kernel for Jupyter
Project-URL: Homepage, https://ipython.org
Author-email: IPython Development Team <ipython-dev(a)scipy.org>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ipykernel-6.27.0/ipykernel/_version.py new/ipykernel-6.27.1/ipykernel/_version.py
--- old/ipykernel-6.27.0/ipykernel/_version.py 2020-02-02 01:00:00.000000000 +0100
+++ new/ipykernel-6.27.1/ipykernel/_version.py 2020-02-02 01:00:00.000000000 +0100
@@ -5,7 +5,7 @@
from typing import List
# Version string must appear intact for hatch versioning
-__version__ = "6.27.0"
+__version__ = "6.27.1"
# Build up version_info tuple for backwards compatibility
pattern = r"(?P<major>\d+).(?P<minor>\d+).(?P<patch>\d+)(?P<rest>.*)"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ipykernel-6.27.0/ipykernel/zmqshell.py new/ipykernel-6.27.1/ipykernel/zmqshell.py
--- old/ipykernel-6.27.0/ipykernel/zmqshell.py 2020-02-02 01:00:00.000000000 +0100
+++ new/ipykernel-6.27.1/ipykernel/zmqshell.py 2020-02-02 01:00:00.000000000 +0100
@@ -302,7 +302,7 @@
# Make sure we send to the client an absolute path, in case the working
# directory of client and kernel don't match
- filename = Path(filename).resolve()
+ filename = str(Path(filename).resolve())
payload = {"source": "edit_magic", "filename": filename, "line_number": lineno}
assert self.shell is not None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ipykernel-6.27.0/tests/test_zmq_shell.py new/ipykernel-6.27.1/tests/test_zmq_shell.py
--- old/ipykernel-6.27.0/tests/test_zmq_shell.py 2020-02-02 01:00:00.000000000 +0100
+++ new/ipykernel-6.27.1/tests/test_zmq_shell.py 2020-02-02 01:00:00.000000000 +0100
@@ -220,6 +220,9 @@
tmp_file = tmp_path / "test.txt"
tmp_file.write_text("hi", "utf8")
magics.edit(str(tmp_file))
+ payload = shell.payload_manager.read_payload()[0]
+ assert payload["filename"] == str(tmp_file)
+
magics.clear([])
magics.less(str(tmp_file))
if os.name == "posix":
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package qt6-base for openSUSE:Factory checked in at 2023-12-21 23:38:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6-base (Old)
and /work/SRC/openSUSE:Factory/.qt6-base.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-base"
Thu Dec 21 23:38:34 2023 rev:47 rq:1134526 version:6.6.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6-base/qt6-base.changes 2023-12-05 17:04:41.376406184 +0100
+++ /work/SRC/openSUSE:Factory/.qt6-base.new.1840/qt6-base.changes 2023-12-21 23:38:45.818866379 +0100
@@ -133,0 +134 @@
+ * Includes fix for boo#1215178, QTBUG-109474, QTCREATORBUG-28593
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-markdown2 for openSUSE:Factory checked in at 2023-12-21 23:38:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-markdown2 (Old)
and /work/SRC/openSUSE:Factory/.python-markdown2.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-markdown2"
Thu Dec 21 23:38:32 2023 rev:13 rq:1134336 version:2.4.12
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-markdown2/python-markdown2.changes 2023-12-08 22:32:47.421626782 +0100
+++ /work/SRC/openSUSE:Factory/.python-markdown2.new.1840/python-markdown2.changes 2023-12-21 23:38:44.726826555 +0100
@@ -1,0 +2,12 @@
+Wed Dec 20 21:54:47 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.4.12:
+ * Update `markdown-in-html` extra to handle markdown on same
+ line as HTML (#546)
+ * Fix tables with trailing whitespace not being recognized
+ * Fix multiple instances of strong emphasis (`**`)
+ in one line (#541)
+ * Fix incorrect parsing of links after square
+ brackets (#552)
+
+-------------------------------------------------------------------
Old:
----
markdown2-2.4.11.tar.gz
New:
----
markdown2-2.4.12.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-markdown2.spec ++++++
--- /var/tmp/diff_new_pack.8BZjfQ/_old 2023-12-21 23:38:45.378850333 +0100
+++ /var/tmp/diff_new_pack.8BZjfQ/_new 2023-12-21 23:38:45.382850479 +0100
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-markdown2
-Version: 2.4.11
+Version: 2.4.12
Release: 0
Summary: A Python implementation of Markdown
License: MIT
++++++ markdown2-2.4.11.tar.gz -> markdown2-2.4.12.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/CHANGES.md new/markdown2-2.4.12/CHANGES.md
--- old/markdown2-2.4.11/CHANGES.md 2023-12-03 19:51:54.000000000 +0100
+++ new/markdown2-2.4.12/CHANGES.md 2023-12-17 22:56:51.000000000 +0100
@@ -1,5 +1,12 @@
# python-markdown2 Changelog
+## python-markdown2 2.4.12
+
+- [pull #547] Update `markdown-in-html` extra to handle markdown on same line as HTML (#546)
+- [pull #550] Fix tables with trailing whitespace not being recognized (#549)
+- [pull #545] Fix multiple instances of strong emphasis (`**`) in one line (#541)
+- [pull #556] Fix incorrect parsing of links after square brackets (#552)
+
## python-markdown2 2.4.11
- [pull #524] Fix angles being escaped in style blocks (issue #523)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/PKG-INFO new/markdown2-2.4.12/PKG-INFO
--- old/markdown2-2.4.11/PKG-INFO 2023-12-03 19:51:58.228002500 +0100
+++ new/markdown2-2.4.12/PKG-INFO 2023-12-17 22:56:54.585874000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: markdown2
-Version: 2.4.11
+Version: 2.4.12
Summary: A fast and complete Python implementation of Markdown
Home-page: https://github.com/trentm/python-markdown2
Author: Trent Mick
@@ -37,5 +37,5 @@
Classifier: Topic :: Text Processing :: Markup :: HTML
Requires-Python: >=3.5, <4
Provides-Extra: all
-Provides-Extra: code_syntax_highlighting
Provides-Extra: wavedrom
+Provides-Extra: code_syntax_highlighting
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/lib/markdown2.egg-info/PKG-INFO new/markdown2-2.4.12/lib/markdown2.egg-info/PKG-INFO
--- old/markdown2-2.4.11/lib/markdown2.egg-info/PKG-INFO 2023-12-03 19:51:58.000000000 +0100
+++ new/markdown2-2.4.12/lib/markdown2.egg-info/PKG-INFO 2023-12-17 22:56:54.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: markdown2
-Version: 2.4.11
+Version: 2.4.12
Summary: A fast and complete Python implementation of Markdown
Home-page: https://github.com/trentm/python-markdown2
Author: Trent Mick
@@ -37,5 +37,5 @@
Classifier: Topic :: Text Processing :: Markup :: HTML
Requires-Python: >=3.5, <4
Provides-Extra: all
-Provides-Extra: code_syntax_highlighting
Provides-Extra: wavedrom
+Provides-Extra: code_syntax_highlighting
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/lib/markdown2.egg-info/SOURCES.txt new/markdown2-2.4.12/lib/markdown2.egg-info/SOURCES.txt
--- old/markdown2-2.4.11/lib/markdown2.egg-info/SOURCES.txt 2023-12-03 19:51:58.000000000 +0100
+++ new/markdown2-2.4.12/lib/markdown2.egg-info/SOURCES.txt 2023-12-17 22:56:54.000000000 +0100
@@ -94,6 +94,8 @@
test/tm-cases/codespans_safe_mode.text
test/tm-cases/consecutive_image_links_issue498.html
test/tm-cases/consecutive_image_links_issue498.text
+test/tm-cases/consecutive_strong_em.html
+test/tm-cases/consecutive_strong_em.text
test/tm-cases/cuddled_list_indented.html
test/tm-cases/cuddled_list_indented.opts
test/tm-cases/cuddled_list_indented.tags
@@ -329,6 +331,8 @@
test/tm-cases/issue54_escape_link_title.html
test/tm-cases/issue54_escape_link_title.tags
test/tm-cases/issue54_escape_link_title.text
+test/tm-cases/link_after_square_brackets.html
+test/tm-cases/link_after_square_brackets.text
test/tm-cases/link_defn_alt_title_delims.html
test/tm-cases/link_defn_alt_title_delims.text
test/tm-cases/link_defn_spaces_in_url.html
@@ -388,6 +392,9 @@
test/tm-cases/markdown_in_html_in_lists.html
test/tm-cases/markdown_in_html_in_lists.opts
test/tm-cases/markdown_in_html_in_lists.text
+test/tm-cases/markdown_in_html_on_same_line.html
+test/tm-cases/markdown_in_html_on_same_line.opts
+test/tm-cases/markdown_in_html_on_same_line.text
test/tm-cases/mermaid.html
test/tm-cases/mermaid.opts
test/tm-cases/mermaid.tags
@@ -524,6 +531,9 @@
test/tm-cases/toc_duplicate_entries.html
test/tm-cases/toc_duplicate_entries.opts
test/tm-cases/toc_duplicate_entries.text
+test/tm-cases/trailing_table_whitespace.html
+test/tm-cases/trailing_table_whitespace.opts
+test/tm-cases/trailing_table_whitespace.text
test/tm-cases/tricky_anchors.html
test/tm-cases/tricky_anchors.text
test/tm-cases/two_comments.html
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/lib/markdown2.py new/markdown2-2.4.12/lib/markdown2.py
--- old/markdown2-2.4.11/lib/markdown2.py 2023-12-03 19:50:40.000000000 +0100
+++ new/markdown2-2.4.12/lib/markdown2.py 2023-12-17 22:55:49.000000000 +0100
@@ -106,7 +106,7 @@
# not yet sure if there implications with this. Compare 'pydoc sre'
# and 'perldoc perlre'.
-__version_info__ = (2, 4, 11)
+__version_info__ = (2, 4, 12)
__version__ = '.'.join(map(str, __version_info__))
__author__ = "Trent Mick"
@@ -783,8 +783,15 @@
def _hash_html_block_sub(self, match, raw=False):
if isinstance(match, str):
html = match
+ tag = None
else:
html = match.group(1)
+ try:
+ tag = match.group(2)
+ except IndexError:
+ tag = None
+
+ tag = tag or re.match(r'^<(\S).*?>', html).group(1)
if raw and self.safe_mode:
html = self._sanitize_html(html)
@@ -793,6 +800,10 @@
m = self._html_markdown_attr_re.search(first_line)
if m:
lines = html.split('\n')
+ if len(lines) < 3: # if MD is on same line as HTML
+ lines = re.split(r'(<%s.*markdown=.*?>)' % tag, lines[0])[1:] + lines[1:]
+ first_line = lines[0]
+ lines = lines[:-1] + re.split(r'(</%s>.*?$)' % tag, lines[-1])[:-1]
middle = '\n'.join(lines[1:-1])
last_line = lines[-1]
first_line = first_line[:m.start()] + first_line[m.end():]
@@ -1241,21 +1252,21 @@
(?:(?<=\n\n)|\A\n?) # leading blank line
^[ ]{0,%d} # allowed whitespace
- (.*[|].*) \n # $1: header row (at least one pipe)
+ (.*[|].*)[ ]*\n # $1: header row (at least one pipe)
^[ ]{0,%d} # allowed whitespace
( # $2: underline row
# underline row with leading bar
- (?: \|\ *:?-+:?\ * )+ \|? \s? \n
+ (?: \|\ *:?-+:?\ * )+ \|? \s?[ ]*\n
|
# or, underline row without leading bar
- (?: \ *:?-+:?\ *\| )+ (?: \ *:?-+:?\ * )? \s? \n
+ (?: \ *:?-+:?\ *\| )+ (?: \ *:?-+:?\ * )? \s?[ ]*\n
)
( # $3: data rows
(?:
^[ ]{0,%d}(?!\ ) # ensure line begins with 0 to less_than_tab spaces
- .*\|.* \n
+ .*\|.*[ ]*\n
)+
)
''' % (less_than_tab, less_than_tab, less_than_tab), re.M | re.X)
@@ -1775,7 +1786,8 @@
curr_pos = start_idx + 1
else:
# This id isn't defined, leave the markup alone.
- curr_pos = match.end()
+ # set current pos to end of link title and continue from there
+ curr_pos = p
continue
# Otherwise, it isn't markup.
@@ -2395,9 +2407,9 @@
text = self._tg_spoiler_re.sub(r"<tg-spoiler>\1</tg-spoiler>", text)
return text
- _strong_re = re.compile(r"(\*\*|__)(?=\S)(.*\S)\1", re.S)
+ _strong_re = re.compile(r"(\*\*|__)(?=\S)(.+?[*_]?)(?<=\S)\1", re.S)
_em_re = r"(\*|_)(?=\S)(.*?\S)\1"
- _code_friendly_strong_re = re.compile(r"\*\*(?=\S)(.*\S)\*\*", re.S)
+ _code_friendly_strong_re = re.compile(r"\*\*(?=\S)(.+?[*_]?)(?<=\S)\*\*", re.S)
_code_friendly_em_re = r"\*(?=\S)(.+?)\*"
def _do_italics_and_bold(self, text):
if self.extras.get('middle-word-em', True) is False:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/test_markdown2.py new/markdown2-2.4.12/test/test_markdown2.py
--- old/markdown2-2.4.11/test/test_markdown2.py 2023-02-12 23:32:18.000000000 +0100
+++ new/markdown2-2.4.12/test/test_markdown2.py 2023-12-17 22:55:49.000000000 +0100
@@ -345,8 +345,7 @@
html = html.decode('utf-8')
html = _markdown_email_link_re.sub(
_markdown_email_link_sub, html)
- if sys.platform == "win32":
- html = html.replace('\r\n', '\n')
+ html = html.replace('\r\n', '\n')
return html
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/testall.py new/markdown2-2.4.12/test/testall.py
--- old/markdown2-2.4.11/test/testall.py 2023-06-22 23:16:13.000000000 +0200
+++ new/markdown2-2.4.12/test/testall.py 2023-12-17 22:55:49.000000000 +0100
@@ -23,6 +23,9 @@
def _gen_python_names():
yield "python"
+ if sys.platform == "win32":
+ return
+
# generate version numbers from python 3.5 to 3.20
for ver in [(3, i) for i in range(5, 20)]:
yield "python%d.%d" % ver
@@ -33,6 +36,10 @@
python_from_ver = {}
for name in _gen_python_names():
for python in which.whichall(name):
+ if sys.platform == "win32" and re.search(r"\\WindowsApps\\[^\\]+$", python, flags=re.IGNORECASE):
+ # skip Python stubs from the Windows Store.
+ continue
+
ver = _python_ver_from_python(python)
if ver not in python_from_ver:
python_from_ver[ver] = python
@@ -49,9 +56,11 @@
print("-- test with Python %s (%s)" % (ver_str, python))
assert ' ' not in python
+ env_args = 'MACOSX_DEPLOYMENT_TARGET= ' if sys.platform == 'darwin' else ''
+
proc = subprocess.Popen(
# pass "-u" option to force unbuffered output
- "MACOSX_DEPLOYMENT_TARGET= %s -u test.py -- -knownfailure" % python,
+ "%s%s -u test.py -- -knownfailure" % (env_args, python),
shell=True, stderr=subprocess.PIPE
)
@@ -64,7 +73,7 @@
all_warnings.append((python, ver_str, line))
if proc.returncode:
- sys.exit(os.WEXITSTATUS(proc.returncode))
+ sys.exit(proc.returncode)
for python, ver_str, warning in all_warnings:
# now re-print all warnings to make sure they are seen
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/consecutive_strong_em.html new/markdown2-2.4.12/test/tm-cases/consecutive_strong_em.html
--- old/markdown2-2.4.11/test/tm-cases/consecutive_strong_em.html 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/consecutive_strong_em.html 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,7 @@
+<p><strong>a</strong> b <strong>c</strong></p>
+
+<p><em>a</em> b <em>c</em></p>
+
+<p><strong>a</strong> b <strong>c</strong></p>
+
+<p><em>a</em> b <em>c</em></p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/consecutive_strong_em.text new/markdown2-2.4.12/test/tm-cases/consecutive_strong_em.text
--- old/markdown2-2.4.11/test/tm-cases/consecutive_strong_em.text 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/consecutive_strong_em.text 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,7 @@
+**a** b **c**
+
+*a* b *c*
+
+__a__ b __c__
+
+_a_ b _c_
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/link_after_square_brackets.html new/markdown2-2.4.12/test/tm-cases/link_after_square_brackets.html
--- old/markdown2-2.4.11/test/tm-cases/link_after_square_brackets.html 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/link_after_square_brackets.html 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,3 @@
+<p>[before]
+<a href="https://google.com">Some link</a>
+[after]</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/link_after_square_brackets.text new/markdown2-2.4.12/test/tm-cases/link_after_square_brackets.text
--- old/markdown2-2.4.11/test/tm-cases/link_after_square_brackets.text 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/link_after_square_brackets.text 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,3 @@
+[before]
+[Some link](https://google.com)
+[after]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/markdown_in_html_on_same_line.html new/markdown2-2.4.12/test/tm-cases/markdown_in_html_on_same_line.html
--- old/markdown2-2.4.11/test/tm-cases/markdown_in_html_on_same_line.html 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/markdown_in_html_on_same_line.html 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,23 @@
+<p>
+
+<p><strong>text</strong></p>
+
+</p>
+
+<p>
+
+<p><strong>text</strong></p>
+
+</p>
+
+<p>
+
+<p><strong>text</strong></p>
+
+</p>
+
+<p>
+
+<p><strong>text</strong></p>
+
+</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/markdown_in_html_on_same_line.opts new/markdown2-2.4.12/test/tm-cases/markdown_in_html_on_same_line.opts
--- old/markdown2-2.4.11/test/tm-cases/markdown_in_html_on_same_line.opts 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/markdown_in_html_on_same_line.opts 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1 @@
+{"extras": ["markdown-in-html"]}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/markdown_in_html_on_same_line.text new/markdown2-2.4.12/test/tm-cases/markdown_in_html_on_same_line.text
--- old/markdown2-2.4.11/test/tm-cases/markdown_in_html_on_same_line.text 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/markdown_in_html_on_same_line.text 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,12 @@
+<p markdown="1">**text**</p>
+
+
+<p markdown="1">
+**text**</p>
+
+<p markdown="1">**text**
+</p>
+
+<p markdown="1">
+**text**
+</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/trailing_table_whitespace.html new/markdown2-2.4.12/test/tm-cases/trailing_table_whitespace.html
--- old/markdown2-2.4.11/test/tm-cases/trailing_table_whitespace.html 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/trailing_table_whitespace.html 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,22 @@
+<table>
+<thead>
+<tr>
+ <th>Pros</th>
+ <th>Cons</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+ <td>Unique and refreshing take on the genre</td>
+ <td>May not resonate with all viewers</td>
+</tr>
+<tr>
+ <td>Cult classic status</td>
+ <td>Over-the-top humor may polarize audiences</td>
+</tr>
+<tr>
+ <td>Influential in launching careers</td>
+ <td>Niche appeal among comedy aficionados</td>
+</tr>
+</tbody>
+</table>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/trailing_table_whitespace.opts new/markdown2-2.4.12/test/tm-cases/trailing_table_whitespace.opts
--- old/markdown2-2.4.11/test/tm-cases/trailing_table_whitespace.opts 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/trailing_table_whitespace.opts 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1 @@
+{"extras": ["tables"]}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/markdown2-2.4.11/test/tm-cases/trailing_table_whitespace.text new/markdown2-2.4.12/test/tm-cases/trailing_table_whitespace.text
--- old/markdown2-2.4.11/test/tm-cases/trailing_table_whitespace.text 1970-01-01 01:00:00.000000000 +0100
+++ new/markdown2-2.4.12/test/tm-cases/trailing_table_whitespace.text 2023-12-17 22:55:49.000000000 +0100
@@ -0,0 +1,5 @@
+| Pros | Cons |
+|-----------------------------------------|------------------------------------------------|
+| Unique and refreshing take on the genre | May not resonate with all viewers |
+| Cult classic status | Over-the-top humor may polarize audiences |
+| Influential in launching careers | Niche appeal among comedy aficionados |
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-parsel for openSUSE:Factory checked in at 2023-12-21 23:38:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-parsel (Old)
and /work/SRC/openSUSE:Factory/.python-parsel.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-parsel"
Thu Dec 21 23:38:29 2023 rev:11 rq:1134335 version:1.8.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-parsel/python-parsel.changes 2023-01-08 21:25:38.435283134 +0100
+++ /work/SRC/openSUSE:Factory/.python-parsel.new.1840/python-parsel.changes 2023-12-21 23:38:43.390777833 +0100
@@ -1,0 +2,20 @@
+Wed Dec 20 21:53:12 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.8.1:
+ * Remove a Sphinx reference from NEWS to fix the PyPI
+ description
+ * Add support for JMESPath: you can now create a selector for a
+ JSON document and call ``Selector.jmespath()``.
+ * Selectors can now be constructed from ``bytes`` (using the
+ ``body`` and ``encoding`` arguments) instead of ``str``
+ (using the ``text`` argument), so that there is no internal
+ conversion from ``str`` to ``bytes`` and the memory
+ usage is lower.
+ * Typing improvements
+ * The ``pkg_resources`` module (which was absent from the
+ requirements) is no longer used
+ * New requirements:
+ * ``jmespath``
+ * ``typing_extensions`` (on Python 3.7)
+
+-------------------------------------------------------------------
Old:
----
parsel-1.7.0.tar.gz
New:
----
parsel-1.8.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-parsel.spec ++++++
--- /var/tmp/diff_new_pack.X70Eqd/_old 2023-12-21 23:38:43.862795046 +0100
+++ /var/tmp/diff_new_pack.X70Eqd/_new 2023-12-21 23:38:43.862795046 +0100
@@ -19,7 +19,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%bcond_without python2
Name: python-parsel
-Version: 1.7.0
+Version: 1.8.1
Release: 0
Summary: Library to extract data from HTML and XML using XPath and CSS selectors
License: BSD-3-Clause
@@ -27,14 +27,18 @@
URL: https://github.com/scrapy/parsel
Source: https://files.pythonhosted.org/packages/source/p/parsel/parsel-%{version}.t…
BuildRequires: %{python_module cssselect >= 0.9}
+BuildRequires: %{python_module jmespath}
BuildRequires: %{python_module lxml}
BuildRequires: %{python_module psutil}
BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module typing-extensions}
BuildRequires: %{python_module w3lib >= 1.19.0}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-cssselect >= 0.9
+Requires: python-jmespath
Requires: python-lxml
+Requires: python-typing-extensions
Requires: python-w3lib >= 1.19.0
BuildArch: noarch
%ifpython2
++++++ parsel-1.7.0.tar.gz -> parsel-1.8.1.tar.gz ++++++
++++ 2183 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-parver for openSUSE:Factory checked in at 2023-12-21 23:38:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-parver (Old)
and /work/SRC/openSUSE:Factory/.python-parver.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-parver"
Thu Dec 21 23:38:25 2023 rev:6 rq:1134331 version:0.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-parver/python-parver.changes 2023-03-21 17:42:57.926242758 +0100
+++ /work/SRC/openSUSE:Factory/.python-parver.new.1840/python-parver.changes 2023-12-21 23:38:38.950615911 +0100
@@ -1,0 +2,7 @@
+Wed Dec 20 21:41:40 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 0.5:
+ * Added support for Python 3.12
+ * Removed support for Python 3.7
+
+-------------------------------------------------------------------
Old:
----
parver-0.4.tar.gz
New:
----
parver-0.5.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-parver.spec ++++++
--- /var/tmp/diff_new_pack.tMJwkn/_old 2023-12-21 23:38:39.706643482 +0100
+++ /var/tmp/diff_new_pack.tMJwkn/_new 2023-12-21 23:38:39.710643627 +0100
@@ -17,13 +17,14 @@
Name: python-parver
-Version: 0.4
+Version: 0.5
Release: 0
Summary: Module to parse and manipulate version numbers
License: MIT
Group: Development/Languages/Python
URL: https://github.com/RazerM/parver
Source: https://files.pythonhosted.org/packages/source/p/parver/parver-%{version}.t…
+BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
++++++ parver-0.4.tar.gz -> parver-0.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/CHANGELOG.rst new/parver-0.5/CHANGELOG.rst
--- old/parver-0.4/CHANGELOG.rst 1970-01-01 01:00:00.000000000 +0100
+++ new/parver-0.5/CHANGELOG.rst 2023-10-03 23:06:22.000000000 +0200
@@ -0,0 +1,159 @@
+Changelog
+=========
+
+0.5 (2023-10-03)
+----------------
+
+Added
+~~~~~
+
+- Support for Python 3.12
+
+Removed
+~~~~~~~
+
+- Support for Python 3.7
+
+
+0.4 (2022-11-11)
+----------------
+
+Added
+~~~~~
+
+- Type hints.
+
+Removed
+~~~~~~~
+
+- Support for Python 2.7, 3.5, and 3.6.
+- ``__version__``, ``__author__``, and ``__email__`` attributes from `parver` module. Use :mod:`importlib.metadata` instead.
+
+
+0.3.1 (2020-09-28)
+------------------
+
+Added
+~~~~~
+
+- Grammar is parsed when first used to improve import time.
+
+Fixed
+~~~~~
+
+- attrs deprecation warning. The minimum attrs version is now 19.2
+- Errors raised for keyword-only argument errors on Python 3 did not
+ have the right error message.
+
+
+0.3 (2020-02-20)
+----------------
+
+Added
+~~~~~
+
+- ``Version.truncate`` method to remove trailing zeros from the release
+ segment.
+- ``Version`` now validates each item in the release sequence.
+- ``Version.bump_epoch`` method.
+- Add ``by`` keyword argument to ``bump_pre``, ``bump_post``, and
+ ``bump_dev`` methods, which e.g. ``.bump_dev(by=-1)``.
+
+Changed
+~~~~~~~
+
+- **BREAKING CHANGE**. The ``Version`` constructor now uses an empty
+ string to represent an implicit zero instead of ``None``.
+
+ .. code:: python
+
+ >>> Version(release=1, post='')
+ <Version '1.post'>
+
+Removed
+~~~~~~~
+
+- **BREAKING CHANGE**. ``Version.clear`` is no longer necessary. Use
+ ``Version.replace(pre=None, post=None, dev=None)`` instead.
+
+
+Fixed
+~~~~~
+
+- ``Version`` incorrectly allowed an empty release sequence.
+- ``Version`` rejects ``bool`` for numeric components.
+- ``Version`` rejects negative integers for numeric components.
+- The strict parser no longer accepts local versions with ``-`` or
+ ``_`` separators, or uppercase letters.
+- The strict parser no longer accepts numbers with leading zeros.
+- The local version was only being converted to lowercase when parsing
+ with ``strict=False``. It is now always converted.
+- The local version separators were not being normalized to use ``.``.
+
+
+0.2.1 (2018-12-31)
+------------------
+
+Fixed
+~~~~~
+
+- On Python 2, ``Version`` was incorrectly rejecting ``long`` integer
+ values.
+
+
+0.2 (2018-11-21)
+----------------
+
+Added
+~~~~~
+
+- ``Version.bump_release_to`` method for control over the value to bump
+ to, e.g. for `CalVer`_.
+- ``Version.set_release`` method for finer control over release values
+ without resetting subsequent indices to zero.
+
+.. _CalVer: https://calver.org
+
+
+Changed
+~~~~~~~
+
+- **BREAKING CHANGE**. The argument to ``Version.bump_release`` is now
+ a keyword only argument, e.g. ``Version.bump_release(index=0)``.
+- The ``release`` parameter to ``Version`` now accepts any iterable.
+
+
+Fixed
+~~~~~
+
+- Deprecation warnings about invalid escape sequences in ``_parse.py``.
+
+
+0.1.1 (2018-06-19)
+------------------
+
+Fixed
+~~~~~
+
+- ``Version`` accepted ``pre=None`` and ``post_tag=None``, which
+ produces an ambiguous version number. This is because an implicit
+ pre-release number combined with an implicit post-release looks like
+ a pre-release with a custom separator:
+
+ .. code:: python
+
+ >>> Version(release=1, pre_tag='a', pre=None, post_tag=None, post=2)
+ <Version '1a-2'>
+ >>> Version(release=1, pre_tag='a', pre_sep2='-', pre=2)
+ <Version '1a-2'>
+
+ The first form now raises a ``ValueError``.
+
+- Don’t allow ``post=None`` when ``post_tag=None``. Implicit post
+ releases cannot have implicit post release numbers.
+
+
+0.1 (2018-05-20)
+----------------
+
+First release.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/MANIFEST.in new/parver-0.5/MANIFEST.in
--- old/parver-0.4/MANIFEST.in 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/MANIFEST.in 2023-10-03 23:06:22.000000000 +0200
@@ -1,5 +1,4 @@
-include .coveragerc
-include CHANGELOG.md
+include CHANGELOG.rst
include LICENSE
include tox.ini
recursive-include tests *.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/PKG-INFO new/parver-0.5/PKG-INFO
--- old/parver-0.4/PKG-INFO 2022-11-11 22:29:44.245704700 +0100
+++ new/parver-0.5/PKG-INFO 2023-10-03 23:06:42.071129000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: parver
-Version: 0.4
+Version: 0.5
Summary: Parse and manipulate version numbers.
Author-email: Frazer McLean <frazer(a)frazermclean.co.uk>
License: MIT
@@ -11,20 +11,31 @@
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3 :: Only
-Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
-Requires-Python: >=3.7
+Requires-Python: >=3.8
Description-Content-Type: text/x-rst
+License-File: LICENSE
+Requires-Dist: arpeggio>=1.7
+Requires-Dist: attrs>=19.2
+Requires-Dist: typing-extensions; python_version < "3.10"
Provides-Extra: test
+Requires-Dist: pytest; extra == "test"
+Requires-Dist: hypothesis; extra == "test"
+Requires-Dist: pretend; extra == "test"
Provides-Extra: docs
+Requires-Dist: sphinx; extra == "docs"
+Requires-Dist: furo; extra == "docs"
Provides-Extra: docstest
+Requires-Dist: doc8; extra == "docstest"
Provides-Extra: pep8test
-License-File: LICENSE
+Requires-Dist: flake8; extra == "pep8test"
+Requires-Dist: pep8-naming; extra == "pep8test"
.. image:: https://img.shields.io/pypi/v/parver.svg
:target: https://pypi.org/project/parver/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/docs/conf.py new/parver-0.5/docs/conf.py
--- old/parver-0.4/docs/conf.py 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/docs/conf.py 2023-10-03 23:06:22.000000000 +0200
@@ -9,7 +9,7 @@
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-infor…
project = "parver"
-copyrightx = "2018, Frazer McLean"
+copyright = "2018, Frazer McLean"
author = "Frazer McLean"
release = distribution("parver").version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/pyproject.toml new/parver-0.5/pyproject.toml
--- old/parver-0.4/pyproject.toml 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/pyproject.toml 2023-10-03 23:06:22.000000000 +0200
@@ -1,13 +1,13 @@
[build-system]
-requires = ["setuptools>=64", "wheel"]
+requires = ["setuptools>=64"]
build-backend = "setuptools.build_meta"
[project]
name = "parver"
-version = "0.4"
+version = "0.5"
description = "Parse and manipulate version numbers."
readme = "README.rst"
-requires-python = ">=3.7"
+requires-python = ">=3.8"
license = { text = "MIT" }
authors = [
{ name = "Frazer McLean", email = "frazer(a)frazermclean.co.uk" },
@@ -18,11 +18,11 @@
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3 :: Only",
- "Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
@@ -42,6 +42,12 @@
Documentation = "https://parver.readthedocs.io"
"Source Code" = "https://github.com/RazerM/parver"
+[tool.setuptools]
+package-dir = { "" = "src" }
+
+[tool.setuptools.packages.find]
+where = ["src"]
+
[tool.coverage.run]
branch = true
source = ["parver", "tests/"]
@@ -66,7 +72,6 @@
disallow_incomplete_defs = true
check_untyped_defs = true
disallow_untyped_decorators = true
-no_implicit_optional = true
warn_unused_ignores = true
warn_return_any = true
no_implicit_reexport = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/setup.cfg new/parver-0.5/setup.cfg
--- old/parver-0.4/setup.cfg 2022-11-11 22:29:44.245704700 +0100
+++ new/parver-0.5/setup.cfg 2023-10-03 23:06:42.071129000 +0200
@@ -1,15 +1,3 @@
-[options]
-packages = find:
-package_dir =
- =src
-
-[options.packages.find]
-where = src
-
-[flake8]
-extend-ignore = E203
-max-line-length = 90
-
[egg_info]
tag_build =
tag_date = 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/src/parver/_typing.py new/parver-0.5/src/parver/_typing.py
--- old/parver-0.4/src/parver/_typing.py 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/src/parver/_typing.py 2023-10-03 23:06:22.000000000 +0200
@@ -1,13 +1,8 @@
import sys
-from typing import Union
+from typing import Literal, Union
from arpeggio import NonTerminal, Terminal
-if sys.version_info >= (3, 8):
- from typing import Literal
-else:
- from typing_extensions import Literal
-
if sys.version_info >= (3, 10):
from typing import TypeAlias
else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/src/parver/_version.py new/parver-0.5/src/parver/_version.py
--- old/parver-0.4/src/parver/_version.py 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/src/parver/_version.py 2023-10-03 23:06:22.000000000 +0200
@@ -52,7 +52,7 @@
if value == IMPLICIT_ZERO:
return
- validator(inst, attr, value) # type: ignore[operator]
+ validator(inst, attr, value)
return validate
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/src/parver.egg-info/PKG-INFO new/parver-0.5/src/parver.egg-info/PKG-INFO
--- old/parver-0.4/src/parver.egg-info/PKG-INFO 2022-11-11 22:29:44.000000000 +0100
+++ new/parver-0.5/src/parver.egg-info/PKG-INFO 2023-10-03 23:06:42.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: parver
-Version: 0.4
+Version: 0.5
Summary: Parse and manipulate version numbers.
Author-email: Frazer McLean <frazer(a)frazermclean.co.uk>
License: MIT
@@ -11,20 +11,31 @@
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3 :: Only
-Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
-Requires-Python: >=3.7
+Requires-Python: >=3.8
Description-Content-Type: text/x-rst
+License-File: LICENSE
+Requires-Dist: arpeggio>=1.7
+Requires-Dist: attrs>=19.2
+Requires-Dist: typing-extensions; python_version < "3.10"
Provides-Extra: test
+Requires-Dist: pytest; extra == "test"
+Requires-Dist: hypothesis; extra == "test"
+Requires-Dist: pretend; extra == "test"
Provides-Extra: docs
+Requires-Dist: sphinx; extra == "docs"
+Requires-Dist: furo; extra == "docs"
Provides-Extra: docstest
+Requires-Dist: doc8; extra == "docstest"
Provides-Extra: pep8test
-License-File: LICENSE
+Requires-Dist: flake8; extra == "pep8test"
+Requires-Dist: pep8-naming; extra == "pep8test"
.. image:: https://img.shields.io/pypi/v/parver.svg
:target: https://pypi.org/project/parver/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/src/parver.egg-info/SOURCES.txt new/parver-0.5/src/parver.egg-info/SOURCES.txt
--- old/parver-0.4/src/parver.egg-info/SOURCES.txt 2022-11-11 22:29:44.000000000 +0100
+++ new/parver-0.5/src/parver.egg-info/SOURCES.txt 2023-10-03 23:06:42.000000000 +0200
@@ -1,8 +1,8 @@
+CHANGELOG.rst
LICENSE
MANIFEST.in
README.rst
pyproject.toml
-setup.cfg
tox.ini
docs/api.rst
docs/changelog.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/tests/strategies.py new/parver-0.5/tests/strategies.py
--- old/parver-0.4/tests/strategies.py 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/tests/strategies.py 2023-10-03 23:06:22.000000000 +0200
@@ -25,7 +25,7 @@
def release(draw):
return draw(
num_str.map(lambda s: [s] + draw(lists(num_str.map(lambda s: "." + s)))).map(
- lambda l: "".join(l)
+ lambda parts: "".join(parts)
)
)
@@ -131,7 +131,7 @@
part = local_segment()
sep_part = sep.map(lambda s: s + draw(local_segment()))
- sep_parts = lists(sep_part).map(lambda l: "".join(l))
+ sep_parts = lists(sep_part).map(lambda parts: "".join(parts))
return draw(one_of(just(""), part.map(lambda s: "+" + s + draw(sep_parts))))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/parver-0.4/tox.ini new/parver-0.5/tox.ini
--- old/parver-0.4/tox.ini 2022-11-11 22:29:27.000000000 +0100
+++ new/parver-0.5/tox.ini 2023-10-03 23:06:22.000000000 +0200
@@ -1,6 +1,6 @@
[tox]
minversion = 3.3
-envlist = py37,py38,py39,py310,py311,pep8,py3pep8,docs,typing
+envlist = py37,py38,py39,py310,py311,py312,pep8,docs,typing
isolated_build = True
[testenv]
@@ -15,20 +15,14 @@
coverage report -m
[testenv:pep8]
-extras =
- pep8test
-commands =
- flake8 .
-
-[testenv:py3pep8]
-basepython = python3.11
+basepython = python3.12
extras =
pep8test
commands =
flake8 .
[testenv:docs]
-basepython = python3.11
+basepython = python3.12
extras =
docs
docstest
@@ -38,7 +32,7 @@
doc8 docs/
[testenv:typing]
-basepython = python3.11
+basepython = python3.12
deps = mypy>=0.931
commands =
mypy src/parver
@@ -55,4 +49,5 @@
3.8: py38
3.9: py39
3.10: py310
- 3.11: py311, py3pep8, docs, typing
+ 3.11: py311
+ 3.12: py312, pep8, docs, typing
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package wlroots for openSUSE:Factory checked in at 2023-12-21 23:38:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wlroots (Old)
and /work/SRC/openSUSE:Factory/.wlroots.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wlroots"
Thu Dec 21 23:38:21 2023 rev:28 rq:1134407 version:0.17.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/wlroots/wlroots.changes 2023-12-19 23:16:46.307585872 +0100
+++ /work/SRC/openSUSE:Factory/.wlroots.new.1840/wlroots.changes 2023-12-21 23:38:32.414377551 +0100
@@ -1,0 +2,14 @@
+Thu Dec 21 07:58:43 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Fix installation: do not pass
+ --libdir=%{_libdir}/wlroots-%{version} to meson: this results in
+ the library and the .pc file to installed into private locations
+ and not being usable without extra hacks.
+
+-------------------------------------------------------------------
+Wed Dec 20 21:37:28 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Remove pkgconfig(freerdp2) BuildRequires: there is no mention of
+ freerdp in the source tree.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wlroots.spec ++++++
--- /var/tmp/diff_new_pack.kZ4I33/_old 2023-12-21 23:38:33.358411977 +0100
+++ /var/tmp/diff_new_pack.kZ4I33/_new 2023-12-21 23:38:33.358411977 +0100
@@ -37,7 +37,6 @@
BuildRequires: meson >= 0.59.0
BuildRequires: pkgconfig
BuildRequires: pkgconfig(egl)
-BuildRequires: pkgconfig(freerdp2)
BuildRequires: pkgconfig(gbm) >= 17.1.0
BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(hwdata)
@@ -107,9 +106,7 @@
%{?with_x11_backend:'x11',}
]" \
%{?with_xwayland:-Dxwayland=enabled} \
- %{?with_xcb_errors:-Dxcb-errors=enabled} \
- --includedir %{_includedir}/wlroots-%{version} \
- --libdir %{_libdir}/wlroots-%{version}
+ %{?with_xcb_errors:-Dxcb-errors=enabled}
%meson_build
%install
@@ -121,12 +118,10 @@
%files devel
%license LICENSE
%doc README.md CONTRIBUTING.md
-%{_includedir}/wlroots-%{version}/
-%dir %{_libdir}/wlroots-%{version}
-%dir %{_libdir}/wlroots-%{version}/pkgconfig
-%{_libdir}/wlroots-%{version}/pkgconfig/wlroots.pc
-%{_libdir}/wlroots-%{version}/libwlroots.so
+%{_includedir}/wlr/
+%{_libdir}/pkgconfig/wlroots.pc
+%{_libdir}/libwlroots.so
%files -n %{libname}
-%{_libdir}/wlroots-%{version}/libwlroots.so.*
+%{_libdir}/libwlroots.so.*
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-drgn for openSUSE:Factory checked in at 2023-12-21 23:38:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-drgn (Old)
and /work/SRC/openSUSE:Factory/.python-drgn.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-drgn"
Thu Dec 21 23:38:18 2023 rev:6 rq:1134318 version:0.0.25
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-drgn/python-drgn.changes 2023-09-10 13:10:46.243712996 +0200
+++ /work/SRC/openSUSE:Factory/.python-drgn.new.1840/python-drgn.changes 2023-12-21 23:38:30.598311323 +0100
@@ -1,0 +2,16 @@
+Mon Dec 4 14:46:37 UTC 2023 - Michal Koutný <mkoutny(a)suse.com>
+
+- Cleanup .gitignore'd files from tarball
+
+-------------------------------------------------------------------
+Sat Dec 2 16:59:32 UTC 2023 - Petr Tesařík <petr(a)tesarici.cz>
+
+- Update to drgn-0.0.25:
+ * omitting the prog argument
+ * running without root privileges
+ * maple tree helpers
+ * VMA helpers
+ * wait queue helpers
+ * ppc64 radix MMU support
+
+-------------------------------------------------------------------
Old:
----
drgn-0.0.24.tar.gz
New:
----
drgn-0.0.25.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-drgn.spec ++++++
--- /var/tmp/diff_new_pack.HVzCjo/_old 2023-12-21 23:38:31.366339331 +0100
+++ /var/tmp/diff_new_pack.HVzCjo/_new 2023-12-21 23:38:31.366339331 +0100
@@ -21,7 +21,7 @@
%{?!python_module:%define python_module() python3-%{**}}
Name: python-drgn
-Version: 0.0.24
+Version: 0.0.25
Release: 0
Summary: Scriptable debugger library
License: LGPL-2.1-or-later
++++++ drgn-0.0.24.tar.gz -> drgn-0.0.25.tar.gz ++++++
++++ 71373 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-pandoc-server for openSUSE:Factory checked in at 2023-12-21 23:38:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-pandoc-server (Old)
and /work/SRC/openSUSE:Factory/.ghc-pandoc-server.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-pandoc-server"
Thu Dec 21 23:38:17 2023 rev:5 rq:1134297 version:0.1.0.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-pandoc-server/ghc-pandoc-server.changes 2023-09-04 22:54:37.437976944 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-pandoc-server.new.1840/ghc-pandoc-server.changes 2023-12-21 23:38:28.254225840 +0100
@@ -1,0 +2,6 @@
+Tue Dec 12 18:51:58 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update pandoc-server to version 0.1.0.4.
+ Upstream does not provide a change log file.
+
+-------------------------------------------------------------------
Old:
----
pandoc-server-0.1.0.3.tar.gz
New:
----
pandoc-server-0.1.0.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-pandoc-server.spec ++++++
--- /var/tmp/diff_new_pack.8w09Jv/_old 2023-12-21 23:38:29.286263476 +0100
+++ /var/tmp/diff_new_pack.8w09Jv/_new 2023-12-21 23:38:29.286263476 +0100
@@ -19,7 +19,7 @@
%global pkg_name pandoc-server
%global pkgver %{pkg_name}-%{version}
Name: ghc-%{pkg_name}
-Version: 0.1.0.3
+Version: 0.1.0.4
Release: 0
Summary: Pandoc document conversion as an HTTP servant-server
License: GPL-2.0-or-later
@@ -30,8 +30,8 @@
BuildRequires: ghc-aeson-prof
BuildRequires: ghc-base-devel
BuildRequires: ghc-base-prof
-BuildRequires: ghc-base64-devel
-BuildRequires: ghc-base64-prof
+BuildRequires: ghc-base64-bytestring-devel
+BuildRequires: ghc-base64-bytestring-prof
BuildRequires: ghc-bytestring-devel
BuildRequires: ghc-bytestring-prof
BuildRequires: ghc-containers-devel
++++++ pandoc-server-0.1.0.3.tar.gz -> pandoc-server-0.1.0.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pandoc-server-0.1.0.3/pandoc-server.cabal new/pandoc-server-0.1.0.4/pandoc-server.cabal
--- old/pandoc-server-0.1.0.3/pandoc-server.cabal 2001-09-09 03:46:40.000000000 +0200
+++ new/pandoc-server-0.1.0.4/pandoc-server.cabal 2001-09-09 03:46:40.000000000 +0200
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: pandoc-server
-version: 0.1.0.3
+version: 0.1.0.4
build-type: Simple
license: GPL-2.0-or-later
license-file: COPYING.md
@@ -54,7 +54,7 @@
containers >= 0.6.0.1 && < 0.7,
aeson >= 2.0 && < 2.3,
bytestring >= 0.9 && < 0.13,
- base64 >= 0.4 && < 0.5,
+ base64-bytestring >= 0.1 && < 1.3,
doctemplates >= 0.11 && < 0.12,
data-default >= 0.4 && < 0.8,
text >= 1.1.1.0 && < 2.2,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pandoc-server-0.1.0.3/src/Text/Pandoc/Server.hs new/pandoc-server-0.1.0.4/src/Text/Pandoc/Server.hs
--- old/pandoc-server-0.1.0.3/src/Text/Pandoc/Server.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/pandoc-server-0.1.0.4/src/Text/Pandoc/Server.hs 2001-09-09 03:46:40.000000000 +0200
@@ -29,7 +29,7 @@
import Data.Maybe (fromMaybe)
import qualified Data.ByteString as BS
import qualified Data.ByteString.Lazy as BL
-import Data.ByteString.Base64 (decodeBase64, encodeBase64)
+import qualified Data.ByteString.Base64 as Base64 (decodeLenient, encode)
import Data.Default
import Control.Monad (when, unless, foldM)
import qualified Data.Set as Set
@@ -111,15 +111,11 @@
deriving (Show, Eq)
instance ToJSON Blob where
- toJSON (Blob bs) = toJSON (encodeBase64 $ BL.toStrict bs)
+ toJSON (Blob bs) = toJSON (UTF8.toText . Base64.encode $ BL.toStrict bs)
instance FromJSON Blob where
- parseJSON = withText "Blob" $ \t -> do
- let inp = UTF8.fromText t
- case decodeBase64 inp of
- Right bs -> return $ Blob $ BL.fromStrict bs
- Left _ -> -- treat as regular text
- return $ Blob $ BL.fromStrict inp
+ parseJSON = withText "Blob" $
+ pure . Blob . BL.fromStrict . Base64.decodeLenient . UTF8.fromText
-- This is the data to be supplied by the JSON payload
-- of requests. Maybe values may be omitted and will be
@@ -236,7 +232,8 @@
-- handleErr =<< liftIO (runIO (convert' params))
-- will allow the IO operations.
convertText params = handleErr $
- runPure (convert' return (return . encodeBase64 . BL.toStrict) params)
+ runPure (convert' return (return . UTF8.toText .
+ Base64.encode . BL.toStrict) params)
convertBytes params = handleErr $
runPure (convert' (return . UTF8.fromText) (return . BL.toStrict) params)
@@ -245,7 +242,7 @@
runPure
(convert'
(\t -> Succeeded t False . map toMessage <$> getLog)
- (\bs -> Succeeded (encodeBase64 (BL.toStrict bs)) True
+ (\bs -> Succeeded (UTF8.toText $ Base64.encode (BL.toStrict bs)) True
. map toMessage <$> getLog)
params)
@@ -341,11 +338,9 @@
let reader = case readerSpec of
TextReader r -> r readeropts
- ByteStringReader r -> \t -> do
- let eitherbs = decodeBase64 $ UTF8.fromText t
- case eitherbs of
- Left errt -> throwError $ PandocSomeError errt
- Right bs -> r readeropts $ BL.fromStrict bs
+ ByteStringReader r ->
+ r readeropts . BL.fromStrict . Base64.decodeLenient
+ . UTF8.fromText
let writer d@(Pandoc meta _) = do
case lookupMetaString "lang" meta of
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-old-time for openSUSE:Factory checked in at 2023-12-21 23:38:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-old-time (Old)
and /work/SRC/openSUSE:Factory/.ghc-old-time.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-old-time"
Thu Dec 21 23:38:15 2023 rev:14 rq:1134296 version:1.1.0.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-old-time/ghc-old-time.changes 2023-04-04 21:22:04.117757005 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-old-time.new.1840/ghc-old-time.changes 2023-12-21 23:38:26.526162822 +0100
@@ -1,0 +2,9 @@
+Mon Dec 11 08:39:16 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update old-time to version 1.1.0.4.
+ ## 1.1.0.4 *Dec 2023*
+
+ * Add `build-tools: hsc2hs` to `old-time.cabal` for compilation with GHC 8.
+ Fixes [issue #12](https://github.com/haskell/old-time/issues/12)
+
+-------------------------------------------------------------------
Old:
----
old-time-1.1.0.3.tar.gz
old-time.cabal
New:
----
old-time-1.1.0.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-old-time.spec ++++++
--- /var/tmp/diff_new_pack.SvuHtS/_old 2023-12-21 23:38:27.314191559 +0100
+++ /var/tmp/diff_new_pack.SvuHtS/_new 2023-12-21 23:38:27.318191705 +0100
@@ -19,13 +19,12 @@
%global pkg_name old-time
%global pkgver %{pkg_name}-%{version}
Name: ghc-%{pkg_name}
-Version: 1.1.0.3
+Version: 1.1.0.4
Release: 0
Summary: Time library
License: BSD-3-Clause
URL: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{ve…
-Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-base-devel
BuildRequires: ghc-base-prof
@@ -68,7 +67,6 @@
%prep
%autosetup -n %{pkg_name}-%{version}
-cp -p %{SOURCE1} %{pkg_name}.cabal
%build
%ghc_lib_build
++++++ old-time-1.1.0.3.tar.gz -> old-time-1.1.0.4.tar.gz ++++++
++++ 4369 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/old-time-1.1.0.3/changelog.md new/old-time-1.1.0.4/changelog.md
--- old/old-time-1.1.0.3/changelog.md 2014-11-21 11:44:17.000000000 +0100
+++ new/old-time-1.1.0.4/changelog.md 2001-09-09 03:46:40.000000000 +0200
@@ -1,5 +1,10 @@
# Changelog for [`old-time` package](http://hackage.haskell.org/package/old-time)
+## 1.1.0.4 *Dec 2023*
+
+ * Add `build-tools: hsc2hs` to `old-time.cabal` for compilation with GHC 8.
+ Fixes [issue #12](https://github.com/haskell/old-time/issues/12)
+
## 1.1.0.3 *Nov 2014*
* Decoupled from GHC distribution
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/old-time-1.1.0.3/include/HsTimeConfig.h.in new/old-time-1.1.0.4/include/HsTimeConfig.h.in
--- old/old-time-1.1.0.3/include/HsTimeConfig.h.in 2014-11-21 11:44:17.000000000 +0100
+++ new/old-time-1.1.0.4/include/HsTimeConfig.h.in 2001-09-09 03:46:40.000000000 +0200
@@ -23,12 +23,12 @@
/* Define to 1 if you have the `localtime_r' function. */
#undef HAVE_LOCALTIME_R
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
+/* Define to 1 if you have the <stdio.h> header file. */
+#undef HAVE_STDIO_H
+
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
@@ -85,10 +85,13 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
-/* Define to 1 if you have the ANSI C header files. */
+/* Define to 1 if all of the C90 standard headers exist (not just the ones
+ required in a freestanding environment). This macro is provided for
+ backward compatibility; new code need not use it. */
#undef STDC_HEADERS
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. This
+ macro is obsolete. */
#undef TIME_WITH_SYS_TIME
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/old-time-1.1.0.3/old-time.cabal new/old-time-1.1.0.4/old-time.cabal
--- old/old-time-1.1.0.3/old-time.cabal 2014-11-21 11:44:17.000000000 +0100
+++ new/old-time-1.1.0.4/old-time.cabal 2001-09-09 03:46:40.000000000 +0200
@@ -1,14 +1,14 @@
+cabal-version: >=1.10
name: old-time
-version: 1.1.0.3
+version: 1.1.0.4
-- NOTE: Don't forget to update ./changelog.md
license: BSD3
license-file: LICENSE
-maintainer: libraries(a)haskell.org
+maintainer: https://github.com/haskell/old-time
bug-reports: https://github.com/haskell/old-time/issues
synopsis: Time library
category: System
build-type: Configure
-cabal-Version: >=1.10
description:
This package provides the old time library.
.
@@ -16,6 +16,20 @@
<http://hackage.haskell.org/package/time time library>
is recommended.
+tested-with:
+ GHC == 9.6.2
+ GHC == 9.4.5
+ GHC == 9.2.8
+ GHC == 9.0.2
+ GHC == 8.10.7
+ GHC == 8.8.4
+ GHC == 8.6.5
+ GHC == 8.4.4
+ GHC == 8.2.2
+ GHC == 8.0.2
+ GHC == 7.10.3
+ GHC == 7.8.4
+
extra-source-files:
aclocal.m4
changelog.md
@@ -53,7 +67,9 @@
HsTime.h
build-depends:
- base >= 4.7 && < 4.9,
+ base >= 4.7 && < 5,
old-locale == 1.0.*
+ build-tools: hsc2hs
+
ghc-options: -Wall
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-commonmark for openSUSE:Factory checked in at 2023-12-21 23:38:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-commonmark (Old)
and /work/SRC/openSUSE:Factory/.ghc-commonmark.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-commonmark"
Thu Dec 21 23:38:11 2023 rev:15 rq:1134293 version:0.2.4.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-commonmark/ghc-commonmark.changes 2023-11-08 22:17:57.191669767 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-commonmark.new.1840/ghc-commonmark.changes 2023-12-21 23:38:21.461978143 +0100
@@ -1,0 +2,24 @@
+Mon Dec 11 19:49:15 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update commonmark to version 0.2.4.1.
+ ## 0.2.4.1
+
+ * Commonmark.Html: Add `aria-hidden`, `d`, and `viewBox` to allowed attributes list.
+
+ * Correctly merge list blanks with non-list blanks (#133, Michael Howell).
+
+ * Do not look for backslashed hard breaks in link titles (#130, Michael Howell).
+
+ * Work around ghc bug with `-K` RTS options, to set the stack space properly
+ for tests (#129). See https://gitlab.haskell.org/ghc/ghc/-/issues/10445.
+
+ * Revert block state completely if lazy line (#126). This fixes an issue with
+ lazily-wrapped footnotes.
+
+ * Avoid adding trailing newline to list block if it's already there
+ (Michael Howell). This fixes tight/loose classification in a few
+ cases.
+
+ * Fix incorrectly parsing links with nested `[]` (Michael Howell).
+
+-------------------------------------------------------------------
Old:
----
commonmark-0.2.4.tar.gz
New:
----
commonmark-0.2.4.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-commonmark.spec ++++++
--- /var/tmp/diff_new_pack.EfvFii/_old 2023-12-21 23:38:22.950032408 +0100
+++ /var/tmp/diff_new_pack.EfvFii/_new 2023-12-21 23:38:22.970033138 +0100
@@ -20,7 +20,7 @@
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 0.2.4
+Version: 0.2.4.1
Release: 0
Summary: Pure Haskell commonmark parser
License: BSD-3-Clause
++++++ commonmark-0.2.4.tar.gz -> commonmark-0.2.4.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/commonmark-0.2.4/changelog.md new/commonmark-0.2.4.1/changelog.md
--- old/commonmark-0.2.4/changelog.md 2001-09-09 03:46:40.000000000 +0200
+++ new/commonmark-0.2.4.1/changelog.md 2001-09-09 03:46:40.000000000 +0200
@@ -1,5 +1,25 @@
# Changelog for commonmark
+## 0.2.4.1
+
+ * Commonmark.Html: Add `aria-hidden`, `d`, and `viewBox` to allowed attributes list.
+
+ * Correctly merge list blanks with non-list blanks (#133, Michael Howell).
+
+ * Do not look for backslashed hard breaks in link titles (#130, Michael Howell).
+
+ * Work around ghc bug with `-K` RTS options, to set the stack space properly
+ for tests (#129). See https://gitlab.haskell.org/ghc/ghc/-/issues/10445.
+
+ * Revert block state completely if lazy line (#126). This fixes an issue with
+ lazily-wrapped footnotes.
+
+ * Avoid adding trailing newline to list block if it's already there
+ (Michael Howell). This fixes tight/loose classification in a few
+ cases.
+
+ * Fix incorrectly parsing links with nested `[]` (Michael Howell).
+
## 0.2.4
* Do not parse hard line breaks in fenced codeblock info (#116,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/commonmark-0.2.4/commonmark.cabal new/commonmark-0.2.4.1/commonmark.cabal
--- old/commonmark-0.2.4/commonmark.cabal 2001-09-09 03:46:40.000000000 +0200
+++ new/commonmark-0.2.4.1/commonmark.cabal 2001-09-09 03:46:40.000000000 +0200
@@ -1,6 +1,6 @@
cabal-version: 2.2
name: commonmark
-version: 0.2.4
+version: 0.2.4.1
synopsis: Pure Haskell commonmark parser.
description:
This library provides the core data types and functions
@@ -89,7 +89,7 @@
main-is: test-commonmark.hs
hs-source-dirs:
test
- ghc-options: -threaded -rtsopts -with-rtsopts=-K40K
+ ghc-options: -threaded -rtsopts -with-rtsopts=-K40K -with-rtsopts=-kc40K
if impl(ghc >= 8.10)
ghc-options: -Wunused-packages
build-depends:
@@ -112,7 +112,7 @@
, base >= 4.9 && < 5
, text
, tasty-bench
- ghc-options: -threaded -rtsopts -with-rtsopts=-K10K
+ ghc-options: -threaded -rtsopts -with-rtsopts=-K10K -with-rtsopts=-kc10K
if impl(ghc >= 8.10)
ghc-options: -Wunused-packages
default-language: Haskell2010
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/commonmark-0.2.4/src/Commonmark/Blocks.hs new/commonmark-0.2.4.1/src/Commonmark/Blocks.hs
--- old/commonmark-0.2.4/src/Commonmark/Blocks.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/commonmark-0.2.4.1/src/Commonmark/Blocks.hs 2001-09-09 03:46:40.000000000 +0200
@@ -70,6 +70,7 @@
import qualified Data.Text.Read as TR
import Data.Tree
import Text.Parsec
+import Data.List (sort)
mkBlockParser
:: (Monad m, IsBlock il bl)
@@ -135,6 +136,8 @@
_ -> False }
-- close unmatched blocks
+ -- but first save state so we can revert if we have a lazy line
+ revertState <- getState
if null unmatched
then updateState $ \st -> st{ nodeStack = matched }
-- this update is needed or we lose startpos information
@@ -153,8 +156,9 @@
(do getState >>= guard . maybeLazy
-- lazy line
sp <- getPosition
+ updateState $ const revertState
updateState $ \st -> st{ nodeStack =
- map (addStartPos sp) (unmatched ++ matched) })
+ map (addStartPos sp) (nodeStack st) })
<|>
void (try (blockStart paraSpec))
<|>
@@ -862,7 +866,7 @@
let lidata = fromDyn (blockData cdata)
(ListItemData (BulletList '*')
0 False False)
- let allblanks = concat $ blockBlanks cdata :
+ let allblanks = reverse . sort . concat $ blockBlanks cdata :
map (blockBlanks . rootLabel)
(filter ((== "List") . blockType .
blockSpec . rootLabel) children)
@@ -940,7 +944,11 @@
blockBlanks' <- case childrenData of
c:_ | listItemBlanksAtEnd c -> do
curline <- sourceLine <$> getPosition
- return $! curline - 1 : blockBlanks cdata
+ return $! case blockBlanks cdata of
+ lb:b | lb == curline - 1 ->
+ lb:b
+ b ->
+ curline - 1 : b
_ -> return $! blockBlanks cdata
let ldata' = toDyn (ListData lt ls)
-- need to transform paragraphs on tight lists
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/commonmark-0.2.4/src/Commonmark/Html.hs new/commonmark-0.2.4.1/src/Commonmark/Html.hs
--- old/commonmark-0.2.4/src/Commonmark/Html.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/commonmark-0.2.4.1/src/Commonmark/Html.hs 2001-09-09 03:46:40.000000000 +0200
@@ -207,6 +207,7 @@
, "allowpaymentrequest"
, "allowusermedia"
, "alt"
+ , "aria-hidden"
, "as"
, "async"
, "autocapitalize"
@@ -225,6 +226,7 @@
, "controls"
, "coords"
, "crossorigin"
+ , "d"
, "data"
, "datetime"
, "decoding"
@@ -405,6 +407,7 @@
, "updateviacache"
, "usemap"
, "value"
+ , "viewBox"
, "width"
, "workertype"
, "wrap"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/commonmark-0.2.4/src/Commonmark/Inlines.hs new/commonmark-0.2.4.1/src/Commonmark/Inlines.hs
--- old/commonmark-0.2.4/src/Commonmark/Inlines.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/commonmark-0.2.4.1/src/Commonmark/Inlines.hs 2001-09-09 03:46:40.000000000 +0200
@@ -686,6 +686,14 @@
opents /= closets
delimsMatch _ _ = False
+-- check for balanced `[]` brackets
+bracketChunkToNumber :: Chunk a -> Int
+bracketChunkToNumber (Chunk Delim{ delimType = '[' } _ _) = 1
+bracketChunkToNumber (Chunk Delim{ delimType = ']' } _ _) = -1
+bracketChunkToNumber _ = 0
+bracketMatchedCount :: [Chunk a] -> Int
+bracketMatchedCount chunksinside = sum $ map bracketChunkToNumber chunksinside
+
processBrackets :: IsInline a
=> [BracketedSpec a] -> ReferenceMap -> [Chunk a] -> [Chunk a]
processBrackets bracketedSpecs rm xs =
@@ -783,7 +791,7 @@
suffixPos = incSourceColumn closePos 1
- in case parse
+ in case (bracketMatchedCount chunksinside, parse
(withRaw
(do setPosition suffixPos
(spec, constructor) <- choice $
@@ -791,13 +799,13 @@
specs
pos <- getPosition
return (spec, constructor, pos)))
- "" suffixToks of
- Left _ -> -- match but no link/image
+ "" suffixToks) of
+ (0, Left _) -> -- match but no link/image
processBs bracketedSpecs
st{ leftCursor = moveLeft (leftCursor st)
, rightCursor = fixSingleQuote $
moveRight (rightCursor st) }
- Right ((spec, constructor, newpos), desttoks) ->
+ (0, Right ((spec, constructor, newpos), desttoks)) ->
let left' = case bracketedPrefix spec of
Just _ -> moveLeft left
Nothing -> left
@@ -854,6 +862,16 @@
(chunkPos opener)
$ stackBottoms st
}
+ -- Bracket matched count /= 0
+ --
+ -- Links § 6.3 ¶ 2 • 2
+ -- Brackets are allowed in the link text only if (a) they are
+ -- backslash-escaped or (b) they appear as a matched pair of
+ -- brackets, with an open bracket [, a sequence of zero or more
+ -- inlines, and a close bracket ].
+ _ ->
+ processBs bracketedSpecs
+ st{ leftCursor = moveLeft left }
(_, Just (Chunk Delim{ delimType = ']' } _ _))
@@ -954,7 +972,7 @@
inbetween :: Monad m => Char -> Char -> ParsecT [Tok] s m [Tok]
inbetween op cl =
try $ between (symbol op) (symbol cl)
- (many (pEscaped <|> noneOfToks [Symbol op, Symbol cl]))
+ (many (pEscapedSymbol <|> noneOfToks [Symbol op, Symbol cl]))
pLinkLabel :: Monad m => ParsecT [Tok] s m Text
pLinkLabel = try $ do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/commonmark-0.2.4/test/regression.md new/commonmark-0.2.4.1/test/regression.md
--- old/commonmark-0.2.4/test/regression.md 2001-09-09 03:46:40.000000000 +0200
+++ new/commonmark-0.2.4.1/test/regression.md 2001-09-09 03:46:40.000000000 +0200
@@ -219,3 +219,91 @@
<pre><code class="language-\">x
</code></pre>
````````````````````````````````
+
+Issue #119
+```````````````````````````````` example
+[[]](https://haskell.org)
+
+[[][]](https://haskell.org)
+
+[[[][]](https://haskell.org)
+
+[[][][]](https://haskell.org)
+.
+<p><a href="https://haskell.org">[]</a></p>
+<p><a href="https://haskell.org">[][]</a></p>
+<p>[<a href="https://haskell.org">[][]</a></p>
+<p><a href="https://haskell.org">[][][]</a></p>
+````````````````````````````````
+
+Issue #122
+```````````````````````````````` example
+* x
+* -
+
+
+Test
+.
+<ul>
+<li>x</li>
+<li><ul>
+<li></li>
+</ul></li>
+</ul>
+<p>Test</p>
+````````````````````````````````
+
+Issue #130
+```````````````````````````````` example
+[my-link]: https://example.com "\
+"
+[my-link]
+.
+<p><a href="https://example.com" title="\
+">my-link</a></p>
+````````````````````````````````
+
+```````````````````````````````` example
+[my-link](https://example.com "\
+")
+.
+<p><a href="https://example.com" title="\
+">my-link</a></p>
+````````````````````````````````
+
+
+Issue #133
+```````````````````````````````` example
+ * * xx
+
+ * yy
+
+ zz
+.
+<ul>
+<li><ul>
+<li><p>xx</p>
+<ul>
+<li>yy</li>
+</ul></li>
+</ul>
+<p>zz</p></li>
+</ul>
+````````````````````````````````
+
+```````````````````````````````` example
+ * * xx
+ * yy
+
+ zz
+.
+<ul>
+<li><ul>
+<li>xx
+<ul>
+<li>yy</li>
+</ul></li>
+</ul>
+<p>zz</p></li>
+</ul>
+````````````````````````````````
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rpmlint for openSUSE:Factory checked in at 2023-12-21 23:38:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rpmlint (Old)
and /work/SRC/openSUSE:Factory/.rpmlint.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rpmlint"
Thu Dec 21 23:38:06 2023 rev:464 rq:1134284 version:2.5.0+git20231220.9e24b84
Changes:
--------
--- /work/SRC/openSUSE:Factory/rpmlint/rpmlint.changes 2023-12-15 21:47:36.830883919 +0100
+++ /work/SRC/openSUSE:Factory/.rpmlint.new.1840/rpmlint.changes 2023-12-21 23:38:16.573799883 +0100
@@ -1,0 +2,7 @@
+Wed Dec 20 15:15:38 UTC 2023 - filippo.bonazzi(a)suse.com
+
+- Update to version 2.5.0+git20231220.9e24b84:
+ * cron-whitelist: update cronie-anacron digest (bsc#1218107)
+ * SUIDPermissionsCheck: fix broken warnings and harmonize code
+
+-------------------------------------------------------------------
Old:
----
rpmlint-2.5.0+git20231214.5f62def.tar.xz
New:
----
rpmlint-2.5.0+git20231220.9e24b84.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rpmlint.spec ++++++
--- /var/tmp/diff_new_pack.8Tetge/_old 2023-12-21 23:38:17.509834018 +0100
+++ /var/tmp/diff_new_pack.8Tetge/_new 2023-12-21 23:38:17.509834018 +0100
@@ -23,7 +23,7 @@
%define name_suffix -%{flavor}
%endif
Name: rpmlint%{name_suffix}
-Version: 2.5.0+git20231214.5f62def
+Version: 2.5.0+git20231220.9e24b84
Release: 0
Summary: RPM file correctness checker
License: GPL-2.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.8Tetge/_old 2023-12-21 23:38:17.557835769 +0100
+++ /var/tmp/diff_new_pack.8Tetge/_new 2023-12-21 23:38:17.561835915 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/rpm-software-management/rpmlint.git</param>
- <param name="changesrevision">5f62defe1f3a48f13697a5890030c68357ed68b4</param></service></servicedata>
+ <param name="changesrevision">9e24b84a499bb489472aff1a9f3f77a8227693ab</param></service></servicedata>
(No newline at EOF)
++++++ rpmlint-2.5.0+git20231214.5f62def.tar.xz -> rpmlint-2.5.0+git20231220.9e24b84.tar.xz ++++++
/work/SRC/openSUSE:Factory/rpmlint/rpmlint-2.5.0+git20231214.5f62def.tar.xz /work/SRC/openSUSE:Factory/.rpmlint.new.1840/rpmlint-2.5.0+git20231220.9e24b84.tar.xz differ: char 15, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cronie for openSUSE:Factory checked in at 2023-12-21 23:38:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cronie (Old)
and /work/SRC/openSUSE:Factory/.cronie.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cronie"
Thu Dec 21 23:38:05 2023 rev:89 rq:1127725 version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/cronie/cronie.changes 2022-12-24 14:52:06.315566389 +0100
+++ /work/SRC/openSUSE:Factory/.cronie.new.1840/cronie.changes 2023-12-21 23:38:14.065708419 +0100
@@ -1,0 +2,21 @@
+Sat Nov 11 15:17:43 UTC 2023 - Andrea Manzini <andrea.manzini(a)suse.com>
+
+- Update to 1.7.0:
+ * anacron: Add support for NO_MAIL_OUTPUT environment variable
+ * anacron: Support enabling anacron jobs on battery power
+ * crond: Support -n crontab entry option to disable mailing the output
+ * crontab: Make a backup of the crontab file on edition and deletion
+- Add patch cronie-pam_config-nonlogin.diff
+- Refreshed patches:
+ * cronie-crond_pid.diff
+ * cronie-pam_config.diff
+ * cronie-nheader_lines.diff
+ * fix-manpage-replace-anacrontab-with-crontab.patch
+
+-------------------------------------------------------------------
+Fri Mar 31 13:54:41 UTC 2023 - Michal Koutný <mkoutny(a)suse.com>
+
+- PAM: Use common-session-nonlogin for >15 codestreams
+ More info in https://github.com/SUSE/pam-config/pull/16
+
+-------------------------------------------------------------------
Old:
----
cronie-1.6.1.tar.gz
New:
----
cronie-1.7.0.tar.gz
cronie-pam_config-nonlogin.diff
BETA DEBUG BEGIN:
New: * crontab: Make a backup of the crontab file on edition and deletion
- Add patch cronie-pam_config-nonlogin.diff
- Refreshed patches:
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cronie.spec ++++++
--- /var/tmp/diff_new_pack.OYN21b/_old 2023-12-21 23:38:15.413757579 +0100
+++ /var/tmp/diff_new_pack.OYN21b/_new 2023-12-21 23:38:15.413757579 +0100
@@ -1,7 +1,7 @@
#
# spec file for package cronie
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -22,7 +22,7 @@
%define _fillupdir %{_localstatedir}/adm/fillup-templates
%endif
Name: cronie
-Version: 1.6.1
+Version: 1.7.0
Release: 0
Summary: Cron Daemon
License: BSD-3-Clause AND GPL-2.0-only AND MIT
@@ -46,6 +46,8 @@
# PATCH-FIX-SUSE the first occurance of "/etc/anacrontab" was replaced by "/etc/crontab"
# in manpage file because the /etc/crontab is still used in SUSE.
Patch13: fix-manpage-replace-anacrontab-with-crontab.patch
+# PATCH-FEATURE-OPENSUSE user common-session-nonlogin
+Patch14: cronie-pam_config-nonlogin.diff
BuildRequires: audit-devel
BuildRequires: autoconf
BuildRequires: automake
@@ -104,6 +106,9 @@
%patch5 -p1
cp %{SOURCE7} ./cron_to_cronie.README
%patch13 -p1
+%if 0%{?suse_version} > 1500
+%patch14 -p1
+%endif
%build
# fill macro CRON_VERSION it is used in top three lines of crontab file,should be reworked
++++++ cronie-1.6.1.tar.gz -> cronie-1.7.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/.packit.yaml new/cronie-cronie-1.7.0/.packit.yaml
--- old/cronie-cronie-1.6.1/.packit.yaml 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/.packit.yaml 2023-10-13 10:59:54.000000000 +0200
@@ -12,3 +12,6 @@
- cronie.spec
- .packit.yaml
upstream_package_name: cronie
+srpm_build_deps:
+- gcc
+- systemd
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/ChangeLog new/cronie-cronie-1.7.0/ChangeLog
--- old/cronie-cronie-1.6.1/ChangeLog 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/ChangeLog 2023-10-13 10:59:54.000000000 +0200
@@ -1,3 +1,115 @@
+2023-10-13 Tomas Mraz <tmraz(a)fedoraproject.org>
+
+ * anacron: Use xclose() instead of fclose()
+ When replacing standard descriptors we use
+ xclose() elsewhere and it is less error-prone.
+
+2023-09-28 Alexander Schwinn <alexxcons(a)xfce.org>
+
+ * Show error when step size is out of bound
+
+2023-09-28 Alexander Schwinn <alexxcons(a)xfce.org>
+
+ * Rename variables in 'get_range' to make code more readable
+
+2023-09-17 Jonathan Kamens <jik(a)kamens.us>
+
+ * Explain how to do skip values for non-multiples of the time unit
+
+2023-09-07 bwelterl <bwelterl(a)redhat.com>
+
+ * Optimization to close fds from /proc/self/fd in case of high
+ nofile limit after fork
+
+2023-07-25 Tomas Mraz <tmraz(a)fedoraproject.org>
+
+ * cronnext: Round up the start time to whole minute
+
+2023-04-28 lilinjie <lilinjie(a)uniontech.com>
+
+ * fix typo
+
+2023-04-27 Johnny <39348311+JohnnyJayJay(a)users.noreply.github.com>
+
+ * anacron: Add support for NO_MAIL_OUTPUT environment variable
+
+2023-03-29 YoruStar <524413304(a)qq.com>
+
+ * Support reloading with SIGURG in addition to SIGHUP
+
+2023-03-13 Tomas Mraz <tmraz(a)fedoraproject.org>
+
+ * crontab.5: Clarify the evaluation of the step values
+
+2023-02-14 Li kunyu <kunyu(a)nfschina.com>
+
+ * cronie_common.c: Check memory allocation result in expand_envvar() function.
+
+2023-01-12 lilinjie <102012657+uniontech-lilinjie(a)users.noreply.github.com>
+
+ * ChangeLog: fix typos
+
+2023-01-11 lilinjie <102012657+uniontech-lilinjie(a)users.noreply.github.com>
+
+ * CHANGELOG: fix typo
+
+2022-06-17 fgozzini <49639209+fgozzini(a)users.noreply.github.com>
+
+ * Added double quotes
+
+2022-06-15 fgozzini <49639209+fgozzini(a)users.noreply.github.com>
+
+ * Source directly from `/etc/default/anacron`
+
+2022-06-14 fgozzini <49639209+fgozzini(a)users.noreply.github.com>
+
+ * Allow user to run anacron jobs on battery
+ The user can allow running anacron jobs on battery by adding
+ the string `ANACRON_RUN_ON_BATTERY_POWER=yes` to the
+ file `/etc/default/anacron`.
+
+2022-08-16 Antti Antinoja <antti(a)fennosys.fi>
+
+ * Use _PATH_STDPATH instead of _PATH_DEFPATH
+
+2022-08-24 Christopher Odenbach <odenbach(a)uni-paderborn.de>
+
+ * do not put <> in quotation marks
+
+2022-08-23 Christopher Odenbach <odenbach(a)uni-paderborn.de>
+
+ * set the return-path hard to "<>"
+
+2022-09-26 Ondřej Pohořelský <opohorel(a)redhat.com>
+
+ * Add -n option for crontab entries
+ The -n option causes no mail to be sent
+ when the command finishes successfully.
+
+2022-12-16 iTrooz <itrooz(a)protonmail.com>
+
+ * Make a backup of the crontab file on edition and deletion
+
+2022-12-23 iTrooz <itrooz(a)protonmail.com>
+
+ * use packit srpm_build_deps key
+
+2022-12-16 Masanari Iida <standby24x7(a)gmail.com>
+
+ * man: Fix some spelling typos in anacron.8 and cronnext.1
+
+2022-12-12 lilinjie <lilinjie(a)uniontech.com>
+
+ * fix spelling error
+
+2022-08-31 Daniel M. Capella <polyzen(a)users.noreply.github.com>
+
+ * Remove excess comma
+
+2022-04-25 Tomas Mraz <tmraz(a)fedoraproject.org>
+
+ * Release version 1.6.1
+
2022-03-23 w30023233 <wangyuhang27(a)huawei.com>
* Fix regression in handling 1-5 crontab entries
@@ -1206,7 +1318,7 @@
2011-05-26 Marcela Mašláňová <mmaslano(a)redhat.com>
- * man/cron.8, man/crontab.1: Change of email adress of cluster
+ * man/cron.8, man/crontab.1: Change of email address of cluster
support author.
2011-05-16 Kiyoshi OHGISHI <ohgishi(a)gaia.eonet.ne.jp>
@@ -1595,12 +1707,12 @@
2009-11-27 Marcela Mašláňová <mmaslano(a)redhat.com>
- * cronie.init: Initscript: if unprivileged user stop deamon, it
+ * cronie.init: Initscript: if unprivileged user stop daemon, it
should return 4.
2009-11-27 Marcela Mašláňová <mmaslano(a)redhat.com>
- * cronie.init: Initscript: if unprivileged user restart deamon, it
+ * cronie.init: Initscript: if unprivileged user restart daemon, it
should return 4.
2009-11-05 Guido Trentalancia <guido(a)trentalancia.com>
@@ -1852,7 +1964,7 @@
2009-06-05 Marcela Mašláňová <mmaslano(a)redhat.com>
* src/cron.c, src/do_command.c, src/globals.h: ValidateMailRcpts
- removed for problems when could be enviromental settings exported
+ removed for problems when could be environmental settings exported
under wrong user.
2009-05-29 Marcela Mašláňová <mmaslano(a)redhat.com>
@@ -2341,7 +2453,7 @@
2007-08-24 mmaslano <mmaslano(a)redhat.com>
- * src/funcs.h: Change definiton from popen.c in header file.
+ * src/funcs.h: Change definition from popen.c in header file.
2007-08-24 mmaslano <mmaslano(a)redhat.com>
@@ -2513,7 +2625,7 @@
2007-08-17 mmaslano <mmaslano(a)redhat.com>
- * do_command.c: 'Build enviroment' is set in pam section for better
+ * do_command.c: 'Build environment' is set in pam section for better
security.
2007-08-17 mmaslano <mmaslano(a)redhat.com>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/NEWS new/cronie-cronie-1.7.0/NEWS
--- old/cronie-cronie-1.6.1/NEWS 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/NEWS 2023-10-13 10:59:54.000000000 +0200
@@ -1,5 +1,12 @@
cronie NEWS -- history of user-visible changes.
+Release 1.7.0
+
+* anacron: Add support for NO_MAIL_OUTPUT environment variable
+* anacron: Support enabling anacron jobs on battery power
+* crond: Support -n crontab entry option to disable mailing the output
+* crontab: Make a backup of the crontab file on edition and deletion
+
Release 1.6.1
* crond: Fix regression of handling ranges (x-y) in crontab
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/anacron/global.h new/cronie-cronie-1.7.0/anacron/global.h
--- old/cronie-cronie-1.6.1/anacron/global.h 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/anacron/global.h 2023-10-13 10:59:54.000000000 +0200
@@ -62,6 +62,7 @@
char *ident;
char *command;
char *mailto;
+ int no_mail_output;
int tab_line;
int arg_num;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/anacron/main.c new/cronie-cronie-1.7.0/anacron/main.c
--- old/cronie-cronie-1.6.1/anacron/main.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/anacron/main.c 2023-10-13 10:59:54.000000000 +0200
@@ -209,13 +209,13 @@
/* stdin is already closed */
- if (fclose(stdout)) die_e("Can't close stdout");
+ xclose(STDOUT_FILENO);
/* coverity[leaked_handle] – fd 1 closed automatically */
- xopen(1, "/dev/null", O_WRONLY);
+ xopen(STDOUT_FILENO, "/dev/null", O_WRONLY);
- if (fclose(stderr)) die_e("Can't close stderr");
+ xclose(STDERR_FILENO);
/* coverity[leaked_handle] – fd 2 closed automatically */
- xopen(2, "/dev/null", O_WRONLY);
+ xopen(STDERR_FILENO, "/dev/null", O_WRONLY);
pid = xfork();
if (pid != 0)
@@ -476,7 +476,7 @@
if (sigprocmask(0, NULL, &old_sigmask)) die_e("sigset error");
- if (fclose(stdin)) die_e("Can't close stdin");
+ xclose(STDIN_FILENO);
xopen(STDIN_FILENO, "/dev/null", O_RDONLY);
if (!no_daemon && !testing_only)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/anacron/runjob.c new/cronie-cronie-1.7.0/anacron/runjob.c
--- old/cronie-cronie-1.6.1/anacron/runjob.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/anacron/runjob.c 2023-10-13 10:59:54.000000000 +0200
@@ -166,12 +166,16 @@
run_job(const job_rec *jr)
/* This is called to start the job, after the fork */
{
- /* setup stdout and stderr */
- xclose(1);
- xclose(2);
- if (dup2(jr->output_fd, 1) != 1 || dup2(jr->output_fd, 2) != 2)
- die_e("dup2() error"); /* dup2 also clears close-on-exec flag */
- in_background = 0; /* now, errors will be mailed to the user */
+ /* If mail functionality is not disabled, pipe outputs to temp file */
+ if (!jr->no_mail_output) {
+ /* setup stdout and stderr */
+ xclose(1);
+ xclose(2);
+ if (dup2(jr->output_fd, 1) != 1 || dup2(jr->output_fd, 2) != 2)
+ die_e("dup2() error"); /* dup2 also clears close-on-exec flag */
+ in_background = 0; /* now, errors will be mailed to the user */
+ }
+
if (chdir("/")) die_e("Can't chdir to '/'");
if (sigprocmask(SIG_SETMASK, &old_sigmask, NULL))
@@ -291,6 +295,7 @@
char *mailfrom;
char mailto_expanded[MAX_EMAILSTR];
char mailfrom_expanded[MAX_EMAILSTR];
+ char *no_mail_output;
/* get hostname */
if (gethostname(hostname, 512)) {
@@ -299,62 +304,68 @@
setup_env(jr);
- /* Get the destination email address if set, or current user otherwise */
- mailto = getenv("MAILTO");
- if (mailto == NULL) {
- mailto = username();
- }
- else {
- if (expand_envvar(mailto, mailto_expanded, sizeof(mailto_expanded))) {
- mailto = mailto_expanded;
+ no_mail_output = getenv("NO_MAIL_OUTPUT");
+ jr->no_mail_output = no_mail_output != NULL && *no_mail_output;
+
+ /* Set up email functionality if it isn't disabled */
+ if (!jr->no_mail_output) {
+ /* Get the destination email address if set, or current user otherwise */
+ mailto = getenv("MAILTO");
+ if (mailto == NULL) {
+ mailto = username();
}
else {
- complain("The environment variable 'MAILTO' could not be expanded. The non-expanded value will be used.");
- }
- }
+ if (expand_envvar(mailto, mailto_expanded, sizeof(mailto_expanded))) {
+ mailto = mailto_expanded;
+ }
+ else {
+ complain("The environment variable 'MAILTO' could not be expanded. The non-expanded value will be used.");
+ }
+ }
- /* Get the source email address if set, or current user otherwise */
- mailfrom = getenv("MAILFROM");
- if (mailfrom == NULL) {
- mailfrom = username();
- }
- else {
- if (expand_envvar(mailfrom, mailfrom_expanded, sizeof(mailfrom_expanded))) {
- mailfrom = mailfrom_expanded;
+ /* Get the source email address if set, or current user otherwise */
+ mailfrom = getenv("MAILFROM");
+ if (mailfrom == NULL) {
+ mailfrom = username();
}
else {
- complain("The environment variable 'MAILFROM' could not be expanded. The non-expanded value will be used.");
- }
- }
+ if (expand_envvar(mailfrom, mailfrom_expanded, sizeof(mailfrom_expanded))) {
+ mailfrom = mailfrom_expanded;
+ }
+ else {
+ complain("The environment variable 'MAILFROM' could not be expanded. The non-expanded value will be used.");
+ }
+ }
- /* create temporary file for stdout and stderr of the job */
- temp_file(jr); fd = jr->output_fd;
- /* write mail header */
- xwrite(fd, "From: ");
- xwrite(fd, "Anacron <");
- xwrite(fd, mailfrom);
- xwrite(fd, ">\n");
- xwrite(fd, "To: ");
- xwrite(fd, mailto);
- xwrite(fd, "\n");
- xwrite(fd, "MIME-Version: 1.0\n");
- xwrite(fd, "Content-Type: text/plain; charset=\"");
- xwrite(fd, nl_langinfo(CODESET));
- xwrite(fd, "\"\n");
- xwrite(fd, "Content-Transfer-Encoding: 8bit\n");
- xwrite(fd, "Subject: Anacron job '");
- xwrite(fd, jr->ident);
- xwrite(fd, "' on ");
- xwrite(fd, hostname);
- xwrite(fd, "\n\n");
-
- if (*mailto == '\0')
- jr->mailto = NULL;
- else
- /* ugly but works without strdup() */
- jr->mailto = mailto;
+ /* create temporary file for stdout and stderr of the job */
+ temp_file(jr); fd = jr->output_fd;
+ /* write mail header */
+ xwrite(fd, "From: ");
+ xwrite(fd, "Anacron <");
+ xwrite(fd, mailfrom);
+ xwrite(fd, ">\n");
+ xwrite(fd, "To: ");
+ xwrite(fd, mailto);
+ xwrite(fd, "\n");
+ xwrite(fd, "MIME-Version: 1.0\n");
+ xwrite(fd, "Content-Type: text/plain; charset=\"");
+ xwrite(fd, nl_langinfo(CODESET));
+ xwrite(fd, "\"\n");
+ xwrite(fd, "Content-Transfer-Encoding: 8bit\n");
+ xwrite(fd, "Subject: Anacron job '");
+ xwrite(fd, jr->ident);
+ xwrite(fd, "' on ");
+ xwrite(fd, hostname);
+ xwrite(fd, "\n\n");
+
+ if (*mailto == '\0')
+ jr->mailto = NULL;
+ else
+ /* ugly but works without strdup() */
+ jr->mailto = mailto;
- jr->mail_header_size = file_size(fd);
+ jr->mail_header_size = file_size(fd);
+ }
pid = xfork();
if (pid == 0)
@@ -379,8 +390,8 @@
update_timestamp(jr);
unlock(jr);
- if (file_size(jr->output_fd) > jr->mail_header_size) mail_output = 1;
- else mail_output = 0;
+
+ mail_output = !jr->no_mail_output && file_size(jr->output_fd) > jr->mail_header_size;
m = mail_output ? " (produced output)" : "";
if (WIFEXITED(status) && WEXITSTATUS(status) == 0)
@@ -397,8 +408,11 @@
jr->job_pid = 0;
running_jobs--;
if (mail_output) launch_mailer(jr);
- xclose(jr->output_fd);
- xclose(jr->input_fd);
+ /* output_fd and input_fd are only set if mail functionality is enabled */
+ if (!jr->no_mail_output) {
+ xclose(jr->output_fd);
+ xclose(jr->input_fd);
+ }
}
void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/configure.ac new/cronie-cronie-1.7.0/configure.ac
--- old/cronie-cronie-1.6.1/configure.ac 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/configure.ac 2023-10-13 10:59:54.000000000 +0200
@@ -1,4 +1,4 @@
-AC_INIT([cronie],[1.6.1])
+AC_INIT([cronie],[1.7.0])
AC_CONFIG_HEADERS([config.h])
AC_PREREQ([2.64])
@@ -196,14 +196,14 @@
AC_DEFINE(MAILARG,"/usr/sbin/sendmail",[There will be path to sendmail.])
-AC_DEFINE(MAILFMT,"%s -FCronDaemon -i -odi -oem -oi -t -f %s",
+AC_DEFINE(MAILFMT,"%s -FCronDaemon -i -odi -oem -oi -t -f <>",
[-i = don't terminate on "." by itself
-Fx = Set full-name of sender
-odi = Option Deliverymode Interactive
-oem = Option Errors Mailedtosender
-oi = Ignore "." alone on a line
-t = Get recipient from headers
--f %s = Envelope sender address
+-f <> = Empty envelope sender address
-d = undocumented but common flag.])
AC_DEFINE(SYSLOG,1,[Using syslog for log messages.])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/contrib/0anacron new/cronie-cronie-1.7.0/contrib/0anacron
--- old/cronie-cronie-1.6.1/contrib/0anacron 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/contrib/0anacron 2023-10-13 10:59:54.000000000 +0200
@@ -7,19 +7,26 @@
exit 0
fi
-# Do not run jobs when on battery power
-online=1
-for psupply in /sys/class/power_supply/* ; do
- if [ `cat "$psupply/type" 2>/dev/null`x = Mainsx ] && [ -f "$psupply/online" ]; then
- if [ `cat "$psupply/online" 2>/dev/null`x = 1x ]; then
- online=1
- break
- else
- online=0
+# Check whether run on battery should be allowed
+. /etc/default/anacron
+
+if [ "$ANACRON_RUN_ON_BATTERY_POWER" != "yes" ]; then
+
+ # Do not run jobs when on battery power
+ online=1
+ for psupply in /sys/class/power_supply/* ; do
+ if [ `cat "$psupply/type" 2>/dev/null`x = Mainsx ] && [ -f "$psupply/online" ]; then
+ if [ `cat "$psupply/online" 2>/dev/null`x = 1x ]; then
+ online=1
+ break
+ else
+ online=0
+ fi
fi
+ done
+ if [ $online = 0 ]; then
+ exit 0
fi
-done
-if [ $online = 0 ]; then
- exit 0
+
fi
/usr/sbin/anacron -s
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/contrib/cronie.systemd new/cronie-cronie-1.7.0/contrib/cronie.systemd
--- old/cronie-cronie-1.6.1/contrib/cronie.systemd 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/contrib/cronie.systemd 2023-10-13 10:59:54.000000000 +0200
@@ -5,7 +5,7 @@
[Service]
EnvironmentFile=/etc/sysconfig/crond
ExecStart=/usr/sbin/crond -n $CRONDARGS
-ExecReload=/bin/kill -HUP $MAINPID
+ExecReload=/bin/kill -URG $MAINPID
KillMode=process
Restart=on-failure
RestartSec=30s
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/cronie.spec new/cronie-cronie-1.7.0/cronie.spec
--- old/cronie-cronie-1.6.1/cronie.spec 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/cronie.spec 2023-10-13 10:59:54.000000000 +0200
@@ -5,7 +5,7 @@
Summary: Cron daemon for executing programs at set times
Name: cronie
-Version: 1.6.1
+Version: 1.7.0
Release: 0packit%{?dist}
License: MIT and BSD and ISC and GPLv2+
URL: https://github.com/cronie-crond/cronie
@@ -30,6 +30,7 @@
BuildRequires: gcc
BuildRequires: systemd
+BuildRequires: make
Obsoletes: %{name}-sysvinit
Requires(post): coreutils sed
@@ -78,7 +79,7 @@
extra features.
%prep
-%setup -q
+%autosetup -p1
%build
./autogen.sh
@@ -100,10 +101,10 @@
--enable-pie \
--enable-relro
-make %{?_smp_mflags} V=2
+%make_build V=2
%install
-make install DESTDIR=$RPM_BUILD_ROOT DESTMAN=$RPM_BUILD_ROOT%{_mandir}
+%make_install DESTMAN=$RPM_BUILD_ROOT%{_mandir}
mkdir -pm700 $RPM_BUILD_ROOT%{_localstatedir}/spool/cron
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/
mkdir -pm755 $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/
@@ -209,10 +210,16 @@
%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/cron.d/dailyjobs
%changelog
-* Mon Apr 25 2022 Packit <packit(a)packit.dev> - 1.6.1-0packit
+* Mon Apr 25 2022 Packit <packit(a)packit.dev> - 1.7.0-0packit
- Packit build
-* Thu Oct 31 2019 Tomáš Mráz <tmraz(a)redhat.com> - 1.5.5-1
+* Mon Mar 29 2021 Tomáš Mráz <tmraz(a)fedoraproject.org> - 1.5.7-1
+- new upstream release 1.5.7 with bug fixes and enhancements
+
+* Wed Mar 17 2021 Tomáš Mráz <tmraz(a)fedoraproject.org> - 1.5.6-1
+- new upstream release 1.5.6 with bug fixes and enhancements
+
+** Thu Oct 31 2019 Tomáš Mráz <tmraz(a)redhat.com> - 1.5.5-1
- new upstream release 1.5.5 with multiple bug fixes and improvements
* Wed Jul 24 2019 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.5.4-2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/cronie_common.c new/cronie-cronie-1.7.0/cronie_common.c
--- old/cronie-cronie-1.6.1/cronie_common.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/cronie_common.c 2023-10-13 10:59:54.000000000 +0200
@@ -107,6 +107,9 @@
}
envvar_name = malloc(envvar_name_size + 1);
+ if (envvar_name == NULL)
+ goto too_big;
+
strncpy(envvar_name, envvar_p, envvar_name_size);
envvar_name[envvar_name_size] = '\0';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/man/anacron.8 new/cronie-cronie-1.7.0/man/anacron.8
--- old/cronie-cronie-1.6.1/man/anacron.8 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/man/anacron.8 2023-10-13 10:59:54.000000000 +0200
@@ -184,7 +184,7 @@
Anacron uses up to two file descriptors for each active job. It may run
out of descriptors if there are lots of active jobs. See
.B echo $(($(ulimit -n) / 2))
-for information how many concurent jobs anacron may run.
+for information how many concurrent jobs anacron may run.
.PP
Mail comments, suggestions and bug reports to
.MT shaleh@\:(debian.\:org|\:valinux.\:com)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/man/anacrontab.5 new/cronie-cronie-1.7.0/man/anacrontab.5
--- old/cronie-cronie-1.6.1/man/anacrontab.5 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/man/anacrontab.5 2023-10-13 10:59:54.000000000 +0200
@@ -81,6 +81,10 @@
.I MAILTO
variables are expanded, so setting them as in the following example works as expected: MAILFROM=cron-$USER(a)cron.com ($USER is replaced by the system user) )
.PP
+If
+.I NO_MAIL_OUTPUT
+is defined (and non-empty), the standard output and error descriptors of job processes are not redirected and e-mailed.
+.PP
.PP
Empty lines are either blank lines, line containing white spaces only, or
lines with white spaces followed by a '#' followed by an arbitrary
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/man/cron.8 new/cronie-cronie-1.7.0/man/cron.8
--- old/cronie-cronie-1.6.1/man/cron.8 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/man/cron.8 2023-10-13 10:59:54.000000000 +0200
@@ -189,7 +189,7 @@
to send the job output to the system log using
.BR syslog (3).
This is useful if your system does not have
-.BR sendmail (8),
+.BR sendmail (8)
installed or if mail is disabled.
.TP
.B "\-x"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/man/cronnext.1 new/cronie-cronie-1.7.0/man/cronnext.1
--- old/cronie-cronie-1.6.1/man/cronnext.1 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/man/cronnext.1 2023-10-13 10:59:54.000000000 +0200
@@ -35,7 +35,7 @@
Do not consider the system crontab, usually the
.I /etc/crontab
file. The system crontab usually contains the hourly, daily, weekly and
-montly crontabs, which might be better dealt with
+monthly crontabs, which might be better dealt with
.BR anacron (8).
.TP
.BI \-a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/man/crontab.1 new/cronie-cronie-1.7.0/man/crontab.1
--- old/cronie-cronie-1.6.1/man/crontab.1 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/man/crontab.1 2023-10-13 10:59:54.000000000 +0200
@@ -119,6 +119,19 @@
.I NO_COLOR
is set.
.PP
+On edition or deletion of the crontab, a backup of the last crontab will be saved to
+.I $XDG_CACHE_HOME/crontab/crontab.bak
+or
+.I $XDG_CACHE_HOME/crontab/crontab.<user>.bak
+if
+.B -u
+is used.
+If the
+.I XDG_CACHE_HOME
+environment variable is not set,
+.I $HOME/.cache
+will be used instead.
+.PP
.SH "OPTIONS"
.TP
.B "\-u"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/man/crontab.5 new/cronie-cronie-1.7.0/man/crontab.5
--- old/cronie-cronie-1.6.1/man/crontab.5 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/man/crontab.5 2023-10-13 10:59:54.000000000 +0200
@@ -223,7 +223,10 @@
execution for every other hour (the alternative in the V7 standard is
"0,\:2,\:4,\:6,\:8,\:10,\:12,\:14,\:16,\:18,\:20,\:22"). Step values are
also permitted after an asterisk, so if specifying a job to be run every
-two hours, you can use "*/2".
+two hours, you can use "*/2". Please note that steps are evaluated just
+within the field they are applied to. For example "*/23" in hours field
+means to execute the job on the hour 0 and the hour 23 within a calendar
+day. See "NOTES" below for a workaround.
.PP
Names can also be used for the 'month' and 'day of week' fields. Use the
first three letters of the particular day or month (case does not
@@ -287,6 +290,20 @@
MAILTO=root
* * * * * root touch /tmp/file
.fi
+.SH NOTES
+As noted above, skip values only operate within the time period they\'re
+attached to. For example, specifying "0/35" for the minute field of a
+crontab entry won\'t cause that entry to be executed every 35 minutes;
+instead, it will be executed twice every hour, at 0 and 35 minutes past.
+For more fine-grained control you can do something like this:
+.nf
+* * * * * if [ $(expr \( $(date +\%s) / 60 \) \% 58) = 0 ]; then echo this runs every 58 minutes; fi
+0 * * * * if [ $(expr \( $(date +\%s) / 3600 \) \% 23) = 0 ]; then echo this runs every 23 hours on the hour; fi
+.fi
+Adjust as needed if your
+.BR date (1)
+command does not accept "+%s" as the format string specifier to output
+the current UNIX timestamp.
.SH SELinux with multi level security (MLS)
In a crontab, it is important to specify a security level by
.I crontab \-s
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/readme.md new/cronie-cronie-1.7.0/readme.md
--- old/cronie-cronie-1.6.1/readme.md 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/readme.md 2023-10-13 10:59:54.000000000 +0200
@@ -7,10 +7,17 @@
And why cronie? [http://www.urbandictionary.com/define.php?term=cronie]
# Download
-Latest released version is 1.6.1.
+Latest released version is 1.7.0.
User visible changes:
+Release 1.7.0
+
+- anacron: Add support for NO_MAIL_OUTPUT environment variable
+- anacron: Support enabling anacron jobs on battery power
+- crond: Support -n crontab entry option to disable mailing the output
+- crontab: Make a backup of the crontab file on edition and deletion
+
Release 1.6.1
- crond: Fix regression of handling ranges (x-y) in crontab
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/cron.c new/cronie-cronie-1.7.0/src/cron.c
--- old/cronie-cronie-1.6.1/src/cron.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/cron.c 2023-10-13 10:59:54.000000000 +0200
@@ -66,10 +66,11 @@
cron_sleep(int, cron_db *),
sigchld_handler(int),
sighup_handler(int ATTRIBUTE_UNUSED),
+sigurg_handler(int ATTRIBUTE_UNUSED),
sigchld_reaper(void),
sigintterm_handler(int ATTRIBUTE_UNUSED), parse_args(int c, char *v[]);
-static volatile sig_atomic_t got_sighup, got_sigchld, got_sigintterm;
+static volatile sig_atomic_t got_sighup, got_sigchld, got_sigintterm, got_sigurg;
static int timeRunning, virtualTime, clockTime;
static long GMToff;
static int DisableInotify;
@@ -151,8 +152,9 @@
#endif
static void handle_signals(cron_db * database) {
- if (got_sighup) {
+ if (got_sighup || got_sigurg) {
got_sighup = 0;
+ got_sigurg = 0;
#if defined WITH_INOTIFY
/* watches must be reinstated on reload */
if (inotify_enabled && (EnableClustering != 1)) {
@@ -179,13 +181,13 @@
fprintf(stderr, "\n");
fprintf(stderr, "Options:\n");
fprintf(stderr, " -h print this message \n");
- fprintf(stderr, " -i deamon runs without inotify support\n");
+ fprintf(stderr, " -i daemon runs without inotify support\n");
fprintf(stderr, " -m <comm> off, or specify preferred client for sending mails\n");
fprintf(stderr, " -n run in foreground\n");
fprintf(stderr, " -f run in foreground, the same as -n\n");
fprintf(stderr, " -p permit any crontab\n");
fprintf(stderr, " -P inherit PATH from environment instead of using default value");
- fprintf(stderr, " of \"%s\"\n", _PATH_DEFPATH);
+ fprintf(stderr, " of \"%s\"\n", _PATH_STDPATH);
fprintf(stderr, " -c enable clustering support\n");
fprintf(stderr, " -s log into syslog instead of sending mails\n");
fprintf(stderr, " -V print version and exit\n");
@@ -243,13 +245,15 @@
sact.sa_handler = sigintterm_handler;
(void) sigaction(SIGINT, &sact, NULL);
(void) sigaction(SIGTERM, &sact, NULL);
+ sact.sa_handler = sigurg_handler;
+ (void) sigaction(SIGURG, &sact, NULL);
acquire_daemonlock(0);
set_cron_uid();
check_spool_dir();
if (ChangePath) {
- if (setenv("PATH", _PATH_DEFPATH, 1) < 0) {
+ if (setenv("PATH", _PATH_STDPATH, 1) < 0) {
log_it("CRON", pid, "DEATH", "can't setenv PATH",
errno);
exit(1);
@@ -664,6 +668,10 @@
got_sigintterm = 1;
}
+static void sigurg_handler(int x ATTRIBUTE_UNUSED) {
+ got_sigurg = 1;
+}
+
static void sigchld_reaper(void) {
WAIT_T waiter;
PID_T pid;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/cronnext.c new/cronie-cronie-1.7.0/src/cronnext.c
--- old/cronie-cronie-1.6.1/src/cronnext.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/cronnext.c 2023-10-13 10:59:54.000000000 +0200
@@ -214,7 +214,7 @@
}
/*
- * find next sheduled job
+ * find the next scheduled job
*/
time_t cronnext(cron_db database,
time_t start, time_t end,
@@ -231,7 +231,7 @@
else if (flags & ALLJOBS)
printf("jobs:\n");
- /* find next sheduled time */
+ /* find the next scheduled time */
closest = -1;
for (u = database.head; u; u = u->next) {
if (include && !matchuser(u->name, include))
@@ -343,7 +343,7 @@
flags = SYSTEM;
endtime = 0;
printjobs = 0;
- start = time(NULL) / 60 * 60;
+ start = (time(NULL) + 59) / 60 * 60;
while (-1 != (opt = getopt(argn, argv, "i:e:ast:q:j:lcfhV"))) {
switch (opt) {
@@ -360,7 +360,7 @@
flags &= ~SYSTEM;
break;
case 't':
- start = atoi(optarg) / 60 * 60;
+ start = (atoi(optarg) + 59) / 60 * 60;
break;
case 'q':
end = atoi(optarg) / 60 * 60;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/crontab.c new/cronie-cronie-1.7.0/src/crontab.c
--- old/cronie-cronie-1.6.1/src/crontab.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/crontab.c 2023-10-13 10:59:54.000000000 +0200
@@ -113,7 +113,7 @@
check_error(const char *), parse_args(int c, char *v[]),
die(int) ATTRIBUTE_NORETURN;
static int replace_cmd(void), hostset_cmd(void), hostget_cmd(void),
-test_cmd(void), check_syntax(FILE *);
+test_cmd(void), check_syntax(FILE *), backup_crontab(const char *);
static char *host_specific_filename(const char *prefix,
const char *suffix);
static const char *tmp_path(void);
@@ -479,16 +479,129 @@
fprintf(stderr, "path too long\n");
exit(ERROR_EXIT);
}
+
+ if (backup_crontab(n) == -1) {
+ fprintf(stderr, "no crontab for %s\n", User);
+ exit(ERROR_EXIT);
+ }
+
if (unlink(n) != 0) {
- if (errno == ENOENT)
- fprintf(stderr, "no crontab for %s\n", User);
- else
- perror(n);
+ perror(n);
exit(ERROR_EXIT);
}
poke_daemon();
}
+/* returns 0 on success
+ * -1 on non existent crontab file
+ * -2 on failure to write the backup file
+ */
+static int backup_crontab(const char *crontab_path) {
+ const char *env_value;
+ char backup_dir[MAX_FNAME], backup_path[MAX_FNAME];
+ int ch = '\0';
+ FILE *crontab_file;
+ FILE *backup_file;
+ struct stat sb;
+ int retval = 0;
+
+ /* create backup directory */
+ if ((env_value = getenv("XDG_CACHE_HOME")) != NULL) {
+ if(!glue_strings(backup_dir, sizeof backup_dir, env_value, "", '\0')){
+ fprintf(stderr, "$XDG_CACHE_HOME path too long\n");
+ return -2;
+ }
+ }
+ else if ((env_value = getenv("HOME")) != NULL) {
+ if (!glue_strings(backup_dir, sizeof backup_dir, env_value,
+ ".cache", '/')) {
+ fprintf(stderr, "$HOME path too long\n");
+ return -2;
+ }
+ }
+ else {
+ fprintf(stderr, "Could not find environment variable XDG_CACHE_HOME or HOME to save the backup\n");
+ return -2;
+ }
+
+ if (!glue_strings(backup_dir, sizeof backup_dir, backup_dir,
+ "crontab", '/')) {
+ fprintf(stderr, "backup path too long\n");
+ return -2;
+ }
+
+ /* create backup file */
+ if (!glue_strings(backup_path, sizeof backup_path, backup_dir,
+ "crontab", '/')) {
+ fprintf(stderr, "backup path too long\n");
+ return -2;
+ }
+
+ if (getuid() != pw->pw_uid) { // verify if -u is used
+ if (!glue_strings(backup_path, sizeof backup_path, backup_path,
+ User, '.')) {
+ fprintf(stderr, "backup path too long\n");
+ return -2;
+ }
+ }
+
+ if (!glue_strings(backup_path, sizeof backup_path, backup_path,
+ "bak", '.')) {
+ fprintf(stderr, "backup path too long\n");
+ return -2;
+ }
+
+ /* perform the backup */
+ if ((crontab_file = fopen(crontab_path, "r")) == NULL) {
+ if (errno != ENOENT) {
+ perror(crontab_path);
+ exit(ERROR_EXIT);
+ }
+ return -1;
+ }
+
+ if (swap_uids() == -1) {
+ perror("swapping uids");
+ exit(ERROR_EXIT);
+ }
+
+ if (stat(backup_dir, &sb) < OK && errno == ENOENT) {
+ if (OK != mkdir(backup_dir, 0755)) {
+ fprintf(stderr, "%s: ", backup_dir);
+ perror("mkdir");
+ retval = -2;
+ goto swapback;
+ }
+ }
+
+ if ((backup_file = fopen(backup_path, "w+")) == NULL) {
+ fprintf(stderr, "Failed to write to the backup file: ");
+ perror(backup_path);
+ retval = -2;
+ goto swapback;
+ }
+
+ swapback:
+ if (swap_uids_back() < OK) {
+ perror("swapping uids back");
+ exit(ERROR_EXIT);
+ }
+
+ if (retval != 0)
+ return retval;
+
+ if (EOF != ch)
+ while (EOF != (ch = get_char(crontab_file)))
+ putc(ch, backup_file);
+
+ (void) fclose(crontab_file);
+ (void) fclose(backup_file);
+
+ printf("Backup of %s's previous crontab saved to %s\n", User, backup_path);
+
+ return 0;
+}
+
static void check_error(const char *msg) {
CheckErrorCount++;
fprintf(stderr, "\"%s\":%d: %s\n", Filename, LineNumber - 1, msg);
@@ -906,6 +1019,9 @@
error = -2;
goto done;
}
+
+ backup_crontab(n);
+
if (rename(TempFilename, n)) {
fprintf(stderr, "%s: error renaming %s to %s\n",
ProgramName, TempFilename, n);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/do_command.c new/cronie-cronie-1.7.0/src/do_command.c
--- old/cronie-cronie-1.6.1/src/do_command.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/do_command.c 2023-10-13 10:59:54.000000000 +0200
@@ -30,6 +30,7 @@
#include <string.h>
#include <sys/wait.h>
#include <unistd.h>
+#include <dirent.h>
#include "externs.h"
#include "funcs.h"
@@ -94,6 +95,7 @@
char mailfrom_expanded[MAX_EMAILSTR];
int children = 0;
pid_t pid = getpid();
+ pid_t jobpid = -1;
struct sigaction sa;
/* Ignore SIGPIPE as we will be writing to pipes and do not want to terminate
@@ -199,7 +201,7 @@
/* fork again, this time so we can exec the user's command.
*/
- switch (fork()) {
+ switch (jobpid = fork()) {
case -1:
log_it("CRON", pid, "CAN'T FORK", "child_process", errno);
return ERROR_EXIT;
@@ -263,10 +265,26 @@
{
char *shell = env_get("SHELL", jobenv);
int fd, fdmax = TMIN(getdtablesize(), MAX_CLOSE_FD);
+ DIR *dir;
+ struct dirent *dent;
- /* close all unwanted open file descriptors */
- for(fd = STDERR + 1; fd < fdmax; fd++) {
- close(fd);
+ /*
+ * if /proc is mounted, we can optimize what fd can be closed,
+ * but if it isn't available, fall back to the previous behavior.
+ */
+ if ((dir = opendir("/proc/self/fd")) != NULL) {
+ while ((dent = readdir(dir)) != NULL) {
+ if (!strcmp(dent->d_name, ".") || !strcmp(dent->d_name, ".."))
+ continue;
+ fd = atoi(dent->d_name);
+ if (fd > STDERR_FILENO)
+ close(fd);
+ }
+ } else {
+ /* close all unwanted open file descriptors */
+ for (fd = STDERR + 1; fd < fdmax; fd++) {
+ close(fd);
+ }
}
#if DEBUGGING
@@ -453,7 +471,7 @@
if (MailCmd[0] == '\0') {
int len;
- len = snprintf(mailcmd, sizeof mailcmd, MAILFMT, MAILARG, mailfrom);
+ len = snprintf(mailcmd, sizeof mailcmd, MAILFMT, MAILARG);
if (len < 0) {
fprintf(stderr, "mailcmd snprintf failed\n");
(void) _exit(ERROR_EXIT);
@@ -552,10 +570,35 @@
}
#endif
}
- /* only close pipe if we opened it -- i.e., we're
- * mailing...
+ /* if -n option was specified, abort the sending
+ * now when we read all of the command output
+ * and thus can wait for it's exit status
*/
+ if (mail && e->flags & MAIL_WHEN_ERR) {
+ int jobstatus = -1;
+ if (jobpid > 0) {
+ while (waitpid(jobpid, &jobstatus, WNOHANG) == -1) {
+ if (errno == EINTR) continue;
+ log_it("CRON", getpid(), "error", "invalid job pid", errno);
+ break;
+ }
+ } else {
+ log_it("CRON", getpid(), "error", "invalid job pid", 0);
+ }
+ /* if everything went well, -n is set, and we have mail,
+ * we won't be mailing – so shoot the messenger!
+ */
+ if (WIFEXITED(jobstatus) && WEXITSTATUS(jobstatus) == EXIT_SUCCESS) {
+ Debug(DPROC, ("[%ld] aborting pipe to mail\n", (long)getpid()));
+ status = cron_pabort(mail);
+ mail = NULL;
+ }
+ }
+
+ /* only close pipe if we opened it -- i.e., we're (still)
+ * mailing...
+ */
if (mail) {
Debug(DPROC, ("[%ld] closing pipe to mail\n", (long) getpid()));
/* Note: the pclose will probably see
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/entry.c new/cronie-cronie-1.7.0/src/entry.c
--- old/cronie-cronie-1.6.1/src/entry.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/entry.c 2023-10-13 10:59:54.000000000 +0200
@@ -376,11 +376,11 @@
char *defpath;
if (ChangePath)
- defpath = _PATH_DEFPATH;
+ defpath = _PATH_STDPATH;
else {
defpath = getenv("PATH");
if (defpath == NULL)
- defpath = _PATH_DEFPATH;
+ defpath = _PATH_STDPATH;
}
if (glue_strings(envstr, sizeof envstr, "PATH", defpath, '=')) {
@@ -417,6 +417,37 @@
Debug(DPARS, ("load_entry()...about to parse command\n"));
+ /* If the first character of the command is '-', it is a cron option. */
+ ch = get_char(file);
+ while (ch == '-') {
+ switch (ch = get_char(file)) {
+ case 'n':
+ /* only allow user to set the option once */
+ if ((e->flags & MAIL_WHEN_ERR) == MAIL_WHEN_ERR) {
+ ecode = e_option;
+ goto eof;
+ }
+ e->flags |= MAIL_WHEN_ERR;
+ break;
+
+ default:
+ ecode = e_option;
+ goto eof;
+ }
+
+ ch = get_char(file);
+ if (ch != '\t' && ch != ' ') {
+ ecode = e_option;
+ goto eof;
+ }
+ Skip_Blanks(ch, file);
+ if (ch == EOF || ch == '\n') {
+ ecode = e_cmd;
+ goto eof;
+ }
+ }
+ unget_char(ch, file);
+
/* Everything up to the next \n or EOF is part of the command...
* too bad we don't know in advance how long it will be, since we
* need to malloc a string for it... so, we limit it to MAX_COMMAND.
@@ -523,29 +554,29 @@
* | [number] "~" [number]
*/
- int ch, i, num1, num2, num3;
+ int ch, i, low_, high_, step;
/* default value for step
*/
- num3 = 1;
+ step = 1;
range_state_t state = R_START;
while (state != R_FINISH && ((ch = get_char(file)) != EOF)) {
switch (state) {
case R_START:
if (ch == '*') {
- num1 = low;
- num2 = high;
+ low_ = low;
+ high_ = high;
state = R_AST;
break;
}
if (ch == '~') {
- num1 = low;
+ low_ = low;
state = R_RANDOM;
break;
}
unget_char(ch, file);
- if (get_number(&num1, low, names, file) != EOF) {
+ if (get_number(&low_, low, names, file) != EOF) {
state = R_NUM1;
break;
}
@@ -564,8 +595,8 @@
case R_STEP:
unget_char(ch, file);
- if (get_number(&num3, 0, PPC_NULL, file) != EOF
- && num3 != 0) {
+ if (get_number(&step, 0, PPC_NULL, file) != EOF
+ && step != 0) {
state = R_TERMS;
break;
}
@@ -588,7 +619,7 @@
break;
}
if (is_separator(ch)) {
- num2 = num1;
+ high_ = low_;
state = R_FINISH;
break;
}
@@ -596,7 +627,7 @@
case R_RANGE:
unget_char(ch, file);
- if (get_number(&num2, low, names, file) != EOF) {
+ if (get_number(&high_, low, names, file) != EOF) {
state = R_RANGE_NUM2;
break;
}
@@ -615,11 +646,11 @@
case R_RANDOM:
if (is_separator(ch)) {
- num2 = high;
+ high_ = high;
state = R_FINISH;
}
else if (unget_char(ch, file),
- get_number(&num2, low, names, file) != EOF) {
+ get_number(&high_, low, names, file) != EOF) {
state = R_TERMS;
}
/* fail if couldn't find match on previous term
@@ -628,12 +659,12 @@
return (EOF);
/* if invalid random range was selected */
- if (num1 > num2)
+ if (low_ > high_)
return (EOF);
- /* select random number in range <num1, num2>
+ /* select random number in range <low_, high_>
*/
- num1 = num2 = random() % (num2 - num1 + 1) + num1;
+ low_ = high_ = random() % (high_ - low_ + 1) + low_;
break;
@@ -646,7 +677,13 @@
if (state != R_FINISH || ch == EOF)
return (EOF);
- for (i = num1; i <= num2; i += num3)
+ /* Make sure the step size makes any sense */
+ if (step > 1 && step > (high_ - low_)) {
+ int max = high_ - low_ > 0 ? high_ - low_ : 1;
+ fprintf(stderr, "Warning: Step size %i higher than possible maximum of %i\n", step, max);
+ }
+
+ for (i = low_; i <= high_; i += step)
if (EOF == set_element(bits, low, high, i)) {
unget_char(ch, file);
return (EOF);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/funcs.h new/cronie-cronie-1.7.0/src/funcs.h
--- old/cronie-cronie-1.6.1/src/funcs.h 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/funcs.h 2023-10-13 10:59:54.000000000 +0200
@@ -67,6 +67,7 @@
swap_uids_back(void),
load_env(char *, FILE *),
env_set_from_environ(char ***envpp),
+ cron_pabort(FILE *),
cron_pclose(FILE *),
glue_strings(char *, size_t, const char *, const char *, char),
strcmp_until(const char *, const char *, char),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/pathnames.h new/cronie-cronie-1.7.0/src/pathnames.h
--- old/cronie-cronie-1.6.1/src/pathnames.h 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/pathnames.h 2023-10-13 10:59:54.000000000 +0200
@@ -53,8 +53,8 @@
# define _PATH_BSHELL "/bin/sh"
#endif
-#ifndef _PATH_DEFPATH
-# define _PATH_DEFPATH "/usr/bin:/bin"
+#ifndef _PATH_STDPATH
+# define _PATH_STDPATH "/usr/bin:/bin:/usr/sbin:/sbin"
#endif
#ifndef _PATH_TMP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/popen.c new/cronie-cronie-1.7.0/src/popen.c
--- old/cronie-cronie-1.6.1/src/popen.c 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/popen.c 2023-10-13 10:59:54.000000000 +0200
@@ -167,7 +167,7 @@
return (iop);
}
-int cron_pclose(FILE * iop) {
+static int cron_finalize(FILE * iop, int sig) {
int fdes;
sigset_t oset, nset;
WAIT_T stat_loc;
@@ -180,7 +180,12 @@
fdes = fileno(iop);
if (pids == NULL || fdes >= fds || pids[fdes] == 0L)
return (-1);
- (void) fclose(iop);
+
+ if (!sig) {
+ (void) fclose(iop);
+ } else if (kill(pids[fdes], sig) == -1) {
+ return -1;
+ }
sigemptyset(&nset);
sigaddset(&nset, SIGINT);
@@ -189,6 +194,28 @@
(void) sigprocmask(SIG_BLOCK, &nset, &oset);
while ((pid = wait(&stat_loc)) != pids[fdes] && pid != -1) ;
(void) sigprocmask(SIG_SETMASK, &oset, NULL);
+
+ if (sig) {
+ (void) fclose(iop);
+ }
pids[fdes] = 0;
- return (pid == -1 ? -1 : WEXITSTATUS(stat_loc));
+
+ if (pid < 0) {
+ return pid;
+ }
+
+ if (WIFEXITED(stat_loc)) {
+ return WEXITSTATUS(stat_loc);
+ } else {
+ return WTERMSIG(stat_loc);
+ }
+}
+
+int cron_pclose(FILE * iop) {
+ return cron_finalize(iop, 0);
+}
+
+int cron_pabort(FILE * iop) {
+ int esig = cron_finalize(iop, SIGKILL);
+ return esig == SIGKILL ? 0 : esig;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cronie-cronie-1.6.1/src/structs.h new/cronie-cronie-1.7.0/src/structs.h
--- old/cronie-cronie-1.6.1/src/structs.h 2022-04-25 14:46:41.000000000 +0200
+++ new/cronie-cronie-1.7.0/src/structs.h 2023-10-13 10:59:54.000000000 +0200
@@ -48,6 +48,7 @@
#define DOW_STAR 0x08
#define WHEN_REBOOT 0x10
#define DONT_LOG 0x20
+#define MAIL_WHEN_ERR 0x40
} entry;
/* the crontab database will be a list of the
++++++ cronie-crond_pid.diff ++++++
--- /var/tmp/diff_new_pack.OYN21b/_old 2023-12-21 23:38:15.517761372 +0100
+++ /var/tmp/diff_new_pack.OYN21b/_new 2023-12-21 23:38:15.521761518 +0100
@@ -1,8 +1,8 @@
-Index: cronie-1.4.4/src/pathnames.h
+Index: cronie-cronie-1.7.0/src/pathnames.h
===================================================================
---- cronie-1.4.4.orig/src/pathnames.h
-+++ cronie-1.4.4/src/pathnames.h
-@@ -41,7 +41,7 @@
+--- cronie-cronie-1.7.0.orig/src/pathnames.h
++++ cronie-cronie-1.7.0/src/pathnames.h
+@@ -45,7 +45,7 @@
# define PIDDIR SYSCONFDIR "/"
# endif
#endif
++++++ cronie-nheader_lines.diff ++++++
--- /var/tmp/diff_new_pack.OYN21b/_old 2023-12-21 23:38:15.533761956 +0100
+++ /var/tmp/diff_new_pack.OYN21b/_new 2023-12-21 23:38:15.533761956 +0100
@@ -43,7 +43,7 @@
while (EOF != (ch = get_char(f))) {
if (colorize) {
if (!in_comment && new_line && ch == '#') {
-@@ -533,7 +549,7 @@ static void edit_cmd(void) {
+@@ -646,7 +662,7 @@ static void edit_cmd(void) {
char n[MAX_FNAME], q[MAX_TEMPSTR];
const char *editor;
FILE *f;
@@ -52,7 +52,7 @@
struct stat statbuf;
struct utimbuf utimebuf;
WAIT_T waiter;
-@@ -585,10 +601,20 @@ static void edit_cmd(void) {
+@@ -698,10 +714,20 @@ static void edit_cmd(void) {
}
Set_LineNum(1);
@@ -76,7 +76,7 @@
/* copy the rest of the crontab (if any) to the temp file.
*/
if (EOF != ch)
-@@ -812,6 +838,7 @@ static int replace_cmd(void) {
+@@ -925,6 +951,7 @@ static int replace_cmd(void) {
int ch, fd;
int error = 0;
uid_t file_owner;
@@ -84,7 +84,7 @@
char *safename;
safename = host_specific_filename("#tmp", "XXXXXXXXXX");
-@@ -839,10 +866,10 @@ static int replace_cmd(void) {
+@@ -952,10 +979,10 @@ static int replace_cmd(void) {
*
* VERY IMPORTANT: make sure NHEADER_LINES agrees with this code.
*/
++++++ cronie-pam_config-nonlogin.diff ++++++
---
pam/crond | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: cronie-cronie-1.7.0/pam/crond
===================================================================
--- cronie-cronie-1.7.0.orig/pam/crond
+++ cronie-cronie-1.7.0/pam/crond
@@ -10,4 +10,4 @@ auth include common-auth
account include common-account
password include common-password
session optional pam_keyinit.so force revoke
-session include common-session
+session include common-session-nonlogin
++++++ cronie-pam_config.diff ++++++
--- /var/tmp/diff_new_pack.OYN21b/_old 2023-12-21 23:38:15.553762685 +0100
+++ /var/tmp/diff_new_pack.OYN21b/_new 2023-12-21 23:38:15.557762831 +0100
@@ -1,7 +1,7 @@
-Index: cronie-cronie-1.5.4/pam/crond
+Index: cronie-cronie-1.7.0/pam/crond
===================================================================
---- cronie-cronie-1.5.4.orig/pam/crond
-+++ cronie-cronie-1.5.4/pam/crond
+--- cronie-cronie-1.7.0.orig/pam/crond
++++ cronie-cronie-1.7.0/pam/crond
@@ -4,8 +4,10 @@
#
# Although no PAM authentication is called, auth modules
++++++ fix-manpage-replace-anacrontab-with-crontab.patch ++++++
--- /var/tmp/diff_new_pack.OYN21b/_old 2023-12-21 23:38:15.577763560 +0100
+++ /var/tmp/diff_new_pack.OYN21b/_new 2023-12-21 23:38:15.581763706 +0100
@@ -9,11 +9,11 @@
man/cron.8 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/man/cron.8 b/man/cron.8
-index 633dbc0..9716f8f 100644
---- a/man/cron.8
-+++ b/man/cron.8
-@@ -53,7 +53,7 @@ for crontab files which are named after accounts in
+Index: cronie-cronie-1.7.0/man/cron.8
+===================================================================
+--- cronie-cronie-1.7.0.orig/man/cron.8
++++ cronie-cronie-1.7.0/man/cron.8
+@@ -56,7 +56,7 @@ for crontab files which are named after
The found crontabs are loaded into the memory.
.I Cron
also searches for
@@ -22,7 +22,4 @@
and any files in the
.I /etc/cron.d
directory, which have a different format (see
---
-1.8.4.5
-
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libnvme for openSUSE:Factory checked in at 2023-12-21 23:38:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libnvme (Old)
and /work/SRC/openSUSE:Factory/.libnvme.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libnvme"
Thu Dec 21 23:38:04 2023 rev:26 rq:1134430 version:1.6+5.g68c6ffb
Changes:
--------
--- /work/SRC/openSUSE:Factory/libnvme/libnvme.changes 2023-12-20 21:00:32.746732975 +0100
+++ /work/SRC/openSUSE:Factory/.libnvme.new.1840/libnvme.changes 2023-12-21 23:38:12.065635482 +0100
@@ -2,50 +1,0 @@
-Wed Dec 20 10:10:56 UTC 2023 - Daniel Wagner <daniel.wagner(a)suse.com>
-
-- Update to version 1.7.1+0.g13ba383:
- * tree: do no free ns on error in nvme_ns_init
-
--------------------------------------------------------------------
-Tue Dec 19 13:26:50 UTC 2023 - Daniel Wagner <daniel.wagner(a)suse.com>
-
-- Update to version 1.7+0.gf38b1d7:
- * tree: do not open blk device on default
- * tree: read all attributes from sysfs when available
- * ioctl: set data length when retrieving LBA status
- * types: fix regression for vendor-specific field in nvme_id_ns
- * util: use cleanup functions
- * linux: use cleanup functions
- * json: use cleanup functions
- * fabrics: use cleanup functions
- * tree: use cleanup functions
- * cleanup: add cleanup functions
- * tree: fix incorrect return value
- * tree: Fix clearing application strings
- * libnvme: reshuffle nvme_generate_tls_key_identity()
- * libnvme: fixup error codes
- * libnvme: Implement 'nvme_generate_tls_key_identity()'
- * libnvme: support NVMe TLS identities version 1
- * libnvme: Add base64 functions
- * libnvme: separate out 'gen_tls_identity' and reshuffle 'derive_nvme_keys'
- * libnvme: separate out a function 'select_hmac'
- * libnvme: fix a memory leak when calling read_ssns()
- * libnvme: fix a memory leak in read_discovery()
- * fabrics: avoid redundant args in nvme_discovery_log()
- * fabrics: have nvmf_get_discovery_log() call nvmf_get_discovery_wargs()
- * fabrics: fetch smaller Discovery Log Page header
- * fabrics: avoid redundant Get Log Page on retry
- * fabrics: clear RAE for discovery log page commands
- * json-schema: add keyring and tls_key details
- * types: add Host Behavior Support field definitions
- * mi: Cast values to u32 if shift overflows int
- * types: Cast values to u32 if shift overflows int
- * test: Avoid unaligned pointer dereferences
- * nbft: Avoid unaligned pointer dereferences
- * types: add cross-namespace copy formats, status codes, ONCS bits
- * nvme: Add length field to Hkdf-Expand-Label computation
- * ioctl: use lsp arg in nvme_get_log_boot_partition
- * fabrics: use SECTYPE to determine whether to use TLS
- * fabrics: Allocate aligned payloads for id_ctrl and discovery log calls
- * linux: Allocate aligned payloads for id_ctrl and id_ns calls
- * ioctl: MSB variable-size storage/reference tags
-
--------------------------------------------------------------------
Old:
----
libnvme-1.7.1+0.g13ba383.obscpio
New:
----
libnvme-1.6+5.g68c6ffb.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libnvme.spec ++++++
--- /var/tmp/diff_new_pack.NXzdVb/_old 2023-12-21 23:38:12.969668449 +0100
+++ /var/tmp/diff_new_pack.NXzdVb/_new 2023-12-21 23:38:12.973668595 +0100
@@ -21,7 +21,7 @@
%bcond_without check
Name: libnvme
-Version: 1.7.1+0.g13ba383
+Version: 1.6+5.g68c6ffb
Release: 0
Summary: Linux-native nvme device management library
License: LGPL-2.1-or-later
++++++ _service ++++++
--- /var/tmp/diff_new_pack.NXzdVb/_old 2023-12-21 23:38:13.001669617 +0100
+++ /var/tmp/diff_new_pack.NXzdVb/_new 2023-12-21 23:38:13.005669763 +0100
@@ -4,7 +4,7 @@
<param name="url">https://github.com/linux-nvme/libnvme.git</param>
<param name="filename">libnvme</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@.g%h</param>
- <param name="revision">13ba383</param>
+ <param name="revision">68c6ffb</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="changesgenerate">enable</param>
</service>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.NXzdVb/_old 2023-12-21 23:38:13.021670346 +0100
+++ /var/tmp/diff_new_pack.NXzdVb/_new 2023-12-21 23:38:13.025670492 +0100
@@ -1,7 +1,7 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/linux-nvme/libnvme.git</param>
- <param name="changesrevision">13ba38387e5446849ae59d3ccd8183cf9aca3145</param>
+ <param name="changesrevision">68c6ffb11d40a427fc1fd70ac2ac97fd01952913</param>
</service>
</servicedata>
(No newline at EOF)
++++++ libnvme-1.7.1+0.g13ba383.obscpio -> libnvme-1.6+5.g68c6ffb.obscpio ++++++
++++ 12843 lines of diff (skipped)
++++++ libnvme.obsinfo ++++++
--- /var/tmp/diff_new_pack.NXzdVb/_old 2023-12-21 23:38:13.521688581 +0100
+++ /var/tmp/diff_new_pack.NXzdVb/_new 2023-12-21 23:38:13.525688727 +0100
@@ -1,5 +1,5 @@
name: libnvme
-version: 1.7.1+0.g13ba383
-mtime: 1703065918
-commit: 13ba38387e5446849ae59d3ccd8183cf9aca3145
+version: 1.6+5.g68c6ffb
+mtime: 1696957866
+commit: 68c6ffb11d40a427fc1fd70ac2ac97fd01952913
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package nvme-cli for openSUSE:Factory checked in at 2023-12-21 23:38:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nvme-cli (Old)
and /work/SRC/openSUSE:Factory/.nvme-cli.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nvme-cli"
Thu Dec 21 23:38:02 2023 rev:72 rq:1134429 version:2.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/nvme-cli/nvme-cli.changes 2023-12-20 21:00:36.518870207 +0100
+++ /work/SRC/openSUSE:Factory/.nvme-cli.new.1840/nvme-cli.changes 2023-12-21 23:38:09.957558605 +0100
@@ -2,146 +1,0 @@
-Tue Dec 19 13:30:18 UTC 2023 - Daniel Wagner <daniel.wagner(a)suse.com>
-
-- Update to version 2.7:
- * nvme-print-json: include vs for identify namespace
- * nvme-print-stdout: enhance connect message
- * fabrics: fix connect error if hostid file does not exist
- * fabrics: fix invalid output format error during nvme connect
- * wdc: Fix vs-smart-add-log Command for SN650 and SN655
- * nvme: restric hmac options for gen-tls-key
- * wdc: Fix UUID index fallback mechanism
- * plugins/ocp: Add OCP Telemetry String log page, Telemetry log page
- * completions: Add bash completions for telemetry string log page
- * plugins/solidigm: Added OCP 2.0 compatibility version command
- * plugins/solidigm: Added OCP 2.0 vs-drive-info command.
- * plugins/ocp: Fix printing order of various Latency Monitor Log buckets
- * nvme: validate output format split status from flag return value
- * nvme: simplify cleanup_nvme_dev()
- * cleanup: remove unused cleanup_charp()
- * wdc: Add support for SN861 2nd pci device id
- * nvme: replace libhugetlbfs with mmap and madvise
- * util/mem: move alloc helper to util section
- * nvme: auto cleanup filedescriptors
- * nvme: auto cleanup buffers
- * nvme: return error code in get_persistent_event_log
- * nvme: sanitize nvme-gen-tls-key
- * nvme: print out the resulting TLS identity for 'nvme check-tls-key'
- * nvme: Add version '1' identifier for nvme-gen-tls-key
- * subprojects/libnvme: update wrapper for TP8018
- * plugins/solidigm: Added re_sku_count smart atrribute
- * doc: Fix nvme-connect manpage --application option string
- * plugins/ocp: changed command clear-pcie-correctable-error-counters to match OCP 2.0 spec.
- * plugins/solidigm: Added command to clear PCIe Correctable Error Counters according to OCP 2.0
- * plugins/ocp: Reorganized clear feature code for better reuse
- * nvme: fixup length calculation for 'nvme gen-tls-key --secret'
- * doc: remove invalid hostkey info for --dhchap-secret
- * nvme-print-json: use human helper everywhere
- * nvme-print-json: remove obj_print helper
- * plugins/ocp: update nvme_show_select_result call
- * mailmap: only show contributer's name
- * nvme-print-json: Change to report status and message in array
- * nvme-print-json: Change to report feature select in array
- * nvme-print-json: Change to report error and data in array
- * nvme-print-json: Add show_init/finish calls to report features in array
- * nvme-print: Add nvme_show_error_status() to merge error message and status
- * nvme-print-json: Use r instead of root and use obj_add_***(r, ..., ...)
- * nvme-print-json: Delete static const char string global variables
- * nvme-print-json: Add remaining controller registers readable format
- * nvme-print-json: Add readable format cap, vs, cc, csts, nssr and crto registers
- * nvme-print-json: Combine duplicated json key and val string variables
- * nvme-print-json: Replase json_array_add_value_string() to array_add_str()
- * nvme-print-json: Replase json_object_add_value_uint128() to obj/root_add_uint128()
- * nvme-print-json: Replase json_object_add_value_object() to obj/root_add_obj()
- * nvme-print-json: Replase json_array_add_value_object() to array_add_obj()
- * nvme-print-json: Replase json_object_add_value_array() to obj/root_add_array()
- * nvme-print-json: Replase json_object_add_value_uint() to obj/root_add_uint()
- * nvme-print-json: Replase json_object_add_value_int() to obj/root_add_int()
- * nvme-print-json: Replase json_object_add_value_uint64() to obj/root_add_uint64()
- * nvme-print-json: Replase json_object_add_value_string() to obj/root_add_str()
- * nvme-print-json: Update feature_show_fields_*** to use root/obj_add_***()
- * nvme-print-json: Update lba_status_log to use root_add_***() and obj_add_***()
- * nvme-print-json: Replace lba_status_log printf() to root_add_result()
- * nvme-print-json: Add list_item print function
- * nvme-print-json: Add lba_status_info print function
- * nvme-print-json: Add lba_range print function
- * nvme-print-json: Add id_ctrl_rpmbs print function
- * nvme-print-json: Unify json_list and jroot object names to root
- * nvme-print-json: Add json_zns_changed print function
- * nvme-print-json: Add root_add_result() to output result message
- * nvme-print-json: Split persistent_event_log print function
- * nvme-print-json: Remove unnecessary string newline code
- * nvme-print-json: Replace effects_log_list print to use json_print()
- * nvme-print-json: Print persistent_event_log no log data result correctly
- * nvme-print-json: Add static "result" and "erorr" strings variables
- * nvme-print-json: Add single_property printf function
- * nvme: Replace get feature command stderr output to nvme_show_error()
- * nvme-print-json: Change d() output to use d_json()
- * nvme: Fix get-feature command mixed stdout and json outputs
- * nvme-print-json: Add remaining feature fields print functions
- * nvme-print-json: Update formatting and codying style
- * build: Add -std=c99 to CFLAGS for muon on CentOS 7
- * fabrics: add udev rule to avoid renaming nbft interfaces
- * fabrics: autoconnect: add service unit for connecting NBFT subsystems
- * fabrics: autoconnect: explicitly express module dependency
- * Updates to codeql config
- * libnvme-wrap: exit on VOID_FN lookup failure
- * plugins/ocp:Added the ocp C6h feature api
- * plugin/ocp_fid_c6h:Added the ocp C6h feature api
- * nvme-copy: support cross-namespace copy
- * nvme/plugins: fix mismatch operator
- * nvme: fix overflow possiblity
- * nvme: reduce identify cmd issue
- * nvme: allow set-features to take input from stdin
- * Fix common misspellings from codespell project
- * nvme-print: Correct to print correct ascii character string length
- * print-stdout: print Host Behavior Support correctly
- * build: Bump libnvme wrap
- * plugins/solidigm: Added support for temperature statistics log page
- * Add support for codeql sweeps
- * doc: Add virt-mgmt command
- * doc: Add id-uuid command
- * doc: Add list-secondary command
- * doc: Add id-ns-granularity command
- * doc: Add nvme commands --output-format and --verbose options
- * completions: Add nvme-mi-recv nad nvme-mi-send commands completions
- * completions: Change short option -o and -v duplicated to upper case
- * doc: Change short option -o and -v duplicated to upper case
- * nvme: Change short option -o and -v duplicated to upper case
- * nvme: Change phy-rx-eom-log command to use NVME_ARGS instead
- * plugins/memblaze: Add smart-log-add and latency-feature functions
- * plugins/solidigm: internal-logs Telemetry auto detect last data area.
- * nvme: Change to use NVME_FLBAS_META_EXT() macro to check flbas value
- * nvme-print-json: Add host memory buffer and timestamp features print functions
- * nvme-print-json: Add feature fields print functions
- * nvme-print-json: Add TMPTH feature print function
- * nvme-print-json: Add show_feature_fields print function
- * nvme-print-json: Add select_result print function
- * nvme-print-json: Use json_print to print and free object
- * nvme-print-json: Add lba_status print function
- * nvme-print-json: Combine variable definition and setting value
- * nvme-print-json: Add id_iocs print function
- * nvme-print-stdout: Fix coding style errors
- * nvme-print-json: Add directive print function
- * nvme: Fixed segmentation fault when getting host initiated telemetry
- * plugins/wdc: enhanced SN861 device support
- * plugins/wdc: cleanup line lengths
- * nvme: do not include meta data for PRACT=1 and MD=8
- * nvme: use block-count arg if provided
- * build: bump libnvme to disable tests option
- * build: Add static build on CI target
- * nvme-print: Add nvme_zns_start_zone_list() API function
- * nvme-print: Add nvme_zns_finish_zone_list() API function
- * nvme-print-binary: Set list function to NULL if unimplemented
- * nvme-print-json: Change order list functions and set NULL if unimplemented
- * nvme-print-stdout: Fix to set stdout_list_item print function missed
- * plugins/solidigm: log page name extraction using nvme_log_to_string function
- * nvme-print: Added missing logpage names in nvme_log_to_string function
- * udev-rules: rename netapp udev rule
- * udev-rules: set ctrl_loss_tmo to -1 for ONTAP NVMe/TCP
-- Remove upstreamed patches
- * remove 0001-fabrics-autoconnect-add-service-unit-for-connecting-.patch
- * remove 0002-fabrics-add-udev-rule-to-avoid-renaming-nbft-interfa.patch
-- Update spec file
- * remove libhugetblfs depedency
- * update NetApp udev rule file name
-
--------------------------------------------------------------------
Old:
----
nvme-cli-2.7.obscpio
New:
----
0001-fabrics-autoconnect-add-service-unit-for-connecting-.patch
0002-fabrics-add-udev-rule-to-avoid-renaming-nbft-interfa.patch
nvme-cli-2.6.obscpio
BETA DEBUG BEGIN:
New:- Add missing service files for NBFT feature
* add 0001-fabrics-autoconnect-add-service-unit-for-connecting-.patch
* add 0002-fabrics-add-udev-rule-to-avoid-renaming-nbft-interfa.patch
New: * add 0001-fabrics-autoconnect-add-service-unit-for-connecting-.patch
* add 0002-fabrics-add-udev-rule-to-avoid-renaming-nbft-interfa.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nvme-cli.spec ++++++
--- /var/tmp/diff_new_pack.qeltvd/_old 2023-12-21 23:38:10.801589385 +0100
+++ /var/tmp/diff_new_pack.qeltvd/_new 2023-12-21 23:38:10.801589385 +0100
@@ -19,7 +19,7 @@
%bcond_without check
Name: nvme-cli
-Version: 2.7
+Version: 2.6
Release: 0
Summary: NVM Express user space tools
License: GPL-2.0-only
@@ -27,11 +27,14 @@
URL: https://github.com/linux-nvme/nvme-cli/
Source0: nvme-cli-%{version}.tar.gz
Source1: nvme-cli-rpmlintrc
+Patch001: 0001-fabrics-autoconnect-add-service-unit-for-connecting-.patch
+Patch002: 0002-fabrics-add-udev-rule-to-avoid-renaming-nbft-interfa.patch
# downstream patches
Patch100: 0100-harden_nvmf-connect@.service.patch
BuildRequires: asciidoc
BuildRequires: gcc
BuildRequires: gcc-c++
+BuildRequires: libhugetlbfs-devel
BuildRequires: libjson-c-devel
BuildRequires: libnvme-devel
BuildRequires: meson
@@ -163,7 +166,7 @@
%{_mandir}/man1/nvme*.1*%{?ext_man}
%{_udevrulesdir}/65-persistent-net-nbft.rules
%{_udevrulesdir}/70-nvmf-autoconnect.rules
-%{_udevrulesdir}/71-nvmf-netapp.rules
+%{_udevrulesdir}/71-nvmf-iopolicy-netapp.rules
%{_unitdir}/nvmefc-boot-connections.service
%{_unitdir}/nvmf-autoconnect.service
%{_unitdir}/nvmf-connect-nbft.service
++++++ 0001-fabrics-autoconnect-add-service-unit-for-connecting-.patch ++++++
From b3059ae50b905b265913dc541b740eef85c54814 Mon Sep 17 00:00:00 2001
From: Martin Wilck <mwilck(a)suse.com>
Date: Tue, 23 May 2023 12:48:55 +0200
Subject: [PATCH 1/2] fabrics: autoconnect: add service unit for connecting
NBFT subsystems
Create a separate unit file for connecting to NBFT-defined subsystems.
This unit is intended to be called in "post-up" scripts from network
management software if an interface defined in the HFI section of the
NBFT is brought up (L3-configured).
In simple scenarios with just one HFI, this won't be necessary because the
interface must be brought up in the initramfs already. But in multipath
scenarios, the initramfs may choose not to wait for every HFI to come up, and
thus it may be necessary to bring up the secondary connection(s) later on.
Signed-off-by: Martin Wilck <mwilck(a)suse.com>
---
meson.build | 1 +
nvmf-autoconnect/systemd/nvmf-connect-nbft.service.in | 11 +++++++++++
2 files changed, 12 insertions(+)
create mode 100644 nvmf-autoconnect/systemd/nvmf-connect-nbft.service.in
diff --git a/meson.build b/meson.build
index 3d3fb08541ff..de595c82c064 100644
--- a/meson.build
+++ b/meson.build
@@ -222,6 +222,7 @@ endforeach
systemd_files = [
'nvmefc-boot-connections.service',
'nvmf-autoconnect.service',
+ 'nvmf-connect-nbft.service',
'nvmf-connect.target',
'nvmf-connect@.service',
]
diff --git a/nvmf-autoconnect/systemd/nvmf-connect-nbft.service.in b/nvmf-autoconnect/systemd/nvmf-connect-nbft.service.in
new file mode 100644
index 000000000000..8769884da415
--- /dev/null
+++ b/nvmf-autoconnect/systemd/nvmf-connect-nbft.service.in
@@ -0,0 +1,11 @@
+# This unit is meant to be started by network management software
+# after a network interface defined in the NBFT gets set up
+[Unit]
+Description=Connect NBFT-defined NVMe-oF subsystems automatically
+ConditionPathExists=|/sys/firmware/acpi/tables/NBFT
+ConditionPathExists=|/sys/firmware/acpi/tables/NBFT1
+
+[Service]
+Type=oneshot
+ExecStartPre=/sbin/modprobe nvme-fabrics
+ExecStart=@SBINDIR@/nvme connect-nbft
--
2.42.0
++++++ 0002-fabrics-add-udev-rule-to-avoid-renaming-nbft-interfa.patch ++++++
From 39f94260eaf7e0604772e6cabf1c04ec0f03201a Mon Sep 17 00:00:00 2001
From: Martin Wilck <mwilck(a)suse.com>
Date: Tue, 23 May 2023 14:19:14 +0200
Subject: [PATCH 2/2] fabrics: add udev rule to avoid renaming nbft interfaces
In the initramfs, the interface naming is taken care of by dracut.
But there are various network-interface-naming policies in place which
may attempt to rename the interface, causing confusion and possibly
wrong interface parameters.
Add an udev rule that avoids renaming any network interface that
has been assigned a name nbft$N, which is by convention the naming
scheme that is used for NBFT device in the initramfs.
Note: The simpler 'NAME:="%k"' directive doesn't work because udev rejects
it ('Ignoring NAME="%k", as it will take no effect.'). The ":=" syntax makes
sure the interface isn't renamed any more by later rules. "INTERFACE" is set
by the kernel in the "add" uevent for a network interface.
Signed-off-by: Martin Wilck <mwilck(a)suse.com>
---
meson.build | 1 +
nvmf-autoconnect/udev-rules/65-persistent-net-nbft.rules.in | 2 ++
2 files changed, 3 insertions(+)
create mode 100644 nvmf-autoconnect/udev-rules/65-persistent-net-nbft.rules.in
diff --git a/meson.build b/meson.build
index de595c82c064..80695e01b906 100644
--- a/meson.build
+++ b/meson.build
@@ -238,6 +238,7 @@ endforeach
udev_files = [
'70-nvmf-autoconnect.rules',
'71-nvmf-iopolicy-netapp.rules',
+ '65-persistent-net-nbft.rules',
]
foreach file : udev_files
diff --git a/nvmf-autoconnect/udev-rules/65-persistent-net-nbft.rules.in b/nvmf-autoconnect/udev-rules/65-persistent-net-nbft.rules.in
new file mode 100644
index 000000000000..344942bca0c0
--- /dev/null
+++ b/nvmf-autoconnect/udev-rules/65-persistent-net-nbft.rules.in
@@ -0,0 +1,2 @@
+# Avoid renaming nbft$X interfaces
+SUBSYSTEM=="net", ACTION!="remove", ENV{INTERFACE}=="nbft*", NAME:="%E{INTERFACE}"
--
2.42.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.qeltvd/_old 2023-12-21 23:38:10.849591135 +0100
+++ /var/tmp/diff_new_pack.qeltvd/_new 2023-12-21 23:38:10.853591281 +0100
@@ -4,7 +4,7 @@
<param name="url">https://github.com/linux-nvme/nvme-cli.git</param>
<param name="filename">nvme-cli</param>
<param name="versionformat">@PARENT_TAG@</param>
- <param name="revision">v2.7</param>
+ <param name="revision">v2.6</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="changesgenerate">enable</param>
</service>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.qeltvd/_old 2023-12-21 23:38:10.869591865 +0100
+++ /var/tmp/diff_new_pack.qeltvd/_new 2023-12-21 23:38:10.873592011 +0100
@@ -1,7 +1,7 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/linux-nvme/nvme-cli.git</param>
- <param name="changesrevision">807a66cbdef368a9122c7de07837f4298249f5a7</param>
+ <param name="changesrevision">bd2f882a49a14b0e21a94c928128b1979e4316fd</param>
</service>
</servicedata>
(No newline at EOF)
++++++ nvme-cli-2.7.obscpio -> nvme-cli-2.6.obscpio ++++++
/work/SRC/openSUSE:Factory/nvme-cli/nvme-cli-2.7.obscpio /work/SRC/openSUSE:Factory/.nvme-cli.new.1840/nvme-cli-2.6.obscpio differ: char 49, line 1
++++++ nvme-cli.obsinfo ++++++
--- /var/tmp/diff_new_pack.qeltvd/_old 2023-12-21 23:38:10.917593616 +0100
+++ /var/tmp/diff_new_pack.qeltvd/_new 2023-12-21 23:38:10.917593616 +0100
@@ -1,5 +1,5 @@
name: nvme-cli
-version: 2.7
-mtime: 1702986525
-commit: 807a66cbdef368a9122c7de07837f4298249f5a7
+version: 2.6
+mtime: 1695969193
+commit: bd2f882a49a14b0e21a94c928128b1979e4316fd
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mutter for openSUSE:Factory checked in at 2023-12-21 23:37:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mutter (Old)
and /work/SRC/openSUSE:Factory/.mutter.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mutter"
Thu Dec 21 23:37:58 2023 rev:219 rq:1134424 version:45.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/mutter/mutter.changes 2023-12-18 22:55:28.798594148 +0100
+++ /work/SRC/openSUSE:Factory/.mutter.new.1840/mutter.changes 2023-12-21 23:38:05.921411417 +0100
@@ -1,0 +2,8 @@
+Thu Dec 21 08:23:54 UTC 2023 - Alynx Zhou <alynx.zhou(a)suse.com>
+
+- Add mutter-fix-text-input-delete-surrounding.patch: text-input-v3
+ requrires byte based offset but Clutter uses char based offset
+ for delete_surrounding_text, fix it by converting before passing
+ arguments (glgo#GNOME/mutter#2146, glgo#GNOME/mutter!2712).
+
+-------------------------------------------------------------------
New:
----
mutter-fix-text-input-delete-surrounding.patch
BETA DEBUG BEGIN:
New:
- Add mutter-fix-text-input-delete-surrounding.patch: text-input-v3
requrires byte based offset but Clutter uses char based offset
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mutter.spec ++++++
--- /var/tmp/diff_new_pack.r7Gv8u/_old 2023-12-21 23:38:06.657438258 +0100
+++ /var/tmp/diff_new_pack.r7Gv8u/_new 2023-12-21 23:38:06.661438404 +0100
@@ -36,6 +36,8 @@
Patch2: mutter-window-actor-Special-case-shaped-Java-windows.patch
# PATCH-FIX-UPSTREAM mutter-fix-x11-restart.patch glgo#GNOME/gnome-shell#7050 glgo#GNOME/mutter!3329 alynx.zhou(a)suse.com -- Fix crash on restarting mutter under x11
Patch3: mutter-fix-x11-restart.patch
+# PATCH-FIX-UPSTREAM mutter-fix-text-input-delete-surrounding.patch glgo#GNOME/mutter#2146 glgo#GNOME/mutter!2712 alynx.zhou(a)suse.com -- Fix delete_surrounding_text of text-input-v3
+Patch4: mutter-fix-text-input-delete-surrounding.patch
## SLE-only patches start at 1000
# PATCH-FEATURE-SLE mutter-SLE-bell.patch FATE#316042 bnc#889218 idonmez(a)suse.com -- make audible bell work out of the box.
@@ -148,6 +150,7 @@
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 3 -p1
+%patch -P 4 -p1
%endif
# SLE-only patches and translations.
%if 0%{?sle_version}
++++++ mutter-fix-text-input-delete-surrounding.patch ++++++
From 27bdf0c577a551254551fdaaf7870c5072707c69 Mon Sep 17 00:00:00 2001
From: Alynx Zhou <alynx.zhou(a)gmail.com>
Date: Fri, 25 Nov 2022 15:48:01 +0800
Subject: [PATCH 1/2] wayland/text-input: Use byte based offset in
delete_surrounding_text
ClutterInputFocus/GtkIMContext uses char based offset for
delete_surrounding, however, text_input_v3 uses byte based offset for
it. Currently only GTK with mutter can work correctly via text_input_v3
because they both forget to convert between char based offset and byte
based offset.
This commit fixes it in mutter by saving committed surrounding text in
MetaWaylandTextInput and converting char based offset to byte based
offset with the UTF-8 encoded surrounding text.
Fixes <https://gitlab.gnome.org/GNOME/mutter/-/issues/2146>.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2712>
---
src/wayland/meta-wayland-text-input.c | 55 +++++++++++++++++++++++----
1 file changed, 47 insertions(+), 8 deletions(-)
diff --git a/src/wayland/meta-wayland-text-input.c b/src/wayland/meta-wayland-text-input.c
index b1ceb1a6bb5..2e694dc1eb8 100644
--- a/src/wayland/meta-wayland-text-input.c
+++ b/src/wayland/meta-wayland-text-input.c
@@ -58,6 +58,20 @@ struct _MetaWaylandTextInput
GHashTable *resource_serials;
+ /* This saves the uncommitted middle state of surrounding text from client
+ * between `set_surrounding_text` and `commit`, will be cleared after
+ * committed.
+ */
+ struct
+ {
+ char *text;
+ uint32_t cursor;
+ uint32_t anchor;
+ } pending_surrounding;
+
+ /* This is the actual committed surrounding text after `commit`, we need this
+ * to convert between char based offset and byte based offset.
+ */
struct
{
char *text;
@@ -216,14 +230,32 @@ meta_wayland_text_input_focus_delete_surrounding (ClutterInputFocus *focus,
guint len)
{
MetaWaylandTextInput *text_input;
+ const char *start, *end;
+ const char *before, *after;
+ const char *cursor;
uint32_t before_length;
uint32_t after_length;
struct wl_resource *resource;
+ /* offset and len are counted by UTF-8 chars, but text_input_v3's lengths are
+ * counted by bytes, so we convert UTF-8 char offsets to pointers here, this
+ * needs the surrounding text
+ */
text_input = META_WAYLAND_TEXT_INPUT_FOCUS (focus)->text_input;
- before_length = ABS (MIN (offset, 0));
- after_length = MAX (0, offset + len);
- g_warn_if_fail (ABS (offset) <= len);
+ offset = MIN (offset, 0);
+
+ start = text_input->surrounding.text;
+ end = start + strlen (text_input->surrounding.text);
+ cursor = start + text_input->surrounding.cursor;
+
+ before = g_utf8_offset_to_pointer (cursor, offset);
+ g_assert (before >= start);
+
+ after = g_utf8_offset_to_pointer (cursor, offset + len);
+ g_assert (after <= end);
+
+ before_length = cursor - before;
+ after_length = after - cursor;
wl_resource_for_each (resource, &text_input->focus_resource_list)
{
@@ -468,10 +500,10 @@ text_input_set_surrounding_text (struct wl_client *client,
if (!client_matches_focus (text_input, client))
return;
- g_free (text_input->surrounding.text);
- text_input->surrounding.text = g_strdup (text);
- text_input->surrounding.cursor = cursor;
- text_input->surrounding.anchor = anchor;
+ g_free (text_input->pending_surrounding.text);
+ text_input->pending_surrounding.text = g_strdup (text);
+ text_input->pending_surrounding.cursor = cursor;
+ text_input->pending_surrounding.anchor = anchor;
text_input->pending_state |= META_WAYLAND_PENDING_STATE_SURROUNDING_TEXT;
}
@@ -591,7 +623,7 @@ text_input_set_cursor_rectangle (struct wl_client *client,
static void
meta_wayland_text_input_reset (MetaWaylandTextInput *text_input)
{
- g_clear_pointer (&text_input->surrounding.text, g_free);
+ g_clear_pointer (&text_input->pending_surrounding.text, g_free);
text_input->content_type_hint = ZWP_TEXT_INPUT_V3_CONTENT_HINT_NONE;
text_input->content_type_purpose = ZWP_TEXT_INPUT_V3_CONTENT_PURPOSE_NORMAL;
text_input->text_change_cause = ZWP_TEXT_INPUT_V3_CHANGE_CAUSE_INPUT_METHOD;
@@ -651,6 +683,12 @@ text_input_commit_state (struct wl_client *client,
if (text_input->pending_state & META_WAYLAND_PENDING_STATE_SURROUNDING_TEXT)
{
+ /* Save the surrounding text for `delete_surrounding_text`. */
+ g_free (text_input->surrounding.text);
+ text_input->surrounding.text = g_steal_pointer (&text_input->pending_surrounding.text);
+ text_input->surrounding.cursor = text_input->pending_surrounding.cursor;
+ text_input->surrounding.anchor = text_input->pending_surrounding.anchor;
+ /* Pass the surrounding text to Clutter to handle it with input method. */
clutter_input_focus_set_surrounding (text_input->input_focus,
text_input->surrounding.text,
text_input->surrounding.cursor,
@@ -720,6 +758,7 @@ meta_wayland_text_input_destroy (MetaWaylandTextInput *text_input)
g_object_unref (text_input->input_focus);
g_hash_table_destroy (text_input->resource_serials);
g_clear_pointer (&text_input->preedit.string, g_free);
+ g_clear_pointer (&text_input->pending_surrounding.text, g_free);
g_clear_pointer (&text_input->surrounding.text, g_free);
g_free (text_input);
}
--
GitLab
From 33088d59db742cf802977a9d8ec8b4ea3ca79ea0 Mon Sep 17 00:00:00 2001
From: Alynx Zhou <alynx.zhou(a)gmail.com>
Date: Mon, 23 Oct 2023 14:32:21 +0800
Subject: [PATCH 2/2] wayland/text-input: Pass char based offset to
ClutterInputFocus
Wayland's text-input-v3 uses byte based offset for cursor and anchor of
surrounding text, but Clutter needs char based offset here. This commit
converts byte based offset to char based offset before passing them to
ClutterInputFocus.
Fixes <https://gitlab.gnome.org/GNOME/mutter/-/issues/3102>.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2712>
---
src/wayland/meta-wayland-text-input.c | 24 +++++++++++++++++++-----
1 file changed, 19 insertions(+), 5 deletions(-)
diff --git a/src/wayland/meta-wayland-text-input.c b/src/wayland/meta-wayland-text-input.c
index 2e694dc1eb8..c8f50847a88 100644
--- a/src/wayland/meta-wayland-text-input.c
+++ b/src/wayland/meta-wayland-text-input.c
@@ -122,12 +122,18 @@ static void
meta_wayland_text_input_focus_request_surrounding (ClutterInputFocus *focus)
{
MetaWaylandTextInput *text_input;
+ long cursor, anchor;
+ /* Clutter uses char offsets but text-input-v3 uses byte offsets. */
text_input = META_WAYLAND_TEXT_INPUT_FOCUS (focus)->text_input;
+ cursor = g_utf8_strlen (text_input->surrounding.text,
+ text_input->surrounding.cursor);
+ anchor = g_utf8_strlen (text_input->surrounding.text,
+ text_input->surrounding.anchor);
clutter_input_focus_set_surrounding (focus,
- text_input->surrounding.text,
- text_input->surrounding.cursor,
- text_input->surrounding.anchor);
+ text_input->surrounding.text,
+ cursor,
+ anchor);
}
static uint32_t
@@ -683,16 +689,24 @@ text_input_commit_state (struct wl_client *client,
if (text_input->pending_state & META_WAYLAND_PENDING_STATE_SURROUNDING_TEXT)
{
+ long cursor, anchor;
+
/* Save the surrounding text for `delete_surrounding_text`. */
g_free (text_input->surrounding.text);
text_input->surrounding.text = g_steal_pointer (&text_input->pending_surrounding.text);
text_input->surrounding.cursor = text_input->pending_surrounding.cursor;
text_input->surrounding.anchor = text_input->pending_surrounding.anchor;
+
/* Pass the surrounding text to Clutter to handle it with input method. */
+ /* Clutter uses char offsets but text-input-v3 uses byte offsets. */
+ cursor = g_utf8_strlen (text_input->surrounding.text,
+ text_input->surrounding.cursor);
+ anchor = g_utf8_strlen (text_input->surrounding.text,
+ text_input->surrounding.anchor);
clutter_input_focus_set_surrounding (text_input->input_focus,
text_input->surrounding.text,
- text_input->surrounding.cursor,
- text_input->surrounding.anchor);
+ cursor,
+ anchor);
}
if (text_input->pending_state & META_WAYLAND_PENDING_STATE_INPUT_RECT)
--
GitLab
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-lxml for openSUSE:Factory checked in at 2023-12-21 23:37:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-lxml (Old)
and /work/SRC/openSUSE:Factory/.python-lxml.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-lxml"
Thu Dec 21 23:37:50 2023 rev:106 rq:1134342 version:4.9.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-lxml/python-lxml.changes 2023-11-27 22:42:21.191574240 +0100
+++ /work/SRC/openSUSE:Factory/.python-lxml.new.1840/python-lxml.changes 2023-12-21 23:37:54.528995963 +0100
@@ -1,0 +2,13 @@
+Wed Dec 20 22:04:14 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 4.9.4:
+ * LP#2046398: Inserting/replacing an ancestor into a node's
+ children could loop indefinitely.
+ * LP#1980767, GH#379: ``TreeBuilder.close()`` could fail with a
+ ``TypeError`` after parsing incorrect input.
+ * LP#1522052: A file-system specific test is now optional and
+ should no longer fail on systems that don't support it.
+ * Built with Cython 0.29.37.
+- drop libxml2212-tests.patch (upstream)
+
+-------------------------------------------------------------------
Old:
----
libxml2212-tests.patch
lxml-4.9.3.tar.gz
New:
----
lxml-4.9.4.tar.gz
BETA DEBUG BEGIN:
Old: * Built with Cython 0.29.37.
- drop libxml2212-tests.patch (upstream)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-lxml.spec ++++++
--- /var/tmp/diff_new_pack.3OpE4D/_old 2023-12-21 23:37:55.329025139 +0100
+++ /var/tmp/diff_new_pack.3OpE4D/_new 2023-12-21 23:37:55.329025139 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-lxml
-Version: 4.9.3
+Version: 4.9.4
Release: 0
Summary: Pythonic XML processing library
License: BSD-3-Clause AND GPL-2.0-or-later
@@ -42,9 +42,6 @@
# PATCH-FIX-UPSTREAM remove-ISO-Schematron-schema.patch gl#fedora/legal/fedora-license-data/-#154 mcepl(a)suse.com
# Actually remove the schema
Patch4: remove-ISO-Schematron-schema.patch
-# PATCH-FIX-UPSTREAM libxml2212-tests.patch https://github.com/lxml/lxml/pull/383
-# Make Unicode recovery test work with upcoming libxml2 2.12
-Patch5: libxml2212-tests.patch
BuildRequires: %{python_module Cython >= 0.29.7 with %python-Cython < 3}
BuildRequires: %{python_module base}
BuildRequires: %{python_module cssselect >= 0.9.1}
++++++ lxml-4.9.3.tar.gz -> lxml-4.9.4.tar.gz ++++++
++++ 78523 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-lark for openSUSE:Factory checked in at 2023-12-21 23:37:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-lark (Old)
and /work/SRC/openSUSE:Factory/.python-lark.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-lark"
Thu Dec 21 23:37:49 2023 rev:7 rq:1134338 version:1.1.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-lark/python-lark.changes 2023-10-24 20:08:04.863922192 +0200
+++ /work/SRC/openSUSE:Factory/.python-lark.new.1840/python-lark.changes 2023-12-21 23:37:52.196910918 +0100
@@ -1,0 +2,29 @@
+Wed Dec 20 21:59:06 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.1.8:
+ * Populate the `Token.end_*` fields for ignored tokens
+ * Include .lark files in package data
+ * Add an error message when using Lark.save() when
+ parser!='lalr'
+ * Add and improve docstrings
+ * Small update to PR #1338
+ * Fix 1345 attempt two
+ * Earley now uses OrderedSet for better output stability
+ * ContextualLexer now uses self.basic_lexer for easy
+ extensibility (iss…
+ * Improved typing around LALR and ParserState
+ * Typing fixes. Mypy now produces 0 type errors
+ * Standalone: Added support for interactive parser.
+- update to 1.1.7:
+ * Bugfix in propagate_positions (issue #1304)
+- update to 1.1.6:
+ * Added strict-mode, enabled by `strict=True`, implemented
+ using interegular by @MegaIng
+ * Read more here: https://lark-
+ parser.readthedocs.io/en/latest/how_to_use.html#strict-mode
+ * Cache: Replace md5 hashing with sha256.
+ * Support for Python-style comments in Lark grammar
+ * Updates to python.lark
+ * Bugfixes and cleanup
+
+-------------------------------------------------------------------
Old:
----
lark-1.1.5.tar.gz
New:
----
lark-1.1.8.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-lark.spec ++++++
--- /var/tmp/diff_new_pack.mVQtHu/_old 2023-12-21 23:37:53.668964600 +0100
+++ /var/tmp/diff_new_pack.mVQtHu/_new 2023-12-21 23:37:53.684965184 +0100
@@ -16,31 +16,28 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-lark
-Version: 1.1.5
+Version: 1.1.8
Release: 0
Summary: A parsing library for Python
License: MIT
Group: Development/Languages/Python
URL: https://github.com/lark-parser/lark
Source: https://github.com/lark-parser/lark/archive/%{version}.tar.gz#/lark-%{versi…
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module pytest >= 6}
+BuildRequires: %{python_module regex}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-Suggests: python-regex
Suggests: python-Js2Py
Suggests: python-atomicwrites
-# SECTION TEST
-BuildRequires: %{python_module regex}
-BuildRequires: %{python_module pytest >= 6}
-# /SECTION
-BuildArch: noarch
+Suggests: python-regex
# Upstream renamed the package with v0.12.0, SUSE had the old name until 1.1.2
Provides: python-lark-parser = %{version}-%{release}
Obsoletes: python-lark-parser <= 1.1.2
+BuildArch: noarch
%python_subpackages
%description
@@ -52,10 +49,10 @@
%setup -q -n lark-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
++++++ lark-1.1.5.tar.gz -> lark-1.1.8.tar.gz ++++++
++++ 3461 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mercurial for openSUSE:Factory checked in at 2023-12-21 23:37:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mercurial (Old)
and /work/SRC/openSUSE:Factory/.mercurial.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mercurial"
Thu Dec 21 23:37:47 2023 rev:190 rq:1134311 version:6.6.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/mercurial/mercurial.changes 2023-11-23 21:39:03.439975626 +0100
+++ /work/SRC/openSUSE:Factory/.mercurial.new.1840/mercurial.changes 2023-12-21 23:37:49.396808806 +0100
@@ -1,0 +2,14 @@
+Wed Dec 20 16:12:02 UTC 2023 - Lukas Müller <expeehaa(a)outlook.com>
+
+- Update to Mercurial 6.6.1.
+ The first two patches fix aborted transactions that could happen since 6.6.
+ * revlog: avoid exposing delayed index entry too widely in non-inline revlog
+ * revlog: avoid wrongly updating the data file location on "divert"
+ * tests: do not fail tests in a state with uncommitted .py file removal
+ * perf-tags: fix the --clear-fnode-cache-rev code
+ * perf-tags: fix clear_cache_fnodes to actually clear that cache
+ * censor: fix things around inlining
+ * Various Python 3 cleanups
+ * Various Windows test suite fixes
+
+-------------------------------------------------------------------
Old:
----
mercurial-6.6.tar.gz
New:
----
mercurial-6.6.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mercurial.spec ++++++
--- /var/tmp/diff_new_pack.BHYx97/_old 2023-12-21 23:37:51.404882036 +0100
+++ /var/tmp/diff_new_pack.BHYx97/_new 2023-12-21 23:37:51.408882182 +0100
@@ -20,7 +20,7 @@
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%endif
Name: mercurial
-Version: 6.6
+Version: 6.6.1
Release: 0
Summary: Scalable Distributed SCM
License: GPL-2.0-or-later
++++++ mercurial-6.6.tar.gz -> mercurial-6.6.1.tar.gz ++++++
/work/SRC/openSUSE:Factory/mercurial/mercurial-6.6.tar.gz /work/SRC/openSUSE:Factory/.mercurial.new.1840/mercurial-6.6.1.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libvirt for openSUSE:Factory checked in at 2023-12-21 23:37:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libvirt (Old)
and /work/SRC/openSUSE:Factory/.libvirt.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libvirt"
Thu Dec 21 23:37:45 2023 rev:389 rq:1134307 version:9.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libvirt/libvirt.changes 2023-12-09 22:50:15.741034812 +0100
+++ /work/SRC/openSUSE:Factory/.libvirt.new.1840/libvirt.changes 2023-12-21 23:37:47.240730179 +0100
@@ -1,0 +2,6 @@
+Wed Dec 20 00:45:42 UTC 2023 - James Fehlig <jfehlig(a)suse.com>
+
+- apparmor: Add capabilities for PCI passthrough to virtxend profile
+ bsc#1216656
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libvirt-9.10.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/libvirt/libvirt-9.10.0.tar.xz /work/SRC/openSUSE:Factory/.libvirt.new.1840/libvirt-9.10.0.tar.xz differ: char 15, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package discover for openSUSE:Factory checked in at 2023-12-21 23:37:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/discover (Old)
and /work/SRC/openSUSE:Factory/.discover.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "discover"
Thu Dec 21 23:37:43 2023 rev:139 rq:1133972 version:5.27.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/discover/discover.changes 2023-12-07 19:09:59.862356233 +0100
+++ /work/SRC/openSUSE:Factory/.discover.new.1840/discover.changes 2023-12-21 23:37:45.112652574 +0100
@@ -1,0 +2,7 @@
+Fri Dec 15 08:52:06 UTC 2023 - Christophe Marin <christophe(a)krop.fr>
+
+- Update appstream build requirement for compatibility with 1.0.0
+ (boo#1217047)
+- Remove obsolete version checks
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ discover.spec ++++++
--- /var/tmp/diff_new_pack.wV1AoY/_old 2023-12-21 23:37:45.880680582 +0100
+++ /var/tmp/diff_new_pack.wV1AoY/_new 2023-12-21 23:37:45.884680727 +0100
@@ -17,9 +17,6 @@
%bcond_without released
-# Version in Leap 15.2 is too old
-%global have_fwupd (0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300)
-
Name: discover
Version: 5.27.10
Release: 0
@@ -39,7 +36,7 @@
BuildRequires: flatpak-devel
BuildRequires: kf5-filesystem
BuildRequires: update-desktop-files
-BuildRequires: cmake(AppStreamQt) >= 0.11.1
+BuildRequires: (cmake(AppStreamQt5) >= 1.0.0 or cmake(AppStreamQt) < 1.0.0)
BuildRequires: cmake(KF5Archive)
BuildRequires: cmake(KF5Attica)
BuildRequires: cmake(KF5Config)
@@ -74,18 +71,14 @@
BuildRequires: cmake(Qt5Widgets)
BuildRequires: cmake(Qt5Xml)
BuildRequires: cmake(packagekitqt5) >= 1.0.1
-%if %{have_fwupd}
BuildRequires: pkgconfig(fwupd) >= 1.0.6
-%endif
Requires: kdeclarative-components
Requires: kirigami2
Requires: kuserfeedback-imports
Requires: libqt5-qtquickcontrols2
Recommends: %{name}-backend-packagekit
Recommends: %{name}-lang
-%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150100
Recommends: %{name}-backend-flatpak
-%endif
# Conflicts with plasma5-pk-updates
# Recommends: %%{name}-notifier
Recommends: %{name}-backend-fwupd
@@ -101,7 +94,7 @@
Requires: %{name} = %{version}
# Technically libdiscover and not the backend implements AppStream support, but
# it's useless without system package management
-Requires: AppStream
+%requires_eq AppStream
Requires: PackageKit
Requires: appstream-provider
@@ -144,15 +137,15 @@
%autosetup -p1
%build
- %cmake_kf5 -d build
- %cmake_build
+%cmake_kf5 -d build
+%cmake_build
%install
- %kf5_makeinstall -C build
- %suse_update_desktop_file -r org.kde.discover Qt KDE System PackageManager
+%kf5_makeinstall -C build
+%suse_update_desktop_file -r org.kde.discover Qt KDE System PackageManager
- # Even without the snap backend, this is installed...
- rm %{buildroot}%{_kf5_applicationsdir}/org.kde.discover.snap.desktop
+# Even without the snap backend, this is installed...
+rm %{buildroot}%{_kf5_applicationsdir}/org.kde.discover.snap.desktop
%find_lang libdiscover %{name}.lang
%find_lang plasma-discover %{name}.lang
@@ -185,7 +178,6 @@
%{_kf5_sharedir}/libdiscover/categories/packagekit-backend-categories.xml
%{_kf5_appstreamdir}/org.kde.discover.packagekit.appdata.xml
-%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150100
%files backend-flatpak
%license LICENSES/*
%{_kf5_plugindir}/discover/flatpak-backend.so
@@ -193,13 +185,10 @@
%{_kf5_appstreamdir}/org.kde.discover.flatpak.appdata.xml
%{_kf5_applicationsdir}/org.kde.discover-flatpak.desktop
%{_kf5_iconsdir}/hicolor/*/apps/flatpak-discover.svg
-%endif
-%if %{have_fwupd}
%files backend-fwupd
%license LICENSES/*
%{_kf5_plugindir}/discover/fwupd-backend.so
-%endif
%files notifier -f notifier.lang
%license LICENSES/*
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package open-vm-tools for openSUSE:Factory checked in at 2023-12-21 23:37:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/open-vm-tools (Old)
and /work/SRC/openSUSE:Factory/.open-vm-tools.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "open-vm-tools"
Thu Dec 21 23:37:39 2023 rev:122 rq:1134303 version:12.3.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/open-vm-tools/open-vm-tools.changes 2023-12-12 19:31:44.731388377 +0100
+++ /work/SRC/openSUSE:Factory/.open-vm-tools.new.1840/open-vm-tools.changes 2023-12-21 23:37:41.284512971 +0100
@@ -1,0 +2,6 @@
+Wed Dec 20 17:14:46 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Own %{_modulesloaddir}: used to be present via udev-mini -> kmod
+ -> suse-module-tools dependency before.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ open-vm-tools.spec ++++++
--- /var/tmp/diff_new_pack.TNIOlX/_old 2023-12-21 23:37:42.120543458 +0100
+++ /var/tmp/diff_new_pack.TNIOlX/_new 2023-12-21 23:37:42.124543604 +0100
@@ -470,6 +470,7 @@
%files
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
+%dir %_modulesloaddir
%_modulesloaddir/vmw_vsock_vmci_transport.conf
%endif
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 0120300
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fwupd for openSUSE:Factory checked in at 2023-12-21 23:37:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fwupd (Old)
and /work/SRC/openSUSE:Factory/.fwupd.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fwupd"
Thu Dec 21 23:37:37 2023 rev:70 rq:1134302 version:1.9.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/fwupd/fwupd.changes 2023-12-05 17:01:31.469406122 +0100
+++ /work/SRC/openSUSE:Factory/.fwupd.new.1840/fwupd.changes 2023-12-21 23:37:38.056395249 +0100
@@ -1,0 +2,6 @@
+Wed Dec 20 17:12:21 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Own %{_modulesloaddir}: used to be present via udev-mini -> kmod
+ -> suse-module-tools dependency before.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fwupd.spec ++++++
--- /var/tmp/diff_new_pack.PCUmcv/_old 2023-12-21 23:37:38.840423841 +0100
+++ /var/tmp/diff_new_pack.PCUmcv/_new 2023-12-21 23:37:38.840423841 +0100
@@ -352,6 +352,7 @@
%endif
%{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
%if %{with msr_support}
+%dir %{_modulesloaddir}
%{_modulesloaddir}/fwupd-msr.conf
%endif
%config %{_sysconfdir}/%{name}/
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xine-lib for openSUSE:Factory checked in at 2023-12-21 23:37:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xine-lib (Old)
and /work/SRC/openSUSE:Factory/.xine-lib.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xine-lib"
Thu Dec 21 23:37:34 2023 rev:87 rq:1134276 version:1.2.13
Changes:
--------
--- /work/SRC/openSUSE:Factory/xine-lib/xine-lib.changes 2023-03-24 15:18:37.410325570 +0100
+++ /work/SRC/openSUSE:Factory/.xine-lib.new.1840/xine-lib.changes 2023-12-21 23:37:36.680345068 +0100
@@ -1,0 +2,5 @@
+Tue Dec 12 12:12:12 UTC 2023 - olaf(a)aepfle.de
+
+- Add version constraints for all ffmpeg subpackages
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xine-lib.spec ++++++
--- /var/tmp/diff_new_pack.iK6uhM/_old 2023-12-21 23:37:37.320368408 +0100
+++ /var/tmp/diff_new_pack.iK6uhM/_new 2023-12-21 23:37:37.320368408 +0100
@@ -66,9 +66,9 @@
#Prevent building against ffmpeg 3
BuildRequires: pkgconfig(libavcodec) >= 58
BuildRequires: pkgconfig(libavformat) >= 58
-BuildRequires: pkgconfig(libavutil)
+BuildRequires: pkgconfig(libavutil) >= 56
BuildRequires: pkgconfig(libbluray)
-BuildRequires: pkgconfig(libpostproc)
+BuildRequires: pkgconfig(libpostproc) >= 55
BuildRequires: pkgconfig(mad)
BuildRequires: pkgconfig(smbclient)
BuildRequires: pkgconfig(vpx)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rsync for openSUSE:Factory checked in at 2023-12-21 23:37:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rsync (Old)
and /work/SRC/openSUSE:Factory/.rsync.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rsync"
Thu Dec 21 23:37:31 2023 rev:86 rq:1134227 version:3.2.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/rsync/rsync.changes 2023-09-14 16:26:30.784398510 +0200
+++ /work/SRC/openSUSE:Factory/.rsync.new.1840/rsync.changes 2023-12-21 23:37:35.284294158 +0100
@@ -1,0 +2,6 @@
+Wed Nov 29 12:34:30 UTC 2023 - Stefan Schubert <schubi(a)suse.com>
+
+- Moved rsyncd.conf and rsyncd.secrets to /usr/etc.
+ * Add rsync-usr-etc.patch
+
+-------------------------------------------------------------------
New:
----
rsync-usr-etc.patch
BETA DEBUG BEGIN:
New:- Moved rsyncd.conf and rsyncd.secrets to /usr/etc.
* Add rsync-usr-etc.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rsync.spec ++++++
--- /var/tmp/diff_new_pack.6Em1ju/_old 2023-12-21 23:37:36.256329605 +0100
+++ /var/tmp/diff_new_pack.6Em1ju/_new 2023-12-21 23:37:36.256329605 +0100
@@ -56,6 +56,7 @@
Source13: rsyncd
Patch0: rsync-no-libattr.patch
Patch1: rsync-fortified-strlcpy-fix.patch
+Patch2: rsync-usr-etc.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: c++_compiler
@@ -113,6 +114,9 @@
--with-included-popt=no \
--with-included-zlib=no \
--disable-debug \
+%if 0%{?suse_version} > 1500
+ --with-rsyncd-distconf=%{_distconfdir}/rsyncd.conf \
+%endif
%if !%{with xxhash}
--disable-xxhash\
%endif
@@ -142,12 +146,16 @@
%if 0%{?suse_version} > 1500
install -d %{buildroot}%{_distconfdir}/logrotate.d
install -m 644 %{SOURCE2} %{buildroot}%{_distconfdir}/logrotate.d/rsync
+install -m 644 %{SOURCE5} %{buildroot}%{_distconfdir}/rsyncd.conf
+install -m 600 %{SOURCE6} %{buildroot}%{_distconfdir}/rsyncd.secrets
+echo "# This is a template only. Create your own entries in /etc/rsyncd.secrets" >>%{buildroot}%{_distconfdir}/rsyncd.secrets
+echo
%else
install -d %{buildroot}%{_sysconfdir}/logrotate.d
install -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/rsync
-%endif
install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/rsyncd.conf
install -m 600 %{SOURCE6} %{buildroot}%{_sysconfdir}/rsyncd.secrets
+%endif
install -D -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/rsyncd@.service
install -D -m 0644 %{SOURCE8} %{buildroot}%{_unitdir}/rsyncd.service
install -D -m 0644 %{SOURCE3} %{buildroot}%{_unitdir}/rsyncd.socket
@@ -157,7 +165,7 @@
%service_add_pre rsyncd.service
%if 0%{?suse_version} > 1500
# Prepare for migration to /usr/etc; save any old .rpmsave
-for i in logrotate.d/rsync ; do
+for i in logrotate.d/rsync rsyncd.conf rsyncd.secrets; do
test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i}.rpmsave.old ||:
done
%endif
@@ -165,7 +173,7 @@
%if 0%{?suse_version} > 1500
%posttrans
# Migration to /usr/etc, restore just created .rpmsave
-for i in logrotate.d/rsync ; do
+for i in logrotate.d/rsync rsyncd.conf rsyncd.secrets; do
test -f %{_sysconfdir}/${i}.rpmsave && mv -v %{_sysconfdir}/${i}.rpmsave %{_sysconfdir}/${i} ||:
done
%endif
@@ -185,12 +193,14 @@
%{_unitdir}/rsyncd@.service
%{_unitdir}/rsyncd.service
%{_unitdir}/rsyncd.socket
-%config(noreplace) %{_sysconfdir}/rsyncd.conf
-%config(noreplace) %{_sysconfdir}/rsyncd.secrets
%if 0%{?suse_version} > 1500
%{_distconfdir}/logrotate.d/rsync
+%{_distconfdir}/rsyncd.conf
+%{_distconfdir}/rsyncd.secrets
%else
%config(noreplace) %{_sysconfdir}/logrotate.d/rsync
+%config(noreplace) %{_sysconfdir}/rsyncd.conf
+%config(noreplace) %{_sysconfdir}/rsyncd.secrets
%endif
%{_sbindir}/rcrsyncd
%{_sbindir}/rsyncd
++++++ rsync-usr-etc.patch ++++++
Nur in a: .cirrus.yml.
diff -ur a/clientserver.c b/clientserver.c
--- a/clientserver.c 2023-11-28 17:12:41.643268046 +0100
+++ b/clientserver.c 2023-11-28 17:25:30.476279700 +0100
@@ -1261,10 +1261,16 @@
static int load_config(int globals_only)
{
if (!config_file) {
- if (am_daemon < 0 && am_root <= 0)
+ if (am_daemon < 0 && am_root <= 0) {
config_file = RSYNCD_USERCONF;
- else
+ } else {
config_file = RSYNCD_SYSCONF;
+#ifdef RSYNCD_DISTCONF
+ STRUCT_STAT st;
+ if (do_stat(RSYNCD_SYSCONF, &st) != 0)
+ config_file = RSYNCD_DISTCONF;
+#endif
+ }
}
return lp_load(config_file, globals_only);
}
diff -ur a/configure.ac b/configure.ac
--- a/configure.ac 2023-11-28 17:12:41.647268046 +0100
+++ b/configure.ac 2023-11-28 17:40:15.678280030 +0100
@@ -175,7 +175,7 @@
AC_DEFINE_UNQUOTED(RSYNC_PATH, "$RSYNC_PATH", [location of rsync on remote machine])
AC_ARG_WITH(rsyncd-conf,
- AS_HELP_STRING([--with-rsyncd-conf=PATH],[set configuration file for rsync server to PATH (default: /etc/rsyncd.conf)]),
+ AS_HELP_STRING([--with-rsyncd-conf=PATH],[set user/admin defined configuration file for rsync server to PATH (default: /etc/rsyncd.conf)]),
[ if test ! -z "$with_rsyncd_conf" ; then
case $with_rsyncd_conf in
yes|no)
@@ -193,7 +193,27 @@
fi ],
[ RSYNCD_SYSCONF="/etc/rsyncd.conf" ])
-AC_DEFINE_UNQUOTED(RSYNCD_SYSCONF, "$RSYNCD_SYSCONF", [location of configuration file for rsync server])
+AC_DEFINE_UNQUOTED(RSYNCD_SYSCONF, "$RSYNCD_SYSCONF", [location of user/admin defined configuration file for rsync server])
+
+AC_ARG_WITH(rsyncd-distconf,
+ AS_HELP_STRING([--with-rsyncd-distconf=PATH],[set vendor configuration file for rsync server to PATH (default: not set)]),
+ [ if test ! -z "$with_rsyncd_distconf" ; then
+ case $with_rsyncd_distconf in
+ yes|no)
+ RSYNCD_DISTCONF="/usr/etc/rsyncd.conf"
+ ;;
+ /*)
+ RSYNCD_DISTCONF="$with_rsyncd_distconf"
+ ;;
+ *)
+ AC_MSG_ERROR(You must specify an absolute path to --with-rsyncd-distconf=PATH)
+ ;;
+ esac
+ fi
+ ],
+ [])
+
+AC_DEFINE_UNQUOTED(RSYNCD_DISTCONF, "$RSYNCD_DISTCONF", [location of vendor configuration file for rsync server])
AC_ARG_WITH(rsh,
AS_HELP_STRING([--with-rsh=CMD],[set remote shell command to CMD (default: ssh)]))
diff -ur a/rsyncd.conf.5.md b/rsyncd.conf.5.md
--- a/rsyncd.conf.5.md 2023-11-28 17:12:41.643268046 +0100
+++ b/rsyncd.conf.5.md 2023-11-29 13:08:32.125333095 +0100
@@ -1235,7 +1235,7 @@
## FILES
-/etc/rsyncd.conf or rsyncd.conf
+rsyncd.conf or /etc/rsyncd.conf or /usr/etc/rsyncd.conf
## SEE ALSO
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package systemd for openSUSE:Factory checked in at 2023-12-21 23:37:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
and /work/SRC/openSUSE:Factory/.systemd.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd"
Thu Dec 21 23:37:23 2023 rev:410 rq:1134212 version:254.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd.changes 2023-12-12 19:31:39.383191050 +0100
+++ /work/SRC/openSUSE:Factory/.systemd.new.1840/systemd.changes 2023-12-21 23:37:26.959990591 +0100
@@ -1,0 +2,17 @@
+Wed Dec 20 12:49:09 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- udev: only require kmod in the full flavor. udev-mini is only
+ used inside OBS in a strictly defined setup and udev will never
+ have to load device drivers there.
+
+-------------------------------------------------------------------
+Wed Dec 20 12:40:55 UTC 2023 - Franck Bui <fbui(a)suse.com>
+
+- Import commit 071ac409a0564863657d8f8a5a35e6a4f914695f
+
+ 071ac409a0 rules: set up tty permissions and group for /dev/hvc* nodes
+ f693b3ed8a vconsole-setup: remember the correct error value when open_terminal() fails
+ 963d838bad vconsole-setup: handle the case where the vc is in KD_GRAPHICS mode more gracefully (bsc#1215282)
+ 6f53f71d2d vconsole-setup: simplify error handling
+
+-------------------------------------------------------------------
Old:
----
systemd-v254.5+suse.17.gce08cd5f66.tar.xz
New:
----
systemd-v254.5+suse.21.g071ac409a0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.BIZoC5/_old 2023-12-21 23:37:27.888024434 +0100
+++ /var/tmp/diff_new_pack.BIZoC5/_new 2023-12-21 23:37:27.888024434 +0100
@@ -18,7 +18,7 @@
%global flavor @BUILD_FLAVOR@%{nil}
-%define archive_version +suse.17.gce08cd5f66
+%define archive_version +suse.21.g071ac409a0
%define _testsuitedir %{_systemd_util_dir}/tests
%define xinitconfdir %{?_distconfdir}%{!?_distconfdir:%{_sysconfdir}}/X11/xinit
@@ -306,7 +306,9 @@
Requires: %{name} = %{version}-%{release}
%systemd_requires
Requires: filesystem
+%if %{without bootstrap}
Requires: kmod
+%endif
Requires: system-group-hardware
Requires: group(kvm)
Requires: group(lp)
++++++ systemd-v254.5+suse.17.gce08cd5f66.tar.xz -> systemd-v254.5+suse.21.g071ac409a0.tar.xz ++++++
/work/SRC/openSUSE:Factory/systemd/systemd-v254.5+suse.17.gce08cd5f66.tar.xz /work/SRC/openSUSE:Factory/.systemd.new.1840/systemd-v254.5+suse.21.g071ac409a0.tar.xz differ: char 27, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-rpm-macros for openSUSE:Factory checked in at 2023-12-21 23:37:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-rpm-macros (Old)
and /work/SRC/openSUSE:Factory/.python-rpm-macros.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-rpm-macros"
Thu Dec 21 23:37:19 2023 rev:54 rq:1134299 version:20231220.98427f3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-rpm-macros/python-rpm-macros.changes 2023-10-12 23:38:45.545621631 +0200
+++ /work/SRC/openSUSE:Factory/.python-rpm-macros.new.1840/python-rpm-macros.changes 2023-12-21 23:37:21.535792784 +0100
@@ -1,0 +2,21 @@
+Wed Dec 20 16:33:59 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Update to version 20231220.98427f3:
+ * fix python2_compile macro
+
+-------------------------------------------------------------------
+Tue Dec 19 10:13:29 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Update to version 20231207.46c2ec3:
+ * make FLAVOR_compile compatible with python2
+
+-------------------------------------------------------------------
+Mon Dec 04 08:34:09 UTC 2023 - mcepl(a)cepl.eu
+
+- Update to version 20231204.dd64e74:
+ * Combine fix_shebang in one line
+ * New macro FLAVOR_fix_shebang_path
+ * Use realpath in %python_clone macro shebang replacement
+ * Compile and fix_shebang in %python_install macros
+
+-------------------------------------------------------------------
Old:
----
python-rpm-macros-20231010.0a1f0d9.tar.xz
New:
----
python-rpm-macros-20231220.98427f3.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-rpm-macros.spec ++++++
--- /var/tmp/diff_new_pack.sUlQdc/_old 2023-12-21 23:37:23.743873307 +0100
+++ /var/tmp/diff_new_pack.sUlQdc/_new 2023-12-21 23:37:23.755873745 +0100
@@ -17,7 +17,7 @@
Name: python-rpm-macros
-Version: 20231010.0a1f0d9
+Version: 20231220.98427f3
Release: 0
Summary: RPM macros for building of Python modules
License: WTFPL
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.sUlQdc/_old 2023-12-21 23:37:24.087885852 +0100
+++ /var/tmp/diff_new_pack.sUlQdc/_new 2023-12-21 23:37:24.115886873 +0100
@@ -3,6 +3,6 @@
<param name="url">git://github.com/openSUSE/python-rpm-macros.git</param>
<param name="changesrevision">80d37568d9732beb7fcc2cf27c5c08f9c01fade1</param></service><service name="tar_scm">
<param name="url">https://github.com/openSUSE/python-rpm-macros.git</param>
- <param name="changesrevision">0a1f0d9a0d295f1414c7bde6a6f0ef344ff0b37d</param></service></servicedata>
+ <param name="changesrevision">98427f34744bb5b418adf7ed2ff9a336048aad02</param></service></servicedata>
(No newline at EOF)
++++++ python-rpm-macros-20231010.0a1f0d9.tar.xz -> python-rpm-macros-20231220.98427f3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-rpm-macros-20231010.0a1f0d9/README.md new/python-rpm-macros-20231220.98427f3/README.md
--- old/python-rpm-macros-20231010.0a1f0d9/README.md 2023-10-10 21:24:02.000000000 +0200
+++ new/python-rpm-macros-20231220.98427f3/README.md 2023-12-20 17:12:31.000000000 +0100
@@ -389,6 +389,11 @@
the call of this macro is not required, as the script interpreter line is already
taken care of by the alternatives setup `%python_clone -a`.
+* __`%<flavor>_fix_shebang_path path`__ rewrites the script interpreter
+ line in python scripts installed into `path` to use the
+ particular flavor. A glob like `*` can be used in the path parameter
+ to fix the shebang for all files in a directory.
+
* __`%<flavor>_sitelib`, `%<flavor>_sitearch`__: path to noarch (purelib) and
arch-dependent `site-packages` (platlib) directory.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-rpm-macros-20231010.0a1f0d9/flavor.in new/python-rpm-macros-20231220.98427f3/flavor.in
--- old/python-rpm-macros-20231010.0a1f0d9/flavor.in 2023-10-10 21:24:02.000000000 +0200
+++ new/python-rpm-macros-20231220.98427f3/flavor.in 2023-12-20 17:12:31.000000000 +0100
@@ -36,10 +36,13 @@
%__#FLAVOR# %{py_setup} %{?py_setup_args} build \\\
--executable="%__#FLAVOR# %#FLAVOR#_shbang_opts"
-%#FLAVOR#_install \
+%#FLAVOR#_install(+abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-=) \
%{_python_use_flavor #FLAVOR#} \
+myargs="%{**}" \
%__#FLAVOR# %{py_setup} %{?py_setup_args} install \\\
- -O1 --skip-build --force --root %{buildroot} --prefix %{_prefix}
+ -O1 --skip-build --force --root %{buildroot} --prefix %{_prefix} $myargs \
+%#FLAVOR#_compile \
+%#FLAVOR#_fix_shebang
##### PEP517/PEP518 macros #####
@@ -92,19 +95,23 @@
import sys, py_compile \
for f in sys.argv[1:]: \
fp=f[len("%{buildroot}"):] \
- print(f"Generating cached byte-code for {fp}") \
- for o in [0, 1]: \
- py_compile.compile(f, dfile=fp, optimize=o) \
+ print("Generating cached byte-code for " + str(fp)) \
+ if sys.version[0] == "2": \
+ py_compile.compile(f, dfile=fp) \
+ else: \
+ for o in [0, 1]: \
+ py_compile.compile(f, dfile=fp, optimize=o) \
' \
fi \
done
%#FLAVOR#_fix_shebang \
-for f in %{buildroot}%{_bindir}/*; do \
- [ -f $f ] && sed -i "1s@#!.*python.*@#!$(realpath %__#FLAVOR#)@" $f \
-done; \
-for f in %{buildroot}%{_sbindir}/*; do \
- [ -f $f ] && sed -i "1s@#!.*python.*@#!$(realpath %__#FLAVOR#)@" $f \
+%#FLAVOR#_fix_shebang_path %{buildroot}%{_bindir}/* %{buildroot}%{_sbindir}/*
+
+%#FLAVOR#_fix_shebang_path(+abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-=) \
+myargs="%{**}" \
+for f in ${myargs}; do \
+ [ -f $f ] && sed -i "1s@#\\!.*python.*@#\\!$(realpath %__#FLAVOR#)@" $f \
done
# Alternative entries in file section
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-rpm-macros-20231010.0a1f0d9/macros.lua new/python-rpm-macros-20231220.98427f3/macros.lua
--- old/python-rpm-macros-20231010.0a1f0d9/macros.lua 2023-10-10 21:24:02.000000000 +0200
+++ new/python-rpm-macros-20231220.98427f3/macros.lua 2023-12-20 17:12:31.000000000 +0100
@@ -497,7 +497,7 @@
local binsuffix = rpm.expand("%" .. python .. "_bin_suffix")
link,name,path = python_alternative_names(param, binsuffix, true)
print(rpm.expand(string.format("cp %s %s\n", param, path)))
- print(rpm.expand(string.format("sed -ri '1s@#!.*python.*@#!%s@' %s\n", "%__" .. python, path)))
+ print(rpm.expand(string.format("sed -ri \"1s@#!.*python.*@#!%s@\" %s\n", "$(realpath %__" .. python .. ")", path)))
end
-- %python_clone -a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-rpm-macros-20231010.0a1f0d9/testfiles/fix-shebang.spec new/python-rpm-macros-20231220.98427f3/testfiles/fix-shebang.spec
--- old/python-rpm-macros-20231010.0a1f0d9/testfiles/fix-shebang.spec 1970-01-01 01:00:00.000000000 +0100
+++ new/python-rpm-macros-20231220.98427f3/testfiles/fix-shebang.spec 2023-12-20 17:12:31.000000000 +0100
@@ -0,0 +1,49 @@
+#
+# spec file for package specRPM_CREATION_NAME
+#
+# Copyright (c) specCURRENT_YEAR SUSE LLC
+#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
+#
+
+
+Name: fix-shebang
+Version: 1.0
+Release: 0
+Summary: Test fix shebanng
+License: GPLv2
+URL: https://example.com
+BuildRequires: python-rpm-macros
+
+%description
+
+%prep
+%autosetup
+
+%build
+%configure
+%make_build
+
+%install
+%make_install
+%python3_fix_shebang_path %{buildroot}/usr/libexec/*
+%python3_fix_shebang
+
+%post
+%postun
+
+%files
+%license COPYING
+%doc ChangeLog README
+
+%changelog
+
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package discord for openSUSE:Factory:NonFree checked in at 2023-12-21 23:36:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory:NonFree/discord (Old)
and /work/SRC/openSUSE:Factory:NonFree/.discord.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "discord"
Thu Dec 21 23:36:51 2023 rev:42 rq:1134428 version:0.0.39
Changes:
--------
--- /work/SRC/openSUSE:Factory:NonFree/discord/discord.changes 2023-12-18 22:54:54.673344399 +0100
+++ /work/SRC/openSUSE:Factory:NonFree/.discord.new.1840/discord.changes 2023-12-21 23:36:53.622774865 +0100
@@ -1,0 +2,13 @@
+Tue Dec 19 23:36:08 UTC 2023 - Wojciech Kazubski <wk(a)ire.pw.edu.pl>
+
+- Update to version 0.0.39:
+ * No upstream release notes.
+
+-------------------------------------------------------------------
+Tue Dec 19 14:04:29 UTC 2023 - Giacomo Comes <gcomes.obs(a)gmail.com>
+
+- use a wrap script to disable the auto updating mechanism when
+ Discord is launched
+ * replace (non working) disable-breaking-updates.py
+
+-------------------------------------------------------------------
Old:
----
disable-breaking-updates.py
discord-0.0.38.tar.gz
New:
----
discord
discord-0.0.39.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ discord.spec ++++++
--- /var/tmp/diff_new_pack.81A4LI/_old 2023-12-21 23:36:56.890894045 +0100
+++ /var/tmp/diff_new_pack.81A4LI/_new 2023-12-21 23:36:56.906894628 +0100
@@ -25,7 +25,7 @@
# This is to enable build with patent encoumbered codecs. Not allowed in OBS
%bcond_with x264
Name: discord
-Version: 0.0.38
+Version: 0.0.39
Release: 0
Summary: Voice and Text Chat for Gamers
License: SUSE-NonFree
@@ -36,9 +36,8 @@
Source2: discord-symbolic.svg
Source3: https://raw.githubusercontent.com/flathub/com.discordapp.Discord/master/com…
# Disable breaking updates which will prompt users to download a deb or tar
-# file and lock them out of Discord making the program unusable. Courtesy of
-# NixOS contributors and the original author (@lionirdeadman), kudos to them.
-Source4: https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/applications/ne…
+# file and lock them out of Discord making the program unusable.
+Source4: discord
Source99: PERMISSION
ExclusiveArch: x86_64
BuildRequires: desktop-file-utils
@@ -46,7 +45,10 @@
BuildRequires: update-desktop-files
BuildRequires: unzip
Requires: libatomic1
-Requires(post): python3-base
+#for the wrapper script:
+Requires: grep
+Requires: sed
+Requires: coreutils
Conflicts: discord
@@ -106,14 +108,7 @@
# Executable checks for resources in its directory so it cannot be in bin.
mkdir -p %{buildroot}%{_bindir}
-ln -s %{_libdir}/%{name}/Discord %{buildroot}%{_bindir}/%{name}
-
-# disable-breaking-updates.py script
-install -v -m 644 %{SOURCE4} %{buildroot}%{_libdir}/%{name}/
-sed -i -e '/@pythonInterpreter@/d' \
- -e 's,@configDirName@,discord,' \
- -e '/print("\[Nix]/ s/Nix/Discord/' \
- %{buildroot}%{_libdir}/%{name}/disable-breaking-updates.py
+install -v -m 755 %{SOURCE4} %{buildroot}%{_bindir}/%{name}
%post
%if 0%{?suse_version} < 1500
@@ -121,10 +116,6 @@
%endif
chmod 0755 %{_libdir}/%{name}/Discord
-if command -v python3 > /dev/null; then
- python3 %{_libdir}/%{name}/disable-breaking-updates.py
-fi
-
%if 0%{?suse_version} < 1500
%postun
%desktop_database_postun
++++++ discord ++++++
#!/bin/bash
#in the file $HOME/.config/discord/settings.json
#if the setting SKIP_HOST_UPDATE does not exist add it
#otherwise leave it untouched
CONFIGFILE=$HOME/.config/discord/settings.json
EXE=$(dirname "$0")/../lib64/discord/Discord
if [[ -x $EXE ]]; then
if [[ -d $HOME/.config && ! -f $CONFIGFILE ]]; then
[[ ! -d $HOME/.config/discord ]] && mkdir $HOME/.config/discord
echo '{"SKIP_HOST_UPDATE": true}' >$CONFIGFILE
elif [[ -f $CONFIGFILE ]]; then
! grep -qF SKIP_HOST_UPDATE $CONFIGFILE && \
sed -i '/^{/s@$@\n "SKIP_HOST_UPDATE": true,@' $CONFIGFILE
fi
exec $EXE "$@"
fi
++++++ discord-0.0.38.tar.gz -> discord-0.0.39.tar.gz ++++++
/work/SRC/openSUSE:Factory:NonFree/discord/discord-0.0.38.tar.gz /work/SRC/openSUSE:Factory:NonFree/.discord.new.1840/discord-0.0.39.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000release-packages for openSUSE:Factory checked in at 2023-12-21 10:07:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Thu Dec 21 10:07:27 2023 rev:2657 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
Kalpa-release.spec: same change
MicroOS-release.spec: same change
openSUSE-Addon-NonOss-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.W5u3aq/_old 2023-12-21 10:07:32.085607632 +0100
+++ /var/tmp/diff_new_pack.W5u3aq/_new 2023-12-21 10:07:32.097608069 +0100
@@ -12519,8 +12519,6 @@
Provides: weakremover(libfprint0-32bit)
Provides: weakremover(libframe6-32bit)
Provides: weakremover(libframecpp)
-Provides: weakremover(libfreerdp2)
-Provides: weakremover(libfreerdp2-2)
Provides: weakremover(libfrrgrpc_pb0)
Provides: weakremover(libfsm0)
Provides: weakremover(libfst-hfst0)
@@ -17129,8 +17127,6 @@
Provides: weakremover(libweston-desktop-9-0)
Provides: weakremover(libwget0)
Provides: weakremover(libwget1)
-Provides: weakremover(libwinpr2)
-Provides: weakremover(libwinpr2-2)
Provides: weakremover(libwireshark10)
Provides: weakremover(libwireshark12)
Provides: weakremover(libwireshark13)
@@ -17151,7 +17147,6 @@
Provides: weakremover(libwlc0)
Provides: weakremover(libwlroots0)
Provides: weakremover(libwlroots1)
-Provides: weakremover(libwlroots11)
Provides: weakremover(libwlroots2)
Provides: weakremover(libwlroots3)
Provides: weakremover(libwlroots4)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package freerdp for openSUSE:Factory checked in at 2023-12-21 08:43:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/freerdp (Old)
and /work/SRC/openSUSE:Factory/.freerdp.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "freerdp"
Thu Dec 21 08:43:30 2023 rev:72 rq: version:2.11.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/freerdp/freerdp.changes 2023-12-20 21:01:20.084455150 +0100
+++ /work/SRC/openSUSE:Factory/.freerdp.new.1840/freerdp.changes 2023-12-21 08:43:31.066005292 +0100
@@ -2,65 +1,0 @@
-Tue Dec 19 13:56:15 UTC 2023 - Hans-Peter Jansen <hpj(a)urpla.net>
-
-- Remove freerdp-allow-compiling-with-old-c++-compiler.patch
- Solve by requiring gcc12-c++ for older environments
-- Adjust Requires/Obsoletes
-- Merge %{name}-server-proxy%{libfreerdp_package}-devel with -devel
-
--------------------------------------------------------------------
-Mon Dec 18 11:57:05 UTC 2023 - Joan Torres <joan.torres(a)suse.com>
-
-- Add freerdp-allow-compiling-with-old-c++-compiler.patch
- * This allows building with older Leap versions which use gcc7-c++.
-
-- Use cups-devel instead of relying on pkgconfig.
- * Older Leap versions were unable to find it that way.
-
-- Fix some package naming and versioning.
-
--------------------------------------------------------------------
-Fri Dec 15 11:02:39 UTC 2023 - Joan Torres <joan.torres(a)suse.com>
-
-- Add sdl dependencies to build the sdl-freerdp client.
- * This is due to the wlfreerdp client being deprecated.
-
-- Cleanup specfile.
- * Rely preferably on pkgconfig to pull devel packages instead of
- hardcoding them.
-
--------------------------------------------------------------------
-Thu Dec 14 07:23:30 UTC 2023 - Paolo Stivanin <info(a)paolostivanin.com>
-
-- Update to 3.0.0:
- * Support for AAD/AVD authentication
- * Support for websocket transport
- * Support smartcard authentication (TLS and NLA)
- * Full smartcard emulation support (login with certificate + key)
- * Rewritten proxy, new module API
- * New reference client based on SDL2 (work in progress)
- * Rewritten logging, now parsing issues are all writing to the log so
- that issues with protocol incompatibilities can be easier analyzed
- by just turning on logging
- * Full OpenSSL 3 support
- * Internal implementations for RC4, MD4 and MD5 (required for non critical
- parts in RDP but not part of more recend SSL libraries)
- * Updated RDP protocol support
- * Improved xfreerdp remote app support
- * Reworked internal state machine for both client and server implementations
- * Server implementations can now make use of connect-time network autodetection
- * Improved clipboard handling, now also support server-to-client file transfer
- (currently xfreerdp only)
- * EnhancedRemoteApp support: Utilizing the more modern standard allows remote
- apps with less glitches and window shadows
- * Added client- and server-side handling for RDSTLS
- * Support for the graphics redirection channel
- * Full changelongs can be found at the following links:
- + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta1
- + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta2
- + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta3
- + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta4
- + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-rc0
- + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0
-- Drop upstreamed 0001-Make-H.264-codec-optional-during-runtime.patch.
-- Enable GSS again since gh#issues/4348 has been fixed.
-
--------------------------------------------------------------------
Old:
----
FreeRDP-3.0.0.tar.gz
New:
----
0001-Make-H.264-codec-optional-during-runtime.patch
FreeRDP-2.11.2.tar.gz
BETA DEBUG BEGIN:
New:- Add patch to fix connecting without H.264-enabled FFmpeg (boo#1190823):
* 0001-Make-H.264-codec-optional-during-runtime.patch
- Use %autosetup
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ freerdp.spec ++++++
--- /var/tmp/diff_new_pack.UTHtgo/_old 2023-12-21 08:43:31.670027298 +0100
+++ /var/tmp/diff_new_pack.UTHtgo/_new 2023-12-21 08:43:31.674027444 +0100
@@ -27,17 +27,16 @@
%endif
%endif
-%global _with_gss 1
+# enable -DWITH_GSSAPI=ON again after #gh/FreeRDP/FreeRDP/4348 has been fixed
+#global _with_gss 1
-%define major_version 3
+%define major_version 2
%define libfreerdp_package %{major_version}-%{major_version}
-%define rdtk_version 0
-%define rdtk_package %{rdtk_version}-%{rdtk_version}
%define uwac_version 0
%define uwac_package %{uwac_version}-%{uwac_version}
Name: freerdp
-Version: 3.0.0
+Version: 2.11.2
Release: 0
Summary: Remote Desktop Viewer Client
License: Apache-2.0
@@ -45,49 +44,36 @@
URL: https://www.freerdp.com/
Source0: https://github.com/FreeRDP/FreeRDP/archive/%{version}.tar.gz#/FreeRDP-%{ver…
Source1: freerdp-rpmlintrc
+# PATCH-FIX-UPSTREAM https://github.com/FreeRDP/FreeRDP/pull/7476
+Patch0: 0001-Make-H.264-codec-optional-during-runtime.patch
BuildRequires: chrpath
BuildRequires: cmake >= 2.8
BuildRequires: cups-devel
BuildRequires: ed
BuildRequires: fdupes
-# doesn't compile correctly with older gcc's
-%if 0%{?suse_version} <= 1600
-BuildRequires: gcc12-c++
-%else
BuildRequires: gcc-c++
-%endif
BuildRequires: hicolor-icon-theme
BuildRequires: libgsm-devel
+BuildRequires: libjpeg-devel
BuildRequires: pkgconfig
+BuildRequires: xmlto
+BuildRequires: zlib-devel
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(cairo)
-BuildRequires: pkgconfig(fuse3)
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gstreamer-plugins-base-1.0)
BuildRequires: pkgconfig(icu-i18n)
%{?_with_gss:BuildRequires: pkgconfig(krb5) >= 1.13}
-%{?_with_ffmpeg:
-BuildRequires: pkgconfig(libavcodec) >= 57.48.101
-BuildRequires: pkgconfig(libavutil)
-}
-BuildRequires: pkgconfig(libcjson)
-BuildRequires: pkgconfig(libjpeg)
-%{?_with_lame:BuildRequires: pkgconfig(libmp3lame)}
+%{?_with_lame:BuildRequires: libmp3lame-devel}
BuildRequires: pkgconfig(libpcsclite)
-BuildRequires: pkgconfig(libpkcs11-helper-1)
BuildRequires: pkgconfig(libpulse)
-BuildRequires: pkgconfig(libswscale)
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(libusb-1.0)
-%{?_with_openh264:BuildRequires: pkgconfig(openh264)}
+%{?_with_openh264:BuildRequires: libopenh264-devel}
BuildRequires: pkgconfig(openssl)
%{?_with_soxr:BuildRequires: pkgconfig(soxr)}
-BuildRequires: xmlto
-BuildRequires: pkgconfig(SDL2_ttf)
-BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-scanner)
-BuildRequires: pkgconfig(webkit2gtk-4.0)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcursor)
BuildRequires: pkgconfig(xdamage)
@@ -100,7 +86,10 @@
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xtst)
BuildRequires: pkgconfig(xv)
-BuildRequires: pkgconfig(zlib)
+%{?_with_ffmpeg:
+BuildRequires: pkgconfig(libavcodec) >= 57.48.101
+BuildRequires: pkgconfig(libavutil)
+}
# force installation of latest library version
Requires: lib%{name}%{libfreerdp_package} = %{version}-%{release}
@@ -109,15 +98,6 @@
following the Microsoft Open Specifications. This package provides the client
application.
-%package sdl
-Summary: Remote Desktop Viewer Client
-Group: Productivity/Networking/Other
-
-%description sdl
-FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
-following the Microsoft Open Specifications. This package provides the
-sdl-based client application.
-
%package wayland
Summary: Remote Desktop Viewer Client
Group: Productivity/Networking/Other
@@ -145,21 +125,13 @@
channels allowed for all connections passing through.
It allows monitoring of the running sessions.
-%package -n %{name}-proxy-plugins
-Summary: Plugins for the Security and Monitorig Proxy Server
-Group: Productivity/Networking/Other
-Requires: %{name}-proxy = %{version}-%{release}
-
-%description -n %{name}-proxy-plugins
-This package contains the following plugins for the proxy server:
-* bitmap-filter
-* capture
-* demo
-* dyn-channel-dump
-
%package -n lib%{name}%{libfreerdp_package}
Summary: Remote Desktop Viewer client library
Group: System/Libraries
+Obsoletes: lib%{name} < %{version}-%{release}
+Provides: lib%{name} = %{version}-%{release}
+Obsoletes: lib%{name}2 < %{version}-%{release}
+Provides: lib%{name}2 = %{version}-%{release}
%description -n lib%{name}%{libfreerdp_package}
FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
@@ -170,10 +142,7 @@
Summary: Development Files for freerdp
Group: Development/Libraries/C and C++
Requires: lib%{name}%{libfreerdp_package} = %{version}-%{release}
-Requires: lib%{name}-server-proxy%{libfreerdp_package}
Requires: winpr-devel = %{version}-%{release}
-Obsoletes: %{name}-server-proxy%{libfreerdp_package}-devel < %{version}-%{release}
-Provides: %{name}-server-proxy%{libfreerdp_package}-devel = %{version}-%{release}
%description devel
This package contains development files necessary for developing applications
@@ -182,6 +151,8 @@
%package -n libwinpr%{libfreerdp_package}
Summary: Windows Portable Runtime
Group: Productivity/Networking/Other
+Obsoletes: libwinpr2 < %{version}-%{release}
+Provides: libwinpr2 = %{version}-%{release}
%description -n libwinpr%{libfreerdp_package}
WinPR provides API compatibility for applications targeting non-Windows
@@ -222,28 +193,6 @@
This package contains header files for developing applications that
use the uwac library.
-%package -n librdtk%{rdtk_package}
-Summary: FreeRDP Toolkit
-Group: Development/Languages/C and C++
-
-%description -n librdtk%{rdtk_package}
-This package contains the library for the Remote Desktop Toolkit.
-
-%package -n rdtk%{rdtk_package}-devel
-Summary: FreeRDP Toolkit development files
-Group: Development/Languages/C and C++
-Requires: librdtk%{rdtk_package} = %{version}-%{release}
-
-%description -n rdtk%{rdtk_package}-devel
-This package contains the development files for RDTK.
-
-%package -n lib%{name}-server-proxy%{libfreerdp_package}
-Summary: FreeRDP Server Proxy library
-Group: Development/Languages/C and C++
-
-%description -n lib%{name}-server-proxy%{libfreerdp_package}
-This package contains the FreeRDP Server Proxy library files.
-
%prep
%autosetup -p1 -n FreeRDP-%{version}
@@ -252,17 +201,11 @@
find . -type f -name "*.c" -exec perl -i -pe 's{__(DATE|TIME)__}{""}g' "{}" "+"
fi
-%if 0%{?suse_version} <= 1600
-export CXX=g++-12
-%endif
-
%cmake \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DCMAKE_INSTALL_LIBDIR=%{_lib} \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_EXE_LINKER_FLAGS="-pie" \
- -DCMAKE_SKIP_RPATH=TRUE \
- -DCMAKE_SKIP_INSTALL_RPATH=TRUE \
-DWITH_ALSA=ON \
-DWITH_CAIRO=ON \
-DWITH_CUPS=ON \
@@ -271,7 +214,6 @@
-DWITH_CLIENT=ON \
-DWITH_DIRECTFB=OFF \
-DWITH_FFMPEG=%{?_with_ffmpeg:ON}%{?!_with_ffmpeg:OFF} \
- -DWITH_DSP_FFMPEG=%{?_with_ffmpeg:ON}%{?!_with_ffmpeg:OFF} \
-DWITH_GSM=ON \
-DWITH_GSSAPI=%{?_with_gss:ON}%{?!_with_gss:OFF} \
-DWITH_GSTREAMER_1_0=ON -DWITH_GSTREAMER_0_10=OFF \
@@ -288,7 +230,6 @@
-DWITH_SERVER_INTERFACE=ON \
-DWITH_SHADOW_X11=ON \
-DWITH_SHADOW_MAC=ON \
- -DWITH_SAMPLE=OFF \
-DWITH_SOXR=%{?_with_soxr:ON}%{?!_with_soxr:OFF} \
-DWITH_WAYLAND=ON \
-DWITH_X11=ON \
@@ -335,19 +276,12 @@
%postun -n libwinpr%{libfreerdp_package} -p /sbin/ldconfig
%post -n libuwac%{uwac_package} -p /sbin/ldconfig
%postun -n libuwac%{uwac_package} -p /sbin/ldconfig
-%post -n librdtk%{rdtk_package} -p /sbin/ldconfig
-%postun -n librdtk%{rdtk_package} -p /sbin/ldconfig
-%post -n lib%{name}-server-proxy%{libfreerdp_package} -p /sbin/ldconfig
-%postun -n lib%{name}-server-proxy%{libfreerdp_package} -p /sbin/ldconfig
%files
%{_bindir}/x%{name}
%{_mandir}/man1/x%{name}.1%{?ext_man}
%{_mandir}/man7/wlog.7%{?ext_man}
-%files sdl
-%{_bindir}/sdl-%{name}
-
%files wayland
%{_bindir}/wl%{name}
%{_mandir}/man1/wl%{name}.1%{?ext_man}
@@ -363,14 +297,6 @@
%files proxy
%{_bindir}/%{name}-proxy
-%files -n %{name}-proxy-plugins
-%dir %{_libdir}/%{name}%{major_version}
-%dir %{_libdir}/%{name}%{major_version}/proxy
-%{_libdir}/%{name}%{major_version}/proxy/proxy-bitmap-filter-plugin.so
-%{_libdir}/%{name}%{major_version}/proxy/proxy-capture-plugin.so
-%{_libdir}/%{name}%{major_version}/proxy/proxy-demo-plugin.so
-%{_libdir}/%{name}%{major_version}/proxy/proxy-dyn-channel-dump-plugin.so
-
%files -n lib%{name}%{libfreerdp_package}
%license LICENSE
%{_libdir}/lib%{name}%{major_version}.so.*
@@ -378,29 +304,20 @@
%{_libdir}/lib%{name}-shadow%{major_version}.so.*
%{_libdir}/lib%{name}-server%{major_version}.so.*
%{_libdir}/lib%{name}-shadow-subsystem%{major_version}.so.*
+%dir %{_libdir}/freerdp2
+%{_libdir}/freerdp2/*.so
%files devel
-%dir %{_libdir}/cmake/FreeRDP-Proxy3
-%dir %{_libdir}/cmake/WinPR-tools3
%{_libdir}/cmake/FreeRDP%{major_version}
%{_libdir}/cmake/FreeRDP-Client%{major_version}
%{_libdir}/cmake/FreeRDP-Server%{major_version}
%{_libdir}/cmake/FreeRDP-Shadow%{major_version}
-%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyConfig.cmake
-%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyConfigVersion.cmake
-%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyTargets-relwithdebinfo.cmake
-%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyTargets.cmake
-%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsConfig.cmake
-%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsConfigVersion.cmake
-%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsTargets-relwithdebinfo.cmake
-%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsTargets.cmake
%{_includedir}/%{name}%{major_version}
%{_libdir}/lib%{name}*.so
%{_libdir}/pkgconfig/%{name}%{major_version}.pc
%{_libdir}/pkgconfig/%{name}-client%{major_version}.pc
%{_libdir}/pkgconfig/%{name}-server%{major_version}.pc
%{_libdir}/pkgconfig/%{name}-shadow%{major_version}.pc
-%{_libdir}/pkgconfig/%{name}-server-proxy%{major_version}.pc
%files -n libwinpr%{libfreerdp_package}
%license LICENSE
@@ -425,15 +342,3 @@
%{_libdir}/libuwac%{uwac_version}.so
%{_libdir}/pkgconfig/uwac%{uwac_version}.pc
-%files -n librdtk%{rdtk_package}
-%{_libdir}/librdtk%{rdtk_version}.so.*
-
-%files -n rdtk%{rdtk_package}-devel
-%{_libdir}/cmake/rdtk%{rdtk_version}
-%{_includedir}/rdtk%{rdtk_version}
-%{_libdir}/librdtk%{rdtk_version}.so
-%{_libdir}/pkgconfig/rdtk%{rdtk_version}.pc
-
-%files -n lib%{name}-server-proxy%{libfreerdp_package}
-%{_libdir}/libfreerdp-server-proxy%{major_version}.so.*
-
++++++ 0001-Make-H.264-codec-optional-during-runtime.patch ++++++
From 24b8b4e5df644ba77c673c41b90cc48c4358aaa0 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fvogt(a)suse.de>
Date: Thu, 2 Dec 2021 15:50:08 +0100
Subject: [PATCH] Make H.264 codec optional during runtime
It's possible that FreeRDP was built against FFmpeg, but it doesn't support
H.264. In that case, just continue without H.264 support instead of failing
hard before even trying to connect.
This is especially useful for Linux distributions which can't ship H.264
support in FFmpeg out of the box (patent issues), but allow enabling H.264
later by installing a version of FFmpeg which has it enabled.
---
libfreerdp/core/codecs.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
Index: FreeRDP-2.4.1/libfreerdp/core/codecs.c
===================================================================
--- FreeRDP-2.4.1.orig/libfreerdp/core/codecs.c
+++ FreeRDP-2.4.1/libfreerdp/core/codecs.c
@@ -106,10 +106,7 @@ BOOL freerdp_client_codecs_prepare(rdpCo
if (!(codecs->h264 = h264_context_new(FALSE)))
{
- WLog_ERR(TAG, "Failed to create h264 codec context");
-#ifndef WITH_OPENH264_LOADING
- return FALSE;
-#endif
+ WLog_WARN(TAG, "Failed to create h264 codec context");
}
}
#endif
++++++ FreeRDP-3.0.0.tar.gz -> FreeRDP-2.11.2.tar.gz ++++++
/work/SRC/openSUSE:Factory/freerdp/FreeRDP-3.0.0.tar.gz /work/SRC/openSUSE:Factory/.freerdp.new.1840/FreeRDP-2.11.2.tar.gz differ: char 13, line 1
++++++ freerdp-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.UTHtgo/_old 2023-12-21 08:43:31.758030504 +0100
+++ /var/tmp/diff_new_pack.UTHtgo/_new 2023-12-21 08:43:31.762030650 +0100
@@ -1,2 +1,2 @@
-addFilter("binary-or-shlib-calls-gethostbyname /usr/lib64/libwinpr3.so")
+addFilter("binary-or-shlib-calls-gethostbyname /usr/lib64/libwinpr2.so")
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2023-12-21 03:07:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Thu Dec 21 03:07:29 2023 rev:3846 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.3quM0X/_old 2023-12-21 03:07:33.971647780 +0100
+++ /var/tmp/diff_new_pack.3quM0X/_new 2023-12-21 03:07:33.975647926 +0100
@@ -1230,7 +1230,6 @@
<repopackage name="libhidapi-hidraw0"/>
<repopackage name="libhiredis1_1_0"/>
<repopackage name="libhogweed6"/>
- <repopackage name="libhugetlbfs"/>
<repopackage name="libhunspell-1_7-0"/>
<repopackage name="libhwy1"/>
<repopackage name="libhyphen0"/>
openSUSE-cd-mini-x86_64.kiwi: same change
++++++ openSUSE-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.3quM0X/_old 2023-12-21 03:07:34.019649529 +0100
+++ /var/tmp/diff_new_pack.3quM0X/_new 2023-12-21 03:07:34.023649674 +0100
@@ -614,8 +614,6 @@
<repopackage name="gnome-packagekit-lang"/>
<repopackage name="gnome-photos"/>
<repopackage name="gnome-photos-lang"/>
- <repopackage name="gnome-remote-desktop"/>
- <repopackage name="gnome-remote-desktop-lang"/>
<repopackage name="gnome-session"/>
<repopackage name="gnome-session-core"/>
<repopackage name="gnome-session-default-session"/>
@@ -1514,7 +1512,6 @@
<repopackage name="libfreecell-solver0"/>
<repopackage name="libfreehand-0_1-1"/>
<repopackage name="libfreeipmi17"/>
- <repopackage name="libfreerdp2-2"/>
<repopackage name="libfreetype6"/>
<repopackage name="libfreshclam2"/>
<repopackage name="libfribidi0"/>
@@ -1726,7 +1723,6 @@
<repopackage name="libhogweed6"/>
<repopackage name="libhogweed6-32bit"/>
<repopackage name="libhogweed6-x86-64-v3"/>
- <repopackage name="libhugetlbfs"/>
<repopackage name="libhunspell-1_7-0"/>
<repopackage name="libhwasan0"/>
<repopackage name="libhwy1"/>
@@ -2640,7 +2636,6 @@
<repopackage name="libtss2-rc0"/>
<repopackage name="libtss2-sys1"/>
<repopackage name="libtss2-tcti-device0"/>
- <repopackage name="libtss2-tctildr0"/>
<repopackage name="libtukit4"/>
<repopackage name="libtumbler-1-0"/>
<repopackage name="libtwolame0"/>
@@ -2713,7 +2708,6 @@
<repopackage name="libvlccore9"/>
<repopackage name="libvmaf1"/>
<repopackage name="libvmtools0"/>
- <repopackage name="libvncserver1"/>
<repopackage name="libvo-amrwbenc0"/>
<repopackage name="libvorbis0"/>
<repopackage name="libvorbis0-x86-64-v3"/>
@@ -2738,7 +2732,6 @@
<repopackage name="libwebpdemux2"/>
<repopackage name="libwebpmux3"/>
<repopackage name="libwebrtc-audio-processing-1-3"/>
- <repopackage name="libwinpr2-2"/>
<repopackage name="libwireplumber-0_4-0"/>
<repopackage name="libwmf-0_2-7"/>
<repopackage name="libwmf-tools"/>
openSUSE-ftp-ftp-x86_64.kiwi: same change
stub.kiwi: same change
++++++ dvd.group ++++++
--- /var/tmp/diff_new_pack.3quM0X/_old 2023-12-21 03:07:34.163654774 +0100
+++ /var/tmp/diff_new_pack.3quM0X/_new 2023-12-21 03:07:34.167654920 +0100
@@ -617,8 +617,6 @@
<package name="gnome-packagekit-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-sw_management_gnome -->
<package name="gnome-photos" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="gnome-photos-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
- <package name="gnome-remote-desktop" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
- <package name="gnome-remote-desktop-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="gnome-session" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="gnome-session-core" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="gnome-session-default-session" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
@@ -1848,7 +1846,6 @@
<package name="libfreecell-solver0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde -->
<package name="libfreehand-0_1-1" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libfreeipmi17" supportstatus="unsupported"/> <!-- reason: dvd:ipmitool -->
- <package name="libfreerdp2-2" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libfreetype6" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libfreshclam2" supportstatus="unsupported"/> <!-- reason: dvd:patterns-server-mail_server -->
<package name="libfribidi0" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
@@ -2056,7 +2053,6 @@
<package name="libhogweed6" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libhogweed6-32bit" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
<package name="libhogweed6-x86-64-v3" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
- <package name="libhugetlbfs" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
<package name="libhunspell-1_7-0" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libhwasan0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-base-console -->
<package name="libhwy1" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
@@ -2675,7 +2671,6 @@
<package name="libtss2-rc0" supportstatus="unsupported"/> <!-- reason: dvd:grub2 -->
<package name="libtss2-sys1" supportstatus="unsupported"/> <!-- reason: dvd:grub2 -->
<package name="libtss2-tcti-device0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_cd_core -->
- <package name="libtss2-tctildr0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libtukit4" supportstatus="unsupported"/> <!-- reason: dvd:patterns-base-transactional_base -->
<package name="libtumbler-1-0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-xfce-xfce -->
<package name="libtwolame0" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
@@ -2747,7 +2742,6 @@
<package name="libvlccore9" supportstatus="unsupported"/> <!-- reason: dvd:patterns-kde-kde_multimedia -->
<package name="libvmaf1" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libvmtools0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_cd_core -->
- <package name="libvncserver1" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libvo-amrwbenc0" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libvorbis0" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libvorbis0-x86-64-v3" supportstatus="unsupported"/> <!-- reason: dvd:patterns-media-rest_dvd -->
@@ -2772,7 +2766,6 @@
<package name="libwebpdemux2" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libwebpmux3" supportstatus="unsupported"/> <!-- reason: dvd:openSUSE-release -->
<package name="libwebrtc-audio-processing-1-3" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
- <package name="libwinpr2-2" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libwireplumber-0_4-0" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libwmf-0_2-7" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libwmf-tools" supportstatus="unsupported"/> <!-- reason: common_locks:expansion -->
++++++ opensuse_microos.group ++++++
--- /var/tmp/diff_new_pack.3quM0X/_old 2023-12-21 03:07:34.247657834 +0100
+++ /var/tmp/diff_new_pack.3quM0X/_new 2023-12-21 03:07:34.251657980 +0100
@@ -1449,7 +1449,6 @@
<package name="libhidapi-hidraw0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:patterns-microos-base -->
<package name="libhiredis1_1_0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:patterns-microos-alt_onlyDVD -->
<package name="libhogweed6" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
- <package name="libhugetlbfs" supportstatus="unsupported"/> <!-- reason: opensuse_microos:patterns-microos-onlyDVD -->
<package name="libhunspell-1_7-0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
<package name="libhwy1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
<package name="libhyphen0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.3quM0X/_old 2023-12-21 03:07:34.291659437 +0100
+++ /var/tmp/diff_new_pack.3quM0X/_new 2023-12-21 03:07:34.299659728 +0100
@@ -4173,6 +4173,8 @@
- freerdp
- freerdp-devel
- freerdp-proxy
+ - freerdp-proxy-plugins
+ - freerdp-sdl
- freerdp-server
- freerdp-wayland
- freesrp-devel
@@ -6783,6 +6785,8 @@
- gnome-radio-lang
- gnome-recipes
- gnome-recipes-lang
+ - gnome-remote-desktop
+ - gnome-remote-desktop-lang
- gnome-robots
- gnome-robots-lang
- gnome-screenshot
@@ -11948,6 +11952,8 @@
- libfreehand-tools
- libfreeimage3
- libfreeimageplus3
+ - libfreerdp-server-proxy3-3
+ - libfreerdp3-3
- libfreesrp0
- libfreetype6-32bit
- libfreexl1
@@ -12548,6 +12554,7 @@
- libhttrack2
- libhubbub-devel
- libhubbub0
+ - libhugetlbfs
- libhugetlbfs-devel
- libhugetlbfs-tests
- libhunspell-1_7-0-32bit
@@ -14379,6 +14386,7 @@
- librdkafka-devel
- librdmacm-utils
- librdmacm1-32bit
+ - librdtk0-0
- libre16
- libre2-11
- libreadline-java
@@ -15427,6 +15435,7 @@
- libvmmalloc1
- libvmtools-devel
- libvncclient1
+ - libvncserver1
- libvo-amrwbenc-devel
- libvo-amrwbenc0-32bit
- libvoikko-devel
@@ -15534,6 +15543,7 @@
- libwiiuse0
- libwim15
- libwind0
+ - libwinpr3-3
- libwireshark17
- libwiretap14
- libwlroots10
@@ -22808,6 +22818,7 @@
- python310-QtAwesome
- python310-QtPy
- python310-QtPy-test
+ - python310-RangeHTTPServer
- python310-RegexOrder
- python310-Routes
- python310-Rtree
@@ -26321,6 +26332,7 @@
- python311-QtAwesome
- python311-QtPy
- python311-QtPy-test
+ - python311-RangeHTTPServer
- python311-RegexOrder
- python311-Routes
- python311-Rtree
@@ -29710,6 +29722,7 @@
- python39-QtAwesome
- python39-QtPy
- python39-QtPy-test
+ - python39-RangeHTTPServer
- python39-RegexOrder
- python39-Routes
- python39-Rtree
@@ -33792,6 +33805,7 @@
- rdma-core-devel-32bit
- rds-tools
- rds-tools-devel
+ - rdtk0-0-devel
- re-devel
- re2-10-devel
- re2-devel
@@ -35132,7 +35146,9 @@
- swingx-javadoc
- swipl
- switch_sles_sle-hpc
+ - switcheroo
- switcheroo-control-doc
+ - switcheroo-lang
- sword
- sword-devel
- swtcalendar
@@ -44919,7 +44935,10 @@
- uget-integrator
- uget-lang
- ugrep
+ - ugrep-bash-completion
+ - ugrep-fish-completion
- ugrep-indexer
+ - ugrep-zsh-completion
- uhd-devel
- uhd-doc
- uhd-firmware
1
0
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 2023-12-21 03:07:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.1840 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Thu Dec 21 03:07:27 2023 rev:2656 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
Kalpa-release.spec: same change
MicroOS-release.spec: same change
openSUSE-Addon-NonOss-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.dDczG6/_old 2023-12-21 03:07:30.767531066 +0100
+++ /var/tmp/diff_new_pack.dDczG6/_new 2023-12-21 03:07:30.775531358 +0100
@@ -12519,6 +12519,8 @@
Provides: weakremover(libfprint0-32bit)
Provides: weakremover(libframe6-32bit)
Provides: weakremover(libframecpp)
+Provides: weakremover(libfreerdp2)
+Provides: weakremover(libfreerdp2-2)
Provides: weakremover(libfrrgrpc_pb0)
Provides: weakremover(libfsm0)
Provides: weakremover(libfst-hfst0)
@@ -17127,6 +17129,8 @@
Provides: weakremover(libweston-desktop-9-0)
Provides: weakremover(libwget0)
Provides: weakremover(libwget1)
+Provides: weakremover(libwinpr2)
+Provides: weakremover(libwinpr2-2)
Provides: weakremover(libwireshark10)
Provides: weakremover(libwireshark12)
Provides: weakremover(libwireshark13)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2023-12-20 21:06:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Wed Dec 20 21:06:37 2023 rev:3845 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.660263415 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.664263560 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__MicroOS___20231219" schemaversion="4.1">
+<image name="OBS__MicroOS___20231220" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231219</productvar>
+ <productvar name="VERSION">20231220</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231219,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231220,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231219/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231220/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-Addon-NonOss-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.692264579 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.696264724 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20231219" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20231220" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231219</productvar>
+ <productvar name="VERSION">20231220</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231219,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231220,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.716265452 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.720265597 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231219" schemaversion="4.1">
+<image name="OBS__openSUSE___20231220" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231219</productvar>
+ <productvar name="VERSION">20231220</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231219,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231219/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
openSUSE-dvd5-dvd-x86_64.kiwi: same change
++++++ openSUSE-ftp-ftp-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.760267053 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.764267199 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231219" schemaversion="4.1">
+<image name="OBS__openSUSE___20231220" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -20,7 +20,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231219-i586</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231220-i586</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231219</productvar>
+ <productvar name="VERSION">20231220</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231219,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231219/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.784267926 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.784267926 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231219" schemaversion="4.1">
+<image name="OBS__openSUSE___20231220" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231219-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231220-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231219</productvar>
+ <productvar name="VERSION">20231220</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231219,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231220,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231219/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231220/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ Aeon.product ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.820269235 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.824269382 +0100
@@ -6,7 +6,7 @@
<name>Aeon</name>
<releasepkgname>Aeon-release</releasepkgname>
<endoflife/>
- <version>20231219</version>
+ <version>20231220</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Aeon</productline>
++++++ Kalpa.product ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.836269818 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.840269963 +0100
@@ -6,7 +6,7 @@
<name>Kalpa</name>
<releasepkgname>Kalpa-release</releasepkgname>
<endoflife/>
- <version>20231219</version>
+ <version>20231220</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Kalpa</productline>
++++++ MicroOS.product ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.856270545 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.860270691 +0100
@@ -6,7 +6,7 @@
<name>MicroOS</name>
<releasepkgname>MicroOS-release</releasepkgname>
<endoflife/>
- <version>20231219</version>
+ <version>20231220</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>MicroOS</productline>
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.940273602 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.944273747 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.Feas9Q/_old 2023-12-20 21:06:44.964274474 +0100
+++ /var/tmp/diff_new_pack.Feas9Q/_new 2023-12-20 21:06:44.964274474 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<productline>openSUSE</productline>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000update-repos for openSUSE:Factory checked in at 2023-12-20 21:06:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000update-repos (Old)
and /work/SRC/openSUSE:Factory/.000update-repos.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000update-repos"
Wed Dec 20 21:06:36 2023 rev:2402 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
Old:
----
factory_20231206_and_before.packages.zst
factory_20231207.packages.zst
factory_20231208.packages.zst
factory_20231210.packages.zst
factory_20231211.packages.zst
factory_20231212.packages.zst
factory_20231213.packages.zst
factory_20231214.packages.zst
factory_20231215.packages.zst
factory_20231217.packages.zst
factory_20231218.packages.zst
New:
----
factory:non-oss_3844.2.packages.zst
factory_20231218_and_before.packages.zst
factory_20231219.packages.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
1
0
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 2023-12-20 21:06:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Wed Dec 20 21:06:34 2023 rev:2655 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Aeon-release.spec ++++++
--- /var/tmp/diff_new_pack.mtYzRd/_old 2023-12-20 21:06:37.800013834 +0100
+++ /var/tmp/diff_new_pack.mtYzRd/_new 2023-12-20 21:06:37.804013980 +0100
@@ -17,7 +17,7 @@
Name: Aeon-release
-Version: 20231219
+Version: 20231220
Release: 0
Summary: openSUSE Aeon
License: GPL-2.0-or-later
@@ -172,9 +172,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = Aeon
-Provides: product(Aeon) = 20231219-0
+Provides: product(Aeon) = 20231220-0
Provides: product-label() = openSUSE%20Aeon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aaeon%3A20231219
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aaeon%3A20231220
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(Aeon)
@@ -190,7 +190,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(Aeon) = 20231219-0
+Provides: product_flavor(Aeon) = 20231220-0
Summary: openSUSE Aeon%{?betaversion: %{betaversion}}
%description appliance
@@ -255,11 +255,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>Aeon</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:aeon:20231219</cpeid>
+ <cpeid>cpe:/o:opensuse:aeon:20231220</cpeid>
<productline>Aeon</productline>
<register>
<pool>
++++++ Kalpa-release.spec ++++++
--- /var/tmp/diff_new_pack.mtYzRd/_old 2023-12-20 21:06:37.828014854 +0100
+++ /var/tmp/diff_new_pack.mtYzRd/_new 2023-12-20 21:06:37.832014999 +0100
@@ -17,7 +17,7 @@
Name: Kalpa-release
-Version: 20231219
+Version: 20231220
Release: 0
Summary: openSUSE Kalpa
License: GPL-2.0-or-later
@@ -172,9 +172,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = Kalpa
-Provides: product(Kalpa) = 20231219-0
+Provides: product(Kalpa) = 20231220-0
Provides: product-label() = openSUSE%20Kalpa
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Akalpa%3A20231219
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Akalpa%3A20231220
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(Kalpa)
@@ -190,7 +190,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(Kalpa) = 20231219-0
+Provides: product_flavor(Kalpa) = 20231220-0
Summary: openSUSE Kalpa%{?betaversion: %{betaversion}}
%description appliance
@@ -255,11 +255,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>Kalpa</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:kalpa:20231219</cpeid>
+ <cpeid>cpe:/o:opensuse:kalpa:20231220</cpeid>
<productline>Kalpa</productline>
<register>
<pool>
++++++ MicroOS-release.spec ++++++
--- /var/tmp/diff_new_pack.mtYzRd/_old 2023-12-20 21:06:37.860016017 +0100
+++ /var/tmp/diff_new_pack.mtYzRd/_new 2023-12-20 21:06:37.860016017 +0100
@@ -17,7 +17,7 @@
Name: MicroOS-release
-Version: 20231219
+Version: 20231220
Release: 0
Summary: openSUSE MicroOS
License: GPL-2.0-or-later
@@ -177,9 +177,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = MicroOS
-Provides: product(MicroOS) = 20231219-0
+Provides: product(MicroOS) = 20231220-0
Provides: product-label() = openSUSE%20MicroOS
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20231219
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20231220
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)
@@ -195,7 +195,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(MicroOS) = 20231219-0
+Provides: product_flavor(MicroOS) = 20231220-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description dvd
@@ -211,7 +211,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(MicroOS) = 20231219-0
+Provides: product_flavor(MicroOS) = 20231220-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description appliance
@@ -276,11 +276,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>MicroOS</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:microos:20231219</cpeid>
+ <cpeid>cpe:/o:opensuse:microos:20231220</cpeid>
<productline>MicroOS</productline>
<register>
<pool>
++++++ openSUSE-Addon-NonOss-release.spec ++++++
--- /var/tmp/diff_new_pack.mtYzRd/_old 2023-12-20 21:06:37.888017036 +0100
+++ /var/tmp/diff_new_pack.mtYzRd/_new 2023-12-20 21:06:37.888017036 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package openSUSE-Addon-NonOss-release (Version 20231219)
+# spec file for package openSUSE-Addon-NonOss-release (Version 20231220)
#
# Copyright (c) 2023 openSUSE.
#
@@ -16,7 +16,7 @@
Name: openSUSE-Addon-NonOss-release
%define product openSUSE-Addon-NonOss
Summary: openSUSE NonOSS Addon%{?betaversion: %{betaversion}}
-Version: 20231219
+Version: 20231220
#!BcntSyncTag: openSUSE-Addon-NonOss
Release: 0
License: BSD-3-Clause
@@ -25,9 +25,9 @@
Provides: %name-%version
Provides: product() = openSUSE%2DAddon%2DNonOss
-Provides: product(openSUSE-Addon-NonOss) = 20231219-0
+Provides: product(openSUSE-Addon-NonOss) = 20231220-0
Provides: product-label() = non%20oss%20addon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20231219
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20231220
AutoReqProv: on
@@ -50,10 +50,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20231219</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20231220</cpeid>
<register>
<pool>
</pool>
++++++ openSUSE-release.spec ++++++
--- /var/tmp/diff_new_pack.mtYzRd/_old 2023-12-20 21:06:37.912017910 +0100
+++ /var/tmp/diff_new_pack.mtYzRd/_new 2023-12-20 21:06:37.912017910 +0100
@@ -20,7 +20,7 @@
#define betaversion %{nil}
%define codename Tumbleweed
Name: openSUSE-release
-Version: 20231219
+Version: 20231220
Release: 0
# 0 is the product release, not the build release of this package
Summary: openSUSE Tumbleweed
@@ -184,7 +184,7 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = openSUSE
-Provides: product(openSUSE) = 20231219-0
+Provides: product(openSUSE) = 20231220-0
%ifarch x86_64
Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64
%endif
@@ -198,7 +198,7 @@
Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64
%endif
Provides: product-label() = openSUSE
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20231219
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20231220
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)
@@ -212,7 +212,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(ftp)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description ftp
@@ -227,7 +227,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(mini)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description mini
@@ -242,7 +242,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description dvd
@@ -257,7 +257,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-kde)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-kde
@@ -272,7 +272,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-x11)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-x11
@@ -287,7 +287,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-gnome)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-gnome
@@ -302,7 +302,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-xfce)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-xfce
@@ -317,7 +317,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-kde)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-kde
@@ -332,7 +332,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-gnome)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-gnome
@@ -347,7 +347,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-x11)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-x11
@@ -362,7 +362,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance
@@ -377,7 +377,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-docker)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-docker
@@ -392,7 +392,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-kvm)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-kvm
@@ -407,7 +407,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vmware)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vmware
@@ -422,7 +422,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-openstack)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-openstack
@@ -437,7 +437,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-hyperv)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-hyperv
@@ -452,7 +452,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vagrant)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vagrant
@@ -467,7 +467,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-wsl)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-wsl
@@ -482,7 +482,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-custom)
-Provides: product_flavor(openSUSE) = 20231219-0
+Provides: product_flavor(openSUSE) = 20231220-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-custom
@@ -562,10 +562,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231219</version>
+ <version>20231220</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse:20231219</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse:20231220</cpeid>
<productline>openSUSE</productline>
<register>
<target>openSUSE-Tumbleweed-x86_64</target>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package warewulf for openSUSE:Factory checked in at 2023-12-20 21:03:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/warewulf (Old)
and /work/SRC/openSUSE:Factory/.warewulf.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "warewulf"
Wed Dec 20 21:03:42 2023 rev:9 rq:1134309 version:3.8.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/warewulf/warewulf.changes 2023-12-07 19:13:12.781473198 +0100
+++ /work/SRC/openSUSE:Factory/.warewulf.new.9037/warewulf.changes 2023-12-20 21:03:53.102022022 +0100
@@ -1,0 +2,6 @@
+Wed Dec 20 15:10:15 UTC 2023 - Christian Goll <cgoll(a)suse.com>
+
+- added make-build-of-cpio-reproduceable.patch to make cpio files
+ reproduceableb (bsc#1217973)
+
+-------------------------------------------------------------------
New:
----
make-build-of-cpio-reproduceable.patch
BETA DEBUG BEGIN:
New:
- added make-build-of-cpio-reproduceable.patch to make cpio files
reproduceableb (bsc#1217973)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ warewulf.spec ++++++
--- /var/tmp/diff_new_pack.eVh7Ub/_old 2023-12-20 21:03:54.346067281 +0100
+++ /var/tmp/diff_new_pack.eVh7Ub/_new 2023-12-20 21:03:54.346067281 +0100
@@ -86,6 +86,7 @@
Patch42: vnfs-Do-not-pull-in-recommended-packages-on-SUSE.patch
Patch43: Add-suse-to-overlay-template.patch
Patch44: vnfs-On-SUSE-don-t-copy-repository-information-into-chroot.patch
+Patch45: make-build-of-cpio-reproduceable.patch
%if "%{?flavor}" != "common"
BuildRequires: bsdtar
@@ -420,6 +421,8 @@
%patch32 -p1
%patch33 -p1
%patch34 -p1
+# reproduceable
+%patch45 -p1
%build
%if "%{?flavor}" == "common"
++++++ make-build-of-cpio-reproduceable.patch ++++++
From 486ca00222e5211f2b67cc78cc8d73d3e1890997 Mon Sep 17 00:00:00 2001
From: Christian Goll <cgoll(a)suse.com>
Date: Wed, 20 Dec 2023 16:07:33 +0100
Subject: [PATCH] make build of cpio reproduceable
Signed-off-by: Christian Goll <cgoll(a)suse.com>
---
provision/initramfs/capabilities/transport-http/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/provision/initramfs/capabilities/transport-http/Makefile.am b/provision/initramfs/capabilities/transport-http/Makefile.am
index ad36b10..a9e76e2 100644
--- a/provision/initramfs/capabilities/transport-http/Makefile.am
+++ b/provision/initramfs/capabilities/transport-http/Makefile.am
@@ -16,7 +16,7 @@ rootfs:
done
capability.cpio: rootfs
- cd rootfs/; find . | cpio -o -H newc -F ../capability.cpio
+ cd rootfs/; find . | xargs touch -d @1690848000 ; find . | sort | cpio -o -H newc -F ../capability.cpio
install-data-local: capability.cpio
install -d -m 755 $(DESTDIR)/$(WAREWULF_STATEDIR)/warewulf/initramfs/$(MACHINE)/capabilities
--
2.42.1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package vifm-colors for openSUSE:Factory checked in at 2023-12-20 21:03:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vifm-colors (Old)
and /work/SRC/openSUSE:Factory/.vifm-colors.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vifm-colors"
Wed Dec 20 21:03:29 2023 rev:8 rq:1134278 version:0.13
Changes:
--------
--- /work/SRC/openSUSE:Factory/vifm-colors/vifm-colors.changes 2022-09-19 16:03:21.122152812 +0200
+++ /work/SRC/openSUSE:Factory/.vifm-colors.new.9037/vifm-colors.changes 2023-12-20 21:03:49.701898323 +0100
@@ -1,0 +2,8 @@
+Wed Dec 20 14:48:09 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 0.13:
+ * Add new color scheme: truedark
+ * Add new color scheme: afterglow
+ * Fix invalid cterm=default in astrell.vifm
+
+-------------------------------------------------------------------
@@ -5,6 +13,6 @@
- Add new color scheme: ansa
- Add new color scheme: monochrome
- Add new color scheme: crown_24bit
- Add new color scheme: nord
- Add new color scheme: fargo
- Add new color scheme: paper
+ * Add new color scheme: ansa
+ * Add new color scheme: monochrome
+ * Add new color scheme: crown_24bit
+ * Add new color scheme: nord
+ * Add new color scheme: fargo
+ * Add new color scheme: paper
Old:
----
v0.12.tar.gz
New:
----
v0.13.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vifm-colors.spec ++++++
--- /var/tmp/diff_new_pack.uJMYc1/_old 2023-12-20 21:03:50.237917824 +0100
+++ /var/tmp/diff_new_pack.uJMYc1/_new 2023-12-20 21:03:50.237917824 +0100
@@ -1,7 +1,7 @@
#
# spec file for package vifm-colors
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: vifm-colors
-Version: 0.12
+Version: 0.13
Release: 0
Summary: Color themes for vifm
License: GPL-2.0-only
++++++ v0.12.tar.gz -> v0.13.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vifm-colors-0.12/ChangeLog new/vifm-colors-0.13/ChangeLog
--- old/vifm-colors-0.12/ChangeLog 2022-09-18 23:03:52.000000000 +0200
+++ new/vifm-colors-0.13/ChangeLog 2023-12-20 15:44:30.000000000 +0100
@@ -1,3 +1,8 @@
+0.12 to 0.13 (2023-12-20)
+ Add new color scheme: truedark (Thanks bratpeki)
+ Add new color scheme: afterglow (Thanks RomiC)
+ Fix invalid cterm=default in astrell.vifm (Thanks xaizek)
+
0.11 to 0.12 (2022-09-18)
Add new color scheme: ansa (Thanks savchenko)
Add new color scheme: monochrome (Thanks qsmodo)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vifm-colors-0.12/README.md new/vifm-colors-0.13/README.md
--- old/vifm-colors-0.12/README.md 2022-09-18 23:03:52.000000000 +0200
+++ new/vifm-colors-0.13/README.md 2023-12-20 15:44:30.000000000 +0100
@@ -2,6 +2,7 @@
[![Packaging status](https://repology.org/badge/tiny-repos/vifm-colors.svg)](https://rep…
Various colorschemes for [vifm](https://vifm.info/):
+- afterglow (by romic)
- ansa (by savchenko)
- astrell (by astrell)
- crown_24bit (by hombrey)
@@ -33,6 +34,7 @@
- snowwhite (by durcheinandr)
- solarized-dark
- solarized-light (by ayroblu)
+- truedark (by bratpeki)
- zenburn
- zenburn_1 (by frgm)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vifm-colors-0.12/afterglow.vifm new/vifm-colors-0.13/afterglow.vifm
--- old/vifm-colors-0.12/afterglow.vifm 1970-01-01 01:00:00.000000000 +0100
+++ new/vifm-colors-0.13/afterglow.vifm 2023-12-20 15:44:30.000000000 +0100
@@ -0,0 +1,44 @@
+" afterglow
+" by danilo-augusto
+"
+" afterglow color scheme converted from the one for vim
+" by romic
+
+" Reset all styles first
+highlight clear
+
+highlight Win cterm=none ctermfg=253 ctermbg=default
+
+highlight TabLine cterm=none ctermfg=default ctermbg=239
+highlight TabLineSel cterm=none ctermfg=default ctermbg=235
+
+highlight TopLine cterm=none ctermfg=243 ctermbg=default
+highlight TopLineSel cterm=none ctermfg=253 ctermbg=default
+
+highlight JobLine cterm=bold,inverse ctermfg=238 ctermbg=179
+highlight StatusLine cterm=bold,inverse ctermfg=238 ctermbg=179
+
+highlight Border cterm=none ctermfg=default ctermbg=default
+
+highlight CurrLine ctermfg=default ctermbg=default cterm=inverse
+highlight OtherLine ctermfg=default ctermbg=default cterm=none
+
+highlight LineNr ctermfg=243 ctermbg=default cterm=inverse
+
+highlight Selected cterm=none ctermfg=default ctermbg=60
+
+highlight CmpMismatch cterm=none ctermfg=179 ctermbg=225
+
+highlight SuggestBox cterm=none ctermfg=253 ctermbg=default
+highlight WildMenu cterm=none ctermfg=179 ctermbg=232
+
+highlight CmdLine cterm=none ctermfg=253 ctermbg=default
+highlight ErrorMsg ctermfg=Red ctermbg=default cterm=none
+
+highlight Directory cterm=none ctermfg=179 ctermbg=default
+highlight Executable cterm=none ctermfg=108 ctermbg=default
+highlight Socket cterm=none ctermfg=67 ctermbg=default
+highlight Device cterm=none ctermfg=67 ctermbg=default
+highlight Fifo cterm=none ctermfg=179 ctermbg=default
+highlight Link cterm=none ctermfg=139 ctermbg=default
+highlight BrokenLink cterm=none ctermfg=131 ctermbg=default
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vifm-colors-0.12/astrell.vifm new/vifm-colors-0.13/astrell.vifm
--- old/vifm-colors-0.12/astrell.vifm 2022-09-18 23:03:52.000000000 +0200
+++ new/vifm-colors-0.13/astrell.vifm 2023-12-20 15:44:30.000000000 +0100
@@ -24,7 +24,7 @@
highlight Executable cterm=bold ctermfg=23 ctermbg=default
highlight Selected cterm=bold ctermfg=default ctermbg=182
highlight CurrLine cterm=bold ctermfg=238 ctermbg=153
-highlight OtherLine cterm=default ctermfg=default ctermbg=default
+highlight OtherLine cterm=none ctermfg=default ctermbg=default
" overwrite some colors for root user
if $USER == 'root'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vifm-colors-0.12/truedark.vifm new/vifm-colors-0.13/truedark.vifm
--- old/vifm-colors-0.12/truedark.vifm 1970-01-01 01:00:00.000000000 +0100
+++ new/vifm-colors-0.13/truedark.vifm 2023-12-20 15:44:30.000000000 +0100
@@ -0,0 +1,30 @@
+" A true dark theme. For Vifm. Duh.
+" by bratpeki (@GitHub)
+" https://github.com/bratpeki/truedark-vifm
+
+highlight clear
+
+highlight Border ctermfg=238 ctermbg=248 cterm=none
+highlight BrokenLink ctermfg=9 ctermbg=0 cterm=none
+highlight CmdLine ctermfg=251 ctermbg=0
+highlight CurrLine ctermfg=none ctermbg=236 cterm=bold
+highlight Device ctermfg=202 ctermbg=0 cterm=none
+highlight Directory ctermfg=93 ctermbg=0 cterm=none
+highlight ErrorMsg ctermfg=9 ctermbg=black cterm=bold
+highlight Executable ctermfg=51 ctermbg=0 cterm=none
+highlight Fifo ctermfg=51 ctermbg=0 cterm=none
+highlight HardLink ctermfg=130 ctermbg=0 cterm=none
+highlight LineNr ctermfg=246 ctermbg=0 cterm=bold
+highlight Link ctermfg=214 ctermbg=0 cterm=none
+highlight OtherLine ctermfg=241 ctermbg=234 cterm=italic
+highlight OtherWin ctermfg=241 ctermbg=0 cterm=italic
+highlight Selected ctermfg=118 ctermbg=0 cterm=bold
+highlight Socket ctermfg=200 ctermbg=0 cterm=none
+highlight StatusLine ctermfg=238 ctermbg=248 cterm=none
+highlight SuggestBox ctermfg=118 ctermbg=0 cterm=bold
+highlight TabLine ctermfg=238 ctermbg=0 cterm=none
+highlight TabLineSel ctermfg=254 ctermbg=0 cterm=bold
+highlight TopLine ctermfg=238 ctermbg=248 cterm=none
+highlight TopLineSel ctermfg=238 ctermbg=248 cterm=none
+highlight WildMenu ctermfg=7 ctermbg=0 cterm=none
+highlight Win ctermfg=251 ctermbg=0 cterm=none
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package coreboot-utils for openSUSE:Factory checked in at 2023-12-20 21:03:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/coreboot-utils (Old)
and /work/SRC/openSUSE:Factory/.coreboot-utils.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "coreboot-utils"
Wed Dec 20 21:03:24 2023 rev:29 rq:1134217 version:4.22.01
Changes:
--------
--- /work/SRC/openSUSE:Factory/coreboot-utils/coreboot-utils.changes 2021-02-03 19:56:45.177749028 +0100
+++ /work/SRC/openSUSE:Factory/.coreboot-utils.new.9037/coreboot-utils.changes 2023-12-20 21:03:48.409851318 +0100
@@ -1,0 +2,54 @@
+Wed Nov 29 15:19:49 UTC 2023 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 4.22.01
+ Bugfix release
+ * fixed an uninitialized variable error on the
+ sandybridge/ivybridge platforms.
+
+-------------------------------------------------------------------
+Fri Nov 24 20:10:48 UTC 2023 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 4.22
+ * Full changelog:
+ https://coreboot.org/releases/coreboot-4.22-relnotes.txt
+
+-------------------------------------------------------------------
+Tue Aug 29 12:46:52 UTC 2023 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 4.21
+ * Full changelog:
+ https://coreboot.org/releases/coreboot-4.21-relnotes.txt
+ https://coreboot.org/releases/coreboot-4.20-relnotes.txt
+
+-------------------------------------------------------------------
+Sat Feb 4 17:45:00 UTC 2023 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 4.19
+ * Full changelog:
+ https://coreboot.org/releases/coreboot-4.19-relnotes.txt
+
+-------------------------------------------------------------------
+Sat Oct 22 13:23:24 UTC 2022 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 4.18
+ Changes since 4.10
+ * https://coreboot.org/releases/coreboot-4.18-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.17-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.16-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.15-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.14-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.13-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.12-relnotes.txt
+ * https://coreboot.org/releases/coreboot-4.11-relnotes.txt
+- Upstream removed some tools:
+ * util/k8resdump
+ * util/romcc
+ * util/viatool
+- Drop not longer needed patches:
+ * k8resdump.diff
+ * msrtool-fix-build-with-gcc-10.patch
+- Update coreboot-utils.keyring
+ -> 574CE6F6855CFDEB7D368E9D19796C2B3E4F7DF7
+ Martin Roth (coreboot developer) <martin(a)coreboot.org>
+
+-------------------------------------------------------------------
Old:
----
coreboot-4.10.tar.xz
coreboot-4.10.tar.xz.sig
k8resdump.diff
msrtool-fix-build-with-gcc-10.patch
New:
----
coreboot-4.22.01.tar.xz
coreboot-4.22.01.tar.xz.sig
BETA DEBUG BEGIN:
Old:- Drop not longer needed patches:
* k8resdump.diff
* msrtool-fix-build-with-gcc-10.patch
Old: * k8resdump.diff
* msrtool-fix-build-with-gcc-10.patch
- Update coreboot-utils.keyring
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ coreboot-utils.spec ++++++
--- /var/tmp/diff_new_pack.NsCa2X/_old 2023-12-20 21:03:49.273882752 +0100
+++ /var/tmp/diff_new_pack.NsCa2X/_new 2023-12-20 21:03:49.273882752 +0100
@@ -1,7 +1,7 @@
#
# spec file for package coreboot-utils
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: coreboot-utils
-Version: 4.10
+Version: 4.22.01
Release: 0
Summary: A universal flash programming utility
License: GPL-2.0-only
@@ -27,10 +27,9 @@
Source1: https://www.coreboot.org/releases/coreboot-%{version}.tar.xz.sig
Source3: %{name}.keyring
Patch1: no-pie.patch
-Patch2: k8resdump.diff
Patch3: do-explicit-fallthrough.patch
-Patch4: msrtool-fix-build-with-gcc-10.patch
BuildRequires: gcc-c++
+BuildRequires: libopenssl-devel
BuildRequires: pciutils-devel
BuildRequires: xz
BuildRequires: zlib-devel
@@ -45,30 +44,31 @@
%setup -q -n coreboot-%{version}
%if 0%{?suse_version} > 1320
%patch1 -p1
-%endif
-%patch2 -p1
-%if 0%{?suse_version} > 1320
%patch3 -p1
%endif
-%patch4 -p1
+
+# Upstream messed the timespamps in the tarball
+# Fix these for the 4.19 tarball
+find . | xargs touch
%build
make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/ectool
make %{?_smp_mflags} CC="cc %{optflags}" -C util/superiotool
make %{?_smp_mflags} CFLAGS="%{optflags} -DCMOS_HAL=1 -I." -C util/nvramtool
-make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/romcc romcc
make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/cbmem
make %{?_smp_mflags} CFLAGS="%{optflags} -I../../src/commonlib/include" -C util/ifdtool
-make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/cbfstool
-make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/k8resdump
+%ifarch x86_64
+make %{?_smp_mflags} -C util/cbfstool
+%endif
%ifarch %{ix86} x86_64
CXXFLAGS="$CXXFLAGS -fPIC"
CFLAGS="$CFLAGS -fPIC"
make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/inteltool
-make %{?_smp_mflags} CFLAGS="%{optflags}" -C util/intelmetool
+%ifarch x86_64
+make %{?_smp_mflags} -C util/cbfstool
make %{?_smp_mflags} HOSTCC="cc %{optflags}" -C util/amdfwtool
-make %{?_smp_mflags} CFLAGS="%{optflags} -I." -C util/viatool
-(cd util/msrtool && %configure && make %{?_smp_mflags})
+%endif
+(cd util/msrtool && %configure && make %{?_smp_mflags} )
%endif
%install
@@ -81,20 +81,16 @@
make %{?_smp_mflags} DESTDIR=%{buildroot} PREFIX=%{_prefix} -C util/superiotool install
make %{?_smp_mflags} DESTDIR=%{buildroot} PREFIX=%{_prefix} -C util/nvramtool install
make %{?_smp_mflags} DESTDIR=%{buildroot} PREFIX=%{_prefix} -C util/intelmetool install
-# ifdtool & viatool install targets try to install a nonexistent manpage...
+
install util/ifdtool/ifdtool %{buildroot}%{_bindir}
-install util/cbfstool/cbfstool %{buildroot}%{_bindir}
install util/cbmem/cbmem %{buildroot}%{_bindir}
-install util/romcc/romcc %{buildroot}%{_bindir}
-install -pm644 util/romcc/romcc.1 %{buildroot}%{_mandir}/man1/
-install util/k8resdump/k8resdump %{buildroot}%{_sbindir}
-install util/amdtools/*.pl %{buildroot}%{_sbindir}
-install util/amdtools/k8-read-mem-settings.sh %{buildroot}%{_sbindir}
%ifarch %{ix86} x86_64
make %{?_smp_mflags} DESTDIR=%{buildroot} PREFIX=%{_prefix} -C util/inteltool install
-install util/viatool/viatool %{buildroot}%{_bindir}
-install util/amdfwtool/amdfwtool %{buildroot}%{_sbindir}
make -C util/msrtool DESTDIR=%{buildroot} PREFIX=%{_prefix} install
+%ifarch x86_64
+install util/amdfwtool/amdfwtool %{buildroot}%{_sbindir}
+install util/cbfstool/cbfstool %{buildroot}%{_bindir}
+%endif
%endif
install -pm644 util/superiotool/README README.superiotool
@@ -102,11 +98,7 @@
install -pm644 util/nvramtool/README README.nvramtool
install -pm644 util/nvramtool/COPYING COPYING.nvramtool
install -pm644 util/nvramtool/DISCLAIMER DISCLAIMER.nvramtool
-install -pm644 util/romcc/COPYING COPYING.romcc
-install -pm644 util/amdtools/README README.amdtools
-cp -a util/amdtools/example_input example_input.amdtools
%ifarch %{ix86} x86_64
-install -pm644 util/viatool/README README.viatool
install -pm644 util/msrtool/COPYING COPYING.msrtool
%endif
@@ -116,24 +108,17 @@
%doc README.superiotool
%license COPYING.nvramtool
%doc README.nvramtool DISCLAIMER.nvramtool
-%doc README.amdtools example_input.amdtools
+%ifarch x86_64
%{_bindir}/cbfstool
+%{_sbindir}/amdfwtool
+%endif
%{_bindir}/cbmem
%{_bindir}/ifdtool
-%{_bindir}/romcc
-%{_bindir}/viatool
%{_sbindir}/ectool
%{_sbindir}/inteltool
%{_sbindir}/intelmetool
-%{_sbindir}/amdfwtool
-%{_sbindir}/k8-compare-pci-space.pl
-%{_sbindir}/k8-interpret-extended-memory-settings.pl
-%{_sbindir}/k8-read-mem-settings.sh
-%{_sbindir}/k8resdump
%{_sbindir}/msrtool
%{_sbindir}/nvramtool
-%{_sbindir}/parse-bkdg.pl
%{_sbindir}/superiotool
-%{_mandir}/man1/*
%{_mandir}/man8/*
++++++ coreboot-4.10.tar.xz -> coreboot-4.22.01.tar.xz ++++++
/work/SRC/openSUSE:Factory/coreboot-utils/coreboot-4.10.tar.xz /work/SRC/openSUSE:Factory/.coreboot-utils.new.9037/coreboot-4.22.01.tar.xz differ: char 26, line 1
++++++ coreboot-utils.keyring ++++++
--- /var/tmp/diff_new_pack.NsCa2X/_old 2023-12-20 21:03:49.321884498 +0100
+++ /var/tmp/diff_new_pack.NsCa2X/_new 2023-12-20 21:03:49.325884644 +0100
@@ -1,110 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
-mQINBFzbKnsBEADWwT4c+ciqS8dsryDxiGsABCct28RNyWDjpecrU8y1vUlFFsWV
-cZfEfBElZ29LoT84UKH1rMbdNcXACDf6xk64y4gIx7KxvuOxHkni4JLPz06KYHzq
-rVTcC3k8KY2d6FM5aa3fJNSlnU4rDY8g5sxDxuvMRd1DAaDCMQO9qqRLa9yw4Ur+
-DQgGg4YxtK0AQalk0AoDgUDFS4VamD9xgw7S5WmjwGahvIV1HyIg2G3vcPRBr6/b
-Z0eiuKAZrn8WXB7a7jdnpWX1sTLvze4E/HkNpqCfKy1VdZgi8dFlDouWpDpu+VVN
-HsZh+jRKAXEfydi+IC/2FhrrpY7nju+7BHUf1u3NNANi6va97iZ/hkFRZBBFInX5
-ku1dYIUqOW7pW9lWfuUKb3gnH7JSfl6OQ1kBuAPXgKqQ8WIEYd4EwPHfQtE86Yck
-ASi3euSEi6XOAZIcAGhEBdemd3OjlsxsG2SYDuCMiDm/7ydqCaNE/PPqQ4MDqSKy
-Xh9A2RQ+dmWpGYl8asiiLffDJMNw+oEkQNCCUVAKHeFBwPioz5gwltuS7AKMNXcE
-VzDK7cvmrjES3nKdp9vDIw7jfBJtRskzwWCn160hWlH4Ic7Q/+wBlkFygAA8t52V
-5/2e2etlkxSNdWyxBwEQPk2N95wI9zeAXXq3fKCdME9J9EP4+CTPlR06lQARAQAB
-tCNQYXRyaWNrIEdlb3JnaSA8cGdlb3JnaUBnb29nbGUuY29tPokCUwQTAQoAPRYh
-BH5hiHZpewhRzO+j16oQP0hyj1KRBQJc2yp7AhsBBQkB4TOABAsJCgQFFQoJCAMF
-FgIDAQACHgECF4AACgkQqhA/SHKPUpH0bhAAzjC74MUskVLnSpEGTKGOcc+Yw+UQ
-kgnqN+GXDnA/panq5VVdMJcefY14ji+wCy4+YvRhagRAil+PkxQ9ZSGC40Egxn/H
-ud4Tc5e3eFFjQ+kasiHEFVMwNtsAe92SvvGDis7uDeHNtNcIHifHDdZmqz5dH+Rx
-9o5MyBG7vR3srzxL6WzaQ37tlD4wiUCLoIrxz2fxg80i52GQLMibdc6rUirH73uy
-FvR98wZeiYkitle8qhcJjuqhgbhNWlHW4jbFM4Wwtg5yz2KDr8oAvatiUFCogAGN
-WjlQpbMfwunRPwhBSoNecOz4rCCp76MTxSr9Jl8iwPtNStddW78g/r62JKmfNNWO
-gaHjC7z7r86OGf5w1ugGEH5DNWRv/AKNP06l04HV2VWJQorCKgXRc/uuW1F6LBlQ
-cg7s2LFUNa5o31edmLyG5UfRzcsfADgb4goZuU8tWJTYQUcQYaspD9B7BRxkV5F9
-DQ3fLwDD+GuIwR2ciETBHOGtSgC2pQPhnIohVkSKppcvD73fvGzGnjPCZc0nULGN
-xIMFsfc5P7bTTUsdOFN4ahlgE+aI8duuJoCfm/9BpvR0xZ0l6lAp0scrAIH5D6lw
-wSgZCxI3OSyhe2MgJiljTAL8Frw4+dLBqxtllqGzyi5+sQ7Xomy/VtTmKIuHKUP9
-BX0MxIowKFmSYYS5Ag0EXNst6gEQALPSB85iX1wZF2p9bJUt2LQf6Om5keRpGKu/
-Fgphwj3ZeqmkJTc0gYhYI5m1tr8EBzquFcdiysjPKGQI056zpW7ruRd7bZalllTC
-1c7UT2uYkeKaf39R1WBSH/yX+idY/qfoU5ghjKAdnqXGtgWOALiANFISVdlIrFLu
-0X6s8CcJAE0tLdLdykR8duJwBlmVHJfqHcvOhKpoDrLFRw23/mTCwF9zTYwFnxHg
-ivPFl8HwAUhAjwpGdjZURKyBQiN6IT26qkUtJPsn+/aXySSkyuMI/WU0PhCRsdRb
-/FPXt77v4h5EYmqNfuznRiEIAWYfcSAfSXmQnZRmzTErLZ53JYBrwr1yuhy2w6cX
-eIxuK+YxgK/Mc3QGEN7sawsJ+nGjiYdpEszCFg4Al/IudMAZXkYYRMEY0Ewkb2D4
-qSx7S7qQamBQYIq3135CRgmiVG92sKWrH1pqBjv6+37FuOi12HzSohkNopd5li+J
-VuNKsbjWfbcRzfk0nI0/EQbMjsUonaZoQWdtbz9GESsh9mLhjc479JFwkueILDyV
-3D/kN4WpL3tFbZqn7p/NbwA1KYIN3nv6z4EWH/ps7PbuzoTHXS0MR2b26oTurFkg
-xjU4jvGBwip+7y1PpoTXWW50tPWqutuRY+p64iM9Nx2RP9Ck2olx35C4tmNWP1yg
-6v6tDrUrABEBAAGJBHIEGAEKACYWIQR+YYh2aXsIUczvo9eqED9Ico9SkQUCXNst
-6gIbAgUJAeEzgAJACRCqED9Ico9SkcF0IAQZAQoAHRYhBD1wV1jkHrF6PSh1SUEF
-DoGNy5BXBQJc2y3qAAoJEEEFDoGNy5BXqtkP/jZUN4WYuiRmKR1vVfSVtAYLv+4d
-Ed6SXfRWVJ8t3Cn3IJzA+hi6s8D2YE1JTevyzFbECwHy9z606WysAMPthwbW/6Pb
-oJkb8SFq9umyw/xI/jCu1Ta40mjrvY25L8HoCx9NBqS5T6Y47nGIPyyxSEUjI4vZ
-pm1bhz2e1wkb0c50MlrkS+l1D0qnzc6rit38ObmiC2uRe2KalI4J78z2nNtDbgBx
-Zv0EIQfaUF1SeIUKkX61KAd2fuKlByGOA4+OL1XN/sxAhKcTcqaJPoHs7kSgH6el
-MnYPq64+0IBZZ3aZisNzsTjHadOc0rCtMHebUdyb6tgon/0bMGFPHhPIJ2xw4w1d
-ukUpyUC5bvHtb8oOnlfT8cgQEi3EE+zry2aMuMemryZO2b1YJPVOaQb62vvic6vs
-8/p+qhKRJx9n47P90CSjr3F8XG5tiHSvlh32d4pNYjb8CMaqS+X2BUFE8Qqpx2My
-U70c8uzrx2oy72Xs6yCdfaXmWHsZ/IEBsbZxCc3OVI1I4B6/UqSDeyEvoV8244bb
-aCBs8Hb1e1OJvjDnL1EYstTpPjrvCDM5Grp9Nn0OuqXtk7eivFRwW9CzAxvWTNzP
-jok+2yzm5F1RrP1AfdY5PsqIG9Vh5rQbuW1ICvJ4AKMBLkGru4Z8It7ZnIlkTW8N
-ddm3o2XX5P04laXP5UAP/izQTs6RX6m5bsH9JE8HImYGuSPrcnP5ENo6Db3NOlrK
-4mAcJQLzSPF2hCY+yMKhgu+rIrzkxTg6vtkkKQmKr316jglzz3vefrcfl3Ec4mBF
-QaQJCYFJVQ1z9ctfNggSRX5ppy/VqteaJGWwyeWiFS0yUD5TeIByKkKVeBHpBKDq
-NubB28PPa3eDagbdYdbjvSppZo/uuaycKWErqYEDEQyVeCr1zrW2TmvAdFnDeQx/
-SUorJhFndagEmzfnuzgICITbmVewpVFtol1HIYZgRsFwvEcR4zjYz1xLHqXoqvSL
-HgKKFAqFlR5hFyb+hy2ZfPTqKgyDtHPcKJXcJkZZGM8qm5XE4QTyubALxifCz5Ug
-zKGCXv02oSwcCt1h8DRNqvuPdcElxoiADfkgDUOmFPeLK7GLy91x3FXkH7hra1TV
-ostmGTOyvZYCTxP6L44SgGN2Zu9GCc8OkS6fqYijflZGCiCWve8ay6U8gR5MIRq5
-Qwd6RuUMvHFGqYEOy7GQMYD+elSOIDL1FXooh/vPgwfdh9m6iS7sh8FuUrYEsbeF
-SOfgGuIsS5Ndz3OBrQHA1u6CoYUyXIrqaxK5xfeDoQfQu25QtbKnS1/y4aY7KcgN
-V9xFCs1mhAESZUdsSJJbn1G1f6X8P9u7OhZFMLl/ZyBCx+wZSyQ+eETM/iyIK/l+
-uQINBFzbKwsBEAC5no6RKb1+EfPM5YUR2G25sMw6qUwfET0bUE/uFuMi/E76n3i+
-DMmxR3gETFYYMAk0r/YfRJmQ4csNuOrmXg3Z+vaEAfccSi0iMTAeyLLhM63P1u6V
-PhoEnP59fxgF9TU+Xte5hgaBb3z3cqRFldi4glR0D+a3GR9S12yz+UJE6+AmKUxA
-oBCkjPBnsDhcbYJBTvihyVDBsqwDOXMj658XOWJUkuUfmzxvP+eHTmoNdrwU6ueD
-oZXGyluQCwHLV8XijuGFY7SpbuQgtQ4vrUG8gZ2mHrjvNqW5Pq9lbKgJeKY6yUyN
-u3o7regCqQpIZnqVWrySp8GlqP7N1VzHYPp0v79dcFpjp5EfYjQJ7Cnf8wRNL4ji
-Q+d5UKulmw2UHyjqNPuthdyHyaa7yQMet4eM7gVvWJ48x84kH4f9U+fhc0FiFlLb
-pSRSG2FZ481R8s+7by+clmX40esdsIHiM5DXxe5mT027ou4bqFTXIFpuRcbf9j0v
-pln4RDb5SrVyuy6DHBonaXgIEPFlx8zZtCVy1BX1mjAc52IAL8U3RrJwaWIqoU0i
-x18MflUx6oHCWXkrVQvrizBUdOswyci6Nt081JPgLcgixYVYsQKAZ6zVzyQJp89/
-veoZXYQ8sUQ5tM091QJefJg5YIRM1ATQ0a0cCaSBt8VvLI9CuYTY0e0tmQARAQAB
-iQI8BBgBCgAmFiEEfmGIdml7CFHM76PXqhA/SHKPUpEFAlzbKwsCGwwFCQHhM4AA
-CgkQqhA/SHKPUpEt9w/+IUmRgnE8oq4+GQipFdrhi70ob0x3rbxR4PQkC/nYDF66
-7vXXr8btHwtZbdHzrDxJB4Lnhp2WqlVF/2YTwuMBpKaXSeqY6yUA70fIS5BIbGAJ
-SiyPqEPgp/gv78wFLBfsaiGJ7sO79TOyREreEKykIzb4bV9qp4Zam/9T4ercsAoX
-6fvYgq5Ym51Tml4DmEYRK5fjAsAW1JQcmLKg0nHKEm0xzxajACZwEksUfPXf/1ak
-Ik8mHExg0+uJ6avy2oX1uGvRNdfr2b9BGNLVyfq/2p28cm6W5ZZOYB6vfF2ERoQ/
-HqzAQpF9Yj7vVFdV2Y4JVRVU8NFKAWs46NtY8gBmqUQ5+sAJNiHLgZouvD64b74x
-QUz1VTy/Vgt50jNYi5/412exnjmp078LjVoZseDVKwepbuB6SF0s+xVdSJNzkdL5
-q/u0kFZiOJwFXLmZbpThHDZPSMDNZIpnPRrmLZEBdis0andnx9oZXgNjDVxPil3u
-HCXPkiLjismilP9+nOyesudOIaCaa+IE72OkE/xN78eLTTJ1feLPZuM8aQrnDApn
-u+zDQRi+CPz3uJZbdOXbucwEetMXFP8SwqaPuCpbS6U5q+q0JMUMf6SGXUPgUP72
-81j33zgRutFjANsZ2BTjfXapf0nHFt1wfcITpLWW6cQakF1MIUIyKBZu0XvOdT+5
-Ag0EXNsq2wEQAMiWhqyTW6M7W+gPxyYIrD4Imeaqh9F4JjH3Y4JHPbwrqtjoCRBl
-2Ox5xj9pnkx0MUB+ir+Es7h4qhEXhzXzpDgn/fafpV2l1P+974Qgvem3qLbPARgQ
-TL09xC8sFIEqPL17y0oTM5bIRI18rTeYCR8rJr10gy0Uq3mET7aKdaHbalMHvFfB
-3axgXcTzzh+0xtpu286nameDida9tvNkwgjDZGHZa0rxzer/fn4v07FoleQS71Mq
-ipCQKuwsLHQUMfsaVvsdUOTZE+xcLzYKvDUGiYNkT77sa8/i/BSAPutkCuPg2Tng
-JttQoSfA8k6uIVZJGuXBogXBtwNI7LKXa3m+kIiYqel+VogB2GREZN6AlFtYJDWh
-L/9EnfayN/0XhiYv1IuCBvMhN7MMVmZJP3fPLB/T95xn181aEifaOMjvZwkJCFHH
-rbIpHPtFC/OpNDzL4m/kO1uogGsB6QYNMm55Vsq/RbdHkCRZU4o8Vek5Js5lefO6
-DNGOGlEYUzoERA6UIFRfHuL+//S8RK6JfB9J15/EF1zTQtKYwDwnQWA5p0mSGjQJ
-msG5JhHoc4l4QOMml2GsfW0kQZALFg1CPOb1IDKbit8LJP8ikLPx8d9sGVr4V85B
-5+6Xi2mmotjUP7DVXJTqN0yncJq3jTuToF9QZ5C6g1FrVfI5feqwlNTtABEBAAGJ
-AjsEGAEKACYWIQR+YYh2aXsIUczvo9eqED9Ico9SkQUCXNsq2wIbDAUJAeEzgAAK
-CRCqED9Ico9SkRwbD/io/KuQkyPbshpnmX/5Ld9I8uUT94ogMBXpM47Nm3wP1jjX
-kX+vsRFK7WhO/zqnizPRm2GlWEXNaQUoTp/pEojFPyCctt1XqJKm/qvV1H0p5DAp
-aj1103LzzZ4sXLn4roDzMyaUnqruuPZw1gLV2S/r1pi/PmAb4ds/p8SKCTEgGXvR
-bwNubsEhzegALjYye7xctNATR4I4uVDIQ6w/e9bm9R2eW8ZMWNlOWvnqOOXD0kF5
-Gfbb+110ilQudB2L0gu5waoOTfiucIBr3b7WQ9tmjj0mw0CvYSRS7yH+Jwp5hH4q
-WvifUwAYBFwHw30JBPkOx6BRSlI2Pp98xVRysBV69b8emEm5eifAa5AruRjB63fM
-R5eT4ts9QpjLxfb5eTkubGO9EwLMRD8GGBn3VD84Z6YehkVWn60qpj9jC9tFN/Ho
-HV+Ur5mfsN8LseuwNvzan49VxpwtvgkkiSair8K68jwZTcgHnsc3N+ZuiSKd+8NO
-/ap1PtziZd4qu1oY5M0oW97Nk46Y3LDpmCYcbkrTINxQi2Z5pSL01GodxAn0+1DE
-ioQ3qqFALd8rm7zv6lh/SEEdcKL6YFpLYqhb2SUrfIrXyByMpWFQynbrtfR+L9ee
-EiGkRtE0nFxt7rB7AIUDY6w2dsl9rKygxkgIFRUtNmosA7A6KZfJPb340xvb
-=gLBU
+mQINBFf7BTIBEAC1qr3AjGeuob577RsPe2UawIJCOfDKA17lYtLDoPbklPSbOkS3
+EdJdr1xhaI7ohAvIttyppyeYuEVA6lM+h7dCCml9vfNn/EVRdg0FJ2ROLtMGq3E7
+7gdx4v8CBgpIKa8GtnCqz8kAI8ZbpXkcBaasLZ1LKsmXjHvfH3GBQK6HjnZ7yCvr
++44m/7XX2rJYsAx1/b07fhplE3Mq4d+2zFzStwW8913gkgtA5R6HAPVU83zAKuR2
+bvTjyMLCTKYXu9am545dzOwbHAmDv8yA+eTYMM6Rf9IquK43muwsl3knHPtXlzwZ
+vaoYIgYEROGD15z9/MY1/mRTUVsFVs18mAtYli6LmXHo2wwQaO+CZ+dHCzeJwTMV
+7aFhpWqk6jFctVeQWlP2IBLszFBUQQ48XI5qIpUFYOiF1iJfq+YK2qNlidFq4Ddh
+V07Kf9ZYodzYL/tamPlo4gCjWyAdX0rmbKp8pSrkuLCAcY+SXlMigfhri7kFc8Ks
+N3K8Zf17TYZXTURohqiWBOYlh/er/2wou9yI9sCIW6y/0+nR3mIZ+ytlMkUyq+Pi
+2syqAE1qjJpvl5J+2LVtE1Q69b0qKKOJdC7XeEaGX/18AB8Ufp5gXx+xbM8r5pec
+InepxDYSV9MXw7ogLKacQ76zKP3xgUfAxj0MNvsFqHf9PprQIhEE0MDHvQARAQAB
+tDZNYXJ0aW4gUm90aCAoY29yZWJvb3QgZGV2ZWxvcGVyKSA8bWFydGluQGNvcmVi
+b290Lm9yZz6JAjkEEwECACMFAlf7BTICGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIe
+AQIXgAAKCRAZeWwrPk9991KhD/9dQ3QpQmwumT9SIRS1sAbQ4GNrZqex7zQbtmmy
+eACQcfAV0Gget3HhG7DZf0YrOOSOkWb2L3LhEucM6qX+MN+eSWjkYsGktNQeBovK
+VP8ZgnjYrs3cSi+Fgv8BgdvjfZ2Mr5UKJ290kUphuKBMb0UyAVnxm7h6ykB3kzJZ
+lOoEgDfXNy7k9h5BPqnTYqTO0NzHtBkV7xwRldVwUZ33npeMcWaYlidZG29mRaYO
+BUGLna11apX2xi7p7vXMWTZnCGgSgi47HlFdb6tcvwXK8EDu2QU96DprmOa8gAYU
+fXaVMXjLL+cWNg1EY0m8i0yhxpLkEsB/MBUcN8FeTMoftLdWanqQDjbo51SZ5M2M
+A0hdBp4f7PZPiRP1SFhndhCJBiPk1y0ebMwqRK6LG1aqE8DS6ZiFisNz+g2EZEMF
+uUg2XH0B+SXgxOA/PKw29RTsqsSGh1xl6ajtVeaeMVc3hBPdtNnZ8cu2/IKvym8B
+kOO4O8Erdu9TUQEt9BIGzh5vqIKhrOdQ7nwumYsq8J5yHbCbPRv5/XjAvvJks/oU
+UfdmxkmBRo2+rj4R5a7fETizFf7dyYLC9tuY1+vks9I9+7GUP760MIH9EI8VZB/U
+DG8teRLVpi30ceGo/WZweqDXXATwIU3nsLolcEU+byKh5bwr7/iIyuXbt/Q2rSSQ
+lAXzUbkCDQRX+wUyARAArRRH4MzJkCWBGdrmjmCsR1YEFUYsFpomJB+pyDRRu75t
+X03GYfnYKvZfOsj4x1jJsATSRWvdom09RSpae+jFFvAcGVabNMRwksKz7dP3hiCg
+zS0tfQU0Q8ge3PXJ/COBNTIAETLBZ0j2YQnPmJpvD16BSDthBgKfec/l31s1bzXL
+qwtBDub6DJrtu+Iunpti+kDAsmfxyVlOkUImODqPzSOzDmoCntb0XEQmEW/b1KQW
+L66/qs5EWS6vHjA4Bn/3aUNQrXuGOcpycc7fyix3RATjpNZah9ScZ2CPBlrwm1J4
+q9Pj0GPzeXY2DznnLQkmrJ0j8IJ4Bf4NpM8j7n0xevMiWvwi7+NxvstvcnKJi/oj
+rhGGRu+55s7JHTXA1kqD82rnAm0NMhhb+kSBamEQsuzIdKPFw7ep2dSveiwJMB2k
+PdFXyxNIvlKMKr2FF87pIW3XLKPfmHQJ3wUdiImUAxFcvJAALH3bW6wd6aqRKOPy
+9IO9pUXVL65ZskDcxgGPGUlY6NPgSUD4jqh9vM0mbxkQ4rUfgVN7MHO4+UysY9+p
+NDfKg09hF2tCm13OODY5AZTY2AE9Gv+BkVgiD01yYW3FNjUFXDNZXgkC70mRinMd
+ezEv93nFXoCvIqORX72Ien2lcGZALT/6bq9ouG6TbohFIjb8+qWZ0tzsRlblI58A
+EQEAAYkCHwQYAQIACQUCV/sFMgIbDAAKCRAZeWwrPk999zo5EACpWJcNUeLiiUPr
+ScvfITL39qBXPvMyfNtJADKqdfh/s3OWuw3zGbLYKtCYGm+VYqFXJEoLIGXvwXJe
+dSb2vMhG1ME38234l/8c8sGCiVqLk+g31p+091gPpe25RbtJBwo4r5wmWkc69CTS
+ij8s1Q1STefAbvMxQxDnTG5hZvyr/bL5aawuHXrIAwCinuA4CFNn6eUPudvUAFz3
+1tUfRhuS/Wt/+LYdW1eGAjDZ4lvzyRKWqkKj55wCxrh4RkR8GWR76Y4pAz1Mk3SH
+4NnFgFGDsJtYd5yLP8T5vz4ouRxh+BFNBUJuInp3Dul4wR9I4WiQYGDiWuSfuyvn
+nOT3KrnE6kpulqdgCRtPTnRKwvsuhrOID10xMwVQnTNFrv8s4uVa9lCWBSfj9NFu
+ne6v4mZ3oEWIKmdDaPDbzYn+S9HEY57tXPqMIBDpok/JPOPlUtk5y1zTdvvBb+DD
+QL8GL6ZAAUWxFwl+VK5wbDEBrZstvSZPGhfwkLEI7qeOnFbyBWMKm0PhwpvXznDg
+UCpCBQ4e+6rL+k5SdhQu25UFKqcSqqMSDri0JT9AxgX5xvioRP1JHyMJIcoo5oBJ
+/6xDPGZcAjnkV9YtD51dQviBMcZQ11GXTFcYo0MDqUJNgOis6SUxI1hGsqPOYa89
+mUS5nvF0saAZHIiapVND0eIkb3uCNQ==
+=ZArY
-----END PGP PUBLIC KEY BLOCK-----
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package vagrant-vbguest for openSUSE:Factory checked in at 2023-12-20 21:03:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vagrant-vbguest (Old)
and /work/SRC/openSUSE:Factory/.vagrant-vbguest.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vagrant-vbguest"
Wed Dec 20 21:03:19 2023 rev:3 rq:1134151 version:0.32.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/vagrant-vbguest/vagrant-vbguest.changes 2023-02-21 15:37:00.464619989 +0100
+++ /work/SRC/openSUSE:Factory/.vagrant-vbguest.new.9037/vagrant-vbguest.changes 2023-12-20 21:03:44.933724854 +0100
@@ -1,0 +2,9 @@
+Tue Dec 19 23:12:08 UTC 2023 - Илья Индиго <ilya(a)ilya.cf>
+
+- Updated to 0.32.0.
+ * Fixed testing for running GuestAdditions on Linux,
+ when reading /proc/modules returns in multiple chunks.
+ * Don't unmount the GuestAdditions iso when it's not mounted.
+ Ignore errors during un-mounting.
+
+-------------------------------------------------------------------
Old:
----
vagrant-vbguest-0.31.0.gem
New:
----
vagrant-vbguest-0.32.0.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vagrant-vbguest.spec ++++++
--- /var/tmp/diff_new_pack.opkEOK/_old 2023-12-20 21:03:45.693752504 +0100
+++ /var/tmp/diff_new_pack.opkEOK/_new 2023-12-20 21:03:45.693752504 +0100
@@ -23,7 +23,7 @@
%define mod_name vagrant-vbguest
%define mod_full_name %{mod_name}-%{version}
Name: vagrant-vbguest
-Version: 0.31.0
+Version: 0.32.0
Release: 0
Summary: Vagrant provider for vbguest
License: MIT
++++++ vagrant-vbguest-0.31.0.gem -> vagrant-vbguest-0.32.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md 2022-11-28 17:39:04.000000000 +0100
+++ new/CHANGELOG.md 2023-12-17 16:26:45.000000000 +0100
@@ -1,3 +1,12 @@
+# Changelog
+
+## 0.32.0 (2023-12-17)
+
+- Fix testing for running GuestAdditions on Linux, when reading `/proc/modules` returns in
+ multiple chunks. Thanks @kubasov-s [GH-436]
+- Use RedHat installer for AlmaLinux. Thanks @alexgit2k [GH-431]
+- Don't unmount the GuestAdditions iso when it's not mounted. Ignore errors during un-mounting. [GH-434]
+
## 0.31.0 (2022-11-28)
- Use the CentOS installer when detecting Rocky Linux. Thanks @djflux [GH-424]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Readme.md new/Readme.md
--- old/Readme.md 2022-11-28 17:39:04.000000000 +0100
+++ new/Readme.md 2023-12-17 16:26:45.000000000 +0100
@@ -1,5 +1,10 @@
# vagrant-vbguest
+**Please note that as of 2023-12-17, this project is archived and will not receive further updates or support from me.**
+**However, the existing codebase will remain available for reference and use under the project's open-source license.**
+
+---
+
*vagrant-vbguest* is a [Vagrant](http://vagrantup.com) plugin which automatically installs the host's VirtualBox Guest Additions on the guest system.
[![Join the chat at https://gitter.im/dotless-de/vagrant-vbguest](https://badges.gitter.im/Join…
@@ -7,7 +12,6 @@
[![Inline docs](http://inch-ci.org/github/dotless-de/vagrant-vbguest.svg?branch=main)…
[![Gem Version](https://badge.fury.io/rb/vagrant-vbguest.svg)](https://badge.fury.io/rb/vagrant-vbguest)
-
## Installation
Requires vagrant 1.3 or later
@@ -15,12 +19,12 @@
### Vagrant ≥ 1.3
```bash
-$ vagrant plugin install vagrant-vbguest
+vagrant plugin install vagrant-vbguest
```
## Configuration / Usage
-If you're lucky, *vagrant-vbguest* does not require any configuration.
+If you're lucky, *vagrant-vbguest* does not require any configuration.
However, here is an example of `Vagrantfile`:
```ruby
@@ -51,18 +55,28 @@
vbguest will try to autodetect the best option for your system. WTF? see below.
* `iso_upload_path` (String, default: `/tmp`): A writeable directory where to put the VBoxGuestAdditions.iso file on the guest system.
* `iso_mount_point` (String, default: `/mnt`): Where to mount the VBoxGuestAdditions.iso file on the guest system.
-* `auto_update` (Boolean, default: `true`) : Whether to check the correct additions version on each start (where start is _not_ resuming a box).
+* `auto_update` (Boolean, default: `true`) : Whether to check the correct additions version on each start (where start is *not* resuming a box).
* `auto_reboot` (Boolean, default: `true` when running as a middleware, `false` when running as a command) : Whether to reboot the box after GuestAdditions has been installed, but not loaded.
-* `allow_downgrade` (Boolean, default: `true`) : Allow to install an older version of Guest Additions onto the guest. (Eg. your are running a host with VirtualBox 5 and the box is already on 6).
+* `allow_downgrade` (Boolean, default: `true`) : Allow to install an older version of Guest Additions onto the guest. (Eg. you are running a host with VirtualBox 5 and the box is already on 6).
* `no_install` (Boolean, default: `false`) : Whether to check the correct additions version only. This will warn you about version mis-matches, but will not try to install anything.
-* `no_remote` (Boolean, default: `false`) : Whether to _not_ download the iso file from a remote location. This includes any `http` location!
-* `installer` (`VagrantVbguest::Installers::Base`, optional) : Reference to a (custom) installer class
+* `no_remote` (Boolean, default: `false`) : Whether to *not* download the iso file from a remote location. This includes any `http` location!
+* `installer` (`VagrantVbguest::Installers::Base`, optional) : Reference to a (custom) installer class or a named installer.
+ Build-in named installers are:
+ * `:arch`, `:archlinux`, `:arch_linux` : Arch Linux
+ * `:centos`, `:cent_os` : CentOS
+ * `:debian` : Debian
+ * `:fedora` : Fedora
+ * `:opensuse`, `:open_suse` : openSUSE
+ * `:oracle`, `:oraclelinux`, `:oracle_linux` : Oracle Linux
+ * `:redhat`, `:red_hat` : Red Hat
+ * `:suse` : SUSE
+ * `:ubuntu` : Ubuntu
+ * `:windows` : Windows
* `installer_arguments` (Array, default: `['--nox11']`) : List of additional arguments to pass to the installer. eg: `%w{--nox11 --force}` would execute `VBoxLinuxAdditions.run install --nox11 --force`
* `installer_options` (Hash, default: `{}`) : Configure how a Installer internally works. Should be set on a `vm` level.
* `installer_hooks` (Hash, default: `{}`) : Configure scripts to be run before/after installer steps.
* `yes` (Boolean or String, default: `true`): Wheter to pipe `yes` to the installer. If `true`, executes `yes | VBoxLinuxAdditions.run install`. With `false`, the command is executed without `yes`. You can also put in a string here for `yes` (e.g. `no` to refuse all messages)
-
#### Installer Specific Options (`installer_options`)
Those settings are specific for OS-specific installer. Especially in a multi-box environment, you should put those options on the box configuration like this:
@@ -98,6 +112,7 @@
end
end
```
+
##### Linux
This option is available on all Linux type installers.
@@ -109,10 +124,10 @@
* `:allow_kernel_upgrade` (default: `false`): If `true`, instead of trying to find matching the matching kernel-devel package to the installed kernel version, the kernel will be updated and the (now matching) up-to-date kernel-devel will be installed. __NOTE__: This will trigger a reboot of the box.
* `:reboot_timeout` (default: `300`): Maximum number of seconds to wait for the box to reboot after a kernel upgrade.
* `:enablerepo`: (default: `false`) Configure `yum --enablerepo` settings. Possible values are:
- - Single String: `"C*-base"` converts to `--enablerepo=C*-base`
- - Array of Strings: `['C*-base', 'C*-updates']` converts to `--enablerepo=C*-base --enablerepo=C*-updates`
- - `true`: Enables `C${release_version}-base` and `C${release_version}-updates` with release_version read from `/etc/centos-release` if the repo exists, otherwise `*`.
- - `false`: Does not set any `--enablerepo`
+ * Single String: `"C*-base"` converts to `--enablerepo=C*-base`
+ * Array of Strings: `['C*-base', 'C*-updates']` converts to `--enablerepo=C*-base --enablerepo=C*-updates`
+ * `true`: Enables `C${release_version}-base` and `C${release_version}-updates` with release_version read from `/etc/centos-release` if the repo exists, otherwise `*`.
+ * `false`: Does not set any `--enablerepo`
#### Global Configuration
@@ -137,7 +152,6 @@
Settings in a project's `Vagrantfile` will overwrite those setting. When executed as a command, command line arguments will overwrite all of the above.
-
#### Installer Hooks (`installer_hooks`)
Additionally to the build-in `installer_options`, you can configure to execute scripts around the install steps `install`, `rebuild` and `start`.
@@ -157,11 +171,10 @@
end
```
-
### Running as a middleware
-Running as a middleware is the default way of using *vagrant-vbguest*.
-It will run automatically right after the box started. This is each time the box boots, i.e. `vagrant up` or `vagrant reload`.
+Running as a middleware is the default way of using *vagrant-vbguest*.
+It will run automatically right after the box started. This is each time the box boots, i.e. `vagrant up` or `vagrant reload`.
It won't run on `vagrant resume` (or `vagrant up` a suspended box) to save you some time resuming a box.
You may switch off the middleware by setting the vm's config `vbguest.auto_update` to `false`.
@@ -169,59 +182,60 @@
When *vagrant-vbguest* is running it will provide you some logs:
- [...]
- [default] Booting VM...
- [default] Booting VM...
- [default] Waiting for VM to boot. This can take a few minutes.
- [default] VM booted and ready for use!
- [default] GuestAdditions versions on your host (4.2.6) and guest (4.1.0) do not match.
- stdin: is not a tty
- Reading package lists...
- Building dependency tree...
- Reading state information...
- The following extra packages will be installed:
- fakeroot linux-headers-2.6.32-33 patch
-
- [...]
-
- [default] Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
- stdin: is not a tty
- [default] Installing Virtualbox Guest Additions 4.2.6 - guest version is 4.1.0
- stdin: is not a tty
- Verifying archive integrity... All good.
- Uncompressing VirtualBox 4.2.6 Guest Additions for Linux...........
- VirtualBox Guest Additions installer
- Removing installed version 4.1.0 of VirtualBox Guest Additions...
- tar: Record size = 8 blocks
- Removing existing VirtualBox DKMS kernel modules ...done.
- Removing existing VirtualBox non-DKMS kernel modules ...done.
- Building the VirtualBox Guest Additions kernel modules ...done.
- Doing non-kernel setup of the Guest Additions ...done.
- You should restart your guest to make sure the new modules are actually used
-
- Installing the Window System drivers ...fail!
- (Could not find the X.Org or XFree86 Window System.)
- stdin: is not a tty
- [default] Restarting VM to apply changes...
- [default] Attempting graceful shutdown of VM...
- [default] Booting VM...
- [default] Waiting for VM to boot. This can take a few minutes.
- [default] VM booted and ready for use!
- [default] Configuring and enabling network interfaces...
- [default] Setting host name...
- [default] Mounting shared folders...
- [default] -- v-root: /vagrant
- [default] -- v-csc-1: /tmp/vagrant-chef-1/chef-solo-1/cookbooks
- [default] Running provisioner: Vagrant::Provisioners::ChefSolo...
- [default] Generating chef JSON and uploading...
- [default] Running chef-solo...
- [...]
-
+```log
+[...]
+[default] Booting VM...
+[default] Booting VM...
+[default] Waiting for VM to boot. This can take a few minutes.
+[default] VM booted and ready for use!
+[default] GuestAdditions versions on your host (4.2.6) and guest (4.1.0) do not match.
+stdin: is not a tty
+Reading package lists...
+Building dependency tree...
+Reading state information...
+The following extra packages will be installed:
+ fakeroot linux-headers-2.6.32-33 patch
+
+[...]
+
+[default] Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
+stdin: is not a tty
+[default] Installing Virtualbox Guest Additions 4.2.6 - guest version is 4.1.0
+stdin: is not a tty
+Verifying archive integrity... All good.
+Uncompressing VirtualBox 4.2.6 Guest Additions for Linux...........
+VirtualBox Guest Additions installer
+Removing installed version 4.1.0 of VirtualBox Guest Additions...
+tar: Record size = 8 blocks
+Removing existing VirtualBox DKMS kernel modules ...done.
+Removing existing VirtualBox non-DKMS kernel modules ...done.
+Building the VirtualBox Guest Additions kernel modules ...done.
+Doing non-kernel setup of the Guest Additions ...done.
+You should restart your guest to make sure the new modules are actually used
+
+Installing the Window System drivers ...fail!
+(Could not find the X.Org or XFree86 Window System.)
+stdin: is not a tty
+[default] Restarting VM to apply changes...
+[default] Attempting graceful shutdown of VM...
+[default] Booting VM...
+[default] Waiting for VM to boot. This can take a few minutes.
+[default] VM booted and ready for use!
+[default] Configuring and enabling network interfaces...
+[default] Setting host name...
+[default] Mounting shared folders...
+[default] -- v-root: /vagrant
+[default] -- v-csc-1: /tmp/vagrant-chef-1/chef-solo-1/cookbooks
+[default] Running provisioner: Vagrant::Provisioners::ChefSolo...
+[default] Generating chef JSON and uploading...
+[default] Running chef-solo...
+[...]
+```
The plugin's part starts at `[default] Installing Virtualbox Guest Additions 4.1.14 - guest's version is 4.1.1`, telling you that:
-* the guest addition of the box *default* is outdated (or mismatching)
-* which guest additions iso file will be used
+* the guest addition of the box *default* is outdated (or mismatching)
+* which guest additions iso file will be used
* which installer script will be used
* all the VirtualBox Guest Additions installer output.
@@ -229,20 +243,21 @@
When everything is fine, and no update is needed, you see log like:
- ...
- [default] Booting VM...
- [default] Waiting for VM to boot. This can take a few minutes.
- [default] VM booted and ready for use!
- [default] GuestAdditions 4.2.6 running --- OK.
- ...
-
+```log
+[...]
+[default] Booting VM...
+[default] Waiting for VM to boot. This can take a few minutes.
+[default] VM booted and ready for use!
+[default] GuestAdditions 4.2.6 running --- OK.
+[...]
+```
### Running as a Command
When you switched off the middleware auto update, or you have a box up and running you may also run the installer manually.
```bash
-$ vagrant vbguest [vm-name] [--do start|rebuild|install] [--status] [-f|--force] [-b|--auto-reboot] [-R|--no-remote] [--iso VBoxGuestAdditions.iso] [--no-cleanup]
+vagrant vbguest [vm-name] [--do start|rebuild|install] [--status] [-f|--force] [-b|--auto-reboot] [-R|--no-remote] [--iso VBoxGuestAdditions.iso] [--no-cleanup]
```
For example, when you just updated VirtualBox on your host system, you should update the guest additions right away. However, you may need to reload the box to get the guest additions working.
@@ -250,43 +265,46 @@
If you want to check the guest additions version, without installing, you may run:
```bash
-$ vagrant vbguest --status
+vagrant vbguest --status
```
Telling you either about a version mismatch:
- [default] GuestAdditions versions on your host (4.2.6) and guest (4.1.0) do not match.
+```log
+[default] GuestAdditions versions on your host (4.2.6) and guest (4.1.0) do not match.
+```
or a match:
- [default] GuestAdditions 4.2.6 running --- OK.
-
+```log
+[default] GuestAdditions 4.2.6 running --- OK.
+```
The `auto-reboot` is turned off by default when running as a command. Vbguest will suggest you to reboot the box when needed. To turn it on simply pass the `--auto-reboot` parameter:
```bash
-$ vagrant vbguest --auto-reboot
+vagrant vbguest --auto-reboot
```
You can also pass vagrant's `reload` options like:
```bash
-$ vagrant vbguest --auto-reboot --no-provision
+vagrant vbguest --auto-reboot --no-provision
```
When running the install step manually like this: `vagrant vbguest --do install`, adding `--no-cleanup` keeps the downloaded, uploaded files and mounted iso in their place. Happy debugging ;)
### ISO autodetection
-*vagrant-vbguest* will try to autodetect a VirtualBox GuestAdditions iso file on your system, which usually matches your installed version of VirtualBox. If it cannot find one, it downloads one from the web (virtualbox.org).
+*vagrant-vbguest* will try to autodetect a VirtualBox GuestAdditions iso file on your system, which usually matches your installed version of VirtualBox. If it cannot find one, it downloads one from the web (virtualbox.org).
Those places will be checked in order:
1. Checks your VirtualBox "Virtual Media Manager" for a DVD called "VBoxGuestAdditions.iso"
2. Guess by your host operating system:
- * for linux : `/usr/share/virtualbox/VBoxGuestAdditions.iso`
- * for Mac : `/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso`
- * for Windows : `%PROGRAMFILES%/Oracle/VirtualBox/VBoxGuestAdditions.iso`
+* for linux : `/usr/share/virtualbox/VBoxGuestAdditions.iso`
+* for Mac : `/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso`
+* for Windows : `%PROGRAMFILES%/Oracle/VirtualBox/VBoxGuestAdditions.iso`
### Automatic reboot
@@ -294,7 +312,6 @@
Hence, vbguest will check for a loaded kernel module after the installation has finished and reboots the box, if it could not find one.
-
## Advanced Usage
vagrant-vbguest provides installers for generic linux and debian/ubuntu.
@@ -327,21 +344,18 @@
end
```
-
### Extending vbguest (aka Very Advanced Usage)
If you find yourself copying the same installer in each of your vagrant project, it might be a good idea to make it a plugin itself. Like vagrant-vbguest itself, installers can be [distributed as ruby gems](http://guides.rubygems.org/publishing/)
-This project contains a [sample installer gem](https://github.com/dotless-de/vagrant-vbguest/tree/main/testdrive/vagr… which might serve as an boilerplate.
-
+This project contains a [sample installer gem](https://github.com/dotless-de/vagrant-vbguest/tree/main/testdrive/vagr… which might serve as an boilerplate.
## Contributing
-Bug reports and pull requests are welcome on GitHub at https://github.com/dotless-de/vagrant-vbguest.
+Bug reports and pull requests are welcome on GitHub at <https://github.com/dotless-de/vagrant-vbguest>.
For the foreseeable future, no more pull requests will be accepted which add new guest support/installers. Please build your gem as a plugin to vbguest (see "Very Advanced Usage" section of this file). In fact, please open a pull request to remove support for a guest system if feel confident that your solution is better.
-
## Known Issues
* The installer script, which mounts and runs the GuestAdditions Installer Binary, works on Linux only. Most likely it will run on most Unix-like platforms.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/VERSION new/VERSION
--- old/VERSION 2022-11-28 17:39:04.000000000 +0100
+++ new/VERSION 2023-12-17 16:26:45.000000000 +0100
@@ -1 +1 @@
-0.31.0
+0.32.0
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installer.rb new/lib/vagrant-vbguest/installer.rb
--- old/lib/vagrant-vbguest/installer.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installer.rb 2023-12-17 16:26:45.000000000 +0100
@@ -26,12 +26,30 @@
# specific version of a distribution should use heigher
# priority numbers.
#
+ # @param installer_key [Symbol] A key to identify the Installer class.
# @param installer_class [Class] A reference to the Installer class.
# @param prio [Fixnum] Priority describing how specific the Installer matches. (default: `5`)
- def register(installer_class, prio = 5)
+ def register(*args)
+ installer_key = nil
+ installer_class = nil
+ prio = 5
+
+ if args.first.is_a?(Symbol) || args.first.is_a?(String)
+ installer_key = args.first.to_s
+ installer_class = args[1]
+ prio = args[2] if args[2]
+ else
+ warn "DEPRECATION: Passing Installer class directly to Installer.register is deprecated. Please use a registration identifier as first argument. `Installer.register(:my_system, MySystemInstaller, 1)`"
+ installer_class = args.first
+ prio = args[1] if args[1]
+ end
+
@installers ||= {}
- @installers[prio] ||= []
+ @installers[prio] ||= Set.new
@installers[prio] << installer_class
+
+ @registered ||= {}
+ @registered[installer_key] = installer_class if installer_key
end
##
@@ -47,6 +65,15 @@
end
return nil
end
+
+ ##
+ # Returns the registered Installer class for the given key.
+ #
+ # @param key [Symbol, String]
+ # @return [Class,nil]
+ def get(key)
+ @registered[key.to_s]
+ end
end
def initialize(vm, options = {})
@@ -143,8 +170,11 @@
end
def guest_installer_class
- if @options[:installer].is_a?(Class)
- @options[:installer]
+ case (installer = @options[:installer])
+ when Class
+ installer
+ when Symbol, String
+ Installer.get(installer)
else
Installer.detect(@vm, @options)
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/archlinux.rb new/lib/vagrant-vbguest/installers/archlinux.rb
--- old/lib/vagrant-vbguest/installers/archlinux.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/archlinux.rb 2023-12-17 16:26:45.000000000 +0100
@@ -26,4 +26,6 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Archlinux, 5)
+VagrantVbguest::Installer.register(:arch, VagrantVbguest::Installers::Archlinux, 5)
+VagrantVbguest::Installer.register(:archlinux, VagrantVbguest::Installers::Archlinux, 5)
+VagrantVbguest::Installer.register(:arch_linux, VagrantVbguest::Installers::Archlinux, 5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/centos.rb new/lib/vagrant-vbguest/installers/centos.rb
--- old/lib/vagrant-vbguest/installers/centos.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/centos.rb 2023-12-17 16:26:45.000000000 +0100
@@ -119,4 +119,5 @@
end
end
# Load this before the RedHat one, as we want it to be picked up first. (The higher the sooner its checked).
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::CentOS, 6)
+VagrantVbguest::Installer.register(:centos, VagrantVbguest::Installers::CentOS, 6)
+VagrantVbguest::Installer.register(:cent_os, VagrantVbguest::Installers::CentOS, 6)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/debian.rb new/lib/vagrant-vbguest/installers/debian.rb
--- old/lib/vagrant-vbguest/installers/debian.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/debian.rb 2023-12-17 16:26:45.000000000 +0100
@@ -44,4 +44,4 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Debian, 5)
+VagrantVbguest::Installer.register(:debian, VagrantVbguest::Installers::Debian, 5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/fedora.rb new/lib/vagrant-vbguest/installers/fedora.rb
--- old/lib/vagrant-vbguest/installers/fedora.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/fedora.rb 2023-12-17 16:26:45.000000000 +0100
@@ -24,4 +24,4 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Fedora, 5)
+VagrantVbguest::Installer.register(:fedora, VagrantVbguest::Installers::Fedora, 5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/linux.rb new/lib/vagrant-vbguest/installers/linux.rb
--- old/lib/vagrant-vbguest/installers/linux.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/linux.rb 2023-12-17 16:26:45.000000000 +0100
@@ -74,19 +74,20 @@
# @yieldparam [String] type Type of the output, `:stdout`, `:stderr`, etc.
# @yieldparam [String] data Data for the given output.
def running?(opts=nil, &block)
- kmods = nil
+ kmods = []
communicate.sudo('cat /proc/modules', opts) do |type, data|
block.call(type, data) if block
- kmods = data if type == :stdout && data
+ kmods << data if type == :stdout && data
end
- unless kmods
+ if kmods.empty?
env.ui.warn "Could not read /proc/modules"
return true
end
Array(installer_options[:running_kernel_modules]).all? do |mod|
- /^#{mod}\b/i.match(kmods)
+ regexp = /^#{mod}\b/i
+ kmods.any? { |d| regexp.match(d) }
end
end
@@ -270,6 +271,7 @@
def mount_iso(opts=nil, &block)
env.ui.info(I18n.t("vagrant_vbguest.mounting_iso", :mount_point => mount_point))
communicate.sudo("mount #{tmp_path} -o loop #{mount_point}", opts, &block)
+ @mounted = true
end
# A generic helper method for un-mounting the GuestAdditions iso file
@@ -281,8 +283,15 @@
# @yieldparam [String] type Type of the output, `:stdout`, `:stderr`, etc.
# @yieldparam [String] data Data for the given output.
def unmount_iso(opts=nil, &block)
+ unless @mounted
+ env.ui.info(I18n.t("vagrant_vbguest.skip_unmounting_iso"))
+ return
+ end
+
env.ui.info(I18n.t("vagrant_vbguest.unmounting_iso", :mount_point => mount_point))
+ opts = (opts || {}).merge(:error_check => false)
communicate.sudo("umount #{mount_point}", opts, &block)
+ @mounted = false
end
def cleanup(opts=nil, &block)
@@ -294,4 +303,4 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Linux, 2)
+VagrantVbguest::Installer.register(:linux, VagrantVbguest::Installers::Linux, 2)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/opensuse.rb new/lib/vagrant-vbguest/installers/opensuse.rb
--- old/lib/vagrant-vbguest/installers/opensuse.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/opensuse.rb 2023-12-17 16:26:45.000000000 +0100
@@ -33,4 +33,5 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::OpenSuse, 5)
+VagrantVbguest::Installer.register(:opensuse, VagrantVbguest::Installers::OpenSuse, 5)
+VagrantVbguest::Installer.register(:open_suse, VagrantVbguest::Installers::OpenSuse, 5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/oracle.rb new/lib/vagrant-vbguest/installers/oracle.rb
--- old/lib/vagrant-vbguest/installers/oracle.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/oracle.rb 2023-12-17 16:26:45.000000000 +0100
@@ -22,4 +22,6 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Oracle, 6)
+VagrantVbguest::Installer.register(:oracle, VagrantVbguest::Installers::Oracle, 6)
+VagrantVbguest::Installer.register(:oraclelinux, VagrantVbguest::Installers::Oracle, 6)
+VagrantVbguest::Installer.register(:oracle_linux, VagrantVbguest::Installers::Oracle, 6)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/redhat.rb new/lib/vagrant-vbguest/installers/redhat.rb
--- old/lib/vagrant-vbguest/installers/redhat.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/redhat.rb 2023-12-17 16:26:45.000000000 +0100
@@ -5,7 +5,7 @@
# fortunately they're probably both similar enough to RHEL
# (RedHat Enterprise Linux) not to matter.
def self.match?(vm)
- /\A(redhat|centos|amazon|rocky)\d*\Z/ =~ self.distro(vm)
+ /\A(redhat|centos|amazon|rocky|alma)\d*\Z/ =~ self.distro(vm)
end
# Install missing deps and yield up to regular linux installation
@@ -49,4 +49,5 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::RedHat, 5)
+VagrantVbguest::Installer.register(:redhat, VagrantVbguest::Installers::RedHat, 5)
+VagrantVbguest::Installer.register(:red_hat, VagrantVbguest::Installers::RedHat, 5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/suse.rb new/lib/vagrant-vbguest/installers/suse.rb
--- old/lib/vagrant-vbguest/installers/suse.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/suse.rb 2023-12-17 16:26:45.000000000 +0100
@@ -42,4 +42,4 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Suse, 6)
+VagrantVbguest::Installer.register(:suse, VagrantVbguest::Installers::Suse, 6)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/ubuntu.rb new/lib/vagrant-vbguest/installers/ubuntu.rb
--- old/lib/vagrant-vbguest/installers/ubuntu.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/ubuntu.rb 2023-12-17 16:26:45.000000000 +0100
@@ -46,4 +46,4 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Ubuntu, 5)
+VagrantVbguest::Installer.register(:ubuntu, VagrantVbguest::Installers::Ubuntu, 5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/vagrant-vbguest/installers/windows.rb new/lib/vagrant-vbguest/installers/windows.rb
--- old/lib/vagrant-vbguest/installers/windows.rb 2022-11-28 17:39:04.000000000 +0100
+++ new/lib/vagrant-vbguest/installers/windows.rb 2023-12-17 16:26:45.000000000 +0100
@@ -104,12 +104,16 @@
def mount_iso(opts = nil, &block)
communicate.execute("Mount-DiskImage -ImagePath #{tmp_path}", opts, &block)
env.ui.info(I18n.t("vagrant_vbguest.mounting_iso", mount_point: mount_point))
+ @mounted = true
end
def unmount_iso(opts = nil, &block)
+ return unless @mounted
env.ui.info(I18n.t("vagrant_vbguest.unmounting_iso",mount_point: mount_point))
+ opts = (opts || {}).merge(:error_check => false)
communicate.execute("Dismount-DiskImage -ImagePath #{tmp_path}", opts, &block)
communicate.execute("Remove-Item -Path #{tmp_path}", opts, &block)
+ @mounted = false
end
def cleanup(opts = nil, &block)
@@ -128,4 +132,4 @@
end
end
end
-VagrantVbguest::Installer.register(VagrantVbguest::Installers::Windows, 2)
+VagrantVbguest::Installer.register(:windows, VagrantVbguest::Installers::Windows, 2)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/locales/en.yml new/locales/en.yml
--- old/locales/en.yml 2022-11-28 17:39:04.000000000 +0100
+++ new/locales/en.yml 2023-12-17 16:26:45.000000000 +0100
@@ -4,6 +4,7 @@
skipped_rebuild: "Rebuilding GuestAdditions skipped."
mounting_iso: "Mounting Virtualbox Guest Additions ISO to: %{mount_point}"
unmounting_iso: "Unmounting Virtualbox Guest Additions ISO from: %{mount_point}"
+ skip_unmounting_iso: "Skipping unmount of Virtualbox Guest Additions ISO, because it was not mounted."
installing: "Installing Virtualbox Guest Additions %{installer_version} - guest version is %{guest_version}"
installing_forced: "Forcing installation of Virtualbox Guest Additions %{installer_version} - guest version is %{guest_version}"
rebuild: "Rebuilding Virtualbox Guest Additions %{guest_version} (Your host version is %{host_version})"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2022-11-28 17:39:04.000000000 +0100
+++ new/metadata 2023-12-17 16:26:45.000000000 +0100
@@ -1,14 +1,14 @@
--- !ruby/object:Gem::Specification
name: vagrant-vbguest
version: !ruby/object:Gem::Version
- version: 0.31.0
+ version: 0.32.0
platform: ruby
authors:
- Robert Schulze
autorequire:
bindir: exe
cert_chain: []
-date: 2022-11-28 00:00:00.000000000 Z
+date: 2023-12-17 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: micromachine
@@ -129,7 +129,7 @@
- !ruby/object:Gem::Version
version: 1.3.6
requirements: []
-rubygems_version: 3.1.6
+rubygems_version: 3.3.26
signing_key:
specification_version: 4
summary: A Vagrant plugin to install the VirtualBoxAdditions into the guest VM
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package qFlipper for openSUSE:Factory checked in at 2023-12-20 21:03:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qFlipper (Old)
and /work/SRC/openSUSE:Factory/.qFlipper.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qFlipper"
Wed Dec 20 21:03:15 2023 rev:3 rq:1134216 version:1.3.3+git0.1699609231.bfce851
Changes:
--------
--- /work/SRC/openSUSE:Factory/qFlipper/qFlipper.changes 2023-05-23 14:54:41.958538477 +0200
+++ /work/SRC/openSUSE:Factory/.qFlipper.new.9037/qFlipper.changes 2023-12-20 21:03:41.577602757 +0100
@@ -1,0 +2,10 @@
+Wed Dec 20 12:51:35 UTC 2023 - msuchanek(a)suse.com
+
+- Update to version 1.3.3:
+ * Implement screen orientation (#202)
+ * Update Flipper graphic
+ * Added udev rule for U2F (#106)
+ * Support different targets for resources_tgz
+ * Better error messages
+
+-------------------------------------------------------------------
Old:
----
qFlipper-1.3.1~rc1+git1.1684488882.0199220.tar.xz
New:
----
qFlipper-1.3.3+git0.1699609231.bfce851.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ qFlipper.spec ++++++
--- /var/tmp/diff_new_pack.ARhQ2B/_old 2023-12-20 21:03:43.981690218 +0100
+++ /var/tmp/diff_new_pack.ARhQ2B/_new 2023-12-20 21:03:43.985690363 +0100
@@ -17,7 +17,7 @@
Name: qFlipper
-Version: 1.3.1~rc1+git1.1684488882.0199220
+Version: 1.3.3+git0.1699609231.bfce851
Release: 0
Summary: Graphical desktop application for updating Flipper Zero firmware
License: GPL-3.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.ARhQ2B/_old 2023-12-20 21:03:44.021691674 +0100
+++ /var/tmp/diff_new_pack.ARhQ2B/_new 2023-12-20 21:03:44.025691819 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/flipperdevices/qFlipper</param>
- <param name="changesrevision">0199220d20954c92e89589105dac866c225eda27</param></service></servicedata>
+ <param name="changesrevision">bfce851d4da5a01f24189ba79eac9385b7ce8533</param></service></servicedata>
(No newline at EOF)
++++++ qFlipper-1.3.1~rc1+git1.1684488882.0199220.tar.xz -> qFlipper-1.3.3+git0.1699609231.bfce851.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/.github/actions/docker/action.yml new/qFlipper-1.3.3+git0.1699609231.bfce851/.github/actions/docker/action.yml
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/.github/actions/docker/action.yml 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/.github/actions/docker/action.yml 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-name: 'Run in docker'
-inputs:
- run: # id of input
- description: 'A command to run'
- required: true
- default: ''
-runs:
- using: 'docker'
- image: '../../../docker/Dockerfile'
- args:
- - ${{ inputs.run }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/.github/workflows/ci.yml new/qFlipper-1.3.3+git0.1699609231.bfce851/.github/workflows/ci.yml
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/.github/workflows/ci.yml 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/.github/workflows/ci.yml 2023-11-10 10:40:31.000000000 +0100
@@ -6,29 +6,33 @@
build_linux:
runs-on: ubuntu-latest
steps:
- - name: Cleanup workspace
- uses: AutoModality/action-clean@v1
+ - name: 'Wipe workspace'
+ run: find ./ -mount -maxdepth 1 -exec rm -rf {} \;
- name: Checkout code
- uses: actions/checkout@v2
+ uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: true
- - uses: satackey/action-docker-layer-caching(a)v0.0.11
- continue-on-error: true
- with:
- key: docker-cache-${{ hashFiles('docker/**') }}-{hash}
- restore-keys: docker-cache-${{ hashFiles('docker/**') }}-
+ - name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v3
- - name: Build docker image
- uses: ./.github/actions/docker
+ - name: Build and push
+ uses: docker/build-push-action@v5
+ with:
+ push: false
+ context: docker
+ tags: qflipper-build:latest
+ load: true
+ cache-from: type=gha
+ cache-to: type=gha,mode=max
- name: Build application in docker
- run: docker build -t flipp ./docker/ && docker run --rm --privileged -v $(pwd):/project flipp /project/build_linux.sh
+ run: docker run --rm --privileged -v $(pwd):/project qflipper-build:latest /project/build_linux.sh
- name: Publish application
- uses: actions/upload-artifact@v2
+ uses: actions/upload-artifact@v3
with:
name: qFlipper-x86_64.AppImage
path: |
@@ -48,7 +52,7 @@
MAC_OS_SIGNING_PASSWORD: ${{ secrets.MAC_OS_SIGNING_PASSWORD }}
steps:
- name: Checkout code
- uses: actions/checkout@v2
+ uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: true
@@ -71,7 +75,7 @@
SIGNING_TOOL: ${{ secrets.WIN_SIGNING_TOOL }}
steps:
- name: Checkout code
- uses: actions/checkout@v2
+ uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/applicationupdater.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/application/applicationupdater.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/applicationupdater.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/applicationupdater.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -78,7 +78,7 @@
#if defined(Q_OS_WINDOWS) || defined(Q_OS_MAC)
const auto filePath = QDir::temp().absoluteFilePath(fileName);
#elif defined(Q_OS_LINUX)
- const auto filePath = fileName;
+ const auto filePath = QDir::current().absoluteFilePath(fileName);
#else
#error "Unsupported OS"
#endif
@@ -206,9 +206,7 @@
return mountDmg->error() == QProcess::UnknownError; //Really? no NoError code?
#elif defined(Q_OS_LINUX)
- const auto info = QFileInfo(path);
- const auto success = QProcess::startDetached(info.fileName(), {}, info.absoluteDir().absolutePath());
-
+ const auto success = QProcess::startDetached(path);
if(success) exitApplication();
return success;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/assets/gfx/images/flipper.svg new/qFlipper-1.3.3+git0.1699609231.bfce851/application/assets/gfx/images/flipper.svg
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/assets/gfx/images/flipper.svg 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/assets/gfx/images/flipper.svg 2023-11-10 10:40:31.000000000 +0100
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Generator: Adobe Illustrator 25.4.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!-- Generator: Adobe Illustrator 28.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version="1.1"
@@ -7,196 +7,110 @@
x="0px"
y="0px"
viewBox="0 0 360 156"
- style="enable-background:new 0 0 360 156;"
xml:space="preserve"
+ width="360"
+ height="156"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
- id="defs104" />
-<style
+ id="defs24" /> <style
type="text/css"
- id="style2">
- .st0{fill:url(#SVGID_1_);}
- .st1{fill:#FE8A2C;}
-</style>
-<g
- id="g99">
- <linearGradient
+ id="style1"> .st0{fill:url(#SVGID_1_);} .st1{fill:#FE8A2C;} </style> <g
+ id="g24"
+ transform="translate(-2)"> <linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
- x1="179.8875"
+ x1="181.8875"
y1="156.4734"
- x2="179.8875"
- y2="-1.2854">
- <stop
+ x2="181.8875"
+ y2="-1.2854"> <stop
offset="7.885129e-07"
style="stop-color:#3C1A00"
- id="stop4" />
- <stop
+ id="stop1" /> <stop
offset="0.5511"
style="stop-color:#220F00"
- id="stop6" />
- <stop
+ id="stop2" /> <stop
offset="1"
style="stop-color:#090400"
- id="stop8" />
- </linearGradient>
- <path
+ id="stop3" /> </linearGradient> <path
class="st0"
- d="M301.3,1.2c0,0-219.9,0-229.7,0s-17,10.3-17,10.3S5.3,75.4,3.2,78.3c-3,4-2.1,14.1,0,17 c5.9,8,34.5,47.1,35.8,48.8c1.4,1.7,7.7,11.1,16.5,11.1s278.7,0,283.5,0c8.7,0,19.6-20.2,19.6-25.2s-0.3-58.9-0.3-64.5 c0-3.7-2.6-8.4-5.1-11.5c-2.3-2.8-35.3-44-38.2-47.5C312.5,3.6,306.8,1.2,301.3,1.2z"
- id="path11" />
- <g
- id="g15">
- <path
- class="st1"
- d="M302,3c4.5,0,10,3.3,12,5.7c2.9,3.4,35.3,44,38,47.4c3.1,3.9,4.9,7.5,4.9,9.7v64.5c0,4-10.8,22.7-17.2,22.7 H55.1c-4.5,0-9.3-3.4-14.5-10c-0.2-0.2-0.3-0.4-0.4-0.5c-0.7-0.9-10.1-13.7-18.4-25C14.5,107.6,7,97.4,4.3,93.7 C3,92,2.1,83.3,4.3,80.4c2.1-2.8,51.1-66.1,51.6-66.7l0.1-0.1l0.1-0.1C56.1,13.4,63.2,3,71.3,3H302 M302,0c0,0-220.7,0-230.7,0 c-9.9,0-17.8,11.8-17.8,11.8S4.1,75.7,1.9,78.6c-2.9,4-2.1,14.1,0,17c6,8,34.6,47.1,36,48.8c1.4,1.7,8.5,11.7,17.3,11.7 s279.9,0,284.7,0c8.8,0,20.2-20.8,20.2-25.7s0-58.9,0-64.5c0-3.7-3.1-8.4-5.6-11.5c-2.3-2.8-35.2-44-38.1-47.5 C313.9,3.9,307.6,0,302,0L302,0z"
- id="path13" />
- </g>
- <g
- id="g45">
- <g
- id="g19">
- <path
- class="st1"
- d="M116.3,137l-0.8,5H112l2.1-13H138l-0.5,3h-20.4l-0.3,2.1h17.3l-0.5,3H116.3z"
- id="path17" />
- </g>
- <g
- id="g23">
- <path
- class="st1"
- d="M143.5,129l-1.6,10H162l-0.5,3H138l2.1-13H143.5z"
- id="path21" />
- </g>
- <g
- id="g27">
- <path
- class="st1"
- d="M170,129l-2.3,13H164l2.3-13H170z"
- id="path25" />
- </g>
- <g
- id="g31">
- <path
- class="st1"
- d="M174.7,137l-0.8,5h-3.4l2.1-13h19.9c0.9,0,1.7,0.3,2.3,0.9c0.6,0.6,0.8,1.3,0.7,2.1l-0.3,2 c-0.1,0.8-0.6,1.5-1.3,2.1c-0.8,0.6-1.6,0.9-2.6,0.9H174.7z M175.5,132l-0.3,2.1h16.5l0.3-2.1H175.5z"
- id="path29" />
- </g>
- <g
- id="g35">
- <path
- class="st1"
- d="M200.7,137l-0.8,5h-3.4l2.1-13h19.9c0.9,0,1.7,0.3,2.3,0.9c0.6,0.6,0.8,1.3,0.7,2.1l-0.3,2 c-0.1,0.8-0.6,1.5-1.3,2.1c-0.8,0.6-1.6,0.9-2.6,0.9H200.7z M201.5,132l-0.3,2.1h16.5l0.3-2.1H201.5z"
- id="path33" />
- </g>
- <g
- id="g39">
- <path
- class="st1"
- d="M247.4,139l-0.5,3H223l2.1-13H249l-0.5,3h-20.4l-0.3,2.1h17.9l-0.5,3h-17.9l-0.3,2H247.4z"
- id="path37" />
- </g>
- <g
- id="g43">
- <path
- class="st1"
- d="M253.7,137l-0.8,5h-3.4l2.1-13h19.9c0.9,0,1.7,0.3,2.3,0.9c0.6,0.6,0.8,1.3,0.7,2.1l-0.3,2 c-0.1,0.4-0.3,0.8-0.7,1.1c-0.3,0.3-0.7,0.4-1.1,0.4c0.4,0,0.7,0.2,1,0.4c0.3,0.3,0.4,0.6,0.3,1l-0.8,5h-3.4l0.8-5H253.7z M270.7,134l0.3-2.1h-16.5l-0.3,2.1H270.7z"
- id="path41" />
- </g>
- </g>
- <g
- id="g49">
- <path
- class="st1"
- d="M221.3,98H92.7C89,98,86,95,86,91.3V25.7c0-3.7,3-6.7,6.7-6.7h128.6c3.7,0,6.7,3,6.7,6.7v65.6 C228,95,225,98,221.3,98z M92.7,20c-3.1,0-5.7,2.6-5.7,5.7v65.6c0,3.1,2.6,5.7,5.7,5.7h128.6c3.1,0,5.7-2.6,5.7-5.7V25.7 c0-3.1-2.6-5.7-5.7-5.7H92.7z"
- id="path47" />
- </g>
- <g
- id="g53">
- <path
- class="st1"
- d="M274.5,94C254.9,94,239,78.1,239,58.5S254.9,23,274.5,23S310,38.9,310,58.5S294.1,94,274.5,94z M274.5,24 c-19,0-34.5,15.5-34.5,34.5S255.5,93,274.5,93S309,77.5,309,58.5S293.5,24,274.5,24z"
- id="path51" />
- </g>
- <g
- id="g57">
- <path
- class="st1"
- d="M326.6,94c-6.3,0-11.5-5.2-11.5-11.5S320.2,71,326.6,71s11.5,5.2,11.5,11.5S332.9,94,326.6,94z M326.5,72 c-5.8,0-10.5,4.7-10.5,10.5S320.7,93,326.5,93S337,88.3,337,82.5S332.3,72,326.5,72z"
- id="path55" />
- </g>
- <g
- id="g61">
- <path
- class="st1"
- d="M328.8,88h-6.4c-0.3,0-0.5-0.2-0.5-0.5v-2c0-0.3,0.2-0.5,0.5-0.5h5.9c0.6,0,1-0.2,1.3-0.6 c0.3-0.4,0.5-0.9,0.5-1.4c0-1-0.5-1.9-1.7-1.9h-4.4v1.5c0,0.2-0.1,0.4-0.3,0.5c-0.2,0.1-0.4,0-0.5-0.1l-2.9-3 c-0.2-0.2-0.2-0.5,0-0.7l2.8-3c0.1-0.1,0.4-0.2,0.5-0.1c0.2,0.1,0.3,0.3,0.3,0.5V78h4.9c2.8,0,4.2,2.5,4.2,5c0,1.3-0.4,2.5-1,3.4 C331.2,87.4,330.1,88,328.8,88z M322.9,87h5.9c1,0,1.8-0.4,2.4-1.2c0.5-0.7,0.8-1.7,0.8-2.8c0-1.9-1-4-3.2-4h-5.4 c-0.3,0-0.5-0.2-0.5-0.5v-0.8l-1.7,1.8l1.7,1.8v-0.8c0-0.3,0.2-0.5,0.5-0.5h4.9c1.8,0,2.7,1.5,2.7,2.9c0,0.8-0.2,1.5-0.7,2 c-0.5,0.6-1.3,1-2.1,1h-5.4V87z"
- id="path59" />
- </g>
- <g
- id="g65">
- <path
- class="st1"
- d="M274.5,70c-6.3,0-11.5-5.2-11.5-11.5S268.2,47,274.5,47S286,52.2,286,58.5S280.8,70,274.5,70z M274.5,48 c-5.8,0-10.5,4.7-10.5,10.5S268.7,69,274.5,69S285,64.3,285,58.5S280.3,48,274.5,48z"
- id="path63" />
- </g>
- <g
- id="g69">
- <path
- class="st1"
- d="M279.2,40h-9.3c-0.4,0-0.8-0.2-0.9-0.5c-0.2-0.3-0.2-0.7,0-1.1l4.7-7.9c0.4-0.7,1.5-0.7,1.9,0l4.7,7.9 c0.2,0.3,0.2,0.7,0,1.1C279.9,39.8,279.5,40,279.2,40z M274.5,30.9C274.5,30.9,274.4,31,274.5,30.9l-4.7,7.9c0,0,0,0.1,0,0.1 c0,0,0,0,0.1,0h9.3c0,0,0.1,0,0.1,0c0,0,0-0.1,0-0.1L274.5,30.9C274.6,31,274.5,30.9,274.5,30.9z"
- id="path67" />
- </g>
- <g
- id="g73">
- <path
- class="st1"
- d="M274.5,87c-0.4,0-0.8-0.2-1-0.5l-4.7-7.9c-0.2-0.3-0.2-0.7,0-1.1c0.2-0.3,0.6-0.5,0.9-0.5h9.3 c0.4,0,0.8,0.2,0.9,0.5c0.2,0.3,0.2,0.7,0,1.1l-4.7,7.9C275.3,86.8,274.9,87,274.5,87z M269.9,78C269.8,78,269.8,78,269.9,78 c-0.1,0.1-0.1,0.1-0.1,0.2l4.7,8.1c0,0.1,0.1,0.1,0.2,0l4.7-8.1c0,0,0-0.1,0-0.1c0,0,0-0.1-0.1-0.1H269.9z"
- id="path71" />
- </g>
- <g
- id="g77">
- <path
- class="st1"
- d="M294.1,64.2c-0.2,0-0.4,0-0.5-0.1c-0.3-0.2-0.5-0.6-0.5-0.9v-9.3c0-0.4,0.2-0.8,0.5-0.9 c0.3-0.2,0.7-0.2,1.1,0l7.9,4.7c0.3,0.2,0.5,0.6,0.5,1c0,0.4-0.2,0.8-0.5,1l-7.9,4.7C294.4,64.2,294.3,64.2,294.1,64.2z M294.1,53.7C294,53.7,294,53.8,294.1,53.7c-0.1,0-0.1,0.1-0.1,0.1v9.3c0,0,0,0.1,0,0.1c0,0,0.1,0,0.1,0l7.9-4.7c0,0,0,0,0-0.1 c0,0,0-0.1,0-0.1L294.1,53.7C294.1,53.8,294.1,53.7,294.1,53.7z"
- id="path75" />
- </g>
- <g
- id="g81">
- <path
- class="st1"
- d="M254.9,64.2c-0.2,0-0.4,0-0.5-0.1l-7.9-4.7c-0.3-0.2-0.5-0.6-0.5-1c0-0.4,0.2-0.8,0.5-1l7.9-4.7 c0.3-0.2,0.7-0.2,1.1,0c0.3,0.2,0.5,0.6,0.5,0.9v9.3c0,0.4-0.2,0.8-0.5,0.9C255.3,64.2,255.1,64.2,254.9,64.2z M254.9,53.7 C254.9,53.7,254.9,53.8,254.9,53.7l-7.9,4.7c0,0,0,0,0,0.1c0,0,0,0.1,0,0.1l7.9,4.7c0,0,0.1,0,0.1,0c0,0,0,0,0-0.1v-9.3 C255,53.8,255,53.8,254.9,53.7C255,53.8,255,53.7,254.9,53.7z"
- id="path79" />
- </g>
- <g
- id="g85">
- <path
- class="st1"
- d="M327.5,98H275c-22.4,0-40-17.1-40-39c0-22,17.9-40,40-40c11.1,0,21.7,4.6,29.3,12.8l33.9,40.8 c4,4.3,3.9,8.7,3.9,11.3l0,0.6C342,90.7,334.1,98,327.5,98z M275,20c-21.5,0-39,17.5-39,39c0,21.3,17.1,38,39,38h52.5 c6,0,13.5-6.9,13.5-12.6l0-0.6c0-2.5,0.1-6.6-3.6-10.6l-33.9-40.8C296.1,24.5,285.7,20,275,20z"
- id="path83" />
- </g>
- <g
- id="g89">
- <path
- class="st1"
- d="M238.5,98c-1.9,0-3.5-1.6-3.5-3.5s1.6-3.5,3.5-3.5c1.9,0,3.5,1.6,3.5,3.5S240.4,98,238.5,98z M238.5,92 c-1.4,0-2.5,1.1-2.5,2.5c0,1.4,1.1,2.5,2.5,2.5s2.5-1.1,2.5-2.5C241,93.1,239.9,92,238.5,92z"
- id="path87" />
- </g>
- <g
- id="g93">
- <path
- class="st1"
- d="M339.5,120H70.3c-9.1,0-12.5-3.8-17.7-9.5l-0.6-0.7c-4.9-5.5-11.7-13.5-15.8-18.8c-3.8-4.9-2.3-7.3,0.6-12 l0.2-0.3c1.6-2.5,11.1-16,20.3-29.1c9.2-13,18.7-26.5,20.5-29.3C82.5,13.1,88.5,10,98,10h199.6c3.6,0,8.8,1.7,12,5.5l0.8,0.9 c20.6,24.6,32.3,38.7,34.9,41.9c4.2,5.3,4.8,7.7,4.8,11.4v39.7C350,114.4,345.7,120,339.5,120z M98,11c-9.1,0-14.9,2.9-19.2,9.8 C77,23.6,67.4,37.1,58.2,50.2C49,63.3,39.5,76.8,37.9,79.3l-0.2,0.3c-3,4.7-4.1,6.5-0.7,10.8c4,5.2,10.8,13.2,15.7,18.7l0.6,0.7 c5.1,5.7,8.3,9.2,16.9,9.2h269.2c5.6,0,9.5-5.1,9.5-9.6V69.7c0-3.6-0.7-5.7-4.6-10.8c-2.5-3.2-14.2-17.3-34.8-41.9l-0.8-0.9 c-2.9-3.5-7.9-5.1-11.2-5.1H98z"
- id="path91" />
- </g>
- <g
- id="g97">
- <rect
- x="89"
- y="22"
- class="st1"
- width="136"
- height="73"
- id="rect95"
- ry="4" />
- </g>
-</g>
-</svg>
+ d="m 303.3,1.2 c 0,0 -219.9,0 -229.7,0 -9.8,0 -17,10.3 -17,10.3 0,0 -49.3,63.9 -51.4,66.8 -3,4 -2.1,14.1 0,17 5.9,8 34.5,47.1 35.8,48.8 1.4,1.7 7.7,11.1 16.5,11.1 8.8,0 278.7,0 283.5,0 8.7,0 19.6,-20.2 19.6,-25.2 0,-5 -0.3,-58.9 -0.3,-64.5 0,-3.7 -2.6,-8.4 -5.1,-11.5 C 352.9,51.2 319.9,10 317,6.5 314.5,3.6 308.8,1.2 303.3,1.2 Z"
+ id="path3"
+ style="fill:url(#SVGID_1_)" /> <g
+ id="g4"> <path
+ class="st1"
+ d="m 304,3 c 4.5,0 10,3.3 12,5.7 2.9,3.4 35.3,44 38,47.4 3.1,3.9 4.9,7.5 4.9,9.7 v 64.5 c 0,4 -10.8,22.7 -17.2,22.7 H 57.1 c -4.5,0 -9.3,-3.4 -14.5,-10 -0.2,-0.2 -0.3,-0.4 -0.4,-0.5 -0.7,-0.9 -10.1,-13.7 -18.4,-25 C 16.5,107.6 9,97.4 6.3,93.7 5,92 4.1,83.3 6.3,80.4 8.4,77.6 57.4,14.3 57.9,13.7 L 58,13.6 58.1,13.5 C 58.1,13.4 65.2,3 73.3,3 H 304 m 0,-3 C 304,0 83.3,0 73.3,0 63.4,0 55.5,11.8 55.5,11.8 c 0,0 -49.4,63.9 -51.6,66.8 -2.9,4 -2.1,14.1 0,17 6,8 34.6,47.1 36,48.8 1.4,1.7 8.5,11.7 17.3,11.7 8.8,0 279.9,0 284.7,0 8.8,0 20.2,-20.8 20.2,-25.7 0,-4.9 0,-58.9 0,-64.5 0,-3.7 -3.1,-8.4 -5.6,-11.5 C 354.2,51.6 321.3,10.4 318.4,6.9 315.9,3.9 309.6,0 304,0 Z"
+ id="path4" /> </g> <g
+ id="g10"> <polygon
+ class="st1"
+ points="118,137 117,137 117,139 116,139 116,142 115,142 115,144 114,144 114,146 117,146 117,144 118,144 118,142 119,142 119,139 120,139 120,137 134,137 134,136 135,136 135,135 136,135 136,134 122.9,134 123,133 124,133 124,131 142,131 142,130 143,130 143,129 144,129 144,128 121,128 121,131 120,131 120,133 119,133 119,135 118,135 "
+ id="polygon4" /> <path
+ class="st1"
+ d="m 148.1,128.1 h 2.9 v 3.9 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h 14 v 0.9 h -1 v 1 h -1 v 1 h -17 v -2 h 1 v -2 h 1.1 v -2 h 0.9 v -2 h 1 v -2 h 1 v -2 h 1 c 0,0.1 0,-2.8 0.1,-2.8 z"
+ id="path5" /> <path
+ class="st1"
+ d="m 171,128 v 3 h -1 v 2 h -0.9 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 1.9 h 2.9 v -2 h 1.1 v -2 h 1 v -2 h 1 v -2 h 1 v -2 h 1 v -1 h 1 V 128 c -0.1,0 -3.1,0 -3.1,0 z"
+ id="path6" /> <path
+ class="st1"
+ d="m 181,128 v 3 h -1 v 2 h -0.9 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 1.9 h 2.9 v -2 h 1.1 v -2 h 1 v -2 h 15 V 136 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -2 c -0.1,0 -21.1,0 -21.1,0 z m 15,4 v 1 h -0.9 v 1 H 182 v -1 h 1 v -1 h 1 v -1 h 13 v 1.1 h -1 z"
+ id="path7" /> <path
+ class="st1"
+ d="m 205,128 v 3 h -1 v 2 h -0.9 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 1.9 h 2.9 v -2 h 1.1 v -2 h 1 v -2 h 15 V 136 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -2 c -0.1,0 -21.1,0 -21.1,0 z m 15,4 v 1 h -0.9 v 1 H 206 v -1 h 1 v -1 h 1 v -1 h 13 v 1.1 h -1 z"
+ id="path8" /> <path
+ class="st1"
+ d="M 250.9,128.1 H 231 v 3 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 1.9 h 18.9 v -1 h 1 v -1 h 1.1 v -1 h -17 v -1.1 h 1 v -2 h 14 v -1 h 1 V 135 h 1 v -1 h -14 v -1 h 1 v -2 h 17 v -1 h 1 c -0.1,0 -0.1,-2 -0.1,-1.9 z"
+ id="path9" /> <path
+ class="st1"
+ d="m 257,128 v 3 h -1 v 2 h -0.9 v 2 h -1 v 2 h -1 v 2 h -1 v 2 h -1 v 1.9 h 2.9 v -2 h 1.1 v -2 h 1 v -2 h 11.1 v 1 h 0.9 v 1 h 1 v 1 h 1 v 1 h 1 v 1 h 1 v 1 h 1 l 0.1,1 h 1 v 1.1 h 1 v 1 h 3 v -0.9 h -1 v -1 h -1 v -1 h -1 v -1 h -1 v -1 h -1 v -1 h -1 v -0.9 h -1 v -1 h -1 v -1 h 1.1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 v -1 h 1 V 128 c -0.3,0 -21.3,0 -21.3,0 z m 15,4 v 1 h -0.9 v 1 H 258 v -1 h 1 v -1 h 1 v -1 h 13 v 1.1 h -1 z"
+ id="path10" /> </g> <g
+ id="g11"> <path
+ class="st1"
+ d="M 223.3,98 H 94.7 C 91,98 88,95 88,91.3 V 25.7 C 88,22 91,19 94.7,19 h 128.6 c 3.7,0 6.7,3 6.7,6.7 v 65.6 c 0,3.7 -3,6.7 -6.7,6.7 z M 94.7,20 C 91.6,20 89,22.6 89,25.7 v 65.6 c 0,3.1 2.6,5.7 5.7,5.7 h 128.6 c 3.1,0 5.7,-2.6 5.7,-5.7 V 25.7 c 0,-3.1 -2.6,-5.7 -5.7,-5.7 z"
+ id="path11" /> </g> <g
+ id="g12"> <path
+ class="st1"
+ d="M 276.5,94 C 256.9,94 241,78.1 241,58.5 241,38.9 256.9,23 276.5,23 296.1,23 312,38.9 312,58.5 312,78.1 296.1,94 276.5,94 Z m 0,-70.1 c -19,0 -34.6,15.6 -34.6,34.6 0,19 15.6,34.6 34.6,34.6 19,0 34.6,-15.6 34.6,-34.6 0,-19 -15.6,-34.6 -34.6,-34.6 z"
+ id="path12" /> </g> <g
+ id="g13"> <path
+ class="st1"
+ d="m 328.6,94 c -6.3,0 -11.5,-5.2 -11.5,-11.5 0,-6.3 5.1,-11.5 11.5,-11.5 6.4,0 11.4,5.2 11.4,11.5 0,6.3 -5.1,11.5 -11.4,11.5 z m -0.1,-22.1 c -5.8,0 -10.6,4.8 -10.6,10.6 0,5.8 4.8,10.6 10.6,10.6 5.8,0 10.6,-4.8 10.6,-10.6 0,-5.8 -4.8,-10.6 -10.6,-10.6 z"
+ id="path13" /> </g> <g
+ id="g14"> <path
+ class="st1"
+ d="m 330.8,88 h -6.4 c -0.3,0 -0.3,-0.2 -0.3,-0.5 v -2 c 0,-0.3 0,-0.4 0.3,-0.4 h 5.9 c 0.6,0 1.1,-0.3 1.4,-0.7 0.3,-0.4 0.5,-0.9 0.5,-1.4 0,-1 -0.5,-2 -1.6,-2 H 326 l -0.1,1.6 c 0,0.2 -0.1,0.4 -0.3,0.5 -0.2,0.1 -0.4,0 -0.5,-0.1 l -2.9,-3 c -0.2,-0.2 -0.2,-0.5 0,-0.7 l 2.8,-3 c 0.1,-0.1 0.4,-0.2 0.5,-0.1 0.2,0.1 0.3,0.3 0.3,0.5 V 78 h 4.9 c 2.8,0 4.2,2.5 4.2,5 0,1.3 -0.4,2.5 -1,3.4 -0.7,1 -1.8,1.6 -3.1,1.6 z m -5.9,-1 h 5.9 c 1,0 1.8,-0.4 2.4,-1.2 0.5,-0.7 0.9,-1.7 0.9,-2.8 0,-1.9 -0.8,-4 -3.2,-4 h -5.4 c -0.3,0 -0.6,-0.2 -0.6,-0.5 v -0.8 l -1.7,1.8 1.7,1.8 v -0.8 c 0,-0.3 0.2,-0.5 0.5,-0.5 h 4.9 c 1.5,0 2.6,1.5 2.6,3 0,0.8 -0.1,1.4 -0.5,1.9 -0.5,0.6 -1.3,1 -2.1,1 h -5.4 z"
+ id="path14" /> </g> <g
+ id="g15"> <path
+ class="st1"
+ d="M 276.5,70 C 270.2,70 265,64.8 265,58.5 265,52.2 270.2,47 276.5,47 c 6.3,0 11.5,5.2 11.5,11.5 0,6.3 -5.2,11.5 -11.5,11.5 z m 0,-22 c -5.8,0 -10.5,4.8 -10.5,10.6 0,5.8 4.8,10.5 10.5,10.5 5.7,0 10.5,-4.8 10.5,-10.6 C 287,52.7 282.3,48 276.5,48 Z"
+ id="path15" /> </g> <g
+ id="g16"> <path
+ class="st1"
+ d="m 281.2,40 h -9.3 c -0.4,0 -0.8,-0.2 -0.9,-0.5 -0.2,-0.3 -0.2,-0.7 0,-1.1 l 4.7,-7.9 c 0.4,-0.7 1.5,-0.7 1.9,0 l 4.7,7.9 c 0.2,0.3 0.2,0.7 0,1.1 -0.4,0.3 -0.8,0.5 -1.1,0.5 z m -4.7,-9.1 c 0,0 -0.1,0.1 0,0 l -4.7,7.9 c 0,0 0,0.1 0,0.1 0,0 0,0 0.1,0 h 9.3 c 0,0 0.1,0 0.1,0 0,0 0,-0.1 0,-0.1 l -4.8,-7.9 c 0.1,0.1 0,0 0,0 z"
+ id="path16" /> </g> <g
+ id="g17"> <path
+ class="st1"
+ d="m 276.5,87 c -0.4,0 -0.8,-0.2 -1,-0.5 l -4.7,-7.9 c -0.2,-0.3 -0.2,-0.7 0,-1.1 0.2,-0.3 0.6,-0.5 0.9,-0.5 h 9.3 c 0.4,0 0.8,0.2 0.9,0.5 0.2,0.3 0.2,0.7 0,1.1 l -4.7,7.9 c 0.1,0.3 -0.3,0.5 -0.7,0.5 z m -4.6,-9 c -0.1,0 -0.1,0 0,0 -0.1,0.1 -0.1,0.1 -0.1,0.2 l 4.7,8.1 c 0,0.1 0.1,0.1 0.2,0 l 4.7,-8.1 c 0,0 0,-0.1 0,-0.1 0,0 0,-0.1 -0.1,-0.1 z"
+ id="path17" /> </g> <g
+ id="g18"> <path
+ class="st1"
+ d="m 296.1,64.2 c -0.2,0 -0.4,0 -0.5,-0.1 -0.3,-0.2 -0.5,-0.6 -0.5,-0.9 v -9.3 c 0,-0.4 0.2,-0.8 0.5,-0.9 0.3,-0.2 0.7,-0.2 1.1,0 l 7.9,4.7 c 0.3,0.2 0.5,0.6 0.5,1 0,0.4 -0.2,0.8 -0.5,1 l -7.9,4.7 c -0.3,-0.2 -0.4,-0.2 -0.6,-0.2 z m 0,-10.5 c -0.1,0 -0.1,0.1 0,0 -0.1,0 -0.1,0.1 -0.1,0.1 v 9.3 c 0,0 0,0.1 0,0.1 0,0 0.1,0 0.1,0 l 7.9,-4.7 c 0,0 0,0 0,-0.1 0,0 0,-0.1 0,-0.1 l -7.9,-4.6 c 0,0.1 0,0 0,0 z"
+ id="path18" /> </g> <g
+ id="g19"> <path
+ class="st1"
+ d="m 256.9,64.2 c -0.2,0 -0.4,0 -0.5,-0.1 l -7.9,-4.7 c -0.3,-0.2 -0.5,-0.6 -0.5,-1 0,-0.4 0.2,-0.8 0.5,-1 l 7.9,-4.7 c 0.3,-0.2 0.7,-0.2 1.1,0 0.3,0.2 0.5,0.6 0.5,0.9 v 9.3 c 0,0.4 -0.2,0.8 -0.5,0.9 -0.2,0.4 -0.4,0.4 -0.6,0.4 z m 0,-10.5 c 0,0 0,0.1 0,0 l -7.9,4.7 c 0,0 0,0 0,0.1 0,0 0,0.1 0,0.1 l 7.9,4.7 c 0,0 0.1,0 0.1,0 0,0 0,0 0,-0.1 v -9.3 c 0,-0.1 0,-0.1 -0.1,-0.2 0.1,0.1 0.1,0 0,0 z"
+ id="path19" /> </g> <g
+ id="g20"> <path
+ class="st1"
+ d="M 329.5,98 H 277 c -22.4,0 -40,-17.1 -40,-39 0,-22 17.9,-40 40,-40 11.1,0 21.7,4.6 29.3,12.8 l 33.9,40.8 c 4,4.3 3.9,8.7 3.9,11.3 v 0.6 C 344,90.7 336.1,98 329.5,98 Z M 277,19.9 c -21.5,0 -39.1,17.6 -39.1,39.1 0,21.3 17.2,38 39,38 h 52.5 c 6,0 13.6,-7 13.6,-12.6 v -0.6 c 0,-2.5 0,-6.5 -3.7,-10.6 L 305.4,32.4 C 298.1,24.5 287.8,19.9 277,19.9 Z"
+ id="path20" /> </g> <g
+ id="g21"> <path
+ class="st1"
+ d="m 240.5,98 c -1.9,0 -3.5,-1.6 -3.5,-3.5 0,-1.9 1.6,-3.5 3.5,-3.5 1.9,0 3.5,1.6 3.5,3.5 0,1.9 -1.6,3.5 -3.5,3.5 z m 0,-6 c -1.4,0 -2.5,1.1 -2.5,2.5 0,1.4 1.1,2.5 2.5,2.5 1.4,0 2.5,-1.1 2.5,-2.5 0,-1.4 -1.1,-2.5 -2.5,-2.5 z"
+ id="path21" /> </g> <g
+ id="g22"> <path
+ class="st1"
+ d="M 341.5,120 H 72.3 c -9.1,0 -12.5,-3.8 -17.7,-9.5 L 54,109.8 C 49.1,104.3 42.3,96.3 38.2,91 34.4,86.1 35.9,83.7 38.8,79 L 39,78.7 C 40.6,76.2 50.1,62.7 59.3,49.6 68.5,36.6 78,23.1 79.8,20.3 84.5,13.1 90.5,10 100,10 h 199.6 c 3.6,0 8.8,1.7 12,5.5 l 0.8,0.9 c 20.6,24.6 32.3,38.7 34.9,41.9 4.2,5.3 4.8,7.7 4.8,11.4 v 39.7 c -0.1,5 -4.4,10.6 -10.6,10.6 z M 100,11 C 90.9,11 85.1,13.9 80.8,20.8 79,23.6 69.4,37.1 60.2,50.2 51,63.3 41.5,76.8 39.9,79.3 l -0.2,0.3 c -3,4.7 -4.1,6.5 -0.7,10.8 4,5.2 10.8,13.2 15.7,18.7 l 0.6,0.7 c 5.1,5.7 8.3,9.3 16.9,9.3 h 269.2 c 5.6,0 9.5,-5.1 9.5,-9.7 V 69.7 c 0,-3.6 -0.7,-5.7 -4.6,-10.8 C 343.8,55.7 332.1,41.6 311.5,17 l -0.8,-0.9 C 307.8,12.6 302.8,11 299.5,11 Z"
+ id="path22" /> </g> <g
+ id="g23"> <path
+ class="st1"
+ d="M 222.7,95 H 95.3 C 92.9,95 91,93.1 91,90.7 V 26.3 C 91,23.9 92.9,22 95.3,22 h 127.4 c 2.4,0 4.3,1.9 4.3,4.3 v 64.4 c 0,2.4 -1.9,4.3 -4.3,4.3 z"
+ id="path23" /> </g> </g> </svg>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/components/FileManagerDelegate.qml new/qFlipper-1.3.3+git0.1699609231.bfce851/application/components/FileManagerDelegate.qml
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/components/FileManagerDelegate.qml 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/components/FileManagerDelegate.qml 2023-11-10 10:40:31.000000000 +0100
@@ -305,6 +305,8 @@
}
function commitEdit() {
+ if(!editBox.visible) return;
+
const oldName = delegate.fileName;
const newName = nameEdit.text;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/components/FinishOverlay.qml new/qFlipper-1.3.3+git0.1699609231.bfce851/application/components/FinishOverlay.qml
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/components/FinishOverlay.qml 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/components/FinishOverlay.qml 2023-11-10 10:40:31.000000000 +0100
@@ -125,11 +125,13 @@
case BackendError.InternetError:
return ErrorStrings.errorInternet
case BackendError.InvalidDevice:
- return ErrorStrings.errorInvalidDevice
+ return Qt.platform.os === "linux" ? ErrorStrings.errorInvalidDeviceLinux :
+ ErrorStrings.errorInvalidDevice
case BackendError.DiskError:
return ErrorStrings.errorDisk
case BackendError.SerialAccessError:
- return Qt.platform.os === "linux" ? ErrorStrings.errorSerialLinux : ErrorStrings.errorSerial
+ return Qt.platform.os === "linux" ? ErrorStrings.errorSerialLinux :
+ ErrorStrings.errorSerial
case BackendError.RecoveryAccessError:
return Qt.platform.os === "linux" ? ErrorStrings.errorRecoveryLinux :
Qt.platform.os === "windows" ? ErrorStrings.errorRecoveryWindows :
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/components/TextBox.qml new/qFlipper-1.3.3+git0.1699609231.bfce851/application/components/TextBox.qml
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/components/TextBox.qml 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/components/TextBox.qml 2023-11-10 10:40:31.000000000 +0100
@@ -17,6 +17,12 @@
color: "black"
border.color: Theme.color.lightorange2
+ MouseArea {
+ id: mouseArea
+ anchors.fill: content
+ cursorShape: content.hoveredLink ? Qt.PointingHandCursor : Qt.ArrowCursor
+ }
+
Text {
id: content
@@ -36,6 +42,8 @@
wrapMode: Text.Wrap
textFormat: Text.RichText
- onLinkActivated: Qt.openUrlExternally(link)
+ onLinkActivated: function(link) {
+ Qt.openUrlExternally(link)
+ }
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/imports/Misc/ErrorStrings.qml new/qFlipper-1.3.3+git0.1699609231.bfce851/application/imports/Misc/ErrorStrings.qml
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/imports/Misc/ErrorStrings.qml 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/imports/Misc/ErrorStrings.qml 2023-11-10 10:40:31.000000000 +0100
@@ -14,7 +14,17 @@
<p>2. Reconnect your Flipper.</p>
<p>3. If the problem persists, reboot Flipper into RECOVERY MODE and click REPAIR to perform a clean installation.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
+
+ readonly property string errorInvalidDeviceLinux:
+"<p>Device cannot be recognized.</p>
+<p>=========== HOW TO FIX ============</p>
+<p>1. Disconnect all other similar devices from this computer.</p>
+<p>2. Grant user permissions to access Serial devices.</p>
+<p>Run \"./qFlipper-x86_64-%1.AppImage rules install\" to do so automatically.</p>
+<p>3. If the problem persists, reboot Flipper into RECOVERY MODE and click REPAIR to perform a clean installation.</p>
+<p>-----------------------------------</p>
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>".arg(App.version)
readonly property string errorSerial:
"<p>Cannot connect to Flipper. Device is busy.</p>
@@ -22,7 +32,7 @@
<p>1. Ensure that Flipper is not connected via Bluetooth or Terminal session.</p>
<p>2. Reconnect your Flipper.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorSerialLinux:
"<p>Cannot connect to Flipper. Device is busy.</p>
@@ -32,7 +42,7 @@
<p>Run \"./qFlipper-x86_64-%1.AppImage rules install\" to do so automatically.</p>
<p>3. Reconnect your Flipper.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>".arg(App.version)
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>".arg(App.version)
readonly property string errorRecovery:
"<p>Cannot connect to Flipper in Update & Recovery mode. Device not found.</p>
@@ -41,7 +51,7 @@
<p>2. Reconnect your Flipper.</p>
<p>3. Reboot Flipper to Flipper OS and try again.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorRecoveryWindows:
"<p>Cannot connect to Flipper in Update & Recovery mode. Device not found.</p>
@@ -51,7 +61,7 @@
<p>3. Reinstall qFlipper to update DFU device driver.</p>
<p>4. Reboot Flipper to Flipper OS and try again.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorRecoveryLinux:
"<p>Cannot connect to Flipper in Update & Recovery mode. Device not found.</p>
@@ -62,7 +72,7 @@
<p>Run \"./qFlipper-x86_64-%1.AppImage rules install\" to do so automatically.</p>
<p>4. Reboot Flipper to Flipper OS and try again.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>".arg(App.version)
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>".arg(App.version)
readonly property string errorInternet:
"<p>Cannot connect to update server.</p>
@@ -71,7 +81,7 @@
<p>2. Ensure that the update server is not down.</p>
<p>3. Try updating again.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorDisk:
"<p>Can’t save or read files to/from the local filesystem.</p>
@@ -80,7 +90,7 @@
<p>2. Check that qFlipper has permissions to write on disk.</p>
<p>3. When applicable, make sure to point qFlipper to the right files/directores.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorBackup:
"<p>Can’t get data from Flipper. This may be caused by an internal error.</p>
@@ -89,7 +99,7 @@
<p>2. Reboot your Flipper and reconnect via USB.</p>
<p>3. Run the operation again.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorData:
"<p>Necessary data seems to be damaged.</p>
@@ -98,7 +108,7 @@
<p>2. Reboot your Flipper and reconnect via USB.</p>
<p>3. Run the operation again.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorOperation:
"<p>Current operation was interrupted. Connection to device is lost.</p>
@@ -107,7 +117,7 @@
<p>2. Ensure that Flipper is not locked with PIN code.</p>
<p>3. Connect your Flipper in Update & Recovery mode and start repair.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorUpdater:
"<p>Firmware update could not be started.</p>
@@ -117,7 +127,7 @@
<p>3. Try again.</p>
<p>4. If the error persists, file a bug report.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
readonly property string errorUnknown:
"<p>An unknown error has occurred.</p>
@@ -127,5 +137,5 @@
<p>3. Try again.</p>
<p>4. If the error persists, file a bug report.</p>
<p>-----------------------------------</p>
-<center><a href='https://docs.flipperzero.one/'>READ MORE</a></center>"
+<center><a href='https://docs.flipper.net/'>READ MORE</a></center>"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/screencanvas.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/application/screencanvas.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/screencanvas.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/screencanvas.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -11,7 +11,8 @@
m_foreground(QColor(0x00, 0x00, 0x00)),
m_background(QColor(0xFF, 0xFF, 0xFF)),
m_canvas(QImage(1, 1, QImage::Format_RGB32)),
- m_zoomFactor(1.0)
+ m_zoomFactor(1.0),
+ m_orientation(Qt::LandscapeOrientation)
{
connect(this, &ScreenCanvas::zoomFactorChanged, this, &ScreenCanvas::updateImplicitSize);
connect(this, &ScreenCanvas::canvasSizeChanged, this, &ScreenCanvas::updateImplicitSize);
@@ -30,6 +31,7 @@
}
setCanvasSize(frame.size);
+ setCanvasOrientation(frame.orientation);
for (auto x = 0; x < m_canvas.width(); x++) {
for (auto y = 0; y < m_canvas.height(); y++) {
@@ -37,9 +39,7 @@
const auto z = y % 8;
const auto color = ((frame.pixelData.at(i) & (1 << z))) ? m_foreground : m_background;
- m_canvas.setPixelColor(frame.isFlipped ? m_canvas.width() - x - 1 : x,
- frame.isFlipped ? m_canvas.height() - y - 1 : y,
- color);
+ m_canvas.setPixelColor(x, y, color);
}
}
@@ -48,27 +48,8 @@
void ScreenCanvas::paint(QPainter *painter)
{
- const auto bw = boundingRect().width();
- const auto bh = boundingRect().height();
- const auto aspectRatio = (double)m_canvas.width() / m_canvas.height();
-
- auto w = bw;
- auto h = floor(w / aspectRatio);
-
- if(h > bh) {
- h = bh;
- w = bh * aspectRatio;
- }
-
- w -= ((int)w % m_canvas.width());
- h -= ((int)h % m_canvas.height());
-
- const auto dw = (bw - w) / 2;
- const auto dh = (bh - h) / 2;
-
- const QRectF canvasRect(dw, dh, w, h);
- painter->drawImage(canvasRect, m_canvas);
+ painter->drawImage(canvasRect(), m_canvas.transformed(canvasTransform()));
}
qreal ScreenCanvas::zoomFactor() const
@@ -144,11 +125,83 @@
emit canvasSizeChanged();
}
+void ScreenCanvas::setCanvasOrientation(Qt::ScreenOrientation orientation)
+{
+ m_orientation = orientation;
+}
+
+QTransform ScreenCanvas::canvasTransform() const
+{
+ switch (m_orientation) {
+ case Qt::InvertedLandscapeOrientation:
+ return QTransform().rotate(180);
+ case Qt::PortraitOrientation:
+ return QTransform().rotate(isLandscapeOnly() ? 0 : 90);
+ case Qt::InvertedPortraitOrientation:
+ return QTransform().rotate(isLandscapeOnly() ? 180 : -90);
+ case Qt::LandscapeOrientation:
+ default:
+ return QTransform();
+ }
+}
+
+QRectF ScreenCanvas::canvasRect() const
+{
+ const auto totalWidth = boundingRect().width();
+ const auto totalHeight = boundingRect().height();
+
+ const auto isRegular = isLandscapeOrientation() || isLandscapeOnly();
+
+ const auto canvasWidth = isRegular ? m_canvas.width() : m_canvas.height();
+ const auto canvasHeight = isRegular ? m_canvas.height() : m_canvas.width();
+
+ const auto aspectRatio = static_cast<qreal>(canvasWidth) / canvasHeight;
+
+ auto drawWidth = totalWidth;
+ auto drawHeight = floor(drawWidth / aspectRatio);
+
+ if(drawHeight > totalHeight) {
+ drawHeight = totalHeight;
+ drawWidth = totalHeight * aspectRatio;
+ }
+
+ if(drawWidth > canvasWidth) {
+ drawWidth -= (static_cast<int>(drawWidth) % canvasWidth);
+ }
+
+ if(drawHeight > canvasHeight) {
+ drawHeight -= (static_cast<int>(drawHeight) % canvasHeight);
+ }
+
+ const auto offsetX = (totalWidth - drawWidth) / 2;
+ const auto offsetY = (totalHeight - drawHeight) / 2;
+
+ return QRectF(offsetX, offsetY, drawWidth, drawHeight);
+}
+
+QSize ScreenCanvas::canvasSize() const
+{
+ return QSize(isLandscapeOrientation() ? m_canvas.width() : m_canvas.height(),
+ isLandscapeOrientation() ? m_canvas.height() : m_canvas.width());
+}
+
+bool ScreenCanvas::isLandscapeOrientation() const
+{
+ return m_orientation == Qt::LandscapeOrientation ||
+ m_orientation == Qt::InvertedLandscapeOrientation;
+}
+
+bool ScreenCanvas::isLandscapeOnly() const
+{
+ return (boundingRect().width() < canvasSize().width()) ||
+ (boundingRect().height() < canvasSize().height());
+}
+
const QImage ScreenCanvas::canvas(int scale) const
{
if(scale == 0) {
- return m_canvas.scaled(m_canvas.width() * m_zoomFactor, m_canvas.height() * m_zoomFactor);
+ return m_canvas.scaled(m_canvas.width() * m_zoomFactor, m_canvas.height() * m_zoomFactor).transformed(canvasTransform());
} else {
- return m_canvas.scaled(m_canvas.width() * scale, m_canvas.height() * scale);
+ return m_canvas.scaled(m_canvas.width() * scale, m_canvas.height() * scale).transformed(canvasTransform());
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/screencanvas.h new/qFlipper-1.3.3+git0.1699609231.bfce851/application/screencanvas.h
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/application/screencanvas.h 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/application/screencanvas.h 2023-11-10 10:40:31.000000000 +0100
@@ -49,12 +49,21 @@
private:
void setCanvasSize(const QSize &size);
+ void setCanvasOrientation(Qt::ScreenOrientation orientation);
-const QImage canvas(int scale = 0) const;
+ QTransform canvasTransform() const;
+ QRectF canvasRect() const;
+ QSize canvasSize() const;
+
+ bool isLandscapeOrientation() const;
+ bool isLandscapeOnly() const;
+
+ const QImage canvas(int scale = 0) const;
QColor m_foreground;
QColor m_background;
QImage m_canvas;
qreal m_zoomFactor;
+ Qt::ScreenOrientation m_orientation;
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperupdates.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperupdates.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperupdates.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperupdates.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -6,21 +6,24 @@
#include <QJsonArray>
#include <QJsonObject>
-#include "debug.h"
-
using namespace Flipper::Updates;
-FileInfo::FileInfo(const QJsonValue &val)
+FileInfo::FileInfo():
+ m_isValid(false)
+{}
+
+FileInfo::FileInfo(const QJsonValue &val):
+ FileInfo()
{
if(!val.isObject()) {
throw std::runtime_error("Expected FileInfo to be an object");
}
const auto &json = val.toObject();
- const auto canConstruct = json.contains("target") && json.contains("type") &&
+ m_isValid = json.contains("target") && json.contains("type") &&
json.contains("url") && json.contains("sha256");
- if(!canConstruct) {
+ if(!m_isValid) {
throw std::runtime_error("Malformed FileInfo");
}
@@ -50,6 +53,11 @@
return m_sha256;
}
+bool FileInfo::isValid() const
+{
+ return m_isValid;
+}
+
VersionInfo::VersionInfo(const QJsonValue &val)
{
if(!val.isObject()) {
@@ -103,8 +111,7 @@
return (arg.type() == type) && (target == arg.target());
});
- check_return_val(it != m_files.cend(), "FileInfo not found", FileInfo());
- return *it;
+ return (it != m_files.cend()) ? *it : FileInfo();
}
qint64 VersionInfo::compare(const VersionInfo &other) const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperupdates.h new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperupdates.h
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperupdates.h 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperupdates.h 2023-11-10 10:40:31.000000000 +0100
@@ -15,7 +15,7 @@
Q_GADGET
public:
- FileInfo() = default;
+ FileInfo();
FileInfo(const QJsonValue &val);
const QString &target() const;
@@ -23,11 +23,14 @@
const QString &url() const;
const QByteArray &sha256() const;
+ bool isValid() const;
+
private:
QString m_target;
QString m_type;
QString m_url;
QByteArray m_sha256;
+ bool m_isValid;
};
class VersionInfo
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperzero/helper/firmwarehelper.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperzero/helper/firmwarehelper.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperzero/helper/firmwarehelper.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperzero/helper/firmwarehelper.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -160,12 +160,24 @@
void FirmwareHelper::fetchAssets()
{
m_deviceState->setStatusString(QStringLiteral("Fetching databases..."));
- const auto &fileInfo = m_versionInfo.fileInfo(QStringLiteral("resources_tgz"), QStringLiteral("any"));
+
+ const auto type = QStringLiteral("resources_tgz");
+ auto fileInfo = m_versionInfo.fileInfo(type, m_deviceState->deviceInfo().hardware.target);
+
+ if(!fileInfo.isValid()) {
+ fileInfo = m_versionInfo.fileInfo(type, QStringLiteral("any"));
+ }
+
fetchFile(FileIndex::AssetsTgz, fileInfo);
}
void FirmwareHelper::fetchFile(FileIndex index, const Updates::FileInfo &fileInfo)
{
+ if(!fileInfo.isValid()) {
+ finishWithError(BackendError::DataError, QStringLiteral("File info invalid (missing target?)"));
+ return;
+ }
+
const auto fileName = QUrl(fileInfo.url()).fileName();
auto *file = globalTempDirs->createFile(fileName, this);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperzero/recovery.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperzero/recovery.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperzero/recovery.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperzero/recovery.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -163,7 +163,7 @@
end_ignore_block();
} else {
- error_msg("Unexpected FUS state.");
+ setErrorString("Can't start FUS: Unexpected FUS state.");
success = false;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperzero/screenstreamer.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperzero/screenstreamer.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/flipperzero/screenstreamer.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/flipperzero/screenstreamer.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -61,7 +61,7 @@
setScreenFrame({
transposeImage(QByteArray((char*)default_bits, sizeof(default_bits)), default_width, default_height),
QSize(SCREEN_FRAME_WIDTH, SCREEN_FRAME_HEIGHT),
- false
+ Qt::LandscapeOrientation,
});
if(device) {
@@ -179,7 +179,7 @@
setScreenFrame({
screenFrameResponse->screenFrame(),
QSize(SCREEN_FRAME_WIDTH, SCREEN_FRAME_HEIGHT),
- screenFrameResponse->screenOrientation() == GuiScreenFrameResponseInterface::HorizontalFlip
+ screenFrameResponse->screenOrientation(),
});
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/screenframe.h new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/screenframe.h
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/backend/screenframe.h 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/backend/screenframe.h 2023-11-10 10:40:31.000000000 +0100
@@ -7,7 +7,7 @@
struct ScreenFrame {
QByteArray pixelData;
QSize size;
- bool isFlipped;
+ Qt::ScreenOrientation orientation;
};
Q_DECLARE_METATYPE(ScreenFrame)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/installer-assets/appimage/AppRun new/qFlipper-1.3.3+git0.1699609231.bfce851/installer-assets/appimage/AppRun
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/installer-assets/appimage/AppRun 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/installer-assets/appimage/AppRun 2023-11-10 10:40:31.000000000 +0100
@@ -6,7 +6,7 @@
export QT_QPA_PLATFORMTHEME=xdgdesktopportal
THIS_DIR="$(readlink -f "$(dirname "$0")")"
-APPIMAGE_NAME="$(basename $APPIMAGE)"
+APPIMAGE_NAME="$(basename "$APPIMAGE")"
RULES_FILE_NAME='42-flipperzero.rules'
RULES_DIR=${3:-'/etc/udev/rules.d'}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/installer-assets/udev/42-flipperzero.rules new/qFlipper-1.3.3+git0.1699609231.bfce851/installer-assets/udev/42-flipperzero.rules
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/installer-assets/udev/42-flipperzero.rules 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/installer-assets/udev/42-flipperzero.rules 2023-11-10 10:40:31.000000000 +0100
@@ -4,3 +4,5 @@
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", ATTRS{manufacturer}=="STMicroelectronics", TAG+="uaccess", GROUP="dialout"
#Flipper ESP32s2 BlackMagic
SUBSYSTEMS=="usb", ATTRS{idVendor}=="303a", ATTRS{idProduct}=="40??", ATTRS{manufacturer}=="Flipper Devices Inc.", TAG+="uaccess", GROUP="dialout"
+#Flipper U2F
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5741", ATTRS{manufacturer}=="Flipper Devices Inc.", ENV{ID_SECURITY_TOKEN}="1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/plugins/flipperproto0/guiresponse.cpp new/qFlipper-1.3.3+git0.1699609231.bfce851/plugins/flipperproto0/guiresponse.cpp
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/plugins/flipperproto0/guiresponse.cpp 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/plugins/flipperproto0/guiresponse.cpp 2023-11-10 10:40:31.000000000 +0100
@@ -10,17 +10,17 @@
return QByteArray((const char*)f->bytes, f->size);
}
-GuiScreenFrameResponseInterface::ScreenOrientation GuiScreenFrameResponse::screenOrientation() const
+Qt::ScreenOrientation GuiScreenFrameResponse::screenOrientation() const
{
switch(message().content.gui_screen_frame.orientation) {
case PB_Gui_ScreenOrientation_HORIZONTAL_FLIP:
- return ScreenOrientation::HorizontalFlip;
+ return Qt::InvertedLandscapeOrientation;
case PB_Gui_ScreenOrientation_VERTICAL:
- return ScreenOrientation::Vertical;
+ return Qt::PortraitOrientation;
case PB_Gui_ScreenOrientation_VERTICAL_FLIP:
- return ScreenOrientation::VerticalFlip;
+ return Qt::InvertedPortraitOrientation;
case PB_Gui_ScreenOrientation_HORIZONTAL:
default:
- return ScreenOrientation::Horizontal;
+ return Qt::LandscapeOrientation;
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/plugins/flipperproto0/guiresponse.h new/qFlipper-1.3.3+git0.1699609231.bfce851/plugins/flipperproto0/guiresponse.h
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/plugins/flipperproto0/guiresponse.h 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/plugins/flipperproto0/guiresponse.h 2023-11-10 10:40:31.000000000 +0100
@@ -11,5 +11,5 @@
public:
GuiScreenFrameResponse(MessageWrapper &wrapper, QObject *parent = nullptr);
const QByteArray screenFrame() const override;
- ScreenOrientation screenOrientation() const override;
+ Qt::ScreenOrientation screenOrientation() const override;
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/plugins/protobufinterface/guiresponseinterface.h new/qFlipper-1.3.3+git0.1699609231.bfce851/plugins/protobufinterface/guiresponseinterface.h
--- old/qFlipper-1.3.1~rc1+git1.1684488882.0199220/plugins/protobufinterface/guiresponseinterface.h 2023-05-19 11:34:42.000000000 +0200
+++ new/qFlipper-1.3.3+git0.1699609231.bfce851/plugins/protobufinterface/guiresponseinterface.h 2023-11-10 10:40:31.000000000 +0100
@@ -6,15 +6,8 @@
class GuiScreenFrameResponseInterface
{
public:
- enum ScreenOrientation {
- Horizontal,
- HorizontalFlip,
- Vertical,
- VerticalFlip,
- };
-
virtual const QByteArray screenFrame() const = 0;
- virtual ScreenOrientation screenOrientation() const = 0;
+ virtual Qt::ScreenOrientation screenOrientation() const = 0;
};
QT_BEGIN_NAMESPACE
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package nim for openSUSE:Factory checked in at 2023-12-20 21:03:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nim (Old)
and /work/SRC/openSUSE:Factory/.nim.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nim"
Wed Dec 20 21:03:12 2023 rev:26 rq:1134228 version:2.0.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/nim/nim.changes 2023-08-31 13:43:26.951357742 +0200
+++ /work/SRC/openSUSE:Factory/.nim.new.9037/nim.changes 2023-12-20 21:03:40.201552695 +0100
@@ -1,0 +2,24 @@
+Wed Dec 20 08:04:09 UTC 2023 - Andrea Manzini <andrea.manzini(a)suse.com>
+
+- Update to version 2.0.2:
+ * Fixed “Undefined behavior when with hash(...) on non-aligned bytes due to murmurHash cast[ptr int32]” (#22387)
+ * Fixed “async/closure environment does not align local variables” (#22419)
+ * Fixed “Debugging/stepping is broken in 2.0.0 and 2.1.1” (#22366)
+ * Fixed “when picks wrong branch with static int” (#22474)
+ * Fixed “Regression from 1.6.14 to 2.0.0 - nimble test crashes with a core dump” (#22357)
+ * Fixed “Long-term arc-closure iterator problem” (#22619)
+ * Fixed “-d:useMalloc broken with --mm:none and threads on” (#22262)
+ * Fixed “Crash of compiler on array type check” (#5780)
+ * Fixed “Undefined behaviorwith set card() on non-aligned pointer from cardSetImpl/countBits64cast on ptr uint64” (#22481)
+ * Fixed “elementType from std/typetraits doesn’t work in generic procs” (#21532)
+ * Fixed “peg matchLen can raise an unlisted exception: Exception” (#22541)
+ * Fixed “Piece of code output c compiler error “ (#17197)
+ * Fixed “Missing type inference in loop + case + if + continue” (#22604)
+ * Fixed “Invalid type mismatch in generic” (#17509)
+ * Fixed “std/nativesockets getHostByAddr should support IPv6” (#22834)
+ * Fixed “std/nre leaks memory on every created Regex due to auto-translated finalizers behaving differently under ARC/ORC” (#22868)
+ * Fixed “Destructor not called for temp objects passed as arguments” (#22866)
+ * Fixed “nimsuggest inlay hints for types shown in the wrong place for exported vars and consts” (#23067)
+ * Fixed “[Regression] static integers in quote do” (#22947)
+
+-------------------------------------------------------------------
Old:
----
nim-2.0.0.tar.xz
New:
----
nim-2.0.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nim.spec ++++++
--- /var/tmp/diff_new_pack.6pyrPi/_old 2023-12-20 21:03:40.757572923 +0100
+++ /var/tmp/diff_new_pack.6pyrPi/_new 2023-12-20 21:03:40.757572923 +0100
@@ -19,7 +19,7 @@
%define _atlas_version 0.6.2
Name: nim
-Version: 2.0.0
+Version: 2.0.2
Release: 0
Summary: A statically typed compiled systems programming language
License: MIT
++++++ nim-2.0.0.tar.xz -> nim-2.0.2.tar.xz ++++++
/work/SRC/openSUSE:Factory/nim/nim-2.0.0.tar.xz /work/SRC/openSUSE:Factory/.nim.new.9037/nim-2.0.2.tar.xz differ: char 25, line 1
++++++ nim-nim-gdb_fix_interpreter.patch ++++++
--- /var/tmp/diff_new_pack.6pyrPi/_old 2023-12-20 21:03:40.841575979 +0100
+++ /var/tmp/diff_new_pack.6pyrPi/_new 2023-12-20 21:03:40.845576124 +0100
@@ -1,7 +1,7 @@
-Index: nim-1.6.14/bin/nim-gdb
+Index: nim-2.0.2/bin/nim-gdb
===================================================================
---- nim-1.6.14.orig/bin/nim-gdb
-+++ nim-1.6.14/bin/nim-gdb
+--- nim-2.0.2.orig/bin/nim-gdb
++++ nim-2.0.2/bin/nim-gdb
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/bash
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package flux2-cli for openSUSE:Factory checked in at 2023-12-20 21:03:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/flux2-cli (Old)
and /work/SRC/openSUSE:Factory/.flux2-cli.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "flux2-cli"
Wed Dec 20 21:03:03 2023 rev:10 rq:1134198 version:2.2.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/flux2-cli/flux2-cli.changes 2023-12-15 21:50:55.946195506 +0100
+++ /work/SRC/openSUSE:Factory/.flux2-cli.new.9037/flux2-cli.changes 2023-12-20 21:03:24.784991831 +0100
@@ -1,0 +2,12 @@
+Wed Dec 20 10:00:59 UTC 2023 - rombert(a)apache.org
+
+- Update to version 2.2.2:
+ * Update helm-controller to v0.37.2 in tests
+ * Update toolkit components
+ * Fix typo in bootstrap_plain_git.go
+ * build(deps): bump the ci group with 3 updates
+ * build(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0
+ * build(deps): bump golang.org/x/crypto in /tests/integration
+ * build(deps): bump golang.org/x/crypto in /tests/azure
+
+-------------------------------------------------------------------
Old:
----
flux2-2.2.1.obscpio
New:
----
flux2-2.2.2.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ flux2-cli.spec ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:27.421087733 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:27.421087733 +0100
@@ -22,7 +22,7 @@
# check these versions on updates
# see flux2/manifests/bases/*/kustomization.yaml
-%define helm_controller_version v0.37.1
+%define helm_controller_version v0.37.2
%define image_automation_controller_version v0.37.0
%define image_reflector_controller_version v0.31.1
%define kustomize_controller_version v1.2.1
@@ -30,7 +30,7 @@
%define source_controller_version v1.2.3
Name: flux2-cli
-Version: 2.2.1
+Version: 2.2.2
Release: 0
Summary: CLI for Flux2CD
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:27.473089625 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:27.473089625 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/fluxcd/flux2</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v2.2.1</param>
+ <param name="revision">v2.2.2</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
@@ -17,7 +17,7 @@
<param name="compression">gz</param>
</service>
<service name="go_modules" mode="manual">
- <param name="archive">flux2-2.2.1.obscpio</param>
+ <param name="archive">flux2-2.2.2.obscpio</param>
</service>
</services>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:27.493090353 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:27.497090498 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/fluxcd/flux2</param>
- <param name="changesrevision">9b3958825a314eb79495c6993ef397ddbf87f32f</param></service></servicedata>
+ <param name="changesrevision">5c5c15ea212b8f029a110f9975851d25c8272695</param></service></servicedata>
(No newline at EOF)
++++++ flux2-2.2.1.obscpio -> flux2-2.2.2.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/.github/workflows/backport.yaml new/flux2-2.2.2/.github/workflows/backport.yaml
--- old/flux2-2.2.1/.github/workflows/backport.yaml 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/.github/workflows/backport.yaml 2023-12-19 18:37:14.000000000 +0100
@@ -17,7 +17,7 @@
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Create backport PRs
- uses: korthout/backport-action@b982d297e31f500652b2246cf26714796312bd23 # v2.2.0
+ uses: korthout/backport-action@addffea45a2f0b5682f1d5ba0506f45bc18bf174 # v2.3.0
# xref: https://github.com/korthout/backport-action#inputs
with:
# Use token to allow workflows to be triggered for the created PR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/.github/workflows/ossf.yaml new/flux2-2.2.2/.github/workflows/ossf.yaml
--- old/flux2-2.2.1/.github/workflows/ossf.yaml 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/.github/workflows/ossf.yaml 2023-12-19 18:37:14.000000000 +0100
@@ -28,7 +28,7 @@
repo_token: ${{ secrets.GITHUB_TOKEN }}
publish_results: true
- name: Upload artifact
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
+ uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392 # v4.0.0
with:
name: SARIF file
path: results.sarif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/.github/workflows/release.yaml new/flux2-2.2.2/.github/workflows/release.yaml
--- old/flux2-2.2.1/.github/workflows/release.yaml 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/.github/workflows/release.yaml 2023-12-19 18:37:14.000000000 +0100
@@ -36,7 +36,7 @@
- name: Setup Syft
uses: anchore/sbom-action/download-syft@5ecf649a417b8ae17dc8383dc32d46c03f2312df # v0.15.1
- name: Setup Cosign
- uses: sigstore/cosign-installer@1fc5bd396d372bee37d608f955b336615edf79c8 # v3.2.0
+ uses: sigstore/cosign-installer@9614fae9e5c5eddabb09f90a270fcb487c9f7149 # v3.3.0
- name: Setup Kustomize
uses: fluxcd/pkg/actions/kustomize@main
- name: Login to GitHub Container Registry
@@ -155,7 +155,7 @@
--path="./flux-system" \
--source=${{ github.repositoryUrl }} \
--revision="${{ github.ref_name }}@sha1:${{ github.sha }}"
- - uses: sigstore/cosign-installer@1fc5bd396d372bee37d608f955b336615edf79c8 # v3.2.0
+ - uses: sigstore/cosign-installer@9614fae9e5c5eddabb09f90a270fcb487c9f7149 # v3.3.0
- name: Sign manifests
env:
COSIGN_EXPERIMENTAL: 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/go.mod new/flux2-2.2.2/go.mod
--- old/flux2-2.2.1/go.mod 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/go.mod 2023-12-19 18:37:14.000000000 +0100
@@ -12,7 +12,7 @@
github.com/distribution/distribution/v3 v3.0.0-20230823142118-4f7424c8eb41
github.com/fluxcd/cli-utils v0.36.0-flux.2
github.com/fluxcd/go-git-providers v0.19.2
- github.com/fluxcd/helm-controller/api v0.37.1
+ github.com/fluxcd/helm-controller/api v0.37.2
github.com/fluxcd/image-automation-controller/api v0.37.0
github.com/fluxcd/image-reflector-controller/api v0.31.1
github.com/fluxcd/kustomize-controller/api v1.2.1
@@ -47,7 +47,7 @@
github.com/spf13/cobra v1.8.0
github.com/spf13/pflag v1.0.5
github.com/theckman/yacspin v0.13.12
- golang.org/x/crypto v0.16.0
+ golang.org/x/crypto v0.17.0
golang.org/x/term v0.15.0
golang.org/x/text v0.14.0
k8s.io/api v0.28.4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/go.sum new/flux2-2.2.2/go.sum
--- old/flux2-2.2.1/go.sum 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/go.sum 2023-12-19 18:37:14.000000000 +0100
@@ -131,8 +131,8 @@
github.com/fluxcd/gitkit v0.6.0 h1:iNg5LTx6ePo+Pl0ZwqHTAkhbUHxGVSY3YCxCdw7VIFg=
github.com/fluxcd/go-git-providers v0.19.2 h1:G/O0z4WUlgChV6o3YrZ1GP1ZgZSd8ZJWACIW0ICqxMo=
github.com/fluxcd/go-git-providers v0.19.2/go.mod h1:V44pmhFqoZ8heFJEBU1PS+OHTwLWOfoj0nKpFAqik6Y=
-github.com/fluxcd/helm-controller/api v0.37.1 h1:cDUX79wGpNoSrDgirQswdN8X6gKmWVrpMMBn1BKdXAc=
-github.com/fluxcd/helm-controller/api v0.37.1/go.mod h1:BuXZhAX9blQviil6yUN5zNM4RB753yhyBTJXxXff7Mo=
+github.com/fluxcd/helm-controller/api v0.37.2 h1:tkLezpRdqPDz7HoKHFu92sV+ppOCVDxkjFTh8/lpff8=
+github.com/fluxcd/helm-controller/api v0.37.2/go.mod h1:BuXZhAX9blQviil6yUN5zNM4RB753yhyBTJXxXff7Mo=
github.com/fluxcd/image-automation-controller/api v0.37.0 h1:0L8kzX3zaYfg4wQ2Mx3G56atLMNeDGjy5qMGP4tDKRs=
github.com/fluxcd/image-automation-controller/api v0.37.0/go.mod h1:B2EbmiY69mE2bGOENPNUXr6klwrVe7FwVoB2iE1q08E=
github.com/fluxcd/image-reflector-controller/api v0.31.1 h1:nc44G0JjLgSvqglJSiXQJZcrRw+eY01j7fHRUDB3FMw=
@@ -475,8 +475,8 @@
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
-golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
-golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
+golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
+golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb h1:c0vyKkb6yr3KR7jEfJaOSv4lG7xPkbN6r52aJz1d8a8=
golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/manifests/bases/helm-controller/kustomization.yaml new/flux2-2.2.2/manifests/bases/helm-controller/kustomization.yaml
--- old/flux2-2.2.1/manifests/bases/helm-controller/kustomization.yaml 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/manifests/bases/helm-controller/kustomization.yaml 2023-12-19 18:37:14.000000000 +0100
@@ -1,8 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
-- https://github.com/fluxcd/helm-controller/releases/download/v0.37.1/helm-co…
-- https://github.com/fluxcd/helm-controller/releases/download/v0.37.1/helm-co…
+- https://github.com/fluxcd/helm-controller/releases/download/v0.37.2/helm-co…
+- https://github.com/fluxcd/helm-controller/releases/download/v0.37.2/helm-co…
- account.yaml
transformers:
- labels.yaml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/manifests/crds/kustomization.yaml new/flux2-2.2.2/manifests/crds/kustomization.yaml
--- old/flux2-2.2.1/manifests/crds/kustomization.yaml 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/manifests/crds/kustomization.yaml 2023-12-19 18:37:14.000000000 +0100
@@ -3,7 +3,7 @@
resources:
- https://github.com/fluxcd/source-controller/releases/download/v1.2.3/source…
- https://github.com/fluxcd/kustomize-controller/releases/download/v1.2.1/kus…
-- https://github.com/fluxcd/helm-controller/releases/download/v0.37.1/helm-co…
+- https://github.com/fluxcd/helm-controller/releases/download/v0.37.2/helm-co…
- https://github.com/fluxcd/notification-controller/releases/download/v1.2.3/…
- https://github.com/fluxcd/image-reflector-controller/releases/download/v0.3…
- https://github.com/fluxcd/image-automation-controller/releases/download/v0.…
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/pkg/bootstrap/bootstrap_plain_git.go new/flux2-2.2.2/pkg/bootstrap/bootstrap_plain_git.go
--- old/flux2-2.2.1/pkg/bootstrap/bootstrap_plain_git.go 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/pkg/bootstrap/bootstrap_plain_git.go 2023-12-19 18:37:14.000000000 +0100
@@ -454,7 +454,7 @@
b.logger.Failuref(err.Error())
return fmt.Errorf("error while waiting for GitRepository to be ready: '%s'", err)
}
- b.logger.Successf("GitRepsoitory reconciled successfully")
+ b.logger.Successf("GitRepository reconciled successfully")
return nil
}
func (b *PlainGitBootstrapper) ReportComponentsHealth(ctx context.Context, install install.Options, timeout time.Duration) error {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/tests/azure/go.mod new/flux2-2.2.2/tests/azure/go.mod
--- old/flux2-2.2.1/tests/azure/go.mod 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/tests/azure/go.mod 2023-12-19 18:37:14.000000000 +0100
@@ -8,7 +8,7 @@
require (
github.com/Azure/azure-event-hubs-go/v3 v3.6.1
github.com/chainguard-dev/git-urls v1.0.2
- github.com/fluxcd/helm-controller/api v0.37.1
+ github.com/fluxcd/helm-controller/api v0.37.2
github.com/fluxcd/image-automation-controller/api v0.37.0
github.com/fluxcd/image-reflector-controller/api v0.31.1
github.com/fluxcd/kustomize-controller/api v1.2.1
@@ -98,7 +98,7 @@
github.com/skeema/knownhosts v1.2.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/zclconf/go-cty v1.13.0 // indirect
- golang.org/x/crypto v0.16.0 // indirect
+ golang.org/x/crypto v0.17.0 // indirect
golang.org/x/mod v0.14.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/oauth2 v0.14.0 // indirect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/tests/azure/go.sum new/flux2-2.2.2/tests/azure/go.sum
--- old/flux2-2.2.1/tests/azure/go.sum 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/tests/azure/go.sum 2023-12-19 18:37:14.000000000 +0100
@@ -67,8 +67,8 @@
github.com/evanphx/json-patch/v5 v5.7.0 h1:nJqP7uwL84RJInrohHfW0Fx3awjbm8qZeFv0nW9SYGc=
github.com/evanphx/json-patch/v5 v5.7.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
github.com/fluxcd/gitkit v0.6.0 h1:iNg5LTx6ePo+Pl0ZwqHTAkhbUHxGVSY3YCxCdw7VIFg=
-github.com/fluxcd/helm-controller/api v0.37.1 h1:cDUX79wGpNoSrDgirQswdN8X6gKmWVrpMMBn1BKdXAc=
-github.com/fluxcd/helm-controller/api v0.37.1/go.mod h1:BuXZhAX9blQviil6yUN5zNM4RB753yhyBTJXxXff7Mo=
+github.com/fluxcd/helm-controller/api v0.37.2 h1:tkLezpRdqPDz7HoKHFu92sV+ppOCVDxkjFTh8/lpff8=
+github.com/fluxcd/helm-controller/api v0.37.2/go.mod h1:BuXZhAX9blQviil6yUN5zNM4RB753yhyBTJXxXff7Mo=
github.com/fluxcd/image-automation-controller/api v0.37.0 h1:0L8kzX3zaYfg4wQ2Mx3G56atLMNeDGjy5qMGP4tDKRs=
github.com/fluxcd/image-automation-controller/api v0.37.0/go.mod h1:B2EbmiY69mE2bGOENPNUXr6klwrVe7FwVoB2iE1q08E=
github.com/fluxcd/image-reflector-controller/api v0.31.1 h1:nc44G0JjLgSvqglJSiXQJZcrRw+eY01j7fHRUDB3FMw=
@@ -258,8 +258,8 @@
golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
-golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
-golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
+golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
+golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/tests/integration/go.mod new/flux2-2.2.2/tests/integration/go.mod
--- old/flux2-2.2.1/tests/integration/go.mod 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/tests/integration/go.mod 2023-12-19 18:37:14.000000000 +0100
@@ -6,7 +6,7 @@
cloud.google.com/go/pubsub v1.31.0
github.com/Azure/azure-event-hubs-go/v3 v3.6.0
github.com/chainguard-dev/git-urls v1.0.2
- github.com/fluxcd/helm-controller/api v0.37.1
+ github.com/fluxcd/helm-controller/api v0.37.2
github.com/fluxcd/image-automation-controller/api v0.37.0
github.com/fluxcd/image-reflector-controller/api v0.31.1
github.com/fluxcd/kustomize-controller/api v1.2.1
@@ -115,7 +115,7 @@
github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/zclconf/go-cty v1.13.0 // indirect
go.opencensus.io v0.24.0 // indirect
- golang.org/x/crypto v0.16.0 // indirect
+ golang.org/x/crypto v0.17.0 // indirect
golang.org/x/mod v0.14.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/oauth2 v0.15.0 // indirect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/flux2-2.2.1/tests/integration/go.sum new/flux2-2.2.2/tests/integration/go.sum
--- old/flux2-2.2.1/tests/integration/go.sum 2023-12-15 11:25:52.000000000 +0100
+++ new/flux2-2.2.2/tests/integration/go.sum 2023-12-19 18:37:14.000000000 +0100
@@ -122,8 +122,8 @@
github.com/evanphx/json-patch/v5 v5.7.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
github.com/fluxcd/gitkit v0.6.0 h1:iNg5LTx6ePo+Pl0ZwqHTAkhbUHxGVSY3YCxCdw7VIFg=
-github.com/fluxcd/helm-controller/api v0.37.1 h1:cDUX79wGpNoSrDgirQswdN8X6gKmWVrpMMBn1BKdXAc=
-github.com/fluxcd/helm-controller/api v0.37.1/go.mod h1:BuXZhAX9blQviil6yUN5zNM4RB753yhyBTJXxXff7Mo=
+github.com/fluxcd/helm-controller/api v0.37.2 h1:tkLezpRdqPDz7HoKHFu92sV+ppOCVDxkjFTh8/lpff8=
+github.com/fluxcd/helm-controller/api v0.37.2/go.mod h1:BuXZhAX9blQviil6yUN5zNM4RB753yhyBTJXxXff7Mo=
github.com/fluxcd/image-automation-controller/api v0.37.0 h1:0L8kzX3zaYfg4wQ2Mx3G56atLMNeDGjy5qMGP4tDKRs=
github.com/fluxcd/image-automation-controller/api v0.37.0/go.mod h1:B2EbmiY69mE2bGOENPNUXr6klwrVe7FwVoB2iE1q08E=
github.com/fluxcd/image-reflector-controller/api v0.31.1 h1:nc44G0JjLgSvqglJSiXQJZcrRw+eY01j7fHRUDB3FMw=
@@ -397,8 +397,8 @@
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.5.0/go.mod h1:NK/OQwhpMQP3MwtdjgLlYHnH9ebylxKWv3e0fK+mkQU=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
-golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
-golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
+golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
+golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb h1:c0vyKkb6yr3KR7jEfJaOSv4lG7xPkbN6r52aJz1d8a8=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
++++++ flux2.obsinfo ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:27.833102723 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:27.837102868 +0100
@@ -1,5 +1,5 @@
name: flux2
-version: 2.2.1
-mtime: 1702635952
-commit: 9b3958825a314eb79495c6993ef397ddbf87f32f
+version: 2.2.2
+mtime: 1703007434
+commit: 5c5c15ea212b8f029a110f9975851d25c8272695
++++++ helm-controller.crds.yaml ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:27.865103887 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:27.869104033 +0100
@@ -198,6 +198,82 @@
- name
type: object
type: array
+ driftDetection:
+ description: "DriftDetection holds the configuration for detecting
+ and handling differences between the manifest in the Helm storage
+ and the resources currently existing in the cluster. \n Note: this
+ field is provisional to the v2beta2 API, and not actively used by
+ v2beta1 HelmReleases."
+ properties:
+ ignore:
+ description: Ignore contains a list of rules for specifying which
+ changes to ignore during diffing.
+ items:
+ description: IgnoreRule defines a rule to selectively disregard
+ specific changes during the drift detection process.
+ properties:
+ paths:
+ description: Paths is a list of JSON Pointer (RFC 6901)
+ paths to be excluded from consideration in a Kubernetes
+ object.
+ items:
+ type: string
+ type: array
+ target:
+ description: Target is a selector for specifying Kubernetes
+ objects to which this rule applies. If Target is not set,
+ the Paths will be ignored for all Kubernetes objects within
+ the manifest of the Helm release.
+ properties:
+ annotationSelector:
+ description: AnnotationSelector is a string that follows
+ the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#a…
+ It matches with the resource annotations.
+ type: string
+ group:
+ description: Group is the API group to select resources
+ from. Together with Version and Kind it is capable
+ of unambiguously identifying and/or selecting resources.
+ https://github.com/kubernetes/community/blob/master/contributors/design-pro…
+ type: string
+ kind:
+ description: Kind of the API Group to select resources
+ from. Together with Group and Version it is capable
+ of unambiguously identifying and/or selecting resources.
+ https://github.com/kubernetes/community/blob/master/contributors/design-pro…
+ type: string
+ labelSelector:
+ description: LabelSelector is a string that follows
+ the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#a…
+ It matches with the resource labels.
+ type: string
+ name:
+ description: Name to match resources with.
+ type: string
+ namespace:
+ description: Namespace to select resources from.
+ type: string
+ version:
+ description: Version of the API Group to select resources
+ from. Together with Group and Kind it is capable of
+ unambiguously identifying and/or selecting resources.
+ https://github.com/kubernetes/community/blob/master/contributors/design-pro…
+ type: string
+ type: object
+ required:
+ - paths
+ type: object
+ type: array
+ mode:
+ description: Mode defines how differences should be handled between
+ the Helm manifest and the manifest currently applied to the
+ cluster. If not explicitly set, it defaults to DiffModeDisabled.
+ enum:
+ - enabled
+ - warn
+ - disabled
+ type: string
+ type: object
install:
description: Install holds the configuration for Helm install actions
for this HelmRelease.
@@ -1010,11 +1086,23 @@
description: LastAttemptedValuesChecksum is the SHA1 checksum of the
values of the last reconciliation attempt.
type: string
+ lastHandledForceAt:
+ description: "LastHandledForceAt holds the value of the most recent
+ force request value, so a change of the annotation value can be
+ detected. \n Note: this field is provisional to the v2beta2 API,
+ and not actively used by v2beta1 HelmReleases."
+ type: string
lastHandledReconcileAt:
description: LastHandledReconcileAt holds the value of the most recent
reconcile request value, so a change of the annotation value can
be detected.
type: string
+ lastHandledResetAt:
+ description: "LastHandledResetAt holds the value of the most recent
+ reset request value, so a change of the annotation value can be
+ detected. \n Note: this field is provisional to the v2beta2 API,
+ and not actively used by v2beta1 HelmReleases."
+ type: string
lastReleaseRevision:
description: LastReleaseRevision is the revision of the last successful
Helm release.
++++++ helm-controller.deployment.yaml ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:27.889104760 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:27.893104906 +0100
@@ -28,7 +28,7 @@
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- image: fluxcd/helm-controller:v0.37.0
+ image: fluxcd/helm-controller:v0.37.2
imagePullPolicy: IfNotPresent
livenessProbe:
httpGet:
++++++ kustomize-controller.deployment.yaml ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:28.009109126 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:28.013109272 +0100
@@ -28,7 +28,7 @@
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- image: fluxcd/kustomize-controller:v1.2.0
+ image: fluxcd/kustomize-controller:v1.2.1
imagePullPolicy: IfNotPresent
livenessProbe:
httpGet:
++++++ notification-controller.crds.yaml ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:28.037110145 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:28.041110290 +0100
@@ -1023,6 +1023,11 @@
should be posted.
maxLength: 2048
type: string
+ interval:
+ description: Interval at which to reconcile the Provider with its
+ Secret references. Deprecated and not used in v1beta3.
+ pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
+ type: string
proxy:
description: Proxy the HTTP/S address of the proxy server.
maxLength: 2048
++++++ notification-controller.deployment.yaml ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:28.065111163 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:28.069111309 +0100
@@ -60,7 +60,7 @@
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- image: fluxcd/notification-controller:v1.2.2
+ image: fluxcd/notification-controller:v1.2.3
imagePullPolicy: IfNotPresent
livenessProbe:
httpGet:
++++++ source-controller.deployment.yaml ++++++
--- /var/tmp/diff_new_pack.4tdZtO/_old 2023-12-20 21:03:28.109112764 +0100
+++ /var/tmp/diff_new_pack.4tdZtO/_new 2023-12-20 21:03:28.109112764 +0100
@@ -50,7 +50,7 @@
fieldPath: metadata.namespace
- name: TUF_ROOT
value: /tmp/.sigstore
- image: fluxcd/source-controller:v1.2.2
+ image: fluxcd/source-controller:v1.2.3
imagePullPolicy: IfNotPresent
livenessProbe:
httpGet:
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/flux2-cli/vendor.tar.gz /work/SRC/openSUSE:Factory/.flux2-cli.new.9037/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package musescore for openSUSE:Factory checked in at 2023-12-20 21:02:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/musescore (Old)
and /work/SRC/openSUSE:Factory/.musescore.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "musescore"
Wed Dec 20 21:02:52 2023 rev:39 rq:1134186 version:4.2.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/musescore/musescore.changes 2023-09-15 22:10:19.411536310 +0200
+++ /work/SRC/openSUSE:Factory/.musescore.new.9037/musescore.changes 2023-12-20 21:03:18.556765244 +0100
@@ -1,0 +2,44 @@
+Wed Dec 20 08:29:03 UTC 2023 - Konstantin Voinov <kv(a)kott.no-ip.biz>
+
+- Update to 4.2.0
+
+ New features:
+
+ * A new system for notating guitar bends, including playback support
+ * A new system for easily displaying alternate string tunings for
+ plucked string instruments
+ * Much improved control over synchronicity of notation elements
+ between main score and parts
+ * The ability to select individual sounds within SoundFonts, and
+ a bespoke system for categorising sounds in our default SoundFont, MS Basic
+ * An enhanced upload flow to audio.com, including the ability to
+ replace existing audio files online
+ * A convenient list view for seeing all your scores in the Home tab
+ * The ability to open scores in the desktop app directly from
+ musescore.com
+ * Playback support for harp glissandi via the harp pedal widget
+ * Microtonal playback support
+ * A new note input mode for Braille music notation (Thanks to @daisy
+ and @SMCenter)
+ * "A tempo" and "primo tempo" elements in Palettes (Thanks to
+ community contributor @rtbo)
+ * The option to import/export scores in the MEI file format (Thanks
+ to community contributors @lpugin and @rettinghaus).
+
+ In addition, please see this document (https://musescore.org/en/node/356876)
+ for a complete list of engraving improvements, including:
+
+ * Improved handling of arpeggios spanning multiple staves and voices,
+ * More placement options for ties
+ * Significant layout and interaction improvements
+ * MusicXML improvements
+ * A multitude of refinements to key signatures, time signatures
+ and parts (Thanks to community contributor @sammik).
+
+- Update source URL in spec
+- Update cmake flags
+- Use %exclude for unneeded development files
+- Update README.SUSE
+- Disable JACK as it wasn't actually used
+
+-------------------------------------------------------------------
Old:
----
MuseScore-4.1.1.tar.gz
New:
----
MuseScore-4.2.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ musescore.spec ++++++
--- /var/tmp/diff_new_pack.iavnWi/_old 2023-12-20 21:03:19.776809630 +0100
+++ /var/tmp/diff_new_pack.iavnWi/_new 2023-12-20 21:03:19.780809775 +0100
@@ -21,11 +21,11 @@
# Workaround boo#1189991
%define _lto_cflags %{nil}
%define rname mscore
-%define version_lesser 4.1
+%define version_lesser 4.2
%define fontdir %{_datadir}/fonts/%{name}
%define docdir %{_docdir}/%{name}
Name: musescore
-Version: 4.1.1
+Version: 4.2.0
Release: 0
Summary: A WYSIWYG music score typesetter
# Licenses in MuseScore are a mess. To help other maintainers I give the following overview:
@@ -51,7 +51,7 @@
License: Apache-2.0 AND BSD-3-Clause AND FTL AND GPL-2.0-only AND SUSE-GPL-3.0-with-font-exception AND GPL-2.0-or-later AND GFDL-1.2-only AND LGPL-2.0-only AND LGPL-2.1-only AND (GPL-2.0-only OR GPL-3.0-only) AND MIT
Group: Productivity/Multimedia/Sound/Editors and Convertors
URL: https://musescore.org
-Source0: https://github.com/musescore/MuseScore/archive/v%{version}/MuseScore-%{vers…
+Source0: https://github.com/musescore/MuseScore/archive/refs/tags/v%{version}.tar.gz…
# MuseScore expect to be able to download the latest version of its soundfonts
# They are downloaded from the link conteinde in CMakeLists.text
# They are newer versions than the one included in the MuseScore tarball itself
@@ -180,11 +180,11 @@
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DMUSESCORE_BUILD_CONFIGURATION=app \
-DMUSESCORE_BUILD_MODE=release \
- -DBUILD_UNIT_TESTS=OFF \
- -DUSE_SYSTEM_FREETYPE=ON \
- -DBUILD_JACK:BOOL=ON \
- -DBUILD_UPDATE_MODULE:BOOL=OFF \
- -DBUILD_CRASHPAD_CLIENT=OFF \
+ -DMUE_BUILD_UNIT_TESTS=OFF \
+ -DMUE_COMPILE_USE_SYSTEM_FREETYPE=ON \
+ -DMUE_ENABLE_AUDIO_JACK=OFF \
+ -DMUE_BUILD_UPDATE_MODULE=OFF \
+ -DMUE_BUILD_CRASHPAD_CLIENT=OFF \
-Wno-dev
%cmake_build
@@ -213,19 +213,13 @@
mkdir -p %{buildroot}%{_datadir}/%{rname}-%{version_lesser}/demos
install -p -m 644 demos/*.mscz %{buildroot}%{_datadir}/%{rname}-%{version_lesser}/demos
-# Remove all devel files
-rm -r %{buildroot}%{_includedir}
-rm -r %{buildroot}%{_libdir}
-# Delete crashpad binary
-rm %{buildroot}%{_bindir}/crashpad_handler
-
# collect doc files
install -d -m 755 %{buildroot}%docdir
install -p -m 644 README.SUSE %{buildroot}%docdir/
install -p -m 644 thirdparty/beatroot/COPYING %{buildroot}%docdir/COPYING.beatroot
install -p -m 644 thirdparty/beatroot/README.txt %{buildroot}%docdir/README.txt.beatroot
install -p -m 644 thirdparty/dtl/COPYING %{buildroot}%docdir/COPYING.BSD.dtl
-install -p -m 644 thirdparty/freetype/README %{buildroot}%docdir/README.freetype
+install -p -m 644 src/framework/draw/thirdparty/freetype/freetype-2.13.1/README %{buildroot}%docdir/README.freetype
install -p -m 644 thirdparty/intervaltree/README %{buildroot}%docdir/README.intervaltree
install -p -m 644 thirdparty/rtf2html/ChangeLog %{buildroot}%docdir/ChangeLog.rtf2html
install -p -m 644 thirdparty/rtf2html/COPYING.LESSER %{buildroot}%docdir/COPYING.LESSER.rtf2html
@@ -242,7 +236,7 @@
%fdupes %{buildroot}%{_prefix}
%files
-%license LICENSE.GPL
+%license LICENSE.txt
%{_bindir}/%{rname}
%{_datadir}/metainfo/org.musescore.MuseScore.appdata.xml
%{_datadir}/applications/org.musescore.MuseScore.desktop
@@ -254,6 +248,8 @@
%doc README.md README.SUSE
%dir %docdir
%doc %docdir/*
+%exclude %{_includedir}/
+%exclude %{_libdir}/
%files fonts
%dir %{fontdir}
++++++ MuseScore-4.1.1.tar.gz -> MuseScore-4.2.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/musescore/MuseScore-4.1.1.tar.gz /work/SRC/openSUSE:Factory/.musescore.new.9037/MuseScore-4.2.0.tar.gz differ: char 25, line 1
++++++ README.SUSE ++++++
--- /var/tmp/diff_new_pack.iavnWi/_old 2023-12-20 21:03:19.868812977 +0100
+++ /var/tmp/diff_new_pack.iavnWi/_new 2023-12-20 21:03:19.872813123 +0100
@@ -1,7 +1,13 @@
## Get Muse Hub working
-MuseScore4 is much more fun if you can use the Muse-Hub extensions. Hopefully,
-the instructions presented here will soon be obsolete, but until they are, they
+MuseScore4 is much more fun if you can use the Muse-Hub extensions.
+There are two ways to get it work at present:
+
+I. Use beta version of Muse Sounds Manager https://muse-cdn.com/Muse_Sounds_Manager_Beta.rpm
+
+II. Use Muse-Hub:
+
+Hopefully, the instructions presented here will soon be obsolete, but until they are, they
serve as a step-by-step guide to activating Muse-Hub.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mtd-utils for openSUSE:Factory checked in at 2023-12-20 21:02:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mtd-utils (Old)
and /work/SRC/openSUSE:Factory/.mtd-utils.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mtd-utils"
Wed Dec 20 21:02:44 2023 rev:9 rq:1134150 version:2.1.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/mtd-utils/mtd-utils.changes 2020-11-05 21:56:05.932025140 +0100
+++ /work/SRC/openSUSE:Factory/.mtd-utils.new.9037/mtd-utils.changes 2023-12-20 21:03:08.352394003 +0100
@@ -1,0 +2,6 @@
+Wed Dec 20 08:48:46 UTC 2023 - Martin Pluskal <mpluskal(a)suse.com>
+
+- Update to version 2.1.6:
+ * See news at http://www.linux-mtd.infradead.org for full list of changes
+
+-------------------------------------------------------------------
Old:
----
mtd-utils-2.1.2.tar.bz2
mtd-utils-2.1.2.tar.bz2.asc
New:
----
mtd-utils-2.1.6.tar.bz2
mtd-utils-2.1.6.tar.bz2.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mtd-utils.spec ++++++
--- /var/tmp/diff_new_pack.f1agkp/_old 2023-12-20 21:03:09.596439262 +0100
+++ /var/tmp/diff_new_pack.f1agkp/_new 2023-12-20 21:03:09.608439699 +0100
@@ -1,7 +1,7 @@
#
# spec file for package mtd-utils
#
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,11 +17,10 @@
Name: mtd-utils
-Version: 2.1.2
+Version: 2.1.6
Release: 0
Summary: Tools for maintaining Memory Technology Devices
License: GPL-2.0-or-later
-Group: System/Filesystems
URL: http://www.linux-mtd.infradead.org/
Source0: ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-%{version}.tar.bz2
Source1: ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-%{version}.tar.bz2.asc
@@ -97,6 +96,13 @@
%{_sbindir}/ubirmvol
%{_sbindir}/ubirsvol
%{_sbindir}/ubiupdatevol
+%{_sbindir}/fectest
+%{_sbindir}/flash_otp_erase
+%{_sbindir}/mount.ubifs
+%{_sbindir}/nandflipbits
+%{_sbindir}/ubiscan
+%dir %{_libexecdir}/mtd-utils
+%{_libexecdir}/mtd-utils/*
%{_mandir}/man1/mkfs.jffs2.1%{?ext_man}
%{_mandir}/man8/lsmtd.8%{?ext_man}
%{_mandir}/man8/ubinize.8%{?ext_man}
++++++ mtd-utils-2.1.2.tar.bz2 -> mtd-utils-2.1.6.tar.bz2 ++++++
++++ 49375 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-lfdfiles for openSUSE:Factory checked in at 2023-12-20 21:02:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-lfdfiles (Old)
and /work/SRC/openSUSE:Factory/.python-lfdfiles.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-lfdfiles"
Wed Dec 20 21:02:22 2023 rev:5 rq:1134139 version:2023.9.26
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-lfdfiles/python-lfdfiles.changes 2023-06-01 17:19:31.122159784 +0200
+++ /work/SRC/openSUSE:Factory/.python-lfdfiles.new.9037/python-lfdfiles.changes 2023-12-20 21:02:41.595420568 +0100
@@ -1,0 +2,21 @@
+Wed Dec 20 07:12:43 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2023.9.26:
+ * Remove phasor and lifetime methods from VistaIfli (breaking).
+ * Rename SimfcsFbd and SimfcsFbf to FlimboxFbd and FlimboxFbf
+ (breaking).
+ * Deprecate SimfcsFbd and SimfcsFbf.
+ * Support int16 FLIMbox cross correlation phase indices (bins).
+ * Add FlimboxFbs class for ISS VistaVision FLIMbox settings.
+ * Add decoder for 32-bit, 16 windows, 4 channels FlimboxFbd
+ (untested).
+ * Rewrite VistaIfli based on file format specification
+ (breaking).
+ * Define positional and keyword parameters (breaking).
+ * SimfcsFbd.asarray returns bins only (breaking).
+ * Fix type hint issues.
+ * Add py.typed marker.
+ * Specify encoding of text files.
+ * Fix linting issues.
+
+-------------------------------------------------------------------
Old:
----
lfdfiles-2023.4.20.tar.gz
New:
----
lfdfiles-2023.9.26.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-lfdfiles.spec ++++++
--- /var/tmp/diff_new_pack.BMJ9QM/_old 2023-12-20 21:02:42.115439486 +0100
+++ /var/tmp/diff_new_pack.BMJ9QM/_new 2023-12-20 21:02:42.115439486 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-lfdfiles
-Version: 2023.4.20
+Version: 2023.9.26
Release: 0
Summary: Laboratory for Fluorescence Dynamics (LFD) file formats
License: BSD-3-Clause
++++++ lfdfiles-2023.4.20.tar.gz -> lfdfiles-2023.9.26.tar.gz ++++++
++++ 4527 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-nodeenv for openSUSE:Factory checked in at 2023-12-20 21:02:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-nodeenv (Old)
and /work/SRC/openSUSE:Factory/.python-nodeenv.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-nodeenv"
Wed Dec 20 21:02:20 2023 rev:10 rq:1134138 version:1.8.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-nodeenv/python-nodeenv.changes 2023-11-23 21:44:01.958970867 +0100
+++ /work/SRC/openSUSE:Factory/.python-nodeenv.new.9037/python-nodeenv.changes 2023-12-20 21:02:38.751317098 +0100
@@ -1,0 +2,14 @@
+Wed Dec 20 07:11:46 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.8.0:
+ * Changes:
+ * #312
+ * #313
+ * #317
+ * #320
+ * #327
+ * #329
+ * #330
+- drop python-nodeenv-no-mock.patch (obsolete)
+
+-------------------------------------------------------------------
Old:
----
nodeenv-1.7.0.tar.gz
python-nodeenv-no-mock.patch
New:
----
nodeenv-1.8.0.tar.gz
BETA DEBUG BEGIN:
Old: * #330
- drop python-nodeenv-no-mock.patch (obsolete)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-nodeenv.spec ++++++
--- /var/tmp/diff_new_pack.uD5kJl/_old 2023-12-20 21:02:40.331374581 +0100
+++ /var/tmp/diff_new_pack.uD5kJl/_new 2023-12-20 21:02:40.347375163 +0100
@@ -15,24 +15,23 @@
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
+
%{?sle15allpythons}
Name: python-nodeenv
-Version: 1.7.0
+Version: 1.8.0
Release: 0
Summary: Nodejs virtual environment builder
License: BSD-2-Clause
URL: https://github.com/ekalinin/nodeenv
Source: https://github.com/ekalinin/nodeenv/archive/%{version}.tar.gz#/nodeenv-%{ve…
-# https://github.com/ekalinin/nodeenv/issues/302
-Patch0: python-nodeenv-no-mock.patch
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-setuptools
Requires(post): update-alternatives
-Requires(postun): update-alternatives
+Requires(postun):update-alternatives
BuildArch: noarch
%python_subpackages
@@ -40,8 +39,7 @@
Node.js virtual environment builder.
%prep
-%setup -q -n nodeenv-%{version}
-%patch0 -p1
+%autosetup -p1 -n nodeenv-%{version}
%build
%python_build
++++++ nodeenv-1.7.0.tar.gz -> nodeenv-1.8.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nodeenv-1.7.0/.github/workflows/main.yml new/nodeenv-1.8.0/.github/workflows/main.yml
--- old/nodeenv-1.7.0/.github/workflows/main.yml 2022-06-25 17:33:28.000000000 +0200
+++ new/nodeenv-1.8.0/.github/workflows/main.yml 2023-05-12 10:01:49.000000000 +0200
@@ -12,18 +12,20 @@
runs-on: ubuntu-20.04
strategy:
+ fail-fast: false
matrix:
python-version:
- - 2.7
- - 3.7
- - 3.8
- - 3.9
+ - '2.7'
+ - '3.7'
+ - '3.8'
+ - '3.9'
- '3.10'
+ - '3.11'
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- - uses: actions/setup-python@v2
+ - uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
@@ -38,7 +40,7 @@
TOXENV=$(tox --listenvs | grep "^py$ENV_PREFIX" | tr '\n' ',') tox
- name: Upload coverage data
- uses: actions/upload-artifact@v2
+ uses: actions/upload-artifact@v3
with:
name: coverage-data
path: '.coverage.*'
@@ -48,9 +50,9 @@
runs-on: ubuntu-20.04
needs: tests
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- - uses: actions/setup-python@v2
+ - uses: actions/setup-python@v4
with:
python-version: '3.10'
@@ -58,7 +60,7 @@
run: python -m pip install --upgrade coverage[toml]
- name: Download data
- uses: actions/download-artifact@v2
+ uses: actions/download-artifact@v3
with:
name: coverage-data
@@ -70,7 +72,7 @@
- name: Upload HTML report
if: ${{ failure() }}
- uses: actions/upload-artifact@v2
+ uses: actions/upload-artifact@v3
with:
name: html-report
path: htmlcov
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nodeenv-1.7.0/AUTHORS new/nodeenv-1.8.0/AUTHORS
--- old/nodeenv-1.7.0/AUTHORS 2022-06-25 17:33:28.000000000 +0200
+++ new/nodeenv-1.8.0/AUTHORS 2023-05-12 10:01:49.000000000 +0200
@@ -11,6 +11,7 @@
- Kyle P Davis
- Kefu Chai
- Elias Kunnas
+- Avimitin
- Adam Johnson
- Pierre Le Marre
- Eashwar Ranganathan
@@ -28,6 +29,7 @@
- Jon Winn
- Duncan Bellamy
- Dennis Flanigan
+- Christian Clauss
- Chris Beaven
- Cerem Cem ASLAN
- Bruno Oliveira
@@ -36,6 +38,7 @@
- Alex Couper
- 0Xellos
- zjeuhpiung liu
+- zbw
- urbandove
- sam
- rely10
@@ -54,6 +57,7 @@
- Vincent Bernat
- Uman Shahzad
- Tom Whitwell
+- Tom Parker-Shemilt
- Tim Gates
- Thomas Bechtold
- Terseus
@@ -76,8 +80,10 @@
- Joby Harding
- Jesse Dhillon
- Jeremy Banks
+- Jelle van der Waa
- Geoffrey Huntley
- Fabricio C Zuardi
+- Eashwar Ranganathan
- Duncan Bellamy
- Dennis Flanigan
- Dan North
@@ -85,6 +91,7 @@
- Damien Nozay
- Brian Jacobel
- Ben Davis
+- Bastien Gérard
- Augusto Andreoli
- Andreas Wirooks
- Alexey Poryadin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nodeenv-1.7.0/nodeenv.py new/nodeenv-1.8.0/nodeenv.py
--- old/nodeenv-1.7.0/nodeenv.py 2022-06-25 17:33:28.000000000 +0200
+++ new/nodeenv-1.8.0/nodeenv.py 2023-05-12 10:01:49.000000000 +0200
@@ -47,7 +47,7 @@
from pkg_resources import parse_version
-nodeenv_version = '1.7.0'
+nodeenv_version = '1.8.0'
join = os.path.join
abspath = os.path.abspath
@@ -530,6 +530,10 @@
return sysconfig.get_config_var('HOST_GNU_TYPE') == 'x86_64-pc-linux-musl'
+def is_riscv64():
+ return platform.machine() == 'riscv64'
+
+
def get_node_bin_url(version):
archmap = {
'x86': 'x86', # Windows Vista 32
@@ -547,6 +551,7 @@
'armv8.4': 'arm64',
'ppc64le': 'ppc64le', # Power PC
's390x': 's390x', # IBM S390x
+ 'riscv64': 'riscv64', # RISCV 64
}
sysinfo = {
'system': platform.system().lower(),
@@ -577,17 +582,28 @@
tf.close()
+def _download_node_file(node_url, n_attempt=3):
+ """Do multiple attempts to avoid incomplete data in case
+ of unstable network"""
+ while n_attempt > 0:
+ try:
+ return io.BytesIO(urlopen(node_url).read())
+ except IncompleteRead as e:
+ logger.warning(
+ 'Incomplete read while reading'
+ 'from {} - {}'.format(node_url, e)
+ )
+ n_attempt -= 1
+ if n_attempt == 0:
+ raise e
+
+
def download_node_src(node_url, src_dir, args):
"""
Download source code
"""
logger.info('.', extra=dict(continued=True))
- try:
- dl_contents = io.BytesIO(urlopen(node_url).read())
- except IncompleteRead as e:
- logger.warning('Incomplete read while reading'
- 'from {}'.format(node_url))
- dl_contents = e.partial
+ dl_contents = _download_node_file(node_url)
logger.info('.', extra=dict(continued=True))
if is_WIN or is_CYGWIN:
@@ -765,6 +781,8 @@
# if arm64 not found, try x64
download_node_src(node_url.replace('arm64', 'x64'),
src_dir, args)
+ else:
+ logger.warning('Failed to download from %s' % node_url)
logger.info('.', extra=dict(continued=True))
@@ -1082,7 +1100,7 @@
else:
src_domain = args.mirror
# use unofficial builds only if musl and no explicitly chosen mirror
- elif is_x86_64_musl():
+ elif is_x86_64_musl() or is_riscv64():
src_domain = 'unofficial-builds.nodejs.org'
else:
src_domain = 'nodejs.org'
@@ -1397,10 +1415,13 @@
# `fish_prompt` using `functions -e`.
set -l fish_function_path
- # Erase virtualenv's `fish_prompt` and restore the original.
- functions -e fish_prompt
- functions -c _node_old_fish_prompt fish_prompt
- functions -e _node_old_fish_prompt
+ # Prevents error when using nested fish instances
+ if functions -q _node_old_fish_prompt
+ # Erase virtualenv's `fish_prompt` and restore the original.
+ functions -e fish_prompt
+ functions -c _node_old_fish_prompt fish_prompt
+ functions -e _node_old_fish_prompt
+ end
set -e _OLD_NODE_FISH_PROMPT_OVERRIDE
end
@@ -1492,7 +1513,7 @@
# Restore the original $status
echo "exit $old_status" | source
- _old_fish_prompt
+ _node_old_fish_prompt
end
set -gx _OLD_NODE_FISH_PROMPT_OVERRIDE "$NODE_VIRTUAL_ENV"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nodeenv-1.7.0/requirements-dev.txt new/nodeenv-1.8.0/requirements-dev.txt
--- old/nodeenv-1.7.0/requirements-dev.txt 2022-06-25 17:33:28.000000000 +0200
+++ new/nodeenv-1.8.0/requirements-dev.txt 2023-05-12 10:01:49.000000000 +0200
@@ -2,6 +2,6 @@
coverage
flake8
-mock
+mock; python_version < '3.3'
pytest
-tox
\ No newline at end of file
+tox
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nodeenv-1.7.0/tests/nodeenv_test.py new/nodeenv-1.8.0/tests/nodeenv_test.py
--- old/nodeenv-1.7.0/tests/nodeenv_test.py 2022-06-25 17:33:28.000000000 +0200
+++ new/nodeenv-1.8.0/tests/nodeenv_test.py 2023-05-12 10:01:49.000000000 +0200
@@ -6,12 +6,16 @@
import subprocess
import sys
import sysconfig
+import platform
-import mock
+try:
+ from unittest import mock
+except ImportError:
+ import mock
import pytest
import nodeenv
-
+from nodeenv import IncompleteRead
HERE = os.path.abspath(os.path.dirname(__file__))
@@ -112,6 +116,8 @@
# Check if running on musl system and delete last mirror if it is
if sys_type in musl_type:
urls.pop()
+ elif platform.machine() == "riscv64":
+ urls.pop()
with open(os.path.join(HERE, 'nodejs_index.json'), 'rb') as f:
def rewind(_):
f.seek(0)
@@ -140,3 +146,14 @@
@pytest.mark.usefixtures('mock_index_json')
def test_get_lts_node_version():
assert nodeenv.get_last_lts_node_version() == '12.14.0'
+
+
+def test__download_node_file():
+ with mock.patch.object(nodeenv, 'urlopen') as m_urlopen:
+ m_urlopen.side_effect = IncompleteRead("dummy")
+ with pytest.raises(IncompleteRead):
+ nodeenv._download_node_file(
+ "https://dummy/nodejs.tar.gz",
+ n_attempt=5
+ )
+ assert m_urlopen.call_count == 5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nodeenv-1.7.0/tests/test_install_activate.py new/nodeenv-1.8.0/tests/test_install_activate.py
--- old/nodeenv-1.7.0/tests/test_install_activate.py 2022-06-25 17:33:28.000000000 +0200
+++ new/nodeenv-1.8.0/tests/test_install_activate.py 2023-05-12 10:01:49.000000000 +0200
@@ -1,7 +1,10 @@
import sys
import os
-import mock
+try:
+ from unittest import mock
+except ImportError:
+ import mock
import pytest
import nodeenv
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package shotcut for openSUSE:Factory checked in at 2023-12-20 21:02:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/shotcut (Old)
and /work/SRC/openSUSE:Factory/.shotcut.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "shotcut"
Wed Dec 20 21:02:16 2023 rev:61 rq:1134136 version:23.12.15
Changes:
--------
--- /work/SRC/openSUSE:Factory/shotcut/shotcut.changes 2023-12-03 20:49:51.584082361 +0100
+++ /work/SRC/openSUSE:Factory/.shotcut.new.9037/shotcut.changes 2023-12-20 21:02:37.307264562 +0100
@@ -1,0 +2,26 @@
+Tue Dec 19 09:34:56 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 23.12.15:
+ * Fixed crash on start on Wayland on Ubuntu 22.04 and 23.10 -
+ may require installing qt6-wayland (broke in v23.11).
+ This breaks support for Wayland on Ubuntu 23.04, which is a less
+ important version than the other two. The combination of Wayland and
+ Qt 6 seems impossible to handle universally in the portable/AppImage/Snap binary
+ bundle. If installing a Qt 6 Wayland package does not work in your distro,
+ some options are to login using an X session instead of Wayland or try the Flatpak.
+ * Fixed numerous audio filters missing on macOS/Intel (broke in v23.11).
+ * Fixed crash in No Sync video filter with new Ease Back and Ease Elastic keyframes.
+ * Fixed Equalizer: Parametric > Preset not loading (broke in v23.09).
+ * Fixed Slideshow Generator not padding videos on mismatching aspect ratio (broke in v23.09).
+ * Fixed Timeline waveform is not updated when changing Properties > Audio > Track.
+ * Fixed #filename# and #basename# keywords in Text: Simple video filter with non-ASCII filenames on Windows.
+ * Fixed Properties > View Bitrate opens too big on high DPI screen.
+ * Fixed Properties > View Bitrate > Save image is not anti-aliased.
+ * Fixed Properties > Measure Video Quality accuracy when Color range is Full.
+ * Fixed some minor memory leaks.
+ * Changed all NVENC hardware encoders in Export to use CQ instead of constant QP for VBR rate control.
+ * Ugraded FFmpeg to version 6.1
+ * Upgraded AV1 decoder dav1d to version 1.4 and AV1 encoder libaom-av1 to version 3.8.0
+ * Upgraded rubberband audio pitch library to version 3.3.0
+
+-------------------------------------------------------------------
Old:
----
shotcut-23.11.29.tar.gz
New:
----
shotcut-23.12.15.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ shotcut.spec ++++++
--- /var/tmp/diff_new_pack.MVObvJ/_old 2023-12-20 21:02:38.227298034 +0100
+++ /var/tmp/diff_new_pack.MVObvJ/_new 2023-12-20 21:02:38.227298034 +0100
@@ -27,7 +27,7 @@
#%%(pkg-config --modversion Qt6Core)
%bcond_with x264
Name: shotcut
-Version: 23.11.29
+Version: 23.12.15
Release: 0
Summary: Video and audio editor and creator
License: GPL-3.0-or-later
++++++ shotcut-23.11.29.tar.gz -> shotcut-23.12.15.tar.gz ++++++
/work/SRC/openSUSE:Factory/shotcut/shotcut-23.11.29.tar.gz /work/SRC/openSUSE:Factory/.shotcut.new.9037/shotcut-23.12.15.tar.gz differ: char 15, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package trufflehog for openSUSE:Factory checked in at 2023-12-20 21:01:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/trufflehog (Old)
and /work/SRC/openSUSE:Factory/.trufflehog.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "trufflehog"
Wed Dec 20 21:01:58 2023 rev:5 rq:1134105 version:3.63.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/trufflehog/trufflehog.changes 2023-12-15 21:48:21.076504903 +0100
+++ /work/SRC/openSUSE:Factory/.trufflehog.new.9037/trufflehog.changes 2023-12-20 21:02:22.762735424 +0100
@@ -1,0 +2,30 @@
+Tue Dec 19 07:49:30 UTC 2023 - felix.niederwanger(a)suse.de
+
+- Update to version 3.63.5:
+ * move cleanup to run (#2245)
+ * Adds basic if/else check if pid slice is empty (#2244)
+ * fix(deps): update module golang.org/x/crypto to v0.17.0 [security] (#2243)
+ * add secretID to chunk (#2242)
+
+-------------------------------------------------------------------
+Mon Dec 18 12:33:54 UTC 2023 - felix.niederwanger(a)suse.de
+
+- Update to version 3.63.4:
+ * feat(shortcut): use tri-state verification (#2211)
+ * feat(huggingface): enhance extradata (#2222)
+ * fix(myfreshworks): check for valid JSON (#2212)
+ * ci: don't run detector tests on forks (#2234)
+ * [chore] Add skip_binaries field to AzureRepos proto message (#2232)
+ * [feat] - Make skipping binaries configurable (#2226)
+ * [chore] Prevent panic when ChunkError has a nil Unit (#2227)
+ * chore: don't run test workflow in forks (#2221)
+ * fix(github): remove unused 'members' var (#2202)
+ * Check for SourceUnit support dynamically in the SourceManager (#2205)
+ * fix(gitlab): check for valid JSON (#2218)
+ * Avoid reading decompressed data into memory (#2196)
+ * fix(gitparse): don't trim filename (#2201)
+ * fix(giturl): encode '%' in path (#2214)
+ * build: upgrade bodgit/sevenzip to v1.4.5 (#2215)
+ * Fix emoji in README (#2217)
+
+-------------------------------------------------------------------
Old:
----
trufflehog-3.63.3.obscpio
New:
----
trufflehog-3.63.5.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ trufflehog.spec ++++++
--- /var/tmp/diff_new_pack.rb7Efn/_old 2023-12-20 21:02:24.294791161 +0100
+++ /var/tmp/diff_new_pack.rb7Efn/_new 2023-12-20 21:02:24.294791161 +0100
@@ -17,7 +17,7 @@
Name: trufflehog
-Version: 3.63.3
+Version: 3.63.5
Release: 0
Summary: CLI tool to find exposed secrets in source and archives
License: AGPL-3.0-or-later
++++++ _service ++++++
--- /var/tmp/diff_new_pack.rb7Efn/_old 2023-12-20 21:02:24.322792179 +0100
+++ /var/tmp/diff_new_pack.rb7Efn/_new 2023-12-20 21:02:24.322792179 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/trufflesecurity/trufflehog.git</param>
<param name="scm">git</param>
<param name="revision">main</param>
- <param name="version">v3.63.3</param>
+ <param name="version">v3.63.5</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="changesgenerate">enable</param>
</service>
++++++ trufflehog-3.63.3.obscpio -> trufflehog-3.63.5.obscpio ++++++
/work/SRC/openSUSE:Factory/trufflehog/trufflehog-3.63.3.obscpio /work/SRC/openSUSE:Factory/.trufflehog.new.9037/trufflehog-3.63.5.obscpio differ: char 49, line 1
++++++ trufflehog.obsinfo ++++++
--- /var/tmp/diff_new_pack.rb7Efn/_old 2023-12-20 21:02:24.354793343 +0100
+++ /var/tmp/diff_new_pack.rb7Efn/_new 2023-12-20 21:02:24.358793489 +0100
@@ -1,5 +1,5 @@
name: trufflehog
-version: 3.63.3
-mtime: 1702512824
-commit: e8db0f2cd0bb1a60217394485154cf37c22baf49
+version: 3.63.5
+mtime: 1702958556
+commit: 328a3f141ffddf04cbb82b4aee8f25222009e805
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/trufflehog/vendor.tar.gz /work/SRC/openSUSE:Factory/.trufflehog.new.9037/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package opentofu for openSUSE:Factory checked in at 2023-12-20 21:01:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/opentofu (Old)
and /work/SRC/openSUSE:Factory/.opentofu.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "opentofu"
Wed Dec 20 21:01:54 2023 rev:10 rq:1134102 version:1.6.0~rc1
Changes:
--------
--- /work/SRC/openSUSE:Factory/opentofu/opentofu.changes 2023-12-17 21:35:39.952867958 +0100
+++ /work/SRC/openSUSE:Factory/.opentofu.new.9037/opentofu.changes 2023-12-20 21:02:19.642621912 +0100
@@ -1,0 +2,9 @@
+Tue Dec 19 20:23:11 UTC 2023 - dmueller(a)suse.com
+
+- Update to version 1.6.0~rc1:
+ * Bump version. (#1038)
+ * Fixes #980: Remove Packagecloud instructions (#1036)
+ * Fixes #908: Migration guide (#1021)
+ * Re-add ssh and bash to Dockerfile (#1034)
+
+-------------------------------------------------------------------
Old:
----
opentofu-1.6.0~beta5.obscpio
New:
----
opentofu-1.6.0~rc1.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ opentofu.spec ++++++
--- /var/tmp/diff_new_pack.VTThvT/_old 2023-12-20 21:02:20.954669645 +0100
+++ /var/tmp/diff_new_pack.VTThvT/_new 2023-12-20 21:02:20.958669790 +0100
@@ -19,7 +19,7 @@
%define executable_name tofu
Name: opentofu
-Version: 1.6.0~beta5
+Version: 1.6.0~rc1
Release: 0
Summary: Declaratively manage your cloud infrastructure
License: MPL-2.0
@@ -29,7 +29,7 @@
Source1: vendor.tar.gz
Source99: opentofu-rpmlintrc
BuildRequires: golang-packaging
-BuildRequires: golang(API) >= 1.20
+BuildRequires: golang(API) >= 1.21
# See: https://github.com/hashicorp/opentofu/issues/22807
ExcludeArch: %{ix86} %{arm}
++++++ _service ++++++
--- /var/tmp/diff_new_pack.VTThvT/_old 2023-12-20 21:02:20.986670809 +0100
+++ /var/tmp/diff_new_pack.VTThvT/_new 2023-12-20 21:02:20.990670955 +0100
@@ -2,7 +2,7 @@
<service name="obs_scm" mode="manual">
<param name="url">https://github.com/opentofu/opentofu/</param>
<param name="scm">git</param>
- <param name="revision">v1.6.0-beta5</param>
+ <param name="revision">v1.6.0-rc1</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)-(.*)</param>
<param name="versionrewrite-replacement">\1~\2</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.VTThvT/_old 2023-12-20 21:02:21.010671682 +0100
+++ /var/tmp/diff_new_pack.VTThvT/_new 2023-12-20 21:02:21.010671682 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/opentofu/opentofu/</param>
- <param name="changesrevision">5553ba8324d1ce5f2ce82b03546dcee1a2834552</param></service></servicedata>
+ <param name="changesrevision">9902a7229950df51256fc3af51b6d06a8c808b5e</param></service></servicedata>
(No newline at EOF)
++++++ opentofu.obsinfo ++++++
--- /var/tmp/diff_new_pack.VTThvT/_old 2023-12-20 21:02:21.042672847 +0100
+++ /var/tmp/diff_new_pack.VTThvT/_new 2023-12-20 21:02:21.046672992 +0100
@@ -1,5 +1,5 @@
name: opentofu
-version: 1.6.0~beta5
-mtime: 1702657313
-commit: 5553ba8324d1ce5f2ce82b03546dcee1a2834552
+version: 1.6.0~rc1
+mtime: 1702995854
+commit: 9902a7229950df51256fc3af51b6d06a8c808b5e
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/opentofu/vendor.tar.gz /work/SRC/openSUSE:Factory/.opentofu.new.9037/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-cloud-storage for openSUSE:Factory checked in at 2023-12-20 21:01:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-cloud-storage (Old)
and /work/SRC/openSUSE:Factory/.python-google-cloud-storage.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-cloud-storage"
Wed Dec 20 21:01:33 2023 rev:19 rq:1134085 version:2.14.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-cloud-storage/python-google-cloud-storage.changes 2023-03-30 22:52:30.328972447 +0200
+++ /work/SRC/openSUSE:Factory/.python-google-cloud-storage.new.9037/python-google-cloud-storage.changes 2023-12-20 21:01:44.681349999 +0100
@@ -1,0 +2,64 @@
+Tue Dec 19 17:05:18 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Fix tests, setting GOOGLE_CLOUD_PROJECT environment variable.
+- Add fake default credentials to fix tests
+
+-------------------------------------------------------------------
+Sat Dec 16 19:22:43 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.14.0:
+ * Add support for Python 3.12
+ * Support object retention lock
+ * Clarify error message and docstrings in Blob class method
+ * Propagate timeout in BlobWriter
+ * Use native namespace to avoid pkg_resources warnings
+
+-------------------------------------------------------------------
+Fri Nov 24 13:54:17 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- Update to 2.13.0
+ * Add Autoclass v2.1 support (#1117)
+ * Add support for custom headers (#1121)
+ * Blob.from_string parse storage uri with regex (#1170)
+ * Bucket.delete(force=True) now works with version-enabled buckets (#1172)
+ * Fix typo in Bucket.clear_lifecycle_rules() (#1169)
+ * Fix exception field in tm reference docs (#1164)
+- from version 2.12.0
+ * Add additional_blob_attributes to upload_many_from_filenames (#1162)
+ * Add crc32c_checksum argument to download_chunks_concurrently (#1138)
+ * Add skip_if_exists to download_many (#1161)
+ * Launch transfer manager to GA (#1159)
+ * Bump python-auth version to fix issue and remove workaround (#1158)
+ * Mark _deprecate_threads_param as a wrapper to unblock introspection and docs (#1122)
+ * Add snippets for upload_chunks_concurrently and add chunk_size (#1135)
+ * Update formatting and wording in transfer_manager docstrings (#1163)
+- from version 2.11.0
+ * Add gccl-gcs-cmd field to X-Goog-API-Client header for Transfer Manager calls (#1119)
+ * Add transfer_manager.upload_chunks_concurrently using the XML MPU API (#1115)
+ * Support configurable retries in upload_chunks_concurrently (#1120)
+ * Split retention period tests due to caching change (#1068)
+ * Add Transfer Manager documentation in c.g.c (#1109)
+- Refresh patches for new version
+ * demock.patch
+- Update BuildRequires and Require from setup.py
+
+-------------------------------------------------------------------
+Wed Jun 28 12:25:01 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- Update to 2.10.0
+ * Add matchGlob parameter to list_blobs (#1055)
+ * Allow exceptions to be included in batch responses (#1043)
+ * Extend wait for bucket metadata consistency in system tests (#1053)
+ * Add clarification to batch module (#1045)
+
+-------------------------------------------------------------------
+Wed May 10 09:15:20 UTC 2023 - Matej Cepl <mcepl(a)suse.com>
+
+- Update to 2.9.0:
+ - Un-deprecate blob.download_to_file(), bucket.create(), and bucket.list_blobs()
+ - Avoid pickling processed credentials
+ - Improve test error message for missing credentials
+ - Add sample and sample test for transfer manager
+ - Remove threads in transfer manager samples
+
+-------------------------------------------------------------------
Old:
----
google-cloud-storage-2.8.0.tar.gz
New:
----
google-cloud-storage-2.14.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-cloud-storage.spec ++++++
--- /var/tmp/diff_new_pack.5HszKI/_old 2023-12-20 21:01:45.365374885 +0100
+++ /var/tmp/diff_new_pack.5HszKI/_new 2023-12-20 21:01:45.365374885 +0100
@@ -17,7 +17,6 @@
%define skip_python2 1
-
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define test 1
@@ -27,10 +26,9 @@
%define pkg_suffix %{nil}
%bcond_with test
%endif
-
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
+%{?sle15_python_module_pythons}
Name: python-google-cloud-storage%{pkg_suffix}
-Version: 2.8.0
+Version: 2.14.0
Release: 0
Summary: Google Cloud Storage API python client library
License: Apache-2.0
@@ -45,19 +43,21 @@
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-google-api-core >= 1.31.5
-Requires: python-google-auth >= 1.25.0
-Requires: python-google-cloud-core >= 1.6.0
-Requires: python-google-resumable-media >= 2.3.2
+Requires: python-google-auth >= 2.23.3
+Requires: python-google-cloud-core >= 2.3.0
+Requires: python-google-crc32c >= 1.0
+Requires: python-google-resumable-media >= 2.6.0
Requires: python-googleapis-common-protos
Requires: python-requests >= 2.18.0
BuildArch: noarch
# SECTION test requirements
%if %{with test}
BuildRequires: %{python_module google-api-core >= 1.31.5}
-BuildRequires: %{python_module google-auth >= 1.25.0}
+BuildRequires: %{python_module google-auth >= 2.23.3}
BuildRequires: %{python_module google-cloud-core >= 2.3.0}
BuildRequires: %{python_module google-cloud-storage}
-BuildRequires: %{python_module google-resumable-media >= 2.3.2}
+BuildRequires: %{python_module google-crc32c >= 1.0}
+BuildRequires: %{python_module google-resumable-media >= 2.6.0}
BuildRequires: %{python_module packaging}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
@@ -88,8 +88,25 @@
%if %{with test}
%check
-#export PYTEST_ADDOPTS="--import-mode=importlib"
-%pytest -k 'not network and not w_custom_endpoint' tests/unit
+# Set Fake default credentials for tests
+mkdir -p $HOME/.config/gcloud
+cat > $HOME/.config/gcloud/application_default_credentials.json <<EOF
+{
+ "client_id": "111111111111-1qq1q1qq1qqq111qq1qqqq11q1qqqqqq.apps.googleusercontent.com",
+ "client_secret": "d-XXXXXXXXXXXXXXXXXXXXXX",
+ "refresh_token": "1//1111111111111111111111111111-XXXXXXXXX-AAAAAAAAAAA_BBBBBBBBBBBBBBBBBBBBBB-CCCCCCCCCCCCCCCCCCCCCCCCCC",
+ "type": "authorized_user"
+}
+EOF
+
+export PYTEST_ADDOPTS="--import-mode=importlib" PYTHONPATH="."
+# fails with the tests project env
+WITHOUT_PROJECT="test_ctor_w_custom_endpoint_bypass_auth"
+%pytest -k $WITHOUT_PROJECT tests/unit
+
+# Some tests needs the GOOGLE_CLOUD_PROJECT environment variable
+export GOOGLE_CLOUD_PROJECT="PROJECT"
+%pytest -k "not (network or $WITHOUT_PROJECT)" tests/unit
%endif
%if !%{with test}
@@ -100,6 +117,5 @@
%dir %{python_sitelib}/google/cloud
%{python_sitelib}/google/cloud/storage
%{python_sitelib}/google_cloud_storage-%{version}*-info
-%{python_sitelib}/google_cloud_storage-%{version}*-nspkg.pth
%endif
++++++ demock.patch ++++++
--- /var/tmp/diff_new_pack.5HszKI/_old 2023-12-20 21:01:45.393375903 +0100
+++ /var/tmp/diff_new_pack.5HszKI/_new 2023-12-20 21:01:45.397376048 +0100
@@ -1,7 +1,8 @@
-diff -Nru google-cloud-storage-2.8.0.orig/tests/system/test_blob.py google-cloud-storage-2.8.0/tests/system/test_blob.py
---- google-cloud-storage-2.8.0.orig/tests/system/test_blob.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/system/test_blob.py 2023-03-30 12:03:21.658159496 +0200
-@@ -21,7 +21,7 @@
+Index: google-cloud-storage-2.14.0/tests/system/test_blob.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/system/test_blob.py
++++ google-cloud-storage-2.14.0/tests/system/test_blob.py
+@@ -21,7 +21,7 @@ import uuid
import warnings
import pytest
@@ -10,9 +11,10 @@
from google import resumable_media
from google.api_core import exceptions
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_acl.py google-cloud-storage-2.8.0/tests/unit/test_acl.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_acl.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_acl.py 2023-03-30 12:03:21.714159988 +0200
+Index: google-cloud-storage-2.14.0/tests/unit/test_acl.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_acl.py
++++ google-cloud-storage-2.14.0/tests/unit/test_acl.py
@@ -14,7 +14,7 @@
import unittest
@@ -22,10 +24,11 @@
from google.cloud.storage.retry import (
DEFAULT_RETRY,
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_batch.py google-cloud-storage-2.8.0/tests/unit/test_batch.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_batch.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_batch.py 2023-03-30 12:03:21.706159918 +0200
-@@ -17,7 +17,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test_batch.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_batch.py
++++ google-cloud-storage-2.14.0/tests/unit/test_batch.py
+@@ -17,7 +17,7 @@ from http.client import SERVICE_UNAVAILA
from http.client import NO_CONTENT
import unittest
@@ -34,10 +37,11 @@
import requests
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_blob.py google-cloud-storage-2.8.0/tests/unit/test_blob.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_blob.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_blob.py 2023-03-30 12:03:21.694159812 +0200
-@@ -24,7 +24,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test_blob.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_blob.py
++++ google-cloud-storage-2.14.0/tests/unit/test_blob.py
+@@ -24,7 +24,7 @@ import http.client
from unittest.mock import patch
from urllib.parse import urlencode
@@ -46,9 +50,10 @@
import pytest
from google.cloud.storage import _helpers
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_bucket.py google-cloud-storage-2.8.0/tests/unit/test_bucket.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_bucket.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_bucket.py 2023-03-30 12:03:21.714159988 +0200
+Index: google-cloud-storage-2.14.0/tests/unit/test_bucket.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_bucket.py
++++ google-cloud-storage-2.14.0/tests/unit/test_bucket.py
@@ -15,7 +15,7 @@
import datetime
import unittest
@@ -58,10 +63,11 @@
import pytest
from google.cloud.storage.retry import DEFAULT_RETRY
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_client.py google-cloud-storage-2.8.0/tests/unit/test_client.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_client.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_client.py 2023-03-30 12:03:21.706159918 +0200
-@@ -17,7 +17,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test_client.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_client.py
++++ google-cloud-storage-2.14.0/tests/unit/test_client.py
+@@ -17,7 +17,7 @@ import http.client
import io
import json
from unittest.mock import patch
@@ -70,10 +76,11 @@
import pytest
import re
import requests
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_fileio.py google-cloud-storage-2.8.0/tests/unit/test_fileio.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_fileio.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_fileio.py 2023-03-30 12:03:21.702159882 +0200
-@@ -18,7 +18,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test_fileio.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_fileio.py
++++ google-cloud-storage-2.14.0/tests/unit/test_fileio.py
+@@ -18,7 +18,7 @@ import unittest
import io
import string
@@ -82,9 +89,10 @@
from google.api_core.exceptions import RequestRangeNotSatisfiable
from google.cloud.storage.retry import DEFAULT_RETRY
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test__helpers.py google-cloud-storage-2.8.0/tests/unit/test__helpers.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test__helpers.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test__helpers.py 2023-03-30 12:03:21.702159882 +0200
+Index: google-cloud-storage-2.14.0/tests/unit/test__helpers.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test__helpers.py
++++ google-cloud-storage-2.14.0/tests/unit/test__helpers.py
@@ -14,7 +14,7 @@
import unittest
@@ -94,18 +102,19 @@
from google.cloud.storage.retry import DEFAULT_RETRY
from google.cloud.storage.retry import DEFAULT_RETRY_IF_METAGENERATION_SPECIFIED
-@@ -556,7 +556,7 @@
+@@ -561,8 +561,6 @@ class Test__base64_md5hash(unittest.Test
self.assertEqual(SIGNED_CONTENT, b"kBiQqOnIz21aGlQrIp/r/w==")
def test_it_with_stubs(self):
- import mock
-+ from unittest import mock
-
+-
class _Buffer(object):
def __init__(self, return_vals):
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_hmac_key.py google-cloud-storage-2.8.0/tests/unit/test_hmac_key.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_hmac_key.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_hmac_key.py 2023-03-30 12:03:21.714159988 +0200
+ self.return_vals = return_vals
+Index: google-cloud-storage-2.14.0/tests/unit/test_hmac_key.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_hmac_key.py
++++ google-cloud-storage-2.14.0/tests/unit/test_hmac_key.py
@@ -14,7 +14,7 @@
import unittest
@@ -115,9 +124,10 @@
from google.cloud.storage.retry import DEFAULT_RETRY
from google.cloud.storage.retry import DEFAULT_RETRY_IF_ETAG_IN_JSON
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test__http.py google-cloud-storage-2.8.0/tests/unit/test__http.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test__http.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test__http.py 2023-03-30 12:03:21.686159742 +0200
+Index: google-cloud-storage-2.14.0/tests/unit/test__http.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test__http.py
++++ google-cloud-storage-2.14.0/tests/unit/test__http.py
@@ -15,7 +15,7 @@
import unittest
from unittest.mock import patch
@@ -126,10 +136,11 @@
+from unittest import mock
from google.cloud.storage import _helpers
- from tests.unit.test__helpers import GCCL_INVOCATION_TEST_CONST
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_notification.py google-cloud-storage-2.8.0/tests/unit/test_notification.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_notification.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_notification.py 2023-03-30 12:03:21.690159777 +0200
+
+Index: google-cloud-storage-2.14.0/tests/unit/test_notification.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_notification.py
++++ google-cloud-storage-2.14.0/tests/unit/test_notification.py
@@ -14,7 +14,7 @@
import unittest
@@ -139,10 +150,11 @@
from google.cloud.storage.retry import DEFAULT_RETRY
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_retry.py google-cloud-storage-2.8.0/tests/unit/test_retry.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_retry.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_retry.py 2023-03-30 12:03:21.710159953 +0200
-@@ -16,7 +16,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test_retry.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_retry.py
++++ google-cloud-storage-2.14.0/tests/unit/test_retry.py
+@@ -16,7 +16,7 @@ import unittest
from google.cloud.storage import _helpers
@@ -151,10 +163,11 @@
class Test_should_retry(unittest.TestCase):
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test__signing.py google-cloud-storage-2.8.0/tests/unit/test__signing.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test__signing.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test__signing.py 2023-03-30 12:03:21.698159847 +0200
-@@ -23,7 +23,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test__signing.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test__signing.py
++++ google-cloud-storage-2.14.0/tests/unit/test__signing.py
+@@ -23,7 +23,7 @@ import time
import unittest
import urllib.parse
@@ -163,10 +176,11 @@
import pytest
from . import _read_local_json
-diff -Nru google-cloud-storage-2.8.0.orig/tests/unit/test_transfer_manager.py google-cloud-storage-2.8.0/tests/unit/test_transfer_manager.py
---- google-cloud-storage-2.8.0.orig/tests/unit/test_transfer_manager.py 2023-03-29 23:18:24.000000000 +0200
-+++ google-cloud-storage-2.8.0/tests/unit/test_transfer_manager.py 2023-03-30 12:03:21.710159953 +0200
-@@ -23,7 +23,7 @@
+Index: google-cloud-storage-2.14.0/tests/unit/test_transfer_manager.py
+===================================================================
+--- google-cloud-storage-2.14.0.orig/tests/unit/test_transfer_manager.py
++++ google-cloud-storage-2.14.0/tests/unit/test_transfer_manager.py
+@@ -24,7 +24,7 @@ from google.resumable_media.common impor
import os
import tempfile
++++++ google-cloud-storage-2.8.0.tar.gz -> google-cloud-storage-2.14.0.tar.gz ++++++
++++ 8299 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package tinyxml for openSUSE:Factory checked in at 2023-12-20 21:01:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tinyxml (Old)
and /work/SRC/openSUSE:Factory/.tinyxml.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tinyxml"
Wed Dec 20 21:01:28 2023 rev:17 rq:1134002 version:2.6.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/tinyxml/tinyxml.changes 2023-12-17 21:35:03.331537362 +0100
+++ /work/SRC/openSUSE:Factory/.tinyxml.new.9037/tinyxml.changes 2023-12-20 21:01:36.505052541 +0100
@@ -5 +5 @@
- (bsc#1218040)
+ (bsc#1218040) (CVE-2023-34194)
@@ -12,0 +13 @@
+ (CVE-2021-42260)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libssh2_org for openSUSE:Factory checked in at 2023-12-20 21:01:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libssh2_org (Old)
and /work/SRC/openSUSE:Factory/.libssh2_org.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libssh2_org"
Wed Dec 20 21:01:14 2023 rev:44 rq:1134106 version:1.11.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libssh2_org/libssh2_org.changes 2023-06-21 22:37:33.993543331 +0200
+++ /work/SRC/openSUSE:Factory/.libssh2_org.new.9037/libssh2_org.changes 2023-12-20 21:01:24.036598931 +0100
@@ -1,0 +2,7 @@
+Tue Dec 19 11:25:35 UTC 2023 - Otto Hollmann <otto.hollmann(a)suse.com>
+
+- Security fix: [bsc#1218127, CVE-2023-48795]
+ * Add 'strict KEX' to fix CVE-2023-48795 "Terrapin Attack"
+ * Add libssh2_org-CVE-2023-48795.patch
+
+-------------------------------------------------------------------
New:
----
libssh2_org-CVE-2023-48795.patch
BETA DEBUG BEGIN:
New: * Add 'strict KEX' to fix CVE-2023-48795 "Terrapin Attack"
* Add libssh2_org-CVE-2023-48795.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libssh2_org.spec ++++++
--- /var/tmp/diff_new_pack.IfQWmy/_old 2023-12-20 21:01:25.024634877 +0100
+++ /var/tmp/diff_new_pack.IfQWmy/_new 2023-12-20 21:01:25.028635022 +0100
@@ -29,6 +29,8 @@
Source2: baselibs.conf
Source3: libssh2_org.keyring
Patch0: libssh2-ocloexec.patch
+# PATCH-FIX-UPSTREAM bsc#1218127 CVE-2023-48795: Add 'strict KEX' to fix Terrapin Attack
+Patch1: libssh2_org-CVE-2023-48795.patch
BuildRequires: libtool
BuildRequires: openssl-devel
BuildRequires: pkgconfig
++++++ libssh2_org-CVE-2023-48795.patch ++++++
From d34d9258b8420b19ec3f97b4cc5bf7aa7d98e35a Mon Sep 17 00:00:00 2001
From: Michael Buckley <michael(a)buckleyisms.com>
Date: Thu, 30 Nov 2023 15:08:02 -0800
Subject: [PATCH] src: add 'strict KEX' to fix CVE-2023-48795 "Terrapin Attack"
Refs:
https://terrapin-attack.com/
https://seclists.org/oss-sec/2023/q4/292
https://osv.dev/list?ecosystem=&q=CVE-2023-48795
https://github.com/advisories/GHSA-45x7-px36-x8w8
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48795
Fixes #1290
Closes #1291
---
src/kex.c | 63 +++++++++++++++++++++++------------
src/libssh2_priv.h | 18 +++++++---
src/packet.c | 83 +++++++++++++++++++++++++++++++++++++++++++---
src/packet.h | 2 +-
src/session.c | 3 ++
src/transport.c | 12 ++++++-
6 files changed, 149 insertions(+), 32 deletions(-)
Index: libssh2-1.11.0/src/kex.c
===================================================================
--- libssh2-1.11.0.orig/src/kex.c
+++ libssh2-1.11.0/src/kex.c
@@ -3037,6 +3037,13 @@ kex_method_extension_negotiation = {
0,
};
+static const LIBSSH2_KEX_METHOD
+kex_method_strict_client_extension = {
+ "kex-strict-c-v00(a)openssh.com",
+ NULL,
+ 0,
+};
+
static const LIBSSH2_KEX_METHOD *libssh2_kex_methods[] = {
#if LIBSSH2_ED25519
&kex_method_ssh_curve25519_sha256,
@@ -3055,6 +3062,7 @@ static const LIBSSH2_KEX_METHOD *libssh2
&kex_method_diffie_helman_group1_sha1,
&kex_method_diffie_helman_group_exchange_sha1,
&kex_method_extension_negotiation,
+ &kex_method_strict_client_extension,
NULL
};
@@ -3307,13 +3315,13 @@ static int kexinit(LIBSSH2_SESSION * ses
return 0;
}
-/* kex_agree_instr
+/* _libssh2_kex_agree_instr
* Kex specific variant of strstr()
* Needle must be preceded by BOL or ',', and followed by ',' or EOL
*/
-static unsigned char *
-kex_agree_instr(unsigned char *haystack, size_t haystack_len,
- const unsigned char *needle, size_t needle_len)
+unsigned char *
+_libssh2_kex_agree_instr(unsigned char *haystack, size_t haystack_len,
+ const unsigned char *needle, size_t needle_len)
{
unsigned char *s;
unsigned char *end_haystack;
@@ -3398,7 +3406,7 @@ static int kex_agree_hostkey(LIBSSH2_SES
while(s && *s) {
unsigned char *p = (unsigned char *) strchr((char *) s, ',');
size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
- if(kex_agree_instr(hostkey, hostkey_len, s, method_len)) {
+ if(_libssh2_kex_agree_instr(hostkey, hostkey_len, s, method_len)) {
const LIBSSH2_HOSTKEY_METHOD *method =
(const LIBSSH2_HOSTKEY_METHOD *)
kex_get_method_by_name((char *) s, method_len,
@@ -3432,9 +3440,9 @@ static int kex_agree_hostkey(LIBSSH2_SES
}
while(hostkeyp && (*hostkeyp) && (*hostkeyp)->name) {
- s = kex_agree_instr(hostkey, hostkey_len,
- (unsigned char *) (*hostkeyp)->name,
- strlen((*hostkeyp)->name));
+ s = _libssh2_kex_agree_instr(hostkey, hostkey_len,
+ (unsigned char *) (*hostkeyp)->name,
+ strlen((*hostkeyp)->name));
if(s) {
/* So far so good, but does it suit our purposes? (Encrypting vs
Signing) */
@@ -3468,6 +3476,12 @@ static int kex_agree_kex_hostkey(LIBSSH2
{
const LIBSSH2_KEX_METHOD **kexp = libssh2_kex_methods;
unsigned char *s;
+ const unsigned char *strict =
+ (unsigned char *)"kex-strict-s-v00(a)openssh.com";
+
+ if(_libssh2_kex_agree_instr(kex, kex_len, strict, 28)) {
+ session->kex_strict = 1;
+ }
if(session->kex_prefs) {
s = (unsigned char *) session->kex_prefs;
@@ -3475,7 +3489,7 @@ static int kex_agree_kex_hostkey(LIBSSH2
while(s && *s) {
unsigned char *q, *p = (unsigned char *) strchr((char *) s, ',');
size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
- q = kex_agree_instr(kex, kex_len, s, method_len);
+ q = _libssh2_kex_agree_instr(kex, kex_len, s, method_len);
if(q) {
const LIBSSH2_KEX_METHOD *method = (const LIBSSH2_KEX_METHOD *)
kex_get_method_by_name((char *) s, method_len,
@@ -3509,9 +3523,9 @@ static int kex_agree_kex_hostkey(LIBSSH2
}
while(*kexp && (*kexp)->name) {
- s = kex_agree_instr(kex, kex_len,
- (unsigned char *) (*kexp)->name,
- strlen((*kexp)->name));
+ s = _libssh2_kex_agree_instr(kex, kex_len,
+ (unsigned char *) (*kexp)->name,
+ strlen((*kexp)->name));
if(s) {
/* We've agreed on a key exchange method,
* Can we agree on a hostkey that works with this kex?
@@ -3555,7 +3569,7 @@ static int kex_agree_crypt(LIBSSH2_SESSI
unsigned char *p = (unsigned char *) strchr((char *) s, ',');
size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
- if(kex_agree_instr(crypt, crypt_len, s, method_len)) {
+ if(_libssh2_kex_agree_instr(crypt, crypt_len, s, method_len)) {
const LIBSSH2_CRYPT_METHOD *method =
(const LIBSSH2_CRYPT_METHOD *)
kex_get_method_by_name((char *) s, method_len,
@@ -3577,9 +3591,9 @@ static int kex_agree_crypt(LIBSSH2_SESSI
}
while(*cryptp && (*cryptp)->name) {
- s = kex_agree_instr(crypt, crypt_len,
- (unsigned char *) (*cryptp)->name,
- strlen((*cryptp)->name));
+ s = _libssh2_kex_agree_instr(crypt, crypt_len,
+ (unsigned char *) (*cryptp)->name,
+ strlen((*cryptp)->name));
if(s) {
endpoint->crypt = *cryptp;
return 0;
@@ -3619,7 +3633,7 @@ static int kex_agree_mac(LIBSSH2_SESSION
unsigned char *p = (unsigned char *) strchr((char *) s, ',');
size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
- if(kex_agree_instr(mac, mac_len, s, method_len)) {
+ if(_libssh2_kex_agree_instr(mac, mac_len, s, method_len)) {
const LIBSSH2_MAC_METHOD *method = (const LIBSSH2_MAC_METHOD *)
kex_get_method_by_name((char *) s, method_len,
(const LIBSSH2_COMMON_METHOD **)
@@ -3640,8 +3654,9 @@ static int kex_agree_mac(LIBSSH2_SESSION
}
while(*macp && (*macp)->name) {
- s = kex_agree_instr(mac, mac_len, (unsigned char *) (*macp)->name,
- strlen((*macp)->name));
+ s = _libssh2_kex_agree_instr(mac, mac_len,
+ (unsigned char *) (*macp)->name,
+ strlen((*macp)->name));
if(s) {
endpoint->mac = *macp;
return 0;
@@ -3672,7 +3687,7 @@ static int kex_agree_comp(LIBSSH2_SESSIO
unsigned char *p = (unsigned char *) strchr((char *) s, ',');
size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
- if(kex_agree_instr(comp, comp_len, s, method_len)) {
+ if(_libssh2_kex_agree_instr(comp, comp_len, s, method_len)) {
const LIBSSH2_COMP_METHOD *method =
(const LIBSSH2_COMP_METHOD *)
kex_get_method_by_name((char *) s, method_len,
@@ -3694,8 +3709,9 @@ static int kex_agree_comp(LIBSSH2_SESSIO
}
while(*compp && (*compp)->name) {
- s = kex_agree_instr(comp, comp_len, (unsigned char *) (*compp)->name,
- strlen((*compp)->name));
+ s = _libssh2_kex_agree_instr(comp, comp_len,
+ (unsigned char *) (*compp)->name,
+ strlen((*compp)->name));
if(s) {
endpoint->comp = *compp;
return 0;
@@ -3876,6 +3892,7 @@ _libssh2_kex_exchange(LIBSSH2_SESSION *
session->local.kexinit = key_state->oldlocal;
session->local.kexinit_len = key_state->oldlocal_len;
key_state->state = libssh2_NB_state_idle;
+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
session->state &= ~LIBSSH2_STATE_KEX_ACTIVE;
session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
return -1;
@@ -3901,6 +3918,7 @@ _libssh2_kex_exchange(LIBSSH2_SESSION *
session->local.kexinit = key_state->oldlocal;
session->local.kexinit_len = key_state->oldlocal_len;
key_state->state = libssh2_NB_state_idle;
+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
session->state &= ~LIBSSH2_STATE_KEX_ACTIVE;
session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
return -1;
@@ -3949,6 +3967,7 @@ _libssh2_kex_exchange(LIBSSH2_SESSION *
session->remote.kexinit = NULL;
}
+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
session->state &= ~LIBSSH2_STATE_KEX_ACTIVE;
session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
Index: libssh2-1.11.0/src/libssh2_priv.h
===================================================================
--- libssh2-1.11.0.orig/src/libssh2_priv.h
+++ libssh2-1.11.0/src/libssh2_priv.h
@@ -699,6 +699,9 @@ struct _LIBSSH2_SESSION
/* key signing algorithm preferences -- NULL yields server order */
char *sign_algo_prefs;
+ /* Whether to use the OpenSSH Strict KEX extension */
+ int kex_strict;
+
/* (remote as source of data -- packet_read ) */
libssh2_endpoint_data remote;
@@ -870,6 +873,7 @@ struct _LIBSSH2_SESSION
int fullpacket_macstate;
size_t fullpacket_payload_len;
int fullpacket_packet_type;
+ uint32_t fullpacket_required_type;
/* State variables used in libssh2_sftp_init() */
libssh2_nonblocking_states sftpInit_state;
@@ -910,10 +914,11 @@ struct _LIBSSH2_SESSION
};
/* session.state bits */
-#define LIBSSH2_STATE_EXCHANGING_KEYS 0x00000001
-#define LIBSSH2_STATE_NEWKEYS 0x00000002
-#define LIBSSH2_STATE_AUTHENTICATED 0x00000004
-#define LIBSSH2_STATE_KEX_ACTIVE 0x00000008
+#define LIBSSH2_STATE_INITIAL_KEX 0x00000001
+#define LIBSSH2_STATE_EXCHANGING_KEYS 0x00000002
+#define LIBSSH2_STATE_NEWKEYS 0x00000004
+#define LIBSSH2_STATE_AUTHENTICATED 0x00000008
+#define LIBSSH2_STATE_KEX_ACTIVE 0x00000010
/* session.flag helpers */
#ifdef MSG_NOSIGNAL
@@ -1144,6 +1149,11 @@ ssize_t _libssh2_send(libssh2_socket_t s
int _libssh2_kex_exchange(LIBSSH2_SESSION * session, int reexchange,
key_exchange_state_t * state);
+unsigned char *_libssh2_kex_agree_instr(unsigned char *haystack,
+ size_t haystack_len,
+ const unsigned char *needle,
+ size_t needle_len);
+
/* Let crypt.c/hostkey.c expose their method structs */
const LIBSSH2_CRYPT_METHOD **libssh2_crypt_methods(void);
const LIBSSH2_HOSTKEY_METHOD **libssh2_hostkey_methods(void);
Index: libssh2-1.11.0/src/packet.c
===================================================================
--- libssh2-1.11.0.orig/src/packet.c
+++ libssh2-1.11.0/src/packet.c
@@ -605,14 +605,13 @@ authagent_exit:
* layer when it has received a packet.
*
* The input pointer 'data' is pointing to allocated data that this function
- * is asked to deal with so on failure OR success, it must be freed fine.
- * The only exception is when the return code is LIBSSH2_ERROR_EAGAIN.
+ * will be freed unless return the code is LIBSSH2_ERROR_EAGAIN.
*
* This function will always be called with 'datalen' greater than zero.
*/
int
_libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
- size_t datalen, int macstate)
+ size_t datalen, int macstate, uint32_t seq)
{
int rc = 0;
unsigned char *message = NULL;
@@ -657,6 +656,70 @@ _libssh2_packet_add(LIBSSH2_SESSION * se
break;
}
+ if(session->state & LIBSSH2_STATE_INITIAL_KEX) {
+ if(msg == SSH_MSG_KEXINIT) {
+ if(!session->kex_strict) {
+ if(datalen < 17) {
+ LIBSSH2_FREE(session, data);
+ session->packAdd_state = libssh2_NB_state_idle;
+ return _libssh2_error(session,
+ LIBSSH2_ERROR_BUFFER_TOO_SMALL,
+ "Data too short extracting kex");
+ }
+ else {
+ const unsigned char *strict =
+ (unsigned char *)"kex-strict-s-v00(a)openssh.com";
+ struct string_buf buf;
+ unsigned char *algs = NULL;
+ size_t algs_len = 0;
+
+ buf.data = (unsigned char *)data;
+ buf.dataptr = buf.data;
+ buf.len = datalen;
+ buf.dataptr += 17; /* advance past type and cookie */
+
+ if(_libssh2_get_string(&buf, &algs, &algs_len)) {
+ LIBSSH2_FREE(session, data);
+ session->packAdd_state = libssh2_NB_state_idle;
+ return _libssh2_error(session,
+ LIBSSH2_ERROR_BUFFER_TOO_SMALL,
+ "Algs too short");
+ }
+
+ if(algs_len == 0 ||
+ _libssh2_kex_agree_instr(algs, algs_len, strict, 28)) {
+ session->kex_strict = 1;
+ }
+ }
+ }
+
+ if(session->kex_strict && seq) {
+ LIBSSH2_FREE(session, data);
+ session->socket_state = LIBSSH2_SOCKET_DISCONNECTED;
+ session->packAdd_state = libssh2_NB_state_idle;
+ libssh2_session_disconnect(session, "strict KEX violation: "
+ "KEXINIT was not the first packet");
+
+ return _libssh2_error(session, LIBSSH2_ERROR_SOCKET_DISCONNECT,
+ "strict KEX violation: "
+ "KEXINIT was not the first packet");
+ }
+ }
+
+ if(session->kex_strict && session->fullpacket_required_type &&
+ session->fullpacket_required_type != msg) {
+ LIBSSH2_FREE(session, data);
+ session->socket_state = LIBSSH2_SOCKET_DISCONNECTED;
+ session->packAdd_state = libssh2_NB_state_idle;
+ libssh2_session_disconnect(session, "strict KEX violation: "
+ "unexpected packet type");
+
+ return _libssh2_error(session, LIBSSH2_ERROR_SOCKET_DISCONNECT,
+ "strict KEX violation: "
+ "unexpected packet type");
+ }
+ }
+
if(session->packAdd_state == libssh2_NB_state_allocated) {
/* A couple exceptions to the packet adding rule: */
switch(msg) {
@@ -1341,6 +1404,15 @@ _libssh2_packet_ask(LIBSSH2_SESSION * se
return 0;
}
+ else if(session->kex_strict &&
+ (session->state & LIBSSH2_STATE_INITIAL_KEX)) {
+ libssh2_session_disconnect(session, "strict KEX violation: "
+ "unexpected packet type");
+
+ return _libssh2_error(session, LIBSSH2_ERROR_SOCKET_DISCONNECT,
+ "strict KEX violation: "
+ "unexpected packet type");
+ }
packet = _libssh2_list_next(&packet->node);
}
return -1;
@@ -1402,7 +1474,10 @@ _libssh2_packet_require(LIBSSH2_SESSION
}
while(session->socket_state == LIBSSH2_SOCKET_CONNECTED) {
- int ret = _libssh2_transport_read(session);
+ int ret;
+ session->fullpacket_required_type = packet_type;
+ ret = _libssh2_transport_read(session);
+ session->fullpacket_required_type = 0;
if(ret == LIBSSH2_ERROR_EAGAIN)
return ret;
else if(ret < 0) {
Index: libssh2-1.11.0/src/packet.h
===================================================================
--- libssh2-1.11.0.orig/src/packet.h
+++ libssh2-1.11.0/src/packet.h
@@ -71,6 +71,6 @@ int _libssh2_packet_burn(LIBSSH2_SESSION
int _libssh2_packet_write(LIBSSH2_SESSION * session, unsigned char *data,
unsigned long data_len);
int _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
- size_t datalen, int macstate);
+ size_t datalen, int macstate, uint32_t seq);
#endif /* __LIBSSH2_PACKET_H */
Index: libssh2-1.11.0/src/session.c
===================================================================
--- libssh2-1.11.0.orig/src/session.c
+++ libssh2-1.11.0/src/session.c
@@ -464,6 +464,8 @@ libssh2_session_init_ex(LIBSSH2_ALLOC_FU
session->abstract = abstract;
session->api_timeout = 0; /* timeout-free API by default */
session->api_block_mode = 1; /* blocking API by default */
+ session->state = LIBSSH2_STATE_INITIAL_KEX;
+ session->fullpacket_required_type = 0;
session->packet_read_timeout = LIBSSH2_DEFAULT_READ_TIMEOUT;
session->flag.quote_paths = 1; /* default behavior is to quote paths
for the scp subsystem */
@@ -1186,6 +1188,7 @@ libssh2_session_disconnect_ex(LIBSSH2_SE
const char *desc, const char *lang)
{
int rc;
+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
BLOCK_ADJUST(rc, session,
session_disconnect(session, reason, desc, lang));
Index: libssh2-1.11.0/src/transport.c
===================================================================
--- libssh2-1.11.0.orig/src/transport.c
+++ libssh2-1.11.0/src/transport.c
@@ -187,6 +187,7 @@ fullpacket(LIBSSH2_SESSION * session, in
struct transportpacket *p = &session->packet;
int rc;
int compressed;
+ uint32_t seq = session->remote.seqno;
if(session->fullpacket_state == libssh2_NB_state_idle) {
session->fullpacket_macstate = LIBSSH2_MAC_CONFIRMED;
@@ -318,7 +319,7 @@ fullpacket(LIBSSH2_SESSION * session, in
if(session->fullpacket_state == libssh2_NB_state_created) {
rc = _libssh2_packet_add(session, p->payload,
session->fullpacket_payload_len,
- session->fullpacket_macstate);
+ session->fullpacket_macstate, seq);
if(rc == LIBSSH2_ERROR_EAGAIN)
return rc;
if(rc) {
@@ -329,6 +330,11 @@ fullpacket(LIBSSH2_SESSION * session, in
session->fullpacket_state = libssh2_NB_state_idle;
+ if(session->kex_strict &&
+ session->fullpacket_packet_type == SSH_MSG_NEWKEYS) {
+ session->remote.seqno = 0;
+ }
+
return session->fullpacket_packet_type;
}
@@ -1091,6 +1097,10 @@ int _libssh2_transport_send(LIBSSH2_SESS
session->local.seqno++;
+ if(session->kex_strict && data[0] == SSH_MSG_NEWKEYS) {
+ session->local.seqno = 0;
+ }
+
ret = LIBSSH2_SEND(session, p->outbuf, total_length,
LIBSSH2_SOCKET_SEND_FLAGS(session));
if(ret < 0)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package kdump for openSUSE:Factory checked in at 2023-12-20 21:01:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kdump (Old)
and /work/SRC/openSUSE:Factory/.kdump.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kdump"
Wed Dec 20 21:01:11 2023 rev:144 rq:1134051 version:2.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/kdump/kdump.changes 2023-12-14 22:02:44.931219632 +0100
+++ /work/SRC/openSUSE:Factory/.kdump.new.9037/kdump.changes 2023-12-20 21:01:22.316536354 +0100
@@ -1,0 +2,5 @@
+Sat Dec 16 10:08:54 UTC 2023 - Andreas Schwab <schwab(a)suse.de>
+
+- Update calibrate values for riscv64
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ calibrate.conf.all ++++++
--- /var/tmp/diff_new_pack.YoJMeL/_old 2023-12-20 21:01:22.852555855 +0100
+++ /var/tmp/diff_new_pack.YoJMeL/_new 2023-12-20 21:01:22.852555855 +0100
@@ -368,6 +368,16 @@
tumbleweed.ppc64le:SIZEOFPAGE=64
tumbleweed.ppc64le:USER_BASE=40832
tumbleweed.ppc64le:USER_NET=5184
+tumbleweed.riscv64:INIT_CACHED=32504
+tumbleweed.riscv64:INIT_CACHED_NET=11580
+tumbleweed.riscv64:INIT_NET=5320
+tumbleweed.riscv64:KERNEL_BASE=107252
+tumbleweed.riscv64:KERNEL_INIT=23588
+tumbleweed.riscv64:PAGESIZE=4096
+tumbleweed.riscv64:PERCPU=144
+tumbleweed.riscv64:SIZEOFPAGE=64
+tumbleweed.riscv64:USER_BASE=12092
+tumbleweed.riscv64:USER_NET=1928
tumbleweed.s390x:INIT_CACHED=28560
tumbleweed.s390x:INIT_CACHED_NET=12480
tumbleweed.s390x:INIT_NET=4512
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package wtmpdb for openSUSE:Factory checked in at 2023-12-20 21:01:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wtmpdb (Old)
and /work/SRC/openSUSE:Factory/.wtmpdb.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wtmpdb"
Wed Dec 20 21:01:07 2023 rev:12 rq:1134046 version:0.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/wtmpdb/wtmpdb.changes 2023-10-27 22:27:50.726749226 +0200
+++ /work/SRC/openSUSE:Factory/.wtmpdb.new.9037/wtmpdb.changes 2023-12-20 21:01:17.524362012 +0100
@@ -1,0 +2,6 @@
+Wed Dec 13 14:01:00 UTC 2023 - Thorsten Kukuk <kukuk(a)suse.com>
+
+- Update to version 0.10.0
+ - last: support matching for username and/or tty
+
+-------------------------------------------------------------------
Old:
----
wtmpdb-0.9.3.tar.xz
New:
----
wtmpdb-0.10.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wtmpdb.spec ++++++
--- /var/tmp/diff_new_pack.95fgaU/_old 2023-12-20 21:01:18.212387043 +0100
+++ /var/tmp/diff_new_pack.95fgaU/_new 2023-12-20 21:01:18.212387043 +0100
@@ -18,12 +18,12 @@
%define lname libwtmpdb0
Name: wtmpdb
-Version: 0.9.3
+Version: 0.10.0
Release: 0
Summary: Database for recording the last logged in users and system reboots
License: BSD-2-Clause
URL: https://github.com/thkukuk/wtmpdb
-Source: https://github.com/thkukuk/wtmpdb/releases/download/v0.7.1/%{name}-%{versio…
+Source: https://github.com/thkukuk/wtmpdb/releases/download/v0.10.0/%{name}-%{versi…
BuildRequires: docbook5-xsl-stylesheets
BuildRequires: meson
BuildRequires: pkgconfig
++++++ wtmpdb-0.9.3.tar.xz -> wtmpdb-0.10.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wtmpdb-0.9.3/NEWS new/wtmpdb-0.10.0/NEWS
--- old/wtmpdb-0.9.3/NEWS 2023-10-26 15:03:36.000000000 +0200
+++ new/wtmpdb-0.10.0/NEWS 2023-12-13 14:56:33.000000000 +0100
@@ -1,3 +1,6 @@
+Version 0.10.0
+* last: support matching for username and/or tty
+
Version 0.9.3
* wtmpdb last: don't print date in the future if there is no db entry
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wtmpdb-0.9.3/man/wtmpdb.8.xml new/wtmpdb-0.10.0/man/wtmpdb.8.xml
--- old/wtmpdb-0.9.3/man/wtmpdb.8.xml 2023-10-26 15:03:36.000000000 +0200
+++ new/wtmpdb-0.10.0/man/wtmpdb.8.xml 2023-12-13 14:56:33.000000000 +0100
@@ -40,7 +40,9 @@
<variablelist>
<varlistentry>
<term><command>last</command>
- <optional><replaceable>option</replaceable>…</optional></term>
+ <optional><replaceable>option</replaceable>…</optional>
+ <optional><replaceable>username</replaceable>…</optional>
+ <optional><replaceable>tty</replaceable>…</optional></term>
<listitem>
<para>
<command>wtmpdb last</command> goes through the
@@ -48,8 +50,11 @@
database designated by the <command>-f</command> option) and
displays a list of of all users logged in and logged out. The
output can be restricted to different patterns via various
- options.
+ options. If one or more usernames and/or ttys are given
+ <command>wtmpdb last</command> will only show the entries matching
+ those arguments.
</para>
+
<para>
The login and logout times of the special user
<command>reboot</command> are the boot and shutdown times of the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wtmpdb-0.9.3/meson.build new/wtmpdb-0.10.0/meson.build
--- old/wtmpdb-0.9.3/meson.build 2023-10-26 15:03:36.000000000 +0200
+++ new/wtmpdb-0.10.0/meson.build 2023-12-13 14:56:33.000000000 +0100
@@ -9,9 +9,10 @@
'buildtype=debugoptimized',
'default_library=shared',
'b_pie=true',
+ 'b_lto=true',
'warning_level=3',],
license : ['BSD-2-Clause',],
- version : '0.9.3',
+ version : '0.10.0',
)
conf = configuration_data()
@@ -28,8 +29,6 @@
'-D_TIME_BITS=64'], language : 'c')
possible_cc_flags = [
- '-flto=auto',
- '-ffat-lto-objects',
'-fstack-protector-strong',
'-funwind-tables',
'-fasynchronous-unwind-tables',
@@ -47,11 +46,7 @@
'-Wstrict-prototypes',
'-Wundef',
]
-possible_ld_flags = [
- '-flto',
- ]
add_project_arguments(cc.get_supported_arguments(possible_cc_flags), language : 'c')
-add_project_link_arguments(cc.get_supported_arguments(possible_ld_flags), language : 'c')
fs = import('fs')
if get_option('split-usr') == 'auto'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wtmpdb-0.9.3/src/wtmpdb.c new/wtmpdb-0.10.0/src/wtmpdb.c
--- old/wtmpdb-0.9.3/src/wtmpdb.c 2023-10-26 15:03:36.000000000 +0200
+++ new/wtmpdb-0.10.0/src/wtmpdb.c 2023-12-13 14:56:33.000000000 +0100
@@ -76,6 +76,7 @@
static time_t present = 0; /* Who was present at the specified time */
static time_t since = 0; /* Who was logged in after this time? */
static time_t until = 0; /* Who was logged in until this time? */
+static char **match = NULL; /* user/tty to display only */
/* isipaddr - find out if string provided is an IP address or not
@@ -304,6 +305,20 @@
if (present && (present < (time_t)(login_t/USEC_PER_SEC)))
return 0;
+ if (match)
+ {
+ char **walk;
+
+ for (walk = match; *walk; walk++)
+ {
+ if (strcmp (user, *walk) == 0 ||
+ strcmp(tty, *walk) == 0)
+ break;
+ }
+ if (*walk == NULL)
+ return 0;
+ }
+
format_time (login_fmt, logintime, sizeof (logintime),
login_t/USEC_PER_SEC);
@@ -473,6 +488,8 @@
fputs (" -t, --until TIME Display who was logged in until TIME\n", output);
fputs (" -w, --fullnames Display full IP addresses and user and domain names\n", output);
fputs (" -x, --system Display system shutdown entries\n", output);
+ fputs (" [username...] Display only entries matching these arguments\n", output);
+ fputs (" [tty...] Display only entries matching these arguments\n", output);
fputs ("TIME must be in the format \"YYYY-MM-DD HH:MM:SS\"\n", output);
fputs ("\n", output);
@@ -649,10 +666,7 @@
}
if (argc > optind)
- {
- fprintf (stderr, "Unexpected argument: %s\n", argv[optind]);
- usage (EXIT_FAILURE);
- }
+ match = argv + optind;
if (nohostname && hostlast)
{
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package vinagre for openSUSE:Factory checked in at 2023-12-20 21:00:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vinagre (Old)
and /work/SRC/openSUSE:Factory/.vinagre.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vinagre"
Wed Dec 20 21:00:58 2023 rev:106 rq:1134011 version:3.22.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/vinagre/vinagre.changes 2021-09-29 20:18:28.982913598 +0200
+++ /work/SRC/openSUSE:Factory/.vinagre.new.9037/vinagre.changes 2023-12-20 21:01:06.363955990 +0100
@@ -1,0 +2,7 @@
+Tue Dec 19 10:53:05 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Disable RDP support for the time being: vinagre has been archived
+ upstream and does not support freerdp 3.0. If you rely on RDP
+ connections, please switch to GNOME Connections.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vinagre.spec ++++++
--- /var/tmp/diff_new_pack.eYvC16/_old 2023-12-20 21:01:07.291989752 +0100
+++ /var/tmp/diff_new_pack.eYvC16/_new 2023-12-20 21:01:07.295989898 +0100
@@ -1,7 +1,7 @@
#
# spec file for package vinagre
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2023 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,7 @@
#
-%bcond_without rdp
+%bcond_with rdp
Name: vinagre
Version: 3.22.0
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package jq for openSUSE:Factory checked in at 2023-12-20 21:00:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jq (Old)
and /work/SRC/openSUSE:Factory/.jq.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jq"
Wed Dec 20 21:00:41 2023 rev:15 rq:1133989 version:1.7.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/jq/jq.changes 2023-11-16 20:27:19.377629219 +0100
+++ /work/SRC/openSUSE:Factory/.jq.new.9037/jq.changes 2023-12-20 21:00:49.347336915 +0100
@@ -1,0 +2,39 @@
+Wed Dec 13 20:28:23 UTC 2023 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 1.7.1
+ Security
+ * Fix CVE-2023-50246 (boo#1218034)
+ + Fix heap buffer overflow in jvp_literal_number_literal.
+ * Fix CVE-2023-50268 (boo#1218038)
+ fix stack-buffer-overflow if comparing nan with payload.
+ CLI changes
+ * Make the default background color more suitable for bright
+ backgrounds.
+ * Allow passing the inline jq script after --.
+ * Fix possible uninitialised value dereference if jq_init() fails
+ Language changes
+ * Simplify paths/0 and paths/1.
+ * Reject U+001F in string literals.
+ * Remove unused nref accumulator in block_bind_library.
+ * Remove a bunch of unused variables, and useless assignments.
+ * main.c: Remove unused EXIT_STATUS_EXACT option.
+ * Actually use the number correctly casted from double to int as
+ index.
+ * src/builtin.c: remove unnecessary jv_copy-s in
+ type_error/type_error2.
+ * Remove undefined behavior caught by LLVM 10 UBSAN.
+ * Convert decnum to binary64 (double) instead of decimal64.
+ This makes jq behave like the JSON specification suggests and
+ more similar to other languages.
+ * Fix memory leaks on invalid input for ltrimstr/1 and
+ rtrimstr/1.
+ * Fix memory leak on failed get for setpath/2.
+ * Fix nan from json parsing also for nans with payload that
+ start with 'n'.
+ * Allow carriage return characters in comments.
+ Documentation changes
+ * Generate links in the man page.
+ libjq
+ * Add extern C for C++.
+
+-------------------------------------------------------------------
Old:
----
jq-1.7.tar.gz
New:
----
jq-1.7.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jq.spec ++++++
--- /var/tmp/diff_new_pack.oa2i1n/_old 2023-12-20 21:00:49.999360636 +0100
+++ /var/tmp/diff_new_pack.oa2i1n/_new 2023-12-20 21:00:50.003360781 +0100
@@ -18,7 +18,7 @@
%define jq_sover 1
Name: jq
-Version: 1.7
+Version: 1.7.1
Release: 0
Summary: A lightweight and flexible command-line JSON processor
License: CC-BY-3.0 AND MIT
++++++ jq-1.7.tar.gz -> jq-1.7.1.tar.gz ++++++
++++ 5604 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Bootloader for openSUSE:Factory checked in at 2023-12-20 21:00:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Bootloader (Old)
and /work/SRC/openSUSE:Factory/.perl-Bootloader.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Bootloader"
Wed Dec 20 21:00:33 2023 rev:212 rq:1134189 version:1.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Bootloader/perl-Bootloader.changes 2023-12-15 21:47:17.682183998 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Bootloader.new.9037/perl-Bootloader.changes 2023-12-20 21:00:39.342972950 +0100
@@ -1,0 +2,7 @@
+Wed Dec 20 11:35:25 UTC 2023 - wfeldt(a)opensuse.org
+
+- merge gh#openSUSE/perl-bootloader#160
+- fix 'pbl --version' to show correct version number
+- 1.10
+
+--------------------------------------------------------------------
Old:
----
perl-Bootloader-1.9.tar.xz
New:
----
perl-Bootloader-1.10.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Bootloader.spec ++++++
--- /var/tmp/diff_new_pack.sauhhc/_old 2023-12-20 21:00:39.982996234 +0100
+++ /var/tmp/diff_new_pack.sauhhc/_new 2023-12-20 21:00:39.986996380 +0100
@@ -25,7 +25,7 @@
%{!?_distconfdir:%global _distconfdir /etc}
Name: perl-Bootloader
-Version: 1.9
+Version: 1.10
Release: 0
Requires: coreutils
Requires: perl-base = %{perl_version}
++++++ perl-Bootloader-1.9.tar.xz -> perl-Bootloader-1.10.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-1.9/Makefile new/perl-Bootloader-1.10/Makefile
--- old/perl-Bootloader-1.9/Makefile 2023-12-14 18:41:41.000000000 +0100
+++ new/perl-Bootloader-1.10/Makefile 2023-12-20 12:35:25.000000000 +0100
@@ -42,7 +42,7 @@
@install -m 755 systemd-boot/remove-kernel $(DESTDIR)/usr/lib/bootloader/systemd-boot
@install -D -m 755 pbl.sh $(DESTDIR)$(SBINDIR)/pbl
- @perl -pi -e 's/0\.0/$(VERSION)/ if /VERSION = /' $(DESTDIR)$(SBINDIR)/pbl
+ @perl -pi -e 's/0\.0/$(VERSION)/ if /VERSION ?=/' $(DESTDIR)$(SBINDIR)/pbl
@ln -snf pbl $(DESTDIR)$(SBINDIR)/update-bootloader
@ln -rsnf $(DESTDIR)$(SBINDIR)/pbl $(DESTDIR)/usr/lib/bootloader/bootloader_entry
@install -D -m 644 boot.readme $(DESTDIR)/usr/share/doc/packages/perl-Bootloader/boot.readme
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-1.9/VERSION new/perl-Bootloader-1.10/VERSION
--- old/perl-Bootloader-1.9/VERSION 2023-12-14 18:41:41.000000000 +0100
+++ new/perl-Bootloader-1.10/VERSION 2023-12-20 12:35:25.000000000 +0100
@@ -1 +1 @@
-1.9
+1.10
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-1.9/changelog new/perl-Bootloader-1.10/changelog
--- old/perl-Bootloader-1.9/changelog 2023-12-14 18:41:41.000000000 +0100
+++ new/perl-Bootloader-1.10/changelog 2023-12-20 12:35:25.000000000 +0100
@@ -1,3 +1,7 @@
+2023-12-20: 1.10
+ - merge gh#openSUSE/perl-bootloader#160
+ - fix 'pbl --version' to show correct version number
+
2023-12-14: 1.9
- merge gh#openSUSE/perl-bootloader#159
- rewrite pbl in sh (bsc#1214361)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package zbar for openSUSE:Factory checked in at 2023-12-20 21:00:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/zbar (Old)
and /work/SRC/openSUSE:Factory/.zbar.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "zbar"
Wed Dec 20 21:00:18 2023 rev:19 rq:1134153 version:0.23.90
Changes:
--------
--- /work/SRC/openSUSE:Factory/zbar/zbar.changes 2023-06-21 22:37:15.229430406 +0200
+++ /work/SRC/openSUSE:Factory/.zbar.new.9037/zbar.changes 2023-12-20 21:00:24.950449341 +0100
@@ -1,0 +2,11 @@
+Wed Dec 13 18:36:21 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- security update:
+ * CVE-2023-40889 [bsc#1214770]
+ Fix heap based buffer overflow in qr_reader_match_centers()
+ + zbar-CVE-2023-40889.patch
+ * CVE-2023-40890 [bsc#1214771]
+ Fix stack based buffer overflow in lookup_sequence()
+ + zbar-CVE-2023-40890.patch
+
+-------------------------------------------------------------------
New:
----
zbar-CVE-2023-40889.patch
zbar-CVE-2023-40890.patch
BETA DEBUG BEGIN:
New: Fix heap based buffer overflow in qr_reader_match_centers()
+ zbar-CVE-2023-40889.patch
* CVE-2023-40890 [bsc#1214771]
New: Fix stack based buffer overflow in lookup_sequence()
+ zbar-CVE-2023-40890.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ zbar.spec ++++++
--- /var/tmp/diff_new_pack.5zlVbN/_old 2023-12-20 21:00:25.826481212 +0100
+++ /var/tmp/diff_new_pack.5zlVbN/_new 2023-12-20 21:00:25.830481358 +0100
@@ -29,6 +29,10 @@
Source98: baselibs.conf
# PATCH-FIX-UPSTREAM: fix build against python 3.11 - https://github.com/mchehab/zbar/commit/9bb0cc43f7f9e9c676e07b2e511f03bfa1c4…
Patch1: py311.patch
+# PATCH-FIX-UPSTREAM -- mvetter(a)suse.com -- bsc#1214770
+Patch2: zbar-CVE-2023-40889.patch
+# PATCH-FIX-UPSTREAM -- mvetter(a)suse.com -- bsc#1214771
+Patch3: zbar-CVE-2023-40890.patch
BuildRequires: libjpeg-devel
BuildRequires: pkgconfig >= 0.9.0
BuildRequires: xmlto
++++++ zbar-CVE-2023-40889.patch ++++++
https://salsa.debian.org/debian/zbar/-/commit/1c3ddc8d7d828d68688c7f4f2ea35…
Index: zbar-0.23.1/zbar/qrcode/qrdec.c
===================================================================
--- zbar-0.23.1.orig/zbar/qrcode/qrdec.c
+++ zbar-0.23.1/zbar/qrcode/qrdec.c
@@ -3900,8 +3900,8 @@ void qr_reader_match_centers(qr_reader *
/*TODO: We might be able to accelerate this step significantly by
considering the remaining finder centers in a more intelligent order,
based on the first finder center we just chose.*/
- for(j=i+1;!mark[i]&&j<_ncenters;j++){
- for(k=j+1;!mark[j]&&k<_ncenters;k++)if(!mark[k]){
+ for (j=i+1;i<_ncenters&&!mark[i]&&j<_ncenters;j++) {
+ for (k=j+1;j<_ncenters&&!mark[j]&&k<_ncenters;k++)if(!mark[k]) {
qr_finder_center *c[3];
qr_code_data qrdata;
int version;
++++++ zbar-CVE-2023-40890.patch ++++++
https://salsa.debian.org/debian/zbar/-/blob/master/debian/patches/0004-Add-…
Index: zbar-0.23.1/zbar/decoder/databar.c
===================================================================
--- zbar-0.23.1.orig/zbar/decoder/databar.c
+++ zbar-0.23.1/zbar/decoder/databar.c
@@ -23,6 +23,8 @@
#include <config.h>
#include <zbar.h>
+#include <stdlib.h>
+#include <stdio.h>
#ifdef DEBUG_DATABAR
# define DEBUG_LEVEL (DEBUG_DATABAR)
@@ -663,10 +665,11 @@ match_segment (zbar_decoder_t *dcode,
return(ZBAR_DATABAR);
}
-static inline unsigned
+static inline signed
lookup_sequence (databar_segment_t *seg,
int fixed,
- int seq[22])
+ int seq[22],
+ const size_t maxsize)
{
unsigned n = seg->data / 211, i;
const unsigned char *p;
@@ -676,6 +679,13 @@ lookup_sequence (databar_segment_t *seg,
dbprintf(2, " {%d,%d:", i, n);
p = exp_sequences + i;
+ if (n >= maxsize-1) {
+ // The loop below checks i<n and increments i by one within the loop
+ // when accessing seq[22]. For this to be safe, n needs to be < 21.
+ // See CVE-2023-40890.
+ return -1;
+ }
+
fixed >>= 1;
seq[0] = 0;
seq[1] = 1;
@@ -755,10 +765,15 @@ match_segment_exp (zbar_decoder_t *dcode
}
if(!i) {
- if(!lookup_sequence(seg, fixed, seq)) {
+ signed int lu = lookup_sequence(seg, fixed, seq, sizeof(seq)/sizeof(seq[0]));
+ if(!lu) {
dbprintf(2, "[nf]");
continue;
}
+ if(lu < 0) {
+ dbprintf(1, " [aborted]\n");
+ goto abort;
+ }
width = seg->width;
dbprintf(2, " A00@%d", j);
}
@@ -829,6 +844,8 @@ match_segment_exp (zbar_decoder_t *dcode
dcode->direction = (1 - 2 * (seg->side ^ seg->color)) * dir;
dcode->modifiers = MOD(ZBAR_MOD_GS1);
return(ZBAR_DATABAR_EXP);
+abort:
+ return (ZBAR_NONE);
}
#undef IDX
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mozilla-nss for openSUSE:Factory checked in at 2023-12-20 21:00:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mozilla-nss (Old)
and /work/SRC/openSUSE:Factory/.mozilla-nss.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mozilla-nss"
Wed Dec 20 21:00:15 2023 rev:210 rq:1134148 version:3.95
Changes:
--------
--- /work/SRC/openSUSE:Factory/mozilla-nss/mozilla-nss.changes 2023-10-29 19:39:30.374368879 +0100
+++ /work/SRC/openSUSE:Factory/.mozilla-nss.new.9037/mozilla-nss.changes 2023-12-20 21:00:21.058307743 +0100
@@ -1,0 +2,25 @@
+Sun Dec 17 12:38:06 UTC 2023 - Wolfgang Rosenauer <wr(a)rosenauer.org>
+
+- update to NSS 3.95
+ * bmo#1842932 - Bump builtins version number.
+ * bmo#1851044 - Remove Email trust bit from Autoridad de Certificacion
+ Firmaprofesional CIF A62634068 root cert.
+ * bmo#1855318 - Remove 4 DigiCert (Symantec/Verisign) Root Certificates
+ * bmo#1851049 - Remove 3 TrustCor Root Certificates from NSS.
+ * bmo#1850982 - Remove Camerfirma root certificates from NSS.
+ * bmo#1842935 - Remove old Autoridad de Certificacion Firmaprofesional
+ Certificate.
+ * bmo#1860670 - Add four Commscope root certificates to NSS.
+ * bmo#1850598 - Add TrustAsia Global Root CA G3 and G4 root certificates.
+ * bmo#1863605 - Include P-384 and P-521 Scalar Validation from HACL*
+ * bmo#1861728 - Include P-256 Scalar Validation from HACL*.
+ * bmo#1861265 - After the HACL 256 ECC patch, NSS incorrectly encodes
+ 256 ECC without DER wrapping at the softoken level
+ * bmo#1837987 - Add means to provide library parameters to C_Initialize
+ * bmo#1573097 - clang format
+ * bmo#1854795 - add OSXSAVE and XCR0 tests to AVX2 detection.
+ * bmo#1858241 - Typo in ssl3_AppendHandshakeNumber
+ * bmo#1858241 - Introducing input check of ssl3_AppendHandshakeNumber
+ * bmo#1573097 - Fix Invalid casts in instance.c
+
+-------------------------------------------------------------------
Old:
----
nss-3.94.tar.gz
New:
----
nss-3.95.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mozilla-nss.spec ++++++
--- /var/tmp/diff_new_pack.s127cH/_old 2023-12-20 21:00:24.090418052 +0100
+++ /var/tmp/diff_new_pack.s127cH/_new 2023-12-20 21:00:24.094418199 +0100
@@ -17,14 +17,14 @@
#
-%global nss_softokn_fips_version 3.94
+%global nss_softokn_fips_version 3.95
%define NSPR_min_version 4.35
%define nspr_ver %(rpm -q --queryformat '%%{VERSION}' mozilla-nspr)
%define nssdbdir %{_sysconfdir}/pki/nssdb
Name: mozilla-nss
-Version: 3.94
+Version: 3.95
Release: 0
-%define underscore_version 3_94
+%define underscore_version 3_95
Summary: Network Security Services
License: MPL-2.0
Group: System/Libraries
++++++ nss-3.94.tar.gz -> nss-3.95.tar.gz ++++++
/work/SRC/openSUSE:Factory/mozilla-nss/nss-3.94.tar.gz /work/SRC/openSUSE:Factory/.mozilla-nss.new.9037/nss-3.95.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python311 for openSUSE:Factory checked in at 2023-12-20 21:00:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python311 (Old)
and /work/SRC/openSUSE:Factory/.python311.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python311"
Wed Dec 20 21:00:08 2023 rev:26 rq:1134084 version:3.11.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/python311/python311.changes 2023-11-23 21:38:30.102747530 +0100
+++ /work/SRC/openSUSE:Factory/.python311.new.9037/python311.changes 2023-12-20 21:00:10.725931844 +0100
@@ -1,0 +2,8 @@
+Mon Dec 18 16:20:58 UTC 2023 - Matej Cepl <mcepl(a)cepl.eu>
+
+- Refresh CVE-2023-27043-email-parsing-errors.patch to
+ gh#python/cpython!111116, fixing bsc#1210638 (CVE-2023-27043).
+- Thus we can remove Revert-gh105127-left-tests.patch, which is
+ now useless.
+
+-------------------------------------------------------------------
Old:
----
Revert-gh105127-left-tests.patch
BETA DEBUG BEGIN:
Old: gh#python/cpython!111116, fixing bsc#1210638 (CVE-2023-27043).
- Thus we can remove Revert-gh105127-left-tests.patch, which is
now useless.
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python311.spec ++++++
--- /var/tmp/diff_new_pack.cJ8N6k/_old 2023-12-20 21:00:13.262024109 +0100
+++ /var/tmp/diff_new_pack.cJ8N6k/_new 2023-12-20 21:00:13.278024691 +0100
@@ -165,9 +165,6 @@
# Detect email address parsing errors and return empty tuple to
# indicate the parsing error (old API)
Patch40: CVE-2023-27043-email-parsing-errors.patch
-# PATCH-FIX-UPSTREAM Revert-gh105127-left-tests.patch bsc#1210638 mcepl(a)suse.com
-# Partially revert previous patch
-Patch41: Revert-gh105127-left-tests.patch
BuildRequires: autoconf-archive
BuildRequires: automake
BuildRequires: fdupes
@@ -428,7 +425,6 @@
%patch36 -p1
%patch39 -p1
%patch40 -p1
-%patch41 -p1
# drop Autoconf version requirement
sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac
++++++ CVE-2023-27043-email-parsing-errors.patch ++++++
++++ 625 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/python311/CVE-2023-27043-email-parsing-errors.patch
++++ and /work/SRC/openSUSE:Factory/.python311.new.9037/CVE-2023-27043-email-parsing-errors.patch
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2023-12-20 02:07:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Wed Dec 20 02:07:24 2023 rev:3844 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
New:
----
Kalpa.product
opensuse_kalpa.group
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.596648258 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.600648403 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__MicroOS___20231218" schemaversion="4.1">
+<image name="OBS__MicroOS___20231219" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231218</productvar>
+ <productvar name="VERSION">20231219</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231218,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231219,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231218/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231219/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
@@ -2336,7 +2336,7 @@
<repopackage name="pkgconf"/>
<repopackage name="pkgconf-m4"/>
<repopackage name="pkgconf-pkg-config"/>
- <repopackage name="plasma-branding-MicroOS"/>
+ <repopackage name="plasma-branding-Kalpa"/>
<repopackage name="plasma-browser-integration"/>
<repopackage name="plasma-browser-integration-lang"/>
<repopackage name="plasma-framework"/>
++++++ openSUSE-Addon-NonOss-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.624649276 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.628649421 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20231218" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20231219" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231218</productvar>
+ <productvar name="VERSION">20231219</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231218,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231219,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.644650003 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.648650149 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231218" schemaversion="4.1">
+<image name="OBS__openSUSE___20231219" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231218</productvar>
+ <productvar name="VERSION">20231219</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231218,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231219,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231218/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231219/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
openSUSE-dvd5-dvd-x86_64.kiwi: same change
++++++ openSUSE-ftp-ftp-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.684651458 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.684651458 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231218" schemaversion="4.1">
+<image name="OBS__openSUSE___20231219" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -20,7 +20,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231218-i586</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231219-i586</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231218</productvar>
+ <productvar name="VERSION">20231219</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231218,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231219,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231218/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231219/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.700652040 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.704652185 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231218" schemaversion="4.1">
+<image name="OBS__openSUSE___20231219" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231218-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231219-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231218</productvar>
+ <productvar name="VERSION">20231219</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231218,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231219,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231218/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231219/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ Aeon.product ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.740653495 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.740653495 +0100
@@ -6,7 +6,7 @@
<name>Aeon</name>
<releasepkgname>Aeon-release</releasepkgname>
<endoflife/>
- <version>20231218</version>
+ <version>20231219</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Aeon</productline>
++++++ Kalpa.product ++++++
<?xml version="1.0" encoding="UTF-8"?>
<productdefinition xmlns:xi="http://www.w3.org/2001/XInclude">
<products>
<product>
<vendor>openSUSE</vendor>
<name>Kalpa</name>
<releasepkgname>Kalpa-release</releasepkgname>
<endoflife/>
<version>20231219</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Kalpa</productline>
<summary>openSUSE Kalpa</summary>
<shortsummary>openSUSE Kalpa</shortsummary>
<description>openSUSE Kalpa bundles the benefits of a rolling OS and a read-only root filesystem in a polished Desktop platform. It is a modern Linux Operating System, designed for minimal maintenance and tinkering.
It inherits the benefits of openSUSE Tumbleweed while redefining the operating system into a small, efficient and opinionated desktop.
</description>
<linguas>
<language>en_US</language>
</linguas>
<urls>
<url name="releasenotes">http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-no…</url>
</urls>
<buildconfig>
<!-- This section is needed to generate the installation media -->
<producttheme>Kalpa</producttheme>
<create_flavors>true</create_flavors>
</buildconfig>
<installconfig>
<!-- All flags needed during installation -->
<defaultlang>en_US</defaultlang>
<datadir>suse</datadir>
<descriptiondir>suse/setup/descr</descriptiondir>
<distribution>openSUSE</distribution>
<default_obs_repository_name>openSUSE_Tumbleweed</default_obs_repository_name>
</installconfig>
<!-- All Flags needed in the running system -->
<runtimeconfig/>
</product>
</products>
<!-- Default conditionals, repositories and archsets get imported -->
<xi:include href="defaults-conditionals.include"/>
<xi:include href="defaults-archsets.include"/>
<xi:include href="defaults-repositories.include"/>
<mediasets>
<!-- BEWARE: do not touch the naming here without adapting ftp upload scripts ! -->
<media type="image"
flavor="appliance"
mediastyle="tumbleweed"
name="openSUSE-Kalpa-self-installer" >
<!-- Create no product media, but a flavor release subpackage -->
</media>
</mediasets>
<xi:include href="opensuse_kalpa.group"/>
</productdefinition>
++++++ MicroOS.product ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.772654659 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.772654659 +0100
@@ -6,7 +6,7 @@
<name>MicroOS</name>
<releasepkgname>MicroOS-release</releasepkgname>
<endoflife/>
- <version>20231218</version>
+ <version>20231219</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>MicroOS</productline>
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.856657713 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.860657859 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231218</version>
+ <version>20231219</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.880658586 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.884658732 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231218</version>
+ <version>20231219</version>
<release>0</release>
<productline>openSUSE</productline>
++++++ opensuse_aeon.group ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:28.920660041 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:28.924660187 +0100
@@ -11,6 +11,8 @@
<package name="Mesa-libGL1" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
<package name="Mesa-libglapi0" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
<package name="Mesa-libva" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
+ <package name="MicroOS-release" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:suse-module-tools-scriptlets -->
+ <package name="MicroOS-release-appliance" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:suse-module-tools-scriptlets -->
<package name="ModemManager" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="ModemManager-bash-completion" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="ModemManager-lang" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
@@ -484,8 +486,6 @@
<package name="iso_ent" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="issue-generator" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="jack-dbus" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
- <package name="java-11-openjdk" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:suse-module-tools-scriptlets -->
- <package name="java-11-openjdk-headless" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:suse-module-tools-scriptlets -->
<package name="java-21-openjdk" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
<package name="java-21-openjdk-headless" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
<package name="javapackages-filesystem" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
@@ -1498,8 +1498,6 @@
<package name="ntfsprogs" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="open-lldp" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="openSUSE-build-key" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
- <package name="openSUSE-release" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:suse-module-tools-scriptlets -->
- <package name="openSUSE-release-ftp" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:suse-module-tools-scriptlets -->
<package name="openal-soft-data" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
<package name="opencc-data" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:Aeon-release -->
<package name="openconnect" supportstatus="unsupported"/> <!-- reason: opensuse_aeon:patterns-aeon-base -->
++++++ opensuse_kalpa.group ++++++
++++ 2084 lines (skipped)
++++++ opensuse_microos.group ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:29.012663387 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:29.020663678 +0100
@@ -2285,7 +2285,7 @@
<package name="pkgconf" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
<package name="pkgconf-m4" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
<package name="pkgconf-pkg-config" supportstatus="unsupported"/> <!-- reason: opensuse_microos:MicroOS-release -->
- <package name="plasma-branding-MicroOS" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
+ <package name="plasma-branding-Kalpa" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
<package name="plasma-browser-integration" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
<package name="plasma-browser-integration-lang" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
<package name="plasma-framework" supportstatus="unsupported"/> <!-- reason: opensuse_microos_desktop:patterns-microos-desktop-kde -->
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.R8PSmN/_old 2023-12-20 02:07:29.076665715 +0100
+++ /var/tmp/diff_new_pack.R8PSmN/_new 2023-12-20 02:07:29.092666297 +0100
@@ -3836,7 +3836,6 @@
- fde-tpm-helper-rpm-macros
- fdo-client
- fdo-client-devel
- - featherpad
- featherpad-lang
- fec-devel
- feedbackd
@@ -8931,8 +8930,6 @@
- kdbusaddons-devel
- kddockwidgets-devel
- kddockwidgets-qt6-devel
- - kde-inotify-survey
- - kde-inotify-survey-lang
- kde-l10n-devel
- kde-oxygen-fonts
- kde-theme-dracula
@@ -12761,6 +12758,8 @@
- libjsonrpc-glib-1_0-1
- libjte-devel
- libjthread1_3_3
+ - libjulia-compat1
+ - libjulia1
- libjxl-devel
- libjxl-tools
- libjxl0_8-32bit
@@ -15538,7 +15537,7 @@
- libwireshark17
- libwiretap14
- libwlroots10
- - libwlroots11
+ - libwlroots12
- libwmf-0_2-7-32bit
- libwmf-devel
- libwmf-gnome
@@ -21424,6 +21423,7 @@
- plantuml-javadoc
- plasma-applet-weather-widget
- plasma-applet-weather-widget-lang
+ - plasma-branding-MicroOS
- plasma-framework-devel
- plasma-nm5-fortisslvpn
- plasma-nm5-iodine
@@ -24070,7 +24070,6 @@
- python310-grimoirelab-toolkit
- python310-grpc-google-iam-v1
- python310-grpcio
- - python310-grpcio-gcp
- python310-grpcio-status
- python310-grpcio-tools
- python310-gscholar
@@ -27535,7 +27534,6 @@
- python311-grimoirelab-toolkit
- python311-grpc-google-iam-v1
- python311-grpcio
- - python311-grpcio-gcp
- python311-grpcio-status
- python311-grpcio-tools
- python311-gscholar
@@ -30974,7 +30972,6 @@
- python39-grimoirelab-toolkit
- python39-grpc-google-iam-v1
- python39-grpcio
- - python39-grpcio-gcp
- python39-grpcio-status
- python39-grpcio-tools
- python39-gscholar
@@ -33659,6 +33656,7 @@
- qtermwidget-qt5-devel
- qtfm
- qtile
+ - qtilitools
- qtkeychain-qt5-devel
- qtkeychain-qt6-devel
- qtkeychain-qt6-lang
1
0
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 2023-12-20 02:07:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Wed Dec 20 02:07:21 2023 rev:2654 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
Kalpa-release.spec: same change
MicroOS-release.spec: same change
openSUSE-Addon-NonOss-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.yLzQ9H/_old 2023-12-20 02:07:24.472498270 +0100
+++ /var/tmp/diff_new_pack.yLzQ9H/_new 2023-12-20 02:07:24.480498561 +0100
@@ -1121,7 +1121,6 @@
Provides: weakremover(python3-click-man)
Provides: weakremover(python3-contextvars)
Provides: weakremover(python3-dpkt)
-Provides: weakremover(python3-grpcio-gcp)
Provides: weakremover(python3-html2text)
Provides: weakremover(python3-notify2)
Provides: weakremover(python3-oss2)
@@ -17148,6 +17147,7 @@
Provides: weakremover(libwlc0)
Provides: weakremover(libwlroots0)
Provides: weakremover(libwlroots1)
+Provides: weakremover(libwlroots11)
Provides: weakremover(libwlroots2)
Provides: weakremover(libwlroots3)
Provides: weakremover(libwlroots4)
@@ -24493,6 +24493,7 @@
Provides: weakremover(python3-gpgme)
Provides: weakremover(python3-grab)
Provides: weakremover(python3-graphene-django)
+Provides: weakremover(python3-grpcio-gcp)
Provides: weakremover(python3-gunicorn-doc)
Provides: weakremover(python3-h5py-openmpi1)
Provides: weakremover(python3-h5py-openmpi2)
@@ -24916,6 +24917,7 @@
Provides: weakremover(python310-goobook)
Provides: weakremover(python310-gpgme)
Provides: weakremover(python310-grab)
+Provides: weakremover(python310-grpcio-gcp)
Provides: weakremover(python310-h5py-openmpi1)
Provides: weakremover(python310-h5py-openmpi2)
Provides: weakremover(python310-h5py-openmpi3)
@@ -25070,6 +25072,7 @@
Provides: weakremover(python311-flask-peewee)
Provides: weakremover(python311-flup)
Provides: weakremover(python311-grab)
+Provides: weakremover(python311-grpcio-gcp)
Provides: weakremover(python311-h5py-openmpi1)
Provides: weakremover(python311-h5py-openmpi2)
Provides: weakremover(python311-h5py-openmpi3)
@@ -28917,6 +28920,7 @@
Provides: weakremover(python39-google-pasta)
Provides: weakremover(python39-gpgme)
Provides: weakremover(python39-grab)
+Provides: weakremover(python39-grpcio-gcp)
Provides: weakremover(python39-gvm-tools)
Provides: weakremover(python39-h5py-openmpi1)
Provides: weakremover(python39-h5py-openmpi2)
1
0
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 2023-12-19 23:41:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Tue Dec 19 23:41:26 2023 rev:2653 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
New:
----
Kalpa-release.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Aeon-release.spec ++++++
--- /var/tmp/diff_new_pack.OX6swF/_old 2023-12-19 23:41:30.157544999 +0100
+++ /var/tmp/diff_new_pack.OX6swF/_new 2023-12-19 23:41:30.157544999 +0100
@@ -17,7 +17,7 @@
Name: Aeon-release
-Version: 20231218
+Version: 20231219
Release: 0
Summary: openSUSE Aeon
License: GPL-2.0-or-later
@@ -172,9 +172,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = Aeon
-Provides: product(Aeon) = 20231218-0
+Provides: product(Aeon) = 20231219-0
Provides: product-label() = openSUSE%20Aeon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aaeon%3A20231218
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aaeon%3A20231219
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(Aeon)
@@ -190,7 +190,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(Aeon) = 20231218-0
+Provides: product_flavor(Aeon) = 20231219-0
Summary: openSUSE Aeon%{?betaversion: %{betaversion}}
%description appliance
@@ -255,11 +255,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>Aeon</name>
- <version>20231218</version>
+ <version>20231219</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:aeon:20231218</cpeid>
+ <cpeid>cpe:/o:opensuse:aeon:20231219</cpeid>
<productline>Aeon</productline>
<register>
<pool>
++++++ Kalpa-release.spec ++++++
#
# spec file for package openSUSE-Kalpa-release.spec
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: Kalpa-release
Version: 20231219
Release: 0
Summary: openSUSE Kalpa
License: GPL-2.0-or-later
Group: System/Fhs
Source100: weakremovers.inc
BuildRequires: skelcd-openSUSE
# Make sure we are at SLES12 SP2 level
PreReq: glibc >= 2.19
# in rare cases, 'ln' is not found...
Requires(post): coreutils
Suggests: branding-openSUSE
Suggests: distribution-logos-openSUSE-Kalpa
Suggests: openSUSE-build-key
Suggests: openSUSE-repos-Kalpa
Conflicts: distribution-release
Conflicts: kernel < 4.4
Provides: distribution-release
# Kalpa is a SUSE Linux type distribution
Provides: suse-release = %{version}-%{release}
Provides: suse-release-oss = %{version}-%{release}
# Give zypp a hint that this product must be kept up-to-date using zypper dup, not up (boo#1061384)
Provides: product-update() = dup
# With more than one product in the FTP tree, yast needs to know which products are installable
# The name is referenced by the control file as well
Provides: system-installation() = Kalpa
# bnc#826592
Provides: weakremover(kernel-default) < 3.11
Provides: weakremover(kernel-desktop) < 4.2
Provides: weakremover(kernel-ec2) < 3.11
Provides: weakremover(kernel-pae) < 3.11
Provides: weakremover(kernel-vanilla) < 3.11
Provides: weakremover(kernel-xen) < 3.11
# migrated from MANUAL_OBSOLETES/packages
Provides: weakremover(boost-license1_56_0)
Provides: weakremover(boost-license1_59_0)
Provides: weakremover(gpg-pubkey-3d25d3d9-36e12d04)
Provides: weakremover(lib++dfb-1_7-6)
Provides: weakremover(libastro-qt5-1)
Provides: weakremover(libboost_atomic1_59_0)
Provides: weakremover(libboost_atomic1_60_0)
Provides: weakremover(libboost_atomic1_62_0)
Provides: weakremover(libboost_atomic1_63_0)
Provides: weakremover(libboost_chrono1_59_0)
Provides: weakremover(libboost_chrono1_60_0)
Provides: weakremover(libboost_chrono1_62_0)
Provides: weakremover(libboost_chrono1_63_0)
Provides: weakremover(libboost_container1_59_0)
Provides: weakremover(libboost_container1_60_0)
Provides: weakremover(libboost_container1_62_0)
Provides: weakremover(libboost_container1_63_0)
Provides: weakremover(libboost_context1_59_0)
Provides: weakremover(libboost_context1_60_0)
Provides: weakremover(libboost_context1_62_0)
Provides: weakremover(libboost_context1_63_0)
Provides: weakremover(libboost_coroutine1_59_0)
Provides: weakremover(libboost_coroutine1_60_0)
Provides: weakremover(libboost_coroutine1_62_0)
Provides: weakremover(libboost_coroutine1_63_0)
Provides: weakremover(libboost_date_time1_59_0)
Provides: weakremover(libboost_date_time1_60_0)
Provides: weakremover(libboost_date_time1_62_0)
Provides: weakremover(libboost_date_time1_63_0)
Provides: weakremover(libboost_filesystem1_59_0)
Provides: weakremover(libboost_filesystem1_60_0)
Provides: weakremover(libboost_filesystem1_62_0)
Provides: weakremover(libboost_filesystem1_63_0)
Provides: weakremover(libboost_graph1_59_0)
Provides: weakremover(libboost_graph1_60_0)
Provides: weakremover(libboost_graph1_62_0)
Provides: weakremover(libboost_graph1_63_0)
Provides: weakremover(libboost_iostreams1_59_0)
Provides: weakremover(libboost_locale1_59_0)
Provides: weakremover(libboost_log1_59_0)
Provides: weakremover(libboost_log1_60_0)
Provides: weakremover(libboost_log1_62_0)
Provides: weakremover(libboost_log1_63_0)
Provides: weakremover(libboost_math1_59_0)
Provides: weakremover(libboost_program_options1_59_0)
Provides: weakremover(libboost_python1_59_0)
Provides: weakremover(libboost_random1_59_0)
Provides: weakremover(libboost_regex1_59_0)
Provides: weakremover(libboost_regex1_60_0)
Provides: weakremover(libboost_regex1_62_0)
Provides: weakremover(libboost_regex1_63_0)
Provides: weakremover(libboost_serialization1_59_0)
Provides: weakremover(libboost_signals1_59_0)
Provides: weakremover(libboost_system1_56_0)
Provides: weakremover(libboost_system1_59_0)
Provides: weakremover(libboost_test1_59_0)
Provides: weakremover(libboost_thread1_56_0)
Provides: weakremover(libboost_thread1_59_0)
Provides: weakremover(libboost_timer1_59_0)
Provides: weakremover(libboost_wave1_59_0)
Provides: weakremover(libcamel-1_2-54)
Provides: weakremover(libdialog12)
Provides: weakremover(libdirectfb-1_7-6)
Provides: weakremover(libdns146)
Provides: weakremover(libdns160)
Provides: weakremover(libdns161)
Provides: weakremover(libgdict-1_0-9)
Provides: weakremover(libgit2-23)
Provides: weakremover(libgpaste4)
Provides: weakremover(libhdf5-11)
Provides: weakremover(libhdf5_hl11)
Provides: weakremover(libicu54_1)
Provides: weakremover(libicu54_1-ledata)
Provides: weakremover(libicu55_1)
Provides: weakremover(libicu55_1-ledata)
Provides: weakremover(libicu56_1)
Provides: weakremover(libicu56_1-ledata)
Provides: weakremover(libimobiledevice5)
Provides: weakremover(libisc142)
Provides: weakremover(libisc148)
Provides: weakremover(libisl13)
Provides: weakremover(libixion-0_10-0)
Provides: weakremover(liblmdb-0_9_16)
Provides: weakremover(libmicrohttpd11)
Provides: weakremover(libminiupnpc15)
Provides: weakremover(libnis1)
Provides: weakremover(libntfs-3g86)
Provides: weakremover(liborcus-0_10-0)
Provides: weakremover(libpoppler47)
Provides: weakremover(libpoppler48)
Provides: weakremover(libpoppler49)
Provides: weakremover(libpoppler50)
Provides: weakremover(libpoppler51)
Provides: weakremover(libpoppler52)
Provides: weakremover(libpoppler53)
Provides: weakremover(libpoppler54)
Provides: weakremover(libpoppler55)
Provides: weakremover(libpoppler56)
Provides: weakremover(libpoppler57)
Provides: weakremover(libpoppler58)
Provides: weakremover(libpoppler59)
Provides: weakremover(libpoppler61)
Provides: weakremover(libpoppler62)
Provides: weakremover(libpoppler63)
Provides: weakremover(libpoppler64)
Provides: weakremover(libpoppler65)
Provides: weakremover(libprocps4)
Provides: weakremover(libprocps5)
Provides: weakremover(libpsl0)
Provides: weakremover(libsgutils2-1_40-2)
Provides: weakremover(libsgutils2-1_41-2)
Provides: weakremover(libvpx2)
Provides: weakremover(libxtables11)
Provides: weakremover(libzip4)
Provides: weakremover(mt_st)
Provides: weakremover(openssl-debuginfo)
# this package should only be available for the "basearchs" of a product
ExclusiveArch: %ix86 x86_64 ppc64le s390x aarch64 %arm
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = Kalpa
Provides: product(Kalpa) = 20231219-0
Provides: product-label() = openSUSE%20Kalpa
Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Akalpa%3A20231219
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(Kalpa)
%description
openSUSE Kalpa bundles the benefits of a rolling OS and a read-only root filesystem in a polished Desktop platform. It is a modern Linux Operating System, designed for minimal maintenance and tinkering.
It inherits the benefits of openSUSE Tumbleweed while redefining the operating system into a small, efficient and opinionated desktop.
%package -n Kalpa-release-appliance
License: BSD-3-Clause
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
Provides: product_flavor(Kalpa) = 20231219-0
Summary: openSUSE Kalpa%{?betaversion: %{betaversion}}
%description appliance
openSUSE Kalpa bundles the benefits of a rolling OS and a read-only root filesystem in a polished Desktop platform. It is a modern Linux Operating System, designed for minimal maintenance and tinkering.
It inherits the benefits of openSUSE Tumbleweed while redefining the operating system into a small, efficient and opinionated desktop.
%files appliance
%defattr(-,root,root)
%doc %{_defaultdocdir}/Kalpa-release-appliance
%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} %{buildroot}%{_prefix}/lib/issue.d %{buildroot}/run
echo -e "\nWelcome to openSUSE Kalpa (%{_target_cpu}) - Kernel \\\r (\\\l).\n" > %{buildroot}%{_prefix}/lib/issue.d/10-OS
echo -e "\n" > %{buildroot}%{_prefix}/lib/issue.d/90-OS
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
cat > %{buildroot}%{_prefix}/lib/os-release <<EOF
NAME="openSUSE Kalpa"
# VERSION="%{version}%{?betaversion: %{betaversion}}"
ID="opensuse-kalpa"
ID_LIKE="suse opensuse opensuse-tumbleweed opensuse-microos"
VERSION_ID="$VERSION_ID"
PRETTY_NAME="openSUSE Kalpa"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:kalpa:%{version}"
BUG_REPORT_URL="https://bugzilla.opensuse.org"
SUPPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.kalpadesktop.org/"
DOCUMENTATION_URL="https://en.opensuse.org/Portal:Kalpa"
LOGO="distributor-logo-Kalpa"
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/Kalpa.prod << EOF
<?xml version="1.0" encoding="UTF-8"?>
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>Kalpa</name>
<version>20231219</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
<cpeid>cpe:/o:opensuse:kalpa:20231219</cpeid>
<productline>Kalpa</productline>
<register>
<pool>
</pool>
<updates>
</updates>
</register>
<repositories>
</repositories>
<summary>openSUSE Kalpa</summary>
<shortsummary>openSUSE Kalpa</shortsummary>
<description>openSUSE Kalpa bundles the benefits of a rolling OS and a read-only root filesystem in a polished Desktop platform. It is a modern Linux Operating System, designed for minimal maintenance and tinkering.
It inherits the benefits of openSUSE Tumbleweed while redefining the operating system into a small, efficient and opinionated desktop.</description>
<linguas>
<language>en_US</language>
</linguas>
<urls>
<url name="releasenotes">http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-no…</url>
</urls>
<buildconfig>
<producttheme>Kalpa</producttheme>
<create_flavors>true</create_flavors>
</buildconfig>
<installconfig>
<defaultlang>en_US</defaultlang>
<datadir>suse</datadir>
<descriptiondir>suse/setup/descr</descriptiondir>
<default_obs_repository_name>openSUSE_Tumbleweed</default_obs_repository_name>
<default_obs_download_url>%{_download_url}</default_obs_download_url>
<releasepackage name="%{name}" flag="EQ" version="%{version}" release="%{release}"/>
<distribution>openSUSE</distribution>
</installconfig>
<runtimeconfig/>
</product>
EOF
mkdir -p %{buildroot}%{_defaultdocdir}/Kalpa-release-appliance
cat >%{buildroot}%{_defaultdocdir}/Kalpa-release-appliance/README << EOF
This package only exists for providing the product flavor 'appliance'.
EOF
%post
%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 %{_prefix}/lib/issue.d
%{_prefix}/lib/issue.d/*-OS
%changelog
++++++ MicroOS-release.spec ++++++
--- /var/tmp/diff_new_pack.OX6swF/_old 2023-12-19 23:41:30.193546312 +0100
+++ /var/tmp/diff_new_pack.OX6swF/_new 2023-12-19 23:41:30.197546457 +0100
@@ -17,7 +17,7 @@
Name: MicroOS-release
-Version: 20231218
+Version: 20231219
Release: 0
Summary: openSUSE MicroOS
License: GPL-2.0-or-later
@@ -177,9 +177,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = MicroOS
-Provides: product(MicroOS) = 20231218-0
+Provides: product(MicroOS) = 20231219-0
Provides: product-label() = openSUSE%20MicroOS
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20231218
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20231219
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)
@@ -195,7 +195,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(MicroOS) = 20231218-0
+Provides: product_flavor(MicroOS) = 20231219-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description dvd
@@ -211,7 +211,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(MicroOS) = 20231218-0
+Provides: product_flavor(MicroOS) = 20231219-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description appliance
@@ -276,11 +276,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>MicroOS</name>
- <version>20231218</version>
+ <version>20231219</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:microos:20231218</cpeid>
+ <cpeid>cpe:/o:opensuse:microos:20231219</cpeid>
<productline>MicroOS</productline>
<register>
<pool>
++++++ openSUSE-Addon-NonOss-release.spec ++++++
--- /var/tmp/diff_new_pack.OX6swF/_old 2023-12-19 23:41:30.221547332 +0100
+++ /var/tmp/diff_new_pack.OX6swF/_new 2023-12-19 23:41:30.225547478 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package openSUSE-Addon-NonOss-release (Version 20231218)
+# spec file for package openSUSE-Addon-NonOss-release (Version 20231219)
#
# Copyright (c) 2023 openSUSE.
#
@@ -16,7 +16,7 @@
Name: openSUSE-Addon-NonOss-release
%define product openSUSE-Addon-NonOss
Summary: openSUSE NonOSS Addon%{?betaversion: %{betaversion}}
-Version: 20231218
+Version: 20231219
#!BcntSyncTag: openSUSE-Addon-NonOss
Release: 0
License: BSD-3-Clause
@@ -25,9 +25,9 @@
Provides: %name-%version
Provides: product() = openSUSE%2DAddon%2DNonOss
-Provides: product(openSUSE-Addon-NonOss) = 20231218-0
+Provides: product(openSUSE-Addon-NonOss) = 20231219-0
Provides: product-label() = non%20oss%20addon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20231218
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20231219
AutoReqProv: on
@@ -50,10 +50,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231218</version>
+ <version>20231219</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20231218</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20231219</cpeid>
<register>
<pool>
</pool>
++++++ openSUSE-release.spec ++++++
--- /var/tmp/diff_new_pack.OX6swF/_old 2023-12-19 23:41:30.253548499 +0100
+++ /var/tmp/diff_new_pack.OX6swF/_new 2023-12-19 23:41:30.253548499 +0100
@@ -20,7 +20,7 @@
#define betaversion %{nil}
%define codename Tumbleweed
Name: openSUSE-release
-Version: 20231218
+Version: 20231219
Release: 0
# 0 is the product release, not the build release of this package
Summary: openSUSE Tumbleweed
@@ -184,7 +184,7 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = openSUSE
-Provides: product(openSUSE) = 20231218-0
+Provides: product(openSUSE) = 20231219-0
%ifarch x86_64
Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64
%endif
@@ -198,7 +198,7 @@
Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64
%endif
Provides: product-label() = openSUSE
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20231218
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20231219
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)
@@ -212,7 +212,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(ftp)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description ftp
@@ -227,7 +227,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(mini)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description mini
@@ -242,7 +242,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description dvd
@@ -257,7 +257,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-kde)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-kde
@@ -272,7 +272,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-x11)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-x11
@@ -287,7 +287,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-gnome)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-gnome
@@ -302,7 +302,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-xfce)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-xfce
@@ -317,7 +317,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-kde)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-kde
@@ -332,7 +332,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-gnome)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-gnome
@@ -347,7 +347,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-x11)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-x11
@@ -362,7 +362,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance
@@ -377,7 +377,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-docker)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-docker
@@ -392,7 +392,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-kvm)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-kvm
@@ -407,7 +407,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vmware)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vmware
@@ -422,7 +422,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-openstack)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-openstack
@@ -437,7 +437,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-hyperv)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-hyperv
@@ -452,7 +452,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vagrant)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vagrant
@@ -467,7 +467,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-wsl)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-wsl
@@ -482,7 +482,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-custom)
-Provides: product_flavor(openSUSE) = 20231218-0
+Provides: product_flavor(openSUSE) = 20231219-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-custom
@@ -562,10 +562,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231218</version>
+ <version>20231219</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse:20231218</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse:20231219</cpeid>
<productline>openSUSE</productline>
<register>
<target>openSUSE-Tumbleweed-x86_64</target>
++++++ _multibuild ++++++
--- /var/tmp/diff_new_pack.OX6swF/_old 2023-12-19 23:41:30.309550540 +0100
+++ /var/tmp/diff_new_pack.OX6swF/_new 2023-12-19 23:41:30.313550686 +0100
@@ -1,5 +1,6 @@
<multibuild>
<package>Aeon-release</package>
+ <package>Kalpa-release</package>
<package>MicroOS-release</package>
<package>openSUSE-Addon-NonOss-release</package>
<package>openSUSE-release</package>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package fd for openSUSE:Factory checked in at 2023-12-19 23:16:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fd (Old)
and /work/SRC/openSUSE:Factory/.fd.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fd"
Tue Dec 19 23:16:57 2023 rev:20 rq:1134055 version:9.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/fd/fd.changes 2023-10-22 21:02:45.855263356 +0200
+++ /work/SRC/openSUSE:Factory/.fd.new.9037/fd.changes 2023-12-19 23:17:18.508758484 +0100
@@ -0,0 +1,21 @@
+-------------------------------------------------------------------
+Tue Dec 19 11:21:41 UTC 2023 - mvetter(a)suse.com
+
+- Update to version 9.0.0:
+ Performance:
+ * Performance has been significantly improved, both due to optimizations
+ in the underlying ignore crate (#1429), and in fd itself (#1422, #1408, #13620).
+ Benchmarks results show gains of 6-8x for full traversals of smaller directories
+ (100k files) and up to 13x for larger directories (1M files).
+ * The default number of threads is now constrained to be at most 64. This should
+ improve startup time on systems with many CPU cores. (#1203, #1410, #1412, #1431)
+ * New flushing behavior when writing output to stdout, providing better performance
+ for TTY and non-TTY use cases, see #1452 and #1313.
+ Features:
+ * Support character and block device file types, see #1213 and #1336
+ * Breaking: .git/ is now ignored by default when using --hidden / -H, use --no-ignore
+ / -I or --no-ignore-vcs to override, see #1387 and #1396
+ Bugfixes:
+ * Fix NO_COLOR support, see #1421
+ Other:
+ * Fixed documentation typos, see #1409
Old:
----
fd-8.7.1.obscpio
fd-8.7.1.tar.xz
New:
----
fd-9.0.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fd.spec ++++++
--- /var/tmp/diff_new_pack.WHWuzQ/_old 2023-12-19 23:17:19.452792862 +0100
+++ /var/tmp/diff_new_pack.WHWuzQ/_new 2023-12-19 23:17:19.452792862 +0100
@@ -17,7 +17,7 @@
Name: fd
-Version: 8.7.1
+Version: 9.0.0
Release: 0
Summary: An alternative to the "find" utility
License: Apache-2.0 AND MIT
@@ -140,7 +140,7 @@
%prep
%autosetup -a1
-mkdir .cargo
+mkdir -p .cargo
cp %{SOURCE2} .cargo/config
%build
++++++ _service ++++++
--- /var/tmp/diff_new_pack.WHWuzQ/_old 2023-12-19 23:17:19.500794609 +0100
+++ /var/tmp/diff_new_pack.WHWuzQ/_new 2023-12-19 23:17:19.508794900 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/sharkdp/fd.git</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="scm">git</param>
- <param name="revision">v8.7.1</param>
+ <param name="revision">v9.0.0</param>
<param name="match-tag">*</param>
<param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
<param name="versionrewrite-replacement">\1</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.WHWuzQ/_old 2023-12-19 23:17:19.528795629 +0100
+++ /var/tmp/diff_new_pack.WHWuzQ/_new 2023-12-19 23:17:19.536795920 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/sharkdp/fd.git</param>
- <param name="changesrevision">6b5fe1c6344e9e2dc979ab3ce797e755c63a5159</param></service></servicedata>
+ <param name="changesrevision">d9c4e6239fc1807bce1bb6aca4426f3880230a84</param></service></servicedata>
(No newline at EOF)
++++++ fd-8.7.1.tar.xz -> fd-9.0.0.tar.xz ++++++
++++ 2412 lines of diff (skipped)
++++++ fd.obsinfo ++++++
--- /var/tmp/diff_new_pack.WHWuzQ/_old 2023-12-19 23:17:19.664800581 +0100
+++ /var/tmp/diff_new_pack.WHWuzQ/_new 2023-12-19 23:17:19.672800873 +0100
@@ -1,5 +1,5 @@
name: fd
-version: 8.7.1
-mtime: 1697860658
-commit: 6b5fe1c6344e9e2dc979ab3ce797e755c63a5159
+version: 9.0.0
+mtime: 1702981739
+commit: d9c4e6239fc1807bce1bb6aca4426f3880230a84
++++++ vendor.tar.xz ++++++
/work/SRC/openSUSE:Factory/fd/vendor.tar.xz /work/SRC/openSUSE:Factory/.fd.new.9037/vendor.tar.xz differ: char 8, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package os-autoinst for openSUSE:Factory checked in at 2023-12-19 23:16:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/os-autoinst (Old)
and /work/SRC/openSUSE:Factory/.os-autoinst.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "os-autoinst"
Tue Dec 19 23:16:51 2023 rev:407 rq:1134041 version:4.6.1702845126.bd10c5a
Changes:
--------
--- /work/SRC/openSUSE:Factory/os-autoinst/os-autoinst.changes 2023-12-17 21:35:33.844646022 +0100
+++ /work/SRC/openSUSE:Factory/.os-autoinst.new.9037/os-autoinst.changes 2023-12-19 23:17:16.596688856 +0100
@@ -1,0 +2,11 @@
+Tue Dec 19 13:35:36 UTC 2023 - okurz(a)suse.com
+
+- Update to version 4.6.1702845126.bd10c5a:
+ * Make qemu-img compress file using multiple threads
+ * Improve zone handling in setup-multi-machine
+ * Improve `sudo`-usage in `t/20-openqa-isotovideo-utils.t`
+ * Consider code as generally uncoverable when testing relies on `sudo`
+ * Fix CI failures due to `sudo` usage
+ * Unify perl linting rules
+
+-------------------------------------------------------------------
Old:
----
os-autoinst-4.6.1702650922.5d50a17.obscpio
New:
----
os-autoinst-4.6.1702845126.bd10c5a.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ os-autoinst-test.spec ++++++
--- /var/tmp/diff_new_pack.tjCGUb/_old 2023-12-19 23:17:17.432719300 +0100
+++ /var/tmp/diff_new_pack.tjCGUb/_new 2023-12-19 23:17:17.436719446 +0100
@@ -19,7 +19,7 @@
%define name_ext -test
%define short_name os-autoinst
Name: %{short_name}%{?name_ext}
-Version: 4.6.1702650922.5d50a17
+Version: 4.6.1702845126.bd10c5a
Release: 0
Summary: test package for os-autoinst
License: GPL-2.0-or-later
++++++ os-autoinst.spec ++++++
--- /var/tmp/diff_new_pack.tjCGUb/_old 2023-12-19 23:17:17.468720611 +0100
+++ /var/tmp/diff_new_pack.tjCGUb/_new 2023-12-19 23:17:17.468720611 +0100
@@ -17,7 +17,7 @@
Name: os-autoinst
-Version: 4.6.1702650922.5d50a17
+Version: 4.6.1702845126.bd10c5a
Release: 0
Summary: OS-level test automation
License: GPL-2.0-or-later
++++++ os-autoinst-4.6.1702650922.5d50a17.obscpio -> os-autoinst-4.6.1702845126.bd10c5a.obscpio ++++++
/work/SRC/openSUSE:Factory/os-autoinst/os-autoinst-4.6.1702650922.5d50a17.obscpio /work/SRC/openSUSE:Factory/.os-autoinst.new.9037/os-autoinst-4.6.1702845126.bd10c5a.obscpio differ: char 50, line 1
++++++ os-autoinst.obsinfo ++++++
--- /var/tmp/diff_new_pack.tjCGUb/_old 2023-12-19 23:17:17.556723815 +0100
+++ /var/tmp/diff_new_pack.tjCGUb/_new 2023-12-19 23:17:17.560723961 +0100
@@ -1,5 +1,5 @@
name: os-autoinst
-version: 4.6.1702650922.5d50a17
-mtime: 1702650922
-commit: 5d50a17e30ebc35b55df6e66dda3abf0a540034f
+version: 4.6.1702845126.bd10c5a
+mtime: 1702845126
+commit: bd10c5a79e11025bfe84f417a97b0dd3790d964f
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package haproxy for openSUSE:Factory checked in at 2023-12-19 23:16:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/haproxy (Old)
and /work/SRC/openSUSE:Factory/.haproxy.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "haproxy"
Tue Dec 19 23:16:49 2023 rev:138 rq:1134037 version:2.9.0+git0.fddb8c13b
Changes:
--------
--- /work/SRC/openSUSE:Factory/haproxy/haproxy.changes 2023-11-24 23:35:42.529463800 +0100
+++ /work/SRC/openSUSE:Factory/.haproxy.new.9037/haproxy.changes 2023-12-19 23:17:13.316569409 +0100
@@ -1,0 +2,58 @@
+Mon Dec 11 09:20:20 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- Update to version 2.9.0+git0.fddb8c13b:
+ new major branch:
+ https://www.haproxy.com/blog/announcing-haproxy-2-9
+ https://www.mail-archive.com/haproxy@formilux.org/msg44400.html
+
+-------------------------------------------------------------------
+Thu Dec 07 14:28:36 UTC 2023 - mrueckert(a)suse.de
+
+- Update to version 2.8.5+git0.aaba8d090:
+ * [RELEASE] Released version 2.8.5
+ * BUG/MEDIUM: proxy: always initialize the default settings after init
+ * BUG/MINOR: lua: Wrong OCSP CID after modifying an SSL certficate (LUA)
+ * BUG/MINOR: ssl: Wrong OCSP CID after modifying an SSL certficate
+ * MINOR: ssl/cli: Add ha_(warning|alert) msgs to CLI ckch callback
+ * BUG/MINOR: ssl: Double free of OCSP Certificate ID
+ * BUG/MINOR: quic: Packet number spaces too lately initialized
+ * BUG/MINOR: quic: Missing QUIC connection path member initialization
+ * BUG/MINOR: quic: Possible leak of TX packets under heavy load
+ * BUG/MEDIUM: quic: Possible crash during retransmissions and heavy load
+ * BUG/MINOR: cache: Remove incomplete entries from the cache when stream is closed
+ * BUG/MEDIUM: peers: fix partial message decoding
+ * DOC: Clarify the differences between field() and word()
+ * BUG/MINOR: sample: Make the `word` converter compatible with `-m found`
+ * REGTESTS: sample: Test the behavior of consecutive delimiters for the field converter
+ * DOC: config: fix monitor-fail typo
+ * DOC: config: add matrix entry for "max-session-srv-conns"
+ * DOC: config: specify supported sections for "max-session-srv-conns"
+ * BUG/MINOR: cfgparse-listen: fix warning being reported as an alert
+ * BUG/MINOR: config: Stopped parsing upon unmatched environment variables
+ * BUG/MINOR: quic_tp: fix preferred_address decoding
+ * DOC: config: fix missing characters in set-spoe-group action
+ * BUG/MINOR: h3: always reject PUSH_PROMISE
+ * BUG/MINOR: h3: fix TRAILERS encoding
+ * BUG/MEDIUM: master/cli: Properly pin the master CLI on thread 1 / group 1
+ * BUG/MINOR: compression: possible NULL dereferences in comp_prepare_compress_request()
+ * BUG/MINOR: quic: fix CONNECTION_CLOSE_APP encoding
+ * DOC: lua: fix Proxy.get_mode() output
+ * DOC: lua: add sticktable class reference from Proxy.stktable
+ * REGTESTS: connection: disable http_reuse_be_transparent.vtc if !TPROXY
+ * DOC: config: fix timeout check inheritance restrictions
+ * DOC: 51d: updated 51Degrees repo URL for v3.2.10
+ * BUG/MINOR: server: do not leak default-server in defaults sections
+ * BUG/MINOR: quic: Possible RX packet memory leak under heavy load
+ * BUG/MEDIUM: quic: Possible crash for connections to be killed
+ * BUG/MINOR: sock: mark abns sockets as non-suspendable and always unbind them
+ * BUG/MINOR: startup: set GTUNE_SOCKET_TRANSFER correctly
+ * REGTESTS: http: add a test to validate chunked responses delivery
+ * BUG/MINOR: proxy/stktable: missing frees on proxy cleanup
+ * MINOR: stktable: add stktable_deinit function
+ * BUG/MINOR: stream/cli: report correct stream age in "show sess"
+ * BUG/MEDIUM: mux-fcgi: fail earlier on malloc in takeover()
+ * BUG/MEDIUM: mux-h1: fail earlier on malloc in takeover()
+ * BUG/MEDIUM: mux-h2: fail earlier on malloc in takeover()
+ * BUG/MAJOR: quic: complete thread migration before tcp-rules
+
+-------------------------------------------------------------------
Old:
----
haproxy-2.8.4+git0.a4ebf9d3b.tar.gz
New:
----
haproxy-2.9.0+git0.fddb8c13b.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ haproxy.spec ++++++
--- /var/tmp/diff_new_pack.SiDjyG/_old 2023-12-19 23:17:14.748621558 +0100
+++ /var/tmp/diff_new_pack.SiDjyG/_new 2023-12-19 23:17:14.752621704 +0100
@@ -51,7 +51,7 @@
%endif
Name: haproxy
-Version: 2.8.4+git0.a4ebf9d3b
+Version: 2.9.0+git0.fddb8c13b
Release: 0
#
#
++++++ _service ++++++
--- /var/tmp/diff_new_pack.SiDjyG/_old 2023-12-19 23:17:14.780622723 +0100
+++ /var/tmp/diff_new_pack.SiDjyG/_new 2023-12-19 23:17:14.784622869 +0100
@@ -1,12 +1,12 @@
<services>
<service name="tar_scm" mode="manual">
- <param name="url">http://git.haproxy.org/git/haproxy-2.8.git</param>
+ <param name="url">https://git.haproxy.org/git/haproxy-2.9.git</param>
<param name="scm">git</param>
<param name="filename">haproxy</param>
<param name="versionformat">@PARENT_TAG@+git@TAG_OFFSET@.%h</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="versionrewrite-replacement">\1</param>
- <param name="revision">v2.8.4</param>
+ <param name="revision">v2.9.0</param>
<param name="changesgenerate">enable</param>
</service>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.SiDjyG/_old 2023-12-19 23:17:14.804623597 +0100
+++ /var/tmp/diff_new_pack.SiDjyG/_new 2023-12-19 23:17:14.808623743 +0100
@@ -1,8 +1,7 @@
<servicedata>
<service name="tar_scm">
- <param name="url">http://git.haproxy.org/git/haproxy-2.8.git</param>
- <param name="changesrevision">a4ebf9d3ba576815a4c226679242d4f592f7eb4d</param>
+ <param name="url">https://git.haproxy.org/git/haproxy-2.9.git</param>
+ <param name="changesrevision">fddb8c13b6811b3b34eba0ad58d1f5fd5a3c7f60</param>
</service>
</servicedata>
-(No newline at EOF)
++++++ haproxy-2.8.4+git0.a4ebf9d3b.tar.gz -> haproxy-2.9.0+git0.fddb8c13b.tar.gz ++++++
++++ 68610 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package yubico-piv-tool for openSUSE:Factory checked in at 2023-12-19 23:16:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yubico-piv-tool (Old)
and /work/SRC/openSUSE:Factory/.yubico-piv-tool.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yubico-piv-tool"
Tue Dec 19 23:16:47 2023 rev:18 rq:1134036 version:2.4.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/yubico-piv-tool/yubico-piv-tool.changes 2023-03-04 22:44:18.072065197 +0100
+++ /work/SRC/openSUSE:Factory/.yubico-piv-tool.new.9037/yubico-piv-tool.changes 2023-12-19 23:17:11.676509686 +0100
@@ -1,0 +2,13 @@
+Sun Dec 17 15:01:35 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.4.2:
+ * ykpiv: Fix potential type casting bug.
+ * ykpiv: ykcs11: Fix building on certain architectures.
+ * ykpiv: cmd: Add support for compressing certificate upon
+ import
+ * ykcs11: Increase maximum number of slots to handle
+ overflow
+ * ykcs11: Add support for CKA_COPYABLE and CKA_DESTROYABLE
+ attributes
+
+-------------------------------------------------------------------
Old:
----
yubico-piv-tool-2.3.1.tar.gz
yubico-piv-tool-2.3.1.tar.gz.sig
New:
----
yubico-piv-tool-2.4.2.tar.gz
yubico-piv-tool-2.4.2.tar.gz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yubico-piv-tool.spec ++++++
--- /var/tmp/diff_new_pack.2QuN9A/_old 2023-12-19 23:17:12.364534741 +0100
+++ /var/tmp/diff_new_pack.2QuN9A/_new 2023-12-19 23:17:12.364534741 +0100
@@ -18,7 +18,7 @@
%define sover 2
Name: yubico-piv-tool
-Version: 2.3.1
+Version: 2.4.2
Release: 0
Summary: Yubico YubiKey NEO CCID Manager
License: BSD-2-Clause
++++++ yubico-piv-tool-2.3.1.tar.gz -> yubico-piv-tool-2.4.2.tar.gz ++++++
++++ 2456 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openQA for openSUSE:Factory checked in at 2023-12-19 23:16:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openQA (Old)
and /work/SRC/openSUSE:Factory/.openQA.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openQA"
Tue Dec 19 23:16:45 2023 rev:531 rq:1134038 version:4.6.1702976108.a4cd34a
Changes:
--------
openQA-devel-test.changes: same change
openQA-test.changes: same change
openQA-worker-test.changes: same change
--- /work/SRC/openSUSE:Factory/openQA/openQA.changes 2023-12-17 21:35:32.108582944 +0100
+++ /work/SRC/openSUSE:Factory/.openQA.new.9037/openQA.changes 2023-12-19 23:17:09.172418499 +0100
@@ -1,0 +2,6 @@
+Tue Dec 19 13:11:37 UTC 2023 - okurz(a)suse.com
+
+- Update to version 4.6.1702976108.a4cd34a:
+ * Document further ovs commands
+
+-------------------------------------------------------------------
Old:
----
openQA-4.6.1702649526.dcd6122.obscpio
New:
----
openQA-4.6.1702976108.a4cd34a.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openQA-client-test.spec ++++++
--- /var/tmp/diff_new_pack.HR4enP/_old 2023-12-19 23:17:10.092452002 +0100
+++ /var/tmp/diff_new_pack.HR4enP/_new 2023-12-19 23:17:10.092452002 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-client
Name: %{short_name}-test
-Version: 4.6.1702649526.dcd6122
+Version: 4.6.1702976108.a4cd34a
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA-devel-test.spec ++++++
--- /var/tmp/diff_new_pack.HR4enP/_old 2023-12-19 23:17:10.116452876 +0100
+++ /var/tmp/diff_new_pack.HR4enP/_new 2023-12-19 23:17:10.116452876 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-devel
Name: %{short_name}-test
-Version: 4.6.1702649526.dcd6122
+Version: 4.6.1702976108.a4cd34a
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA-test.spec ++++++
--- /var/tmp/diff_new_pack.HR4enP/_old 2023-12-19 23:17:10.140453751 +0100
+++ /var/tmp/diff_new_pack.HR4enP/_new 2023-12-19 23:17:10.144453896 +0100
@@ -18,7 +18,7 @@
%define short_name openQA
Name: %{short_name}-test
-Version: 4.6.1702649526.dcd6122
+Version: 4.6.1702976108.a4cd34a
Release: 0
Summary: Test package for openQA
License: GPL-2.0-or-later
++++++ openQA-worker-test.spec ++++++
--- /var/tmp/diff_new_pack.HR4enP/_old 2023-12-19 23:17:10.168454770 +0100
+++ /var/tmp/diff_new_pack.HR4enP/_new 2023-12-19 23:17:10.168454770 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-worker
Name: %{short_name}-test
-Version: 4.6.1702649526.dcd6122
+Version: 4.6.1702976108.a4cd34a
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA.spec ++++++
--- /var/tmp/diff_new_pack.HR4enP/_old 2023-12-19 23:17:10.204456081 +0100
+++ /var/tmp/diff_new_pack.HR4enP/_new 2023-12-19 23:17:10.204456081 +0100
@@ -78,7 +78,7 @@
%define devel_requires %devel_no_selenium_requires chromedriver
Name: openQA
-Version: 4.6.1702649526.dcd6122
+Version: 4.6.1702976108.a4cd34a
Release: 0
Summary: The openQA web-frontend, scheduler and tools
License: GPL-2.0-or-later
++++++ openQA-4.6.1702649526.dcd6122.obscpio -> openQA-4.6.1702976108.a4cd34a.obscpio ++++++
/work/SRC/openSUSE:Factory/openQA/openQA-4.6.1702649526.dcd6122.obscpio /work/SRC/openSUSE:Factory/.openQA.new.9037/openQA-4.6.1702976108.a4cd34a.obscpio differ: char 49, line 1
++++++ openQA.obsinfo ++++++
--- /var/tmp/diff_new_pack.HR4enP/_old 2023-12-19 23:17:10.288459140 +0100
+++ /var/tmp/diff_new_pack.HR4enP/_new 2023-12-19 23:17:10.288459140 +0100
@@ -1,5 +1,5 @@
name: openQA
-version: 4.6.1702649526.dcd6122
-mtime: 1702649526
-commit: dcd612245517aa080e63d3d4eb19516c966739e2
+version: 4.6.1702976108.a4cd34a
+mtime: 1702976108
+commit: a4cd34aa786bfe837708b59824d543390d316626
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package matomo for openSUSE:Factory checked in at 2023-12-19 23:16:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/matomo (Old)
and /work/SRC/openSUSE:Factory/.matomo.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "matomo"
Tue Dec 19 23:16:43 2023 rev:56 rq:1134024 version:5.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/matomo/matomo.changes 2023-11-30 22:01:09.660705606 +0100
+++ /work/SRC/openSUSE:Factory/.matomo.new.9037/matomo.changes 2023-12-19 23:17:06.940337218 +0100
@@ -1,0 +2,8 @@
+Tue Dec 19 09:41:27 UTC 2023 - ecsos <ecsos(a)opensuse.org>
+
+- Update to 5.0.0
+ Too many changes to list here. See instead:
+ https://matomo.org/changelog/matomo-5-0-0/
+- Rebase matomo-package_update.patch
+
+-------------------------------------------------------------------
Old:
----
matomo-4.16.0.tar.gz
New:
----
matomo-5.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ matomo.spec ++++++
--- /var/tmp/diff_new_pack.EZqUAO/_old 2023-12-19 23:17:07.720365622 +0100
+++ /var/tmp/diff_new_pack.EZqUAO/_new 2023-12-19 23:17:07.720365622 +0100
@@ -21,7 +21,7 @@
%{!?_tmpfilesdir:%global _tmpfilesdir %{_prefix}/lib/tmpfiles.d}
Name: matomo
-Version: 4.16.0
+Version: 5.0.0
Release: 0
Summary: Web analytics platform
License: GPL-3.0-or-later
@@ -123,7 +123,7 @@
sed -i "/\W\"${i}\"\W/d" config/manifest.inc.php
done
# Insert new hashes for chanded files
-for file in console 'vendor/tecnickcom/tcpdf/tools/tcpdf_addfont.php' 'config/global.ini.php' 'core/CliMulti/Output.php' 'plugins/CoreUpdater/Commands/Update.php' 'vendor/matomo/matomo-php-tracker/run_tests.sh' 'vendor/wikimedia/less.php/bin/lessc' 'misc/log-analytics/import_logs.py' 'core/CliMulti.php'
+for file in console 'vendor/tecnickcom/tcpdf/tools/tcpdf_addfont.php' 'config/global.ini.php' 'core/CliMulti/Output.php' 'plugins/CoreUpdater/Commands/Update.php' 'vendor/matomo/matomo-php-tracker/run_tests.sh' 'vendor/wikimedia/less.php/bin/lessc' 'misc/log-analytics/import_logs.py' 'core/CliMulti.php' 'vendor/symfony/error-handler/Resources/bin/extract-tentative-return-types.php' 'vendor/symfony/error-handler/Resources/bin/patch-type-declarations' 'vendor/symfony/var-dumper/Resources/bin/var-dump-server'
do
size=$(ls -l $file | awk '{ print $5 }')
checksum=$(md5sum $file | awk '{ print $1 }')
++++++ matomo-4.16.0.tar.gz -> matomo-5.0.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/matomo/matomo-4.16.0.tar.gz /work/SRC/openSUSE:Factory/.matomo.new.9037/matomo-5.0.0.tar.gz differ: char 13, line 1
++++++ matomo-package_update.patch ++++++
--- /var/tmp/diff_new_pack.EZqUAO/_old 2023-12-19 23:17:07.824369410 +0100
+++ /var/tmp/diff_new_pack.EZqUAO/_new 2023-12-19 23:17:07.824369410 +0100
@@ -3,13 +3,13 @@
--- matomo.orig/plugins/CoreUpdater/Commands/Update.php
+++ matomo/plugins/CoreUpdater/Commands/Update.php
@@ -79,8 +79,11 @@ class Update extends ConsoleCommand
- $this->writeSuccessMessage($output, array(Piwik::translate('CoreUpdater_DbUpgradeNotExecuted')));
+ $this->writeSuccessMessage(array(Piwik::translate('CoreUpdater_DbUpgradeNotExecuted')));
}
+ // Only show if autoupdate is enabled. Don't show if update through distribution package update.
+ $enableAutoUpdate = (bool) Config::getInstance()->General['enable_auto_update'];
+ if ($enableAutoUpdate === true){
- $this->writeAlertMessageWhenCommandExecutedWithUnexpectedUser($output);
+ $this->writeAlertMessageWhenCommandExecutedWithUnexpectedUser();
-
+ }
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gpxsee for openSUSE:Factory checked in at 2023-12-19 23:16:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gpxsee (Old)
and /work/SRC/openSUSE:Factory/.gpxsee.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gpxsee"
Tue Dec 19 23:16:41 2023 rev:116 rq:1134018 version:13.13
Changes:
--------
--- /work/SRC/openSUSE:Factory/gpxsee/gpxsee.changes 2023-12-12 19:32:32.829162993 +0100
+++ /work/SRC/openSUSE:Factory/.gpxsee.new.9037/gpxsee.changes 2023-12-19 23:17:05.128271231 +0100
@@ -1,0 +2,9 @@
+Mon Dec 18 21:46:45 CET 2023 - tumic(a)cbox.cz
+
+- Update to version 13.13
+ * Fixed broken map scale (ruler) on HiDPI maps.
+ * Limit the overzoom to not produce huge tiles which break map
+ rendering.
+ * Increase the default pixmap cache size on Android to 384MB.
+
+-------------------------------------------------------------------
Old:
----
GPXSee-13.12.tar.gz
New:
----
GPXSee-13.13.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gpxsee.spec ++++++
--- /var/tmp/diff_new_pack.BnCa1d/_old 2023-12-19 23:17:05.760294246 +0100
+++ /var/tmp/diff_new_pack.BnCa1d/_new 2023-12-19 23:17:05.764294392 +0100
@@ -19,7 +19,7 @@
# See also http://en.opensuse.org/openSUSE:Specfile_guidelines
Name: gpxsee
-Version: 13.12
+Version: 13.13
Release: 1
Summary: GPS log file visualization and analysis tool
License: GPL-3.0-only
++++++ GPXSee-13.12.tar.gz -> GPXSee-13.13.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/.appveyor.yml new/GPXSee-13.13/.appveyor.yml
--- old/GPXSee-13.12/.appveyor.yml 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/.appveyor.yml 2023-12-18 21:18:50.000000000 +0100
@@ -1,4 +1,4 @@
-version: 13.12.{build}
+version: 13.13.{build}
configuration:
- Release
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/gpxsee.pro new/GPXSee-13.13/gpxsee.pro
--- old/GPXSee-13.12/gpxsee.pro 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/gpxsee.pro 2023-12-18 21:18:50.000000000 +0100
@@ -3,7 +3,7 @@
} else {
TARGET = GPXSee
}
-VERSION = 13.12
+VERSION = 13.13
QT += core \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/pkg/windows/gpxsee64.nsi new/GPXSee-13.13/pkg/windows/gpxsee64.nsi
--- old/GPXSee-13.12/pkg/windows/gpxsee64.nsi 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/pkg/windows/gpxsee64.nsi 2023-12-18 21:18:50.000000000 +0100
@@ -37,7 +37,7 @@
; The name of the installer
Name "GPXSee"
; Program version
-!define VERSION "13.12"
+!define VERSION "13.13"
; The file to write
OutFile "GPXSee-${VERSION}_x64.exe"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/GUI/settings.cpp new/GPXSee-13.13/src/GUI/settings.cpp
--- old/GPXSee-13.12/src/GUI/settings.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/GUI/settings.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -33,7 +33,7 @@
: QPageSize::PageSizeId::A4)
#ifdef Q_OS_ANDROID
-#define PIXMAP_CACHE 256
+#define PIXMAP_CACHE 384
#define DEM_CACHE 128
#else // Q_OS_ANDROID
#define PIXMAP_CACHE 512
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/aqmmap.cpp new/GPXSee-13.13/src/map/aqmmap.cpp
--- old/GPXSee-13.12/src/map/aqmmap.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/aqmmap.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -295,7 +295,7 @@
qreal AQMMap::resolution(const QRectF &rect)
{
const Zoom &z = _zooms.at(_zoom);
- return OSM::resolution(rect.center(), z.zoom, z.tileSize);
+ return OSM::resolution(rect.center(), z.zoom, tileSize());
}
int AQMMap::zoomIn()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/gemfmap.cpp new/GPXSee-13.13/src/map/gemfmap.cpp
--- old/GPXSee-13.12/src/map/gemfmap.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/gemfmap.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -128,7 +128,7 @@
qreal GEMFMap::resolution(const QRectF &rect)
{
- return OSM::resolution(rect.center(), _zooms.at(_zi).level, _tileSize);
+ return OSM::resolution(rect.center(), _zooms.at(_zi).level, tileSize());
}
int GEMFMap::zoomFit(const QSize &size, const RectC &rect)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/mbtilesmap.cpp new/GPXSee-13.13/src/map/mbtilesmap.cpp
--- old/GPXSee-13.12/src/map/mbtilesmap.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/mbtilesmap.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -9,7 +9,7 @@
#include "osm.h"
#include "mbtilesmap.h"
-#define MAX_OVERZOOM 3
+#define MAX_TILE_SIZE 4096
#define META_TYPE(type) static_cast<QMetaType::Type>(type)
static RectC str2bounds(const QString &str)
@@ -79,24 +79,15 @@
" WHERE zoom_level = %1 LIMIT 1").arg(i);
QSqlQuery query(sql, _db);
if (query.first())
- _zooms.append(Zoom(i, i));
+ _zoomsBase.append(Zoom(i, i));
}
- if (!_zooms.size()) {
+ if (!_zoomsBase.size()) {
_errorString = "Empty tile set";
return false;
}
- if (_scalable) {
- for (int i = _zooms.last().base + 1; i <= OSM::ZOOMS.max(); i++) {
- Zoom z(i, _zooms.last().base);
- if (z.z - z.base > MAX_OVERZOOM)
- break;
- _zooms.append(Zoom(i, _zooms.last().base));
- }
- }
-
- _zi = _zooms.size() - 1;
+ _zi = _zoomsBase.size() - 1;
return true;
}
@@ -114,7 +105,7 @@
} else {
qWarning("%s: missing bounds metadata", qPrintable(path()));
- int z = _zooms.first().z;
+ int z = _zoomsBase.first().z;
QString sql = QString("SELECT min(tile_column), min(tile_row), "
"max(tile_column), max(tile_row) FROM tiles WHERE zoom_level = %1")
.arg(z);
@@ -222,12 +213,12 @@
}
getTileFormat();
+ if (!getTileSize())
+ return;
if (!getZooms())
return;
if (!getBounds())
return;
- if (!getTileSize())
- return;
getTilePixelRatio();
getName();
@@ -243,10 +234,18 @@
Q_UNUSED(out);
_mapRatio = hidpi ? deviceRatio : 1.0;
+ _zooms = _zoomsBase;
if (_scalable) {
_scaledSize = _tileSize * deviceRatio;
_tileRatio = deviceRatio;
+
+ for (int i = _zooms.last().base + 1; i <= OSM::ZOOMS.max(); i++) {
+ Zoom z(i, _zooms.last().base);
+ if (_tileSize * _tileRatio * (1U<<(z.z - z.base)) > MAX_TILE_SIZE)
+ break;
+ _zooms.append(Zoom(i, _zooms.last().base));
+ }
}
_db.open();
@@ -286,7 +285,7 @@
qreal MBTilesMap::resolution(const QRectF &rect)
{
- return OSM::resolution(rect.center(), _zooms.at(_zi).z, _tileSize);
+ return OSM::resolution(rect.center(), _zooms.at(_zi).z, tileSize());
}
int MBTilesMap::zoomIn()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/mbtilesmap.h new/GPXSee-13.13/src/map/mbtilesmap.h
--- old/GPXSee-13.12/src/map/mbtilesmap.h 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/mbtilesmap.h 2023-12-18 21:18:50.000000000 +0100
@@ -146,7 +146,7 @@
QString _name;
RectC _bounds;
- QVector<Zoom> _zooms;
+ QVector<Zoom> _zooms, _zoomsBase;
int _zi;
int _tileSize;
qreal _mapRatio, _tileRatio;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/onlinemap.cpp new/GPXSee-13.13/src/map/onlinemap.cpp
--- old/GPXSee-13.12/src/map/onlinemap.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/onlinemap.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -8,7 +8,7 @@
#include "onlinemap.h"
-#define MAX_OVERZOOM 3
+#define MAX_TILE_SIZE 4096
OnlineMap::OnlineMap(const QString &fileName, const QString &name,
const QString &url, const Range &zooms, const RectC &bounds, qreal tileRatio,
@@ -24,10 +24,7 @@
_tileLoader->setHeaders(headers);
connect(_tileLoader, &TileLoader::finished, this, &OnlineMap::tilesLoaded);
- if (_scalable) {
- _baseZoom = _zooms.max();
- _zooms.setMax(qMin(_zooms.max() + MAX_OVERZOOM, OSM::ZOOMS.max()));
- }
+ _baseZoom = _zooms.max();
}
QRectF OnlineMap::bounds()
@@ -61,7 +58,7 @@
qreal OnlineMap::resolution(const QRectF &rect)
{
- return OSM::resolution(rect.center(), _zoom, _tileSize);
+ return OSM::resolution(rect.center(), _zoom, tileSize());
}
int OnlineMap::zoomIn()
@@ -87,10 +84,17 @@
Q_UNUSED(out);
_mapRatio = hidpi ? deviceRatio : 1.0;
+ _zooms.setMax(_baseZoom);
if (_scalable) {
_scaledSize = _tileSize * deviceRatio;
_tileRatio = deviceRatio;
+
+ for (int i = _baseZoom + 1; i <= OSM::ZOOMS.max(); i++) {
+ if (_tileSize * _tileRatio * (1U<<(i - _baseZoom)) > MAX_TILE_SIZE)
+ break;
+ _zooms.setMax(i);
+ }
}
}
@@ -168,7 +172,7 @@
void OnlineMap::draw(QPainter *painter, const QRectF &rect, Flags flags)
{
- int baseZoom = _scalable ? qMin(_baseZoom, _zoom) : _zoom;
+ int baseZoom = qMin(_baseZoom, _zoom);
unsigned overzoom = _zoom - baseZoom;
unsigned f = 1U<<overzoom;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/osmdroidmap.cpp new/GPXSee-13.13/src/map/osmdroidmap.cpp
--- old/GPXSee-13.12/src/map/osmdroidmap.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/osmdroidmap.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -198,7 +198,7 @@
qreal OsmdroidMap::resolution(const QRectF &rect)
{
- return OSM::resolution(rect.center(), _zoom, _tileSize);
+ return OSM::resolution(rect.center(), _zoom, tileSize());
}
int OsmdroidMap::zoomIn()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/GPXSee-13.12/src/map/sqlitemap.cpp new/GPXSee-13.13/src/map/sqlitemap.cpp
--- old/GPXSee-13.12/src/map/sqlitemap.cpp 2023-12-11 21:13:11.000000000 +0100
+++ new/GPXSee-13.13/src/map/sqlitemap.cpp 2023-12-18 21:18:50.000000000 +0100
@@ -146,7 +146,7 @@
qreal SqliteMap::resolution(const QRectF &rect)
{
- return OSM::resolution(rect.center(), _zoom, _tileSize);
+ return OSM::resolution(rect.center(), _zoom, tileSize());
}
int SqliteMap::zoomIn()
++++++ PKGBUILD ++++++
--- /var/tmp/diff_new_pack.BnCa1d/_old 2023-12-19 23:17:06.260312455 +0100
+++ /var/tmp/diff_new_pack.BnCa1d/_new 2023-12-19 23:17:06.264312600 +0100
@@ -1,5 +1,5 @@
pkgname=gpxsee
-pkgver=13.12
+pkgver=13.13
pkgrel=1
pkgdesc='GPS log files visualizing and analyzing tool'
arch=('i686' 'x86_64')
++++++ debian.changelog ++++++
--- /var/tmp/diff_new_pack.BnCa1d/_old 2023-12-19 23:17:06.284313329 +0100
+++ /var/tmp/diff_new_pack.BnCa1d/_new 2023-12-19 23:17:06.288313474 +0100
@@ -1,3 +1,12 @@
+gpxsee (13.13) stable; urgency=low
+
+ * Fixed broken map scale (ruler) on HiDPI maps.
+ * Limit the overzoom to not produce huge tiles which break map
+ rendering.
+ * Increase the default pixmap cache size on Android to 384MB.
+
+ -- Martin Tuma <tumic(a)cbox.cz> Mon, 18 Dec 2023 21:52:33 +0100
+
gpxsee (13.12) stable; urgency=low
* Added support for overzoom in MVT vector maps (MBTiles/online).
++++++ gpxsee.dsc ++++++
--- /var/tmp/diff_new_pack.BnCa1d/_old 2023-12-19 23:17:06.356315950 +0100
+++ /var/tmp/diff_new_pack.BnCa1d/_new 2023-12-19 23:17:06.356315950 +0100
@@ -1,10 +1,10 @@
Format: 1.0
Source: gpxsee
-Version: 13.12-1
+Version: 13.13-1
Binary: gpxsee
Maintainer: Martin Tuma <tumic(a)cbox.cz>
Architecture: any
Build-Depends: debhelper (>= 9), qtbase5-dev, qtbase5-private-dev, qtbase5-dev-tools, qt5-qmake, qttools5-dev-tools, libqt5opengl5-dev, qtpositioning5-dev, libqt5svg5-dev, libqt5serialport5-dev
Files:
- 00000000000000000000000000000000 0 GPXSee-13.12.tar.gz
+ 00000000000000000000000000000000 0 GPXSee-13.13.tar.gz
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libqt5-qtdoc for openSUSE:Factory checked in at 2023-12-19 23:16:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtdoc (Old)
and /work/SRC/openSUSE:Factory/.libqt5-qtdoc.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libqt5-qtdoc"
Tue Dec 19 23:16:39 2023 rev:49 rq:1134012 version:5.15.11
Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtdoc/libqt5-qtdoc.changes 2023-04-27 20:01:28.634116962 +0200
+++ /work/SRC/openSUSE:Factory/.libqt5-qtdoc.new.9037/libqt5-qtdoc.changes 2023-12-19 23:16:47.903643993 +0100
@@ -1,0 +2,9 @@
+Tue Dec 19 09:46:13 UTC 2023 - Fabian Vogt <fvogt(a)suse.com>
+
+- Update to 5.15.11:
+ * See individual module packages for changelogs
+- Drop patches, now upstream:
+ * 0002-Build-fixes-for-GCC-11.patch
+ * 0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch
+
+-------------------------------------------------------------------
Old:
----
0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch
0002-Build-fixes-for-GCC-11.patch
qt-everywhere-opensource-src-5.15.9.tar.xz
New:
----
qt-everywhere-opensource-src-5.15.11.tar.xz
BETA DEBUG BEGIN:
Old: * 0002-Build-fixes-for-GCC-11.patch
* 0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch
Old:- Drop patches, now upstream:
* 0002-Build-fixes-for-GCC-11.patch
* 0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libqt5-qtdoc.spec ++++++
--- /var/tmp/diff_new_pack.8r6LRH/_old 2023-12-19 23:17:04.308241369 +0100
+++ /var/tmp/diff_new_pack.8r6LRH/_new 2023-12-19 23:17:04.308241369 +0100
@@ -17,19 +17,16 @@
# nodebuginfo
-%define real_version 5.15.9
-%define tar_version qt-everywhere-opensource-src-5.15.9
+%define real_version 5.15.11
+%define tar_version qt-everywhere-opensource-src-5.15.11
Name: libqt5-qtdoc
-Version: 5.15.9
+Version: 5.15.11
Release: 0
Summary: Qt 5 API Documentation
License: LGPL-2.1-with-Qt-Company-Qt-exception-1.1 OR LGPL-3.0-only
Group: Documentation/Other
URL: https://www.qt.io
Source: https://download.qt.io/official_releases/qt/5.15/%{real_version}/single/%{t…
-# PATCH-FIX-UPSTREAM
-Patch2: 0002-Build-fixes-for-GCC-11.patch
-Patch3: 0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch
# Breaks make_jobs
#!BuildIgnore: cmake
BuildRequires: alsa-devel
++++++ qt-everywhere-opensource-src-5.15.9.tar.xz -> qt-everywhere-opensource-src-5.15.11.tar.xz ++++++
/work/SRC/openSUSE:Factory/libqt5-qtdoc/qt-everywhere-opensource-src-5.15.9.tar.xz /work/SRC/openSUSE:Factory/.libqt5-qtdoc.new.9037/qt-everywhere-opensource-src-5.15.11.tar.xz differ: char 26, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package jc for openSUSE:Factory checked in at 2023-12-19 23:16:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jc (Old)
and /work/SRC/openSUSE:Factory/.jc.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jc"
Tue Dec 19 23:16:33 2023 rev:17 rq:1133988 version:1.24.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/jc/jc.changes 2023-11-26 19:37:04.197649914 +0100
+++ /work/SRC/openSUSE:Factory/.jc.new.9037/jc.changes 2023-12-19 23:16:43.487483177 +0100
@@ -1,0 +2,20 @@
+Sun Dec 17 23:01:33 UTC 2023 - Martin Hauke <mardnh(a)gmx.de>
+
+- Update to version 1.24.0
+ * Add debconf-show command parser.
+ * Add iftop command parser.
+ * Add pkg-index-apk parser for Alpine Linux Package Index files.
+ * Add pkg-index-deb parser for Debian/Ubuntu Package Index files.
+ * Add proc-cmdline parser for /proc/cmdline file.
+ * Add swapon command parser.
+ * Add tune2fs command parser.
+ * Remove iso-datetime parser deprecated since v1.22.1.
+ (use datetime-iso instead).
+ * Refactor acpi command parser for code cleanup.
+ * Fix iptables parser for cases where the target field is blank
+ in a rule.
+ * Fix vmstat parsers for some cases where wide output is used.
+ * Fix mount parser for cases with spaces in the mount point name.
+ * Fix xrandr parser for infinite loop issues.
+
+-------------------------------------------------------------------
Old:
----
jc-1.23.6.tar.gz
New:
----
jc-1.24.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jc.spec ++++++
--- /var/tmp/diff_new_pack.pkTKis/_old 2023-12-19 23:16:45.139543338 +0100
+++ /var/tmp/diff_new_pack.pkTKis/_new 2023-12-19 23:16:45.143543483 +0100
@@ -18,7 +18,7 @@
Name: jc
-Version: 1.23.6
+Version: 1.24.0
Release: 0
Summary: JSON CLI output utility
License: MIT
++++++ jc-1.23.6.tar.gz -> jc-1.24.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/jc/jc-1.23.6.tar.gz /work/SRC/openSUSE:Factory/.jc.new.9037/jc-1.24.0.tar.gz differ: char 13, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-deepmerge for openSUSE:Factory checked in at 2023-12-19 23:16:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-deepmerge (Old)
and /work/SRC/openSUSE:Factory/.python-deepmerge.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-deepmerge"
Tue Dec 19 23:16:31 2023 rev:3 rq:1133986 version:1.1.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-deepmerge/python-deepmerge.changes 2023-05-30 22:02:38.551081056 +0200
+++ /work/SRC/openSUSE:Factory/.python-deepmerge.new.9037/python-deepmerge.changes 2023-12-19 23:16:41.607414714 +0100
@@ -1,0 +2,9 @@
+Tue Dec 19 09:34:58 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.1.1:
+ * Fix documentation for custom strategies
+ * Update Python versions
+ * Make predefined merge strategies work with built-in
+ collections subtypes
+
+-------------------------------------------------------------------
Old:
----
deepmerge-1.1.0.tar.gz
New:
----
deepmerge-1.1.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-deepmerge.spec ++++++
--- /var/tmp/diff_new_pack.DFFlQB/_old 2023-12-19 23:16:42.207436564 +0100
+++ /var/tmp/diff_new_pack.DFFlQB/_new 2023-12-19 23:16:42.211436709 +0100
@@ -18,17 +18,17 @@
%{?sle15_python_module_pythons}
Name: python-deepmerge
-Version: 1.1.0
+Version: 1.1.1
Release: 0
License: MIT
Summary: A toolset to deeply merge python dictionaries
URL: https://github.com/toumorokoshi/deepmerge
Group: Development/Languages/Python
Source: https://files.pythonhosted.org/packages/source/d/deepmerge/deepmerge-%{vers…
+BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools_scm > 5}
-BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module vcver}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
++++++ deepmerge-1.1.0.tar.gz -> deepmerge-1.1.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/.github/workflows/python-package.yaml new/deepmerge-1.1.1/.github/workflows/python-package.yaml
--- old/deepmerge-1.1.0/.github/workflows/python-package.yaml 2022-10-25 07:23:59.000000000 +0200
+++ new/deepmerge-1.1.1/.github/workflows/python-package.yaml 2023-12-18 23:13:38.000000000 +0100
@@ -18,7 +18,7 @@
strategy:
fail-fast: false
matrix:
- python-version: ["2.7", "3.8", "3.9", "3.10"]
+ python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v2
@@ -34,14 +34,14 @@
run: |
make build
- name: lint
- if: ${{ matrix.python-version == '3.10' }}
+ if: ${{ matrix.python-version == '3.12' }}
run: |
make lint
- name: test
run: |
make test
- name: pypi-release
- if: ${{ startsWith(github.ref, 'refs/tags/') && matrix.python-version == '3.10' }}
+ if: ${{ startsWith(github.ref, 'refs/tags/') && matrix.python-version == '3.12' }}
uses: pypa/gh-action-pypi-publish@master
with:
password: ${{ secrets.PYPI_API_TOKEN }}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/PKG-INFO new/deepmerge-1.1.1/PKG-INFO
--- old/deepmerge-1.1.0/PKG-INFO 2022-10-25 07:24:22.488194500 +0200
+++ new/deepmerge-1.1.1/PKG-INFO 2023-12-18 23:14:00.097812200 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: deepmerge
-Version: 1.1.0
+Version: 1.1.1
Summary: a toolset to deeply merge python dictionaries.
Home-page: http://deepmerge.readthedocs.io/en/latest/
Classifier: Development Status :: 5 - Production/Stable
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/deepmerge/_version.py new/deepmerge-1.1.1/deepmerge/_version.py
--- old/deepmerge-1.1.0/deepmerge/_version.py 2022-10-25 07:24:22.000000000 +0200
+++ new/deepmerge-1.1.1/deepmerge/_version.py 2023-12-18 23:14:00.000000000 +0100
@@ -1,5 +1,16 @@
-# coding: utf-8
# file generated by setuptools_scm
# don't change, don't track in version control
-__version__ = version = '1.1.0'
-__version_tuple__ = version_tuple = (1, 1, 0)
+TYPE_CHECKING = False
+if TYPE_CHECKING:
+ from typing import Tuple, Union
+ VERSION_TUPLE = Tuple[Union[int, str], ...]
+else:
+ VERSION_TUPLE = object
+
+version: str
+__version__: str
+__version_tuple__: VERSION_TUPLE
+version_tuple: VERSION_TUPLE
+
+__version__ = version = '1.1.1'
+__version_tuple__ = version_tuple = (1, 1, 1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/deepmerge/merger.py new/deepmerge-1.1.1/deepmerge/merger.py
--- old/deepmerge-1.1.0/deepmerge/merger.py 2022-10-25 07:23:59.000000000 +0200
+++ new/deepmerge-1.1.1/deepmerge/merger.py 2023-12-18 23:13:38.000000000 +0100
@@ -36,9 +36,9 @@
return self._type_conflict_strategy(self, *args)
def value_strategy(self, path, base, nxt):
- if not (isinstance(base, type(nxt)) or isinstance(nxt, type(base))):
- return self.type_conflict_strategy(path, base, nxt)
for typ, strategy in self._type_strategies:
- if isinstance(nxt, typ):
+ if isinstance(base, typ) and isinstance(nxt, typ):
return strategy(self, path, base, nxt)
+ if not (isinstance(base, type(nxt)) or isinstance(nxt, type(base))):
+ return self.type_conflict_strategy(path, base, nxt)
return self._fallback_strategy(self, path, base, nxt)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/deepmerge/tests/test_full.py new/deepmerge-1.1.1/deepmerge/tests/test_full.py
--- old/deepmerge-1.1.0/deepmerge/tests/test_full.py 2022-10-25 07:23:59.000000000 +0200
+++ new/deepmerge-1.1.1/deepmerge/tests/test_full.py 2023-12-18 23:13:38.000000000 +0100
@@ -1,4 +1,5 @@
from deepmerge.exception import *
+from collections import OrderedDict, defaultdict
import pytest
@@ -48,3 +49,12 @@
always_merger.merge(base, next)
assert base == {"foo": "value", "bar": "value2", "baz": ["a", "b"]}
+
+
+def test_subtypes():
+ base = OrderedDict({"foo": "value", "baz": ["a"]})
+ next = defaultdict(str, {"bar": "value2", "baz": ["b"]})
+
+ result = always_merger.merge(base, next)
+
+ assert dict(result) == {"foo": "value", "bar": "value2", "baz": ["a", "b"]}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/deepmerge.egg-info/PKG-INFO new/deepmerge-1.1.1/deepmerge.egg-info/PKG-INFO
--- old/deepmerge-1.1.0/deepmerge.egg-info/PKG-INFO 2022-10-25 07:24:22.000000000 +0200
+++ new/deepmerge-1.1.1/deepmerge.egg-info/PKG-INFO 2023-12-18 23:14:00.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: deepmerge
-Version: 1.1.0
+Version: 1.1.1
Summary: a toolset to deeply merge python dictionaries.
Home-page: http://deepmerge.readthedocs.io/en/latest/
Classifier: Development Status :: 5 - Production/Stable
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/deepmerge-1.1.0/docs/guide.rst new/deepmerge-1.1.1/docs/guide.rst
--- old/deepmerge-1.1.0/docs/guide.rst 2022-10-25 07:23:59.000000000 +0200
+++ new/deepmerge-1.1.1/docs/guide.rst 2023-12-18 23:13:38.000000000 +0100
@@ -80,7 +80,7 @@
Strategies are functions that satisfy the following properties:
* have the function signature (config, path, base, nxt)
-* return the merged object, or None.
+* return the merged object, or `deepmerge.STRATEGY_END`.
Example:
@@ -92,7 +92,7 @@
base.append(nxt[-1])
return base
-If a strategy fails, an exception should not be raised. This is to
+If a strategy fails, an exception should not be raised, instead it should return `deepmerge.STRATEGY_END`. This is to
ensure it can be chained with other strategies, or the fall-back.
Uniqueness of elements when merging
@@ -104,4 +104,4 @@
dictionaries.
In those cases, built-in deepmerge strategies will call repr()
-on the object and hash that value instead.
\ No newline at end of file
+on the object and hash that value instead.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package honggfuzz for openSUSE:Factory checked in at 2023-12-19 23:16:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/honggfuzz (Old)
and /work/SRC/openSUSE:Factory/.honggfuzz.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "honggfuzz"
Tue Dec 19 23:16:28 2023 rev:14 rq:1133982 version:2.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/honggfuzz/honggfuzz.changes 2023-03-15 18:56:38.261063196 +0100
+++ /work/SRC/openSUSE:Factory/.honggfuzz.new.9037/honggfuzz.changes 2023-12-19 23:16:39.727346251 +0100
@@ -1,0 +2,17 @@
+Tue Dec 19 09:03:08 UTC 2023 - Andrea Manzini <andrea.manzini(a)suse.com>
+
+- Update to 2.6:
+ * env NO_COLOR support
+ * fix problems with linux/bfd ```init_disassemble_info```
+ * Support ```--exit_on_time```
+ * ```strlcat``` supported in libhfuzz/memorycmp
+ * Some patches for MacOSX, sadly no support for ARM yet
+ * Improvement on Android and FreeBSD targets
+ * added missing ```add missing disassemble_free_target()```
+
+- Dropped following patches as already included in upstream :
+ * 0001-Always-pass-4-arguments-to-init_disassemble_info-no-.patch
+ * 0002-linux-bfd-use-DIAGNOSTIC_ERROR_SWITCH-define-to-figu.patch
+ * 0003-linux-bfd-cover-include-diagnostics.h-with-__has_inc.patch
+
+-------------------------------------------------------------------
Old:
----
0001-Always-pass-4-arguments-to-init_disassemble_info-no-.patch
0002-linux-bfd-use-DIAGNOSTIC_ERROR_SWITCH-define-to-figu.patch
0003-linux-bfd-cover-include-diagnostics.h-with-__has_inc.patch
honggfuzz-2.5.tar.gz
New:
----
honggfuzz-2.6.tar.gz
BETA DEBUG BEGIN:
Old:- Dropped following patches as already included in upstream :
* 0001-Always-pass-4-arguments-to-init_disassemble_info-no-.patch
* 0002-linux-bfd-use-DIAGNOSTIC_ERROR_SWITCH-define-to-figu.patch
Old: * 0001-Always-pass-4-arguments-to-init_disassemble_info-no-.patch
* 0002-linux-bfd-use-DIAGNOSTIC_ERROR_SWITCH-define-to-figu.patch
* 0003-linux-bfd-cover-include-diagnostics.h-with-__has_inc.patch
Old: * 0002-linux-bfd-use-DIAGNOSTIC_ERROR_SWITCH-define-to-figu.patch
* 0003-linux-bfd-cover-include-diagnostics.h-with-__has_inc.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ honggfuzz.spec ++++++
--- /var/tmp/diff_new_pack.iFF15b/_old 2023-12-19 23:16:40.943390534 +0100
+++ /var/tmp/diff_new_pack.iFF15b/_new 2023-12-19 23:16:40.943390534 +0100
@@ -17,17 +17,13 @@
Name: honggfuzz
-Version: 2.5
+Version: 2.6
Release: 0
Summary: Security-oriented fuzzer with various analysis options
License: Apache-2.0
Group: Development/Tools/Other
URL: https://honggfuzz.com
Source: https://github.com/google/honggfuzz/archive/%{version}.tar.gz#/%{name}-%{ve…
-# PATCH-FIX-UPSTREAM -- binutils compatibility changes
-Patch0: 0001-Always-pass-4-arguments-to-init_disassemble_info-no-.patch
-Patch1: 0002-linux-bfd-use-DIAGNOSTIC_ERROR_SWITCH-define-to-figu.patch
-Patch2: 0003-linux-bfd-cover-include-diagnostics.h-with-__has_inc.patch
BuildRequires: binutils-devel
BuildRequires: libunwind-devel
BuildRequires: libzstd-devel
++++++ honggfuzz-2.5.tar.gz -> honggfuzz-2.6.tar.gz ++++++
/work/SRC/openSUSE:Factory/honggfuzz/honggfuzz-2.5.tar.gz /work/SRC/openSUSE:Factory/.honggfuzz.new.9037/honggfuzz-2.6.tar.gz differ: char 16, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cdrdao for openSUSE:Factory checked in at 2023-12-19 23:16:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cdrdao (Old)
and /work/SRC/openSUSE:Factory/.cdrdao.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cdrdao"
Tue Dec 19 23:16:26 2023 rev:31 rq:1133980 version:1.2.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/cdrdao/cdrdao.changes 2020-04-13 12:52:33.016628878 +0200
+++ /work/SRC/openSUSE:Factory/.cdrdao.new.9037/cdrdao.changes 2023-12-19 23:16:35.755201604 +0100
@@ -1,0 +2,24 @@
+Fri Dec 8 16:11:08 UTC 2023 - Andrea Manzini <andrea.manzini(a)suse.com>
+
+- Update to version 1.2.5:
+ * gcdmaster port to GTK 3 (Stefan Roellin)
+ * Support to specify encoding in TOC (Denis Leroy):
+ * one of ENCODING_ISO_8859_1, ENCODING_ASCII, ENCODING_MS_JIS, ENCODING_KOREAN, ENCODING_MANDARIN
+ may be specified on LANGUAGE section.
+ * TOC always dumped in UTF-8, unless --no-utf8 is specified
+ * Fix --swap argument with generic-mmc-raw driver (Alex Free)
+ * cdrdao:
+ + new cdtext command to dump CD-TEXT disc content
+ + deprecate 0x10 driver option by checking device configuration
+ * toc2cue: (Jonathan Simpson)
+ + add option to convert bin file, removing subchannel data that isn't supported by cue/bin files
+ + add option to swap byte order when creating new bin file
+ * toc2mp3: (DL)
+ + -J option to force specific text decoding
+ + support for character encoding in filenames and id3v2 tags
+ + Fix eject by first issuing PREVENT ALLOW MEDIUM REMOVAL (DL)
+ + Removed scsilib snapshot from old cdrecord project, only use native interface. RIP Jörg Schilling.
+ + Misc compile and warning fixes for newer C++ compilers (Fedora)
+ + Cddb server updates.
+
+-------------------------------------------------------------------
Old:
----
cdrdao-1.2.4.tar.bz2
New:
----
cdrdao-1.2.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cdrdao.spec ++++++
--- /var/tmp/diff_new_pack.0bto5t/_old 2023-12-19 23:16:36.715236565 +0100
+++ /var/tmp/diff_new_pack.0bto5t/_new 2023-12-19 23:16:36.719236710 +0100
@@ -1,7 +1,7 @@
#
# spec file for package cdrdao
#
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: cdrdao
-Version: 1.2.4
+Version: 1.2.5
Release: 0
Summary: Tool to write CD-Rs in Disk-At-Once Mode
License: GPL-2.0-or-later
@@ -27,18 +27,18 @@
# PATCH-FIX-OPENSUSE cdrdao-build.patch
Patch0: cdrdao-build.patch
# PATCH-FIX-OPENSUSE cdrdao-fixes.patch bnc#424635 nadvornik(a)suse.cz -- Fix cdrdao segfault
-Patch2: cdrdao-fixes.patch
+Patch1: cdrdao-fixes.patch
# PATCH-FIX-OPENSUSE cdrdao-1.2.3-stat.patch asterios.dramis(a)gmail.com -- Missing includes causes failure build (patch taken from Fedora)
-Patch3: cdrdao-1.2.3-stat.patch
+Patch2: cdrdao-1.2.3-stat.patch
# PATCH-FIX-OPENSUSE cdrdao-drop-gconf-dep.patch -- Drop dependency on gconf2
-Patch5: cdrdao-drop-gconf-dep.patch
+Patch3: cdrdao-drop-gconf-dep.patch
BuildRequires: gcc-c++
BuildRequires: libao-devel
BuildRequires: libsigc++2-devel
BuildRequires: libvorbis-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(mad)
-Obsoletes: gcdmaster <= 1.2.3
+Obsoletes: gcdmaster <= 1.2.4
%description
CDRDAO creates CD-Rs in disk-at-once (DAO) mode driven by a description
++++++ cdrdao-1.2.3-stat.patch ++++++
--- /var/tmp/diff_new_pack.0bto5t/_old 2023-12-19 23:16:36.739237438 +0100
+++ /var/tmp/diff_new_pack.0bto5t/_new 2023-12-19 23:16:36.739237438 +0100
@@ -1,7 +1,7 @@
-Index: cdrdao-1.2.4/dao/ScsiIf-linux.cc
+Index: cdrdao-1.2.5/dao/ScsiIf-linux.cc
===================================================================
---- cdrdao-1.2.4.orig/dao/ScsiIf-linux.cc
-+++ cdrdao-1.2.4/dao/ScsiIf-linux.cc
+--- cdrdao-1.2.5.orig/dao/ScsiIf-linux.cc
++++ cdrdao-1.2.5/dao/ScsiIf-linux.cc
@@ -22,6 +22,9 @@
#include <sys/types.h>
#include <sys/stat.h>
++++++ cdrdao-1.2.4.tar.bz2 -> cdrdao-1.2.5.tar.bz2 ++++++
++++ 175979 lines of diff (skipped)
++++++ cdrdao-build.patch ++++++
--- /var/tmp/diff_new_pack.0bto5t/_old 2023-12-19 23:16:37.727273418 +0100
+++ /var/tmp/diff_new_pack.0bto5t/_new 2023-12-19 23:16:37.731273563 +0100
@@ -1,7 +1,7 @@
-Index: cdrdao-1.2.4/trackdb/FormatConverter.h
+Index: cdrdao-1.2.5/trackdb/FormatConverter.h
===================================================================
---- cdrdao-1.2.4.orig/trackdb/FormatConverter.h
-+++ cdrdao-1.2.4/trackdb/FormatConverter.h
+--- cdrdao-1.2.5.orig/trackdb/FormatConverter.h
++++ cdrdao-1.2.5/trackdb/FormatConverter.h
@@ -29,7 +29,7 @@
// Quick abstract class declarations. Format converters should derive
++++++ cdrdao-drop-gconf-dep.patch ++++++
--- /var/tmp/diff_new_pack.0bto5t/_old 2023-12-19 23:16:37.743274001 +0100
+++ /var/tmp/diff_new_pack.0bto5t/_new 2023-12-19 23:16:37.747274146 +0100
@@ -6,17 +6,17 @@
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-Index: cdrdao-1.2.3/configure.ac
+Index: cdrdao-1.2.5/configure.ac
===================================================================
---- cdrdao-1.2.3.orig/configure.ac
-+++ cdrdao-1.2.3/configure.ac
-@@ -8,7 +8,7 @@ AM_INIT_AUTOMAKE
- AM_CONFIG_HEADER(config.h)
+--- cdrdao-1.2.5.orig/configure.ac
++++ cdrdao-1.2.5/configure.ac
+@@ -9,7 +9,7 @@ AM_INIT_AUTOMAKE(subdir-objects)
+ AC_CONFIG_HEADERS(config.h)
AM_MAINTAINER_MODE
AC_CANONICAL_HOST
-AM_GCONF_SOURCE_2
+#AM_GCONF_SOURCE_2
+ AM_ICONV
AC_ARG_WITH(pcctsbin,[ --with-pcctsbin=dir set directory of PCCTS parser generator executables],[pcctsbin=$withval],[pcctsbin=default])
-
++++++ cdrdao-fixes.patch ++++++
--- /var/tmp/diff_new_pack.0bto5t/_old 2023-12-19 23:16:37.759274584 +0100
+++ /var/tmp/diff_new_pack.0bto5t/_new 2023-12-19 23:16:37.767274875 +0100
@@ -1,7 +1,7 @@
-Index: cdrdao-1.2.4/paranoia/p_block.c
+Index: cdrdao-1.2.5/paranoia/p_block.c
===================================================================
---- cdrdao-1.2.4.orig/paranoia/p_block.c
-+++ cdrdao-1.2.4/paranoia/p_block.c
+--- cdrdao-1.2.5.orig/paranoia/p_block.c
++++ cdrdao-1.2.5/paranoia/p_block.c
@@ -111,6 +111,7 @@ void free_c_block(c_block *c){
}
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package krita for openSUSE:Factory checked in at 2023-12-19 23:16:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/krita (Old)
and /work/SRC/openSUSE:Factory/.krita.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "krita"
Tue Dec 19 23:16:21 2023 rev:73 rq:1133978 version:5.2.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/krita/krita.changes 2023-11-03 22:20:05.891946355 +0100
+++ /work/SRC/openSUSE:Factory/.krita.new.9037/krita.changes 2023-12-19 23:16:30.631015006 +0100
@@ -1,0 +2,6 @@
+Mon Dec 18 11:28:45 UTC 2023 - Christophe Marin <christophe(a)krop.fr>
+
+- Update to 5.2.2
+ https://krita.org/en/item/krita-5-2-2-released/
+
+-------------------------------------------------------------------
Old:
----
krita-5.2.1.tar.xz
krita-5.2.1.tar.xz.sig
New:
----
krita-5.2.2.tar.xz
krita-5.2.2.tar.xz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ krita.spec ++++++
--- /var/tmp/diff_new_pack.K9UHHc/_old 2023-12-19 23:16:33.375114933 +0100
+++ /var/tmp/diff_new_pack.K9UHHc/_new 2023-12-19 23:16:33.379115079 +0100
@@ -32,7 +32,7 @@
%bcond_without libjxl
%endif
Name: krita
-Version: 5.2.1
+Version: 5.2.2
Release: 0
Summary: Digital Painting Application
License: BSD-2-Clause AND GPL-2.0-or-later AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-3.0-or-later AND CC0-1.0 AND LGPL-2.0-only
@@ -60,6 +60,7 @@
BuildRequires: liblcms2-devel
BuildRequires: libpng-devel
BuildRequires: libpoppler-qt5-devel
+BuildRequires: libQt5Gui-private-headers-devel
BuildRequires: libraw-devel
BuildRequires: libtiff-devel
BuildRequires: openjpeg2-devel
++++++ krita-5.2.1.tar.xz -> krita-5.2.2.tar.xz ++++++
/work/SRC/openSUSE:Factory/krita/krita-5.2.1.tar.xz /work/SRC/openSUSE:Factory/.krita.new.9037/krita-5.2.2.tar.xz differ: char 26, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package orthanc for openSUSE:Factory checked in at 2023-12-19 23:16:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/orthanc (Old)
and /work/SRC/openSUSE:Factory/.orthanc.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "orthanc"
Tue Dec 19 23:16:18 2023 rev:27 rq:1133977 version:1.12.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/orthanc/orthanc.changes 2023-07-06 18:29:04.471293689 +0200
+++ /work/SRC/openSUSE:Factory/.orthanc.new.9037/orthanc.changes 2023-12-19 23:16:26.390860601 +0100
@@ -1,0 +2,5 @@
+Mon Dec 18 14:13:12 UTC 2023 - Axel Braun <axel.braun(a)gmx.de>
+
+- libboost.diff to fix build error with boost 1.84
+
+-------------------------------------------------------------------
New:
----
libboost.diff
BETA DEBUG BEGIN:
New:
- libboost.diff to fix build error with boost 1.84
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ orthanc.spec ++++++
--- /var/tmp/diff_new_pack.0a3c5M/_old 2023-12-19 23:16:27.086885947 +0100
+++ /var/tmp/diff_new_pack.0a3c5M/_new 2023-12-19 23:16:27.090886092 +0100
@@ -24,7 +24,7 @@
License: GPL-3.0-or-later
Group: Productivity/Graphics/Visualization/Other
URL: https://www.orthanc-server.com/
-Source0: https://www.orthanc-server.com/downloads/get.php?path=/orthanc/Orthanc-%{ve…
+Source0: https://orthanc.uclouvain.be/downloads/sources/%{name}/Orthanc-%{version}.t…
Source1: orthanc.service
Source2: orthanc-readme.SUSE
Source3: serve-folders.json
@@ -38,6 +38,7 @@
Source12: https://orthanc.osimis.io/ThirdPartyDownloads/jquery-3.4.1.min.js
Source13: https://orthanc.osimis.io/ThirdPartyDownloads/dicom-web/vuejs-2.6.10.tar.gz
+Patch0: libboost.diff
BuildRequires: civetweb-devel
BuildRequires: cmake >= 2.8.0
BuildRequires: curl-devel
@@ -124,7 +125,7 @@
%prep
%setup -q -n Orthanc-%{version}
-## %autopatch -p1
+%autopatch -p1
cp %{S:1} %{S:2} .
++++++ libboost.diff ++++++
--- a/OrthancFramework/Sources/Images/Font.cpp Mon Dec 18 09:52:12 2023 +0100
+++ b/OrthancFramework/Sources/Images/Font.cpp Mon Dec 18 10:44:11 2023 +0100
@@ -37,6 +37,7 @@
#include "Image.h"
#include "ImageProcessing.h"
+#include <cassert>
#include <stdio.h>
#include <memory>
#include <boost/lexical_cast.hpp>
--- a/OrthancFramework/Sources/Images/PamWriter.cpp Mon Dec 18 09:52:12 2023 +0100
+++ b/OrthancFramework/Sources/Images/PamWriter.cpp Mon Dec 18 10:44:11 2023 +0100
@@ -28,6 +28,7 @@
#include "../OrthancException.h"
#include "../Toolbox.h"
+#include <cassert>
#include <boost/lexical_cast.hpp>
--- a/OrthancServer/Sources/Search/ISqlLookupFormatter.cpp Mon Dec 18 09:52:12 2023 +0100
+++ b/OrthancServer/Sources/Search/ISqlLookupFormatter.cpp Mon Dec 18 10:44:11 2023 +0100
@@ -38,6 +38,7 @@
#include "DatabaseConstraint.h"
+#include <cassert>
#include <boost/lexical_cast.hpp>
#include <list>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-hatch for openSUSE:Factory checked in at 2023-12-19 23:16:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-hatch (Old)
and /work/SRC/openSUSE:Factory/.python-hatch.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-hatch"
Tue Dec 19 23:16:16 2023 rev:11 rq:1133974 version:1.8.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-hatch/python-hatch.changes 2023-11-23 21:43:56.062753695 +0100
+++ /work/SRC/openSUSE:Factory/.python-hatch.new.9037/python-hatch.changes 2023-12-19 23:16:24.422788933 +0100
@@ -1,0 +2,58 @@
+Mon Dec 18 20:27:19 UTC 2023 - Ben Greiner <code(a)bnavigator.de>
+
+- Update to 1.8.1
+ ## Fixed:
+ * Fix regression in calling subprocesses with updated PATH
+ * Fix automatic installation of environment plugins when running
+ as a standalone binary
+ * Change default location of Python installations
+- Release 1.8.0
+ ## Changed:
+ * Drop support for Python 3.7
+ * The get_build_process method of the environment interface has
+ been removed; plugins should use the new run_builder method
+ instead
+ * Remove pyperclip dependency and the --copy flag of the config
+ find command
+ * When running the build command all output from builders is now
+ displayed as-is in real time without the stripping of ANSI
+ codes
+ * Version information (for Hatch itself) is now derived from Git
+ ## Added:
+ * Support Python 3.12
+ * Add installers and standalone binaries
+ * Add the ability to manage Python installations
+ * Add fmt command
+ * The virtual environment type can now automatically download
+ requested versions of Python that are not installed
+ * Add dependency_hash method to the environment interface
+ * The state of installed dependencies for environments is saved
+ as metadata so if dependency definitions have not changed then
+ no checking is performed, which can be computationally
+ expensive
+ * The build command now supports backends other than Hatchling
+ * Allow the use of features for environments when skip-install is
+ enabled
+ * The default is now __TOKEN__ when prompting for a username for
+ the publish command
+ * Add a new run_builder method to the environment interface
+ * Bump the minimum supported version of Hatchling to 1.19.0
+ * Bump the minimum supported version of click to 8.0.6
+ ## Fixed:
+ * Fix nushell activation
+ * Better handling of flat storage directory hierarchies for the
+ virtual environment type
+ * Display useful information when running the version command
+ outside of a project rather than erroring
+ * Fix the project metadata command by only capturing stdout from
+ the backend
+ * Properly support Google Artifact Registry
+ * Fix parsing dependencies for environments when warnings are
+ emitted
+- Drop patches
+ * CI.patch
+ * fix-sdist-target.patch
+ * hatch-pr828-pth-tests.patch
+ * packaging232.patch
+
+-------------------------------------------------------------------
Old:
----
CI.patch
fix-sdist-target.patch
hatch-pr828-pth-tests.patch
hatch-v1.7.0.tar.gz
packaging232.patch
New:
----
hatch-v1.8.1.tar.gz
BETA DEBUG BEGIN:
Old:- Drop patches
* CI.patch
* fix-sdist-target.patch
Old: * CI.patch
* fix-sdist-target.patch
* hatch-pr828-pth-tests.patch
Old: * fix-sdist-target.patch
* hatch-pr828-pth-tests.patch
* packaging232.patch
Old: * hatch-pr828-pth-tests.patch
* packaging232.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-hatch.spec ++++++
--- /var/tmp/diff_new_pack.jB56G6/_old 2023-12-19 23:16:25.418825204 +0100
+++ /var/tmp/diff_new_pack.jB56G6/_new 2023-12-19 23:16:25.422825349 +0100
@@ -26,23 +26,16 @@
%endif
%{?sle15_python_module_pythons}
Name: python-hatch%{psuffix}
-Version: 1.7.0
+Version: 1.8.1
Release: 0
Summary: Modern, extensible Python project management
License: MIT
URL: https://hatch.pypa.io/latest/
# SourceRepository: https://github.com/pypa/hatch
Source: https://github.com/pypa/hatch/archive/refs/tags/hatch-v%{version}.tar.gz
-# PATCH-FIX-UPSTREAM fix-sdist-target.patch -- gh#pypa/hatch@1b10663e645e
-Patch0: fix-sdist-target.patch
-# PATCH-FIX-UPSTREAM hatch-pr828-pth-tests.patch, gh#pypa/hatch#828
-Patch1: hatch-pr828-pth-tests.patch
-# PATCH-FIX-UPSTREAM CI.patch, gh#pypa/hatch#940
-Patch2: CI.patch
-# PATCH-FIX-UPSTREAM packaging232.patch gh#pypa/hatch#989
-Patch3: packaging232.patch
-BuildRequires: %{python_module base >= 3.7}
-BuildRequires: %{python_module hatchling >= 1.14}
+BuildRequires: %{python_module base >= 3.8}
+BuildRequires: %{python_module hatch-vcs >= 0.3}
+BuildRequires: %{python_module hatchling >= 1.19}
BuildRequires: %{python_module pip}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -54,14 +47,12 @@
%if %{with test}
BuildRequires: %{python_module filelock >= 3.7.1}
BuildRequires: %{python_module hatch = %{version}}
-# Due to Patch1, gh#pypa/hatch#828
-BuildRequires: %{python_module hatchling >= 1.17.1}
BuildRequires: %{python_module pytest-mock}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module trustme}
+BuildRequires: cargo
%endif
-
%python_subpackages
%description
@@ -94,7 +85,11 @@
# tests expect this to be unset and use their own reproducible value. Nothing installed from here.
# https://hatch.pypa.io/latest/config/build/#reproducible-builds
unset SOURCE_DATE_EPOCH
-%pytest
+# finds bash instead of expected sh as default shell inside obs
+donttest="(test_install and test_already_installed_update_prompt)"
+donttest="$donttest or (test_install and test_already_installed_update_flag)"
+donttest="$donttest or (test_install and test_all)"
+%pytest -k "not ($donttest)"
%endif
%post
++++++ hatch-v1.7.0.tar.gz -> hatch-v1.8.1.tar.gz ++++++
++++ 24726 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ocaml-qcheck for openSUSE:Factory checked in at 2023-12-19 23:16:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ocaml-qcheck (Old)
and /work/SRC/openSUSE:Factory/.ocaml-qcheck.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ocaml-qcheck"
Tue Dec 19 23:16:12 2023 rev:14 rq:1133969 version:0.21.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/ocaml-qcheck/ocaml-qcheck.changes 2023-09-15 22:10:54.016773601 +0200
+++ /work/SRC/openSUSE:Factory/.ocaml-qcheck.new.9037/ocaml-qcheck.changes 2023-12-19 23:16:21.878696290 +0100
@@ -1,0 +2,6 @@
+Tue Dec 12 12:12:12 UTC 2023 - ohering(a)suse.de
+
+- Update to version 0.21.3
+ see included CHANGELOG.md file for details
+
+-------------------------------------------------------------------
Old:
----
ocaml-qcheck-0.21.2.tar.xz
New:
----
ocaml-qcheck-0.21.3.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ocaml-qcheck.spec ++++++
--- /var/tmp/diff_new_pack.YyqMzz/_old 2023-12-19 23:16:22.470717848 +0100
+++ /var/tmp/diff_new_pack.YyqMzz/_new 2023-12-19 23:16:22.474717994 +0100
@@ -32,7 +32,7 @@
%define pkg ocaml-qcheck
Name: %pkg%nsuffix
-Version: 0.21.2
+Version: 0.21.3
Release: 0
%{?ocaml_preserve_bytecode}
Summary: QuickCheck inspired property-based testing for OCaml
@@ -42,8 +42,7 @@
Source0: %pkg-%version.tar.xz
BuildRequires: ocaml(ocaml_base_version) >= 4.08
BuildRequires: ocaml-dune >= 2.8
-BuildRequires: ocaml-rpm-macros >= 20230101
-BuildRequires: ocamlfind(bytes)
+BuildRequires: ocaml-rpm-macros >= 20231101
BuildRequires: ocamlfind(ounit2)
BuildRequires: ocamlfind(ppxlib)
BuildRequires: ocamlfind(ppx_deriving)
++++++ _service ++++++
--- /var/tmp/diff_new_pack.YyqMzz/_old 2023-12-19 23:16:22.522719742 +0100
+++ /var/tmp/diff_new_pack.YyqMzz/_new 2023-12-19 23:16:22.526719887 +0100
@@ -1,7 +1,7 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="filename">ocaml-qcheck</param>
- <param name="revision">321628b10b5f84cee45d4c15e2939927562b1b98</param>
+ <param name="revision">e43c6756af3516a19bd626e43f21b3c6514e7b1c</param>
<param name="scm">git</param>
<param name="submodules">disable</param>
<param name="url">https://github.com/c-cube/qcheck.git</param>
++++++ ocaml-qcheck-0.21.2.tar.xz -> ocaml-qcheck-0.21.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/CHANGELOG.md new/ocaml-qcheck-0.21.3/CHANGELOG.md
--- old/ocaml-qcheck-0.21.2/CHANGELOG.md 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/CHANGELOG.md 2023-11-30 15:00:24.000000000 +0100
@@ -1,5 +1,10 @@
# Changes
+## 0.21.3
+
+- Drop the dependency on `base-bytes` as it is provided in all supported
+ versions of the OCaml compiler
+
## 0.21.2
- Reintroduce the `Shrink.list_spine` fix by catching `Invalid_argument` and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/README.adoc new/ocaml-qcheck-0.21.3/README.adoc
--- old/ocaml-qcheck-0.21.2/README.adoc 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/README.adoc 2023-11-30 15:00:24.000000000 +0100
@@ -406,10 +406,11 @@
A ppx_deriver is provided to derive QCheck generators from a type declaration.
-```ocaml
+[source,OCaml]
+----
type tree = Leaf of int | Node of tree * tree
[@@deriving qcheck]
-```
+----
See the according https://github.com/c-cube/qcheck/tree/master/src/ppx_deriving_qcheck/[READM…
for more information and examples.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/ocaml-qcheck.changes new/ocaml-qcheck-0.21.3/ocaml-qcheck.changes
--- old/ocaml-qcheck-0.21.2/ocaml-qcheck.changes 1970-01-01 01:00:00.000000000 +0100
+++ new/ocaml-qcheck-0.21.3/ocaml-qcheck.changes 2023-11-30 15:00:24.000000000 +0100
@@ -0,0 +1,6 @@
+c199aa5 Prepare CHANGELOG for next release
+08c3e47 Fix asciidoc error
+86ced4a Merge pull request #284 from jamesjer/main
+31d98b8 Remove the dependency on `bytes`
+9672fe6 Merge pull request #285 from shym/no-bytes
+e43c675 (tag: v0.21.3) Prepare for v0.21.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/qcheck-alcotest.opam new/ocaml-qcheck-0.21.3/qcheck-alcotest.opam
--- old/ocaml-qcheck-0.21.2/qcheck-alcotest.opam 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/qcheck-alcotest.opam 2023-11-30 15:00:24.000000000 +0100
@@ -5,7 +5,7 @@
license: "BSD-2-Clause"
synopsis: "Alcotest backend for qcheck"
doc: ["http://c-cube.github.io/qcheck/"]
-version: "0.21.2"
+version: "0.21.3"
tags: [
"test"
"quickcheck"
@@ -19,7 +19,6 @@
]
depends: [
"dune" { >= "2.8.0" }
- "base-bytes"
"base-unix"
"qcheck-core" { = version }
"alcotest" {>= "0.8.1"}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/qcheck-core.opam new/ocaml-qcheck-0.21.3/qcheck-core.opam
--- old/ocaml-qcheck-0.21.2/qcheck-core.opam 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/qcheck-core.opam 2023-11-30 15:00:24.000000000 +0100
@@ -5,7 +5,7 @@
license: "BSD-2-Clause"
synopsis: "Core qcheck library"
doc: ["http://c-cube.github.io/qcheck/"]
-version: "0.21.2"
+version: "0.21.3"
tags: [
"test"
"property"
@@ -18,7 +18,6 @@
]
depends: [
"dune" { >= "2.8.0" }
- "base-bytes"
"base-unix"
"alcotest" {with-test}
"odoc" {with-doc}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/qcheck-ounit.opam new/ocaml-qcheck-0.21.3/qcheck-ounit.opam
--- old/ocaml-qcheck-0.21.2/qcheck-ounit.opam 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/qcheck-ounit.opam 2023-11-30 15:00:24.000000000 +0100
@@ -5,7 +5,7 @@
homepage: "https://github.com/c-cube/qcheck/"
doc: ["http://c-cube.github.io/qcheck/"]
synopsis: "OUnit backend for qcheck"
-version: "0.21.2"
+version: "0.21.3"
tags: [
"qcheck"
"quickcheck"
@@ -18,7 +18,6 @@
]
depends: [
"dune" { >= "2.8.0" }
- "base-bytes"
"base-unix"
"qcheck-core" { = version }
"ounit2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/qcheck.opam new/ocaml-qcheck-0.21.3/qcheck.opam
--- old/ocaml-qcheck-0.21.2/qcheck.opam 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/qcheck.opam 2023-11-30 15:00:24.000000000 +0100
@@ -5,7 +5,7 @@
homepage: "https://github.com/c-cube/qcheck/"
license: "BSD-2-Clause"
doc: ["http://c-cube.github.io/qcheck/"]
-version: "0.21.2"
+version: "0.21.3"
tags: [
"test"
"property"
@@ -18,7 +18,6 @@
]
depends: [
"dune" { >= "2.8.0" }
- "base-bytes"
"base-unix"
"qcheck-core" { = version }
"qcheck-ounit" { = version }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/src/alcotest/dune new/ocaml-qcheck-0.21.3/src/alcotest/dune
--- old/ocaml-qcheck-0.21.2/src/alcotest/dune 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/src/alcotest/dune 2023-11-30 15:00:24.000000000 +0100
@@ -3,6 +3,6 @@
(name qcheck_alcotest)
(public_name qcheck-alcotest)
(wrapped false)
- (libraries unix bytes qcheck-core qcheck-core.runner alcotest)
+ (libraries unix qcheck-core qcheck-core.runner alcotest)
(flags :standard -w +a-4-42-44-48-50-58-32-60@8 -safe-string)
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/src/core/dune new/ocaml-qcheck-0.21.3/src/core/dune
--- old/ocaml-qcheck-0.21.2/src/core/dune 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/src/core/dune 2023-11-30 15:00:24.000000000 +0100
@@ -3,6 +3,6 @@
(name qcheck_core)
(public_name qcheck-core)
(wrapped false)
- (libraries unix bytes)
+ (libraries unix)
(flags :standard -w +a-4-42-44-48-50-58-32-60@8 -safe-string)
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ocaml-qcheck-0.21.2/src/ounit/dune new/ocaml-qcheck-0.21.3/src/ounit/dune
--- old/ocaml-qcheck-0.21.2/src/ounit/dune 2023-08-25 10:56:42.000000000 +0200
+++ new/ocaml-qcheck-0.21.3/src/ounit/dune 2023-11-30 15:00:24.000000000 +0100
@@ -3,6 +3,6 @@
(name qcheck_ounit)
(public_name qcheck-ounit)
(wrapped false)
- (libraries unix bytes qcheck-core qcheck-core.runner ounit2)
+ (libraries unix qcheck-core qcheck-core.runner ounit2)
(flags :standard -w +a-4-42-44-48-50-58-32-60@8 -safe-string)
)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package pluto for openSUSE:Factory checked in at 2023-12-19 23:16:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pluto (Old)
and /work/SRC/openSUSE:Factory/.pluto.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pluto"
Tue Dec 19 23:16:10 2023 rev:39 rq:1133953 version:5.19.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/pluto/pluto.changes 2023-11-09 21:36:29.595311668 +0100
+++ /work/SRC/openSUSE:Factory/.pluto.new.9037/pluto.changes 2023-12-19 23:16:19.126596071 +0100
@@ -1,0 +2,6 @@
+Mon Dec 18 20:53:39 UTC 2023 - kastl(a)b1-systems.de
+
+- Update to version 5.19.0:
+ * Update Dockerfile (#519)
+
+-------------------------------------------------------------------
Old:
----
pluto-5.18.6.obscpio
New:
----
pluto-5.19.0.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ pluto.spec ++++++
--- /var/tmp/diff_new_pack.hEQqbf/_old 2023-12-19 23:16:20.662652007 +0100
+++ /var/tmp/diff_new_pack.hEQqbf/_new 2023-12-19 23:16:20.662652007 +0100
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: pluto
-Version: 5.18.6
+Version: 5.19.0
Release: 0
Summary: A cli tool to help discover deprecated apiVersions in Kubernetes
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.hEQqbf/_old 2023-12-19 23:16:20.694653172 +0100
+++ /var/tmp/diff_new_pack.hEQqbf/_new 2023-12-19 23:16:20.698653318 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/FairwindsOps/pluto</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v5.18.6</param>
+ <param name="revision">v5.19.0</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.hEQqbf/_old 2023-12-19 23:16:20.718654046 +0100
+++ /var/tmp/diff_new_pack.hEQqbf/_new 2023-12-19 23:16:20.722654192 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/FairwindsOps/pluto</param>
- <param name="changesrevision">7d288332f5065c398b6bb780907165a4ab52b3ee</param></service></servicedata>
+ <param name="changesrevision">37f1ee128fd56136729e3491c399bd86e7690e15</param></service></servicedata>
(No newline at EOF)
++++++ pluto-5.18.6.obscpio -> pluto-5.19.0.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pluto-5.18.6/Dockerfile new/pluto-5.19.0/Dockerfile
--- old/pluto-5.18.6/Dockerfile 2023-11-09 14:24:34.000000000 +0100
+++ new/pluto-5.19.0/Dockerfile 2023-12-18 18:47:54.000000000 +0100
@@ -1,4 +1,4 @@
-FROM alpine:3.18
+FROM alpine:3.19
LABEL org.opencontainers.image.authors="FairwindsOps, Inc." \
org.opencontainers.image.vendor="FairwindsOps, Inc." \
++++++ pluto.obsinfo ++++++
--- /var/tmp/diff_new_pack.hEQqbf/_old 2023-12-19 23:16:20.934661912 +0100
+++ /var/tmp/diff_new_pack.hEQqbf/_new 2023-12-19 23:16:20.934661912 +0100
@@ -1,5 +1,5 @@
name: pluto
-version: 5.18.6
-mtime: 1699536274
-commit: 7d288332f5065c398b6bb780907165a4ab52b3ee
+version: 5.19.0
+mtime: 1702921674
+commit: 37f1ee128fd56136729e3491c399bd86e7690e15
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/pluto/vendor.tar.gz /work/SRC/openSUSE:Factory/.pluto.new.9037/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package julia for openSUSE:Factory checked in at 2023-12-19 23:16:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/julia (Old)
and /work/SRC/openSUSE:Factory/.julia.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "julia"
Tue Dec 19 23:16:03 2023 rev:2 rq:1133936 version:1.9.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/julia/julia.changes 2023-12-13 18:35:12.482948635 +0100
+++ /work/SRC/openSUSE:Factory/.julia.new.9037/julia.changes 2023-12-19 23:16:14.262418941 +0100
@@ -1,0 +2,43 @@
+Tue Dec 19 02:34:10 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Remove unsatisfactory architectures that does not guaranteed to build.
+ It seems x86_64 is the guaranteed to work anyway.
+
+-------------------------------------------------------------------
+Tue Dec 19 02:28:16 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Specfile cleanup:
+ * specify more dependencies
+ - openlibm-devel
+ - julia-devel or julia-compat-devel which provides libjulia.so
+
+-------------------------------------------------------------------
+Mon Dec 18 22:35:16 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Some dependencies require to be explicit since Julia uses dlopen
+ on it's stdlib and other julia scripts
+
+-------------------------------------------------------------------
+Mon Dec 18 14:24:24 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Specfile cleanup:
+ * Exclude now only bundled libs
+ - LLVM, uv, ccalltest, llvmcalltest, openblas with INTERFACE64 enabled,
+ libjulia-internal and libjulia-codegen
+ * Fdupe only /usr/share/julia.
+ * Define some dependencies that are dlopened
+
+-------------------------------------------------------------------
+Mon Dec 18 06:20:48 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- There should be a package libjulia1.
+- CFLAGS and CXXFLAGS use provided %optflags.
+- libjulia-compat1 should provide libjulia1 to fulfill soname shlib naming policies.
+- Remove unused rpmlints:
+ * devel-dependency
+- Turn all eol encondings to unix to all files
+- Add rpmlint for "W: hidden-file-or-dir /usr/share/julia/stdlib/v1.9/Pkg/test/test_packages/AugmentedPlatform/.pkg"
+ That contains julia scripts. Leave it alone.
+- fdupes at the end of the install section.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ julia.spec ++++++
--- /var/tmp/diff_new_pack.TbNxce/_old 2023-12-19 23:16:16.778510565 +0100
+++ /var/tmp/diff_new_pack.TbNxce/_new 2023-12-19 23:16:16.794511148 +0100
@@ -26,18 +26,25 @@
%global __provides_exclude_from ^%{_libdir}/%{name}/.*\\.so$
# List all bundled libraries.
-%global _privatelibs lib(LLVM-.*|ccalltest|dSFMT|git2|llvmcalltest|openlibm|suitesparse_wrapper|mbedcrypto|mbedtls|mbedx509|uv)\\.so.*
+%global _privatelibs lib(LLVM-.*|ccalltest|llvmcalltest|uv|openblas.*|sys|julia.*)\\.so.*
%global __provides_exclude ^(%{_privatelibs})$
%global __requires_exclude ^(%{_privatelibs})$
%define libjulia_sover_major 1
%define libjulia_sover_minor 9
+
%if "@BUILD_FLAVOR@%{nil}" == "compat"
%define compat_mode 1
%else
%define compat_mode 0
%endif
+%if 0%{?compat_mode}
+%define libname libjulia-compat%{libjulia_sover_major}
+%else
+%define libname libjulia%{libjulia_sover_major}
+%endif
+
# LTO currently makes building blastrampoline and Julia itself fail
# It is not enabled upstream anyway
%global _lto_cflags %nil
@@ -68,6 +75,7 @@
BuildRequires: ca-certificates
BuildRequires: cmake
BuildRequires: dSFMT-devel
+BuildRequires: dos2unix
BuildRequires: double-conversion-devel
BuildRequires: fdupes
BuildRequires: fftw3-threads-devel >= 3.3.4
@@ -110,6 +118,35 @@
Requires: ca-certificates
Requires: p7zip >= 16
Requires: readline
+
+# Libraries used by CompilerSupportLibraries_jll, blastrampoline,
+# nghttp2_jll but not detected as they are dlopen()ed but not linked to
+%if 0%{?__isa_bits} == 64
+Requires: libgfortran.so.5()(64bit)
+Requires: libgomp.so.1()(64bit)
+Requires: libnghttp2.so.14()(64bit)
+%else
+Requires: libgfortran.so.5
+Requires: libgomp.so.1
+Requires: libnghttp2.so.14
+%endif
+
+# Same as the previous comment. But the difference
+# is that we applied julia-hardcoded-libs.patch
+# so therefore it is needed
+Requires: libblastrampoline-devel
+Requires: libnghttp2-devel
+Requires: openlibm-devel
+Requires: suitesparse-devel
+
+# Julia requires the devel package as well
+# specifically libjulia.so
+%if 0%{?compat_mode}
+Requires: julia-compat-devel
+%else
+Requires: julia-devel
+%endif
+
Requires(post): %{_sbindir}/update-alternatives
Requires(post): %{_sbindir}/ldconfig
Requires(postun):%{_sbindir}/update-alternatives
@@ -139,14 +176,10 @@
Conflicts: julia
Provides: julia = %{version}
%endif
-# Since the 32-bit julia package is already being built using MARCH=pentium4,
-# which is the most generic flag supported, then the julia-compat mode only
-# makes sense for 64-bit architectures.
-%if 0%{?compat_mode}
+
+# Let's not be optimistic towards 32 bit support and other architectures
+# openSUSE cannot guarantee to support, shall we?
ExclusiveArch: x86_64
-%else
-ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
-%endif
%description
Julia is a high-level, high-performance dynamic programming language for
@@ -163,10 +196,10 @@
%package devel
Summary: Julia development, debugging and testing files
Group: Development/Languages/Other
-Requires: %{name} = %{version}
+Requires: %{libname} = %{version}
%if 0%{?compat_mode}
Conflicts: julia-devel
-Provides: julia-devel = %{version}
+Provides: julia-devel
%endif
%description devel
@@ -176,6 +209,17 @@
in the Julia language, but rather for embedding Julia into external programs or
debugging Julia itself.
+%package -n %{libname}
+Summary: Julia shared object libraries
+Group: System/Libraries
+%if 0%{?compat_mode}
+Conflicts: libjulia%{libjulia_sover_major}
+Provides: libjulia%{libjulia_sover_major}
+%endif
+
+%description -n %{libname}
+Contains library files for interacting with Julia through C interfaces.
+
%prep
%setup -q -n julia-%{version}
patch -p1 -i %{PATCH1}
@@ -246,15 +290,12 @@
%define julia_march x86-64
%endif
-%ifarch armv6l armv6hl aarch64
+%ifarch armv6l armv6hl
export LDFLAGS="$LDFLAGS -latomic"
%endif
-# We need these compilation flags to avoid error when building MBEDTLS with
-# GCC-11.
-# Ref.: https://build.opensuse.org/package/show/security:tls/mbedtls
-export CFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
-export CXXFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
+export CFLAGS="%{optflags}"
+export CXXFLAGS="%{optflags}"
export LD_LIBRARY_PATH=%{_builddir}/%{buildsubdir}/build/usr/lib:%{_builddir}/%{buildsubdir}/build%{_libdir}:%{_builddir}/%{buildsubdir}/usr/lib
pushd deps
@@ -327,11 +368,13 @@
# make %{?_smp_mflags} test
%install
-# We need these compilation flags to avoid error when building MBEDTLS with
-# GCC-11.
-# Ref.: https://build.opensuse.org/package/show/security:tls/mbedtls
-export CFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
-export CXXFLAGS="%{optflags} -Wno-stringop-overflow -Wno-maybe-uninitialized"
+
+%ifarch armv6l armv6hl
+export LDFLAGS="$LDFLAGS -latomic"
+%endif
+
+export CFLAGS="%{optflags}"
+export CXXFLAGS="%{optflags}"
export LD_LIBRARY_PATH=%{_builddir}/%{buildsubdir}/build/usr/lib:%{_builddir}/%{buildsubdir}/build%{_libdir}:%{_builddir}/%{buildsubdir}/usr/lib
make install DESTDIR=%{buildroot} \
@@ -424,9 +467,6 @@
rm %{buildroot}%{_datadir}/appdata/julia.appdata.xml
%endif
-# Remove duplicated files.
-%fdupes %{buildroot}
-
%suse_update_desktop_file -r julia Science Math
mv %{buildroot}%{_bindir}/julia %{buildroot}%{_bindir}/julia-base
@@ -439,6 +479,15 @@
ln -sf %{_sysconfdir}/alternatives/julia %{buildroot}%{_bindir}/julia
+# Convert all eol encodings to Unix
+find %{buildroot} -type f -execdir dos2unix -k {} \;
+
+# make it executable
+chmod +x %{buildroot}%{_datadir}/julia/stdlib/v1.9/SparseArrays/gen/generator.jl
+
+# Remove duplicated files.
+%fdupes %{buildroot}%{_datadir}/julia
+
%post
%{_sbindir}/update-alternatives --install %{_bindir}/julia \
julia %{_bindir}/julia-base 5
@@ -450,8 +499,10 @@
fi
%{_sbindir}/ldconfig
-%post devel -p /sbin/ldconfig
-%postun devel -p /sbin/ldconfig
+%post devel -p %{_sbindir}/ldconfig
+%postun devel -p %{_sbindir}/ldconfig
+%post -n %{libname} -p %{_sbindir}/ldconfig
+%postun -n %{libname} -p %{_sbindir}/ldconfig
%files
%doc CONTRIBUTING.md NEWS.md README.md
@@ -477,7 +528,6 @@
%{_datadir}/applications/julia.desktop
%{_prefix}/lib/julia
%{_libdir}/julia/
-%{_libdir}/libjulia.so.%{libjulia_sover_major}.%{libjulia_sover_minor}
%{_mandir}/man1/julia.1%{?ext_man}
%dir %{_sysconfdir}/julia/
%config(noreplace) %{_sysconfdir}/julia/startup.jl
@@ -486,6 +536,8 @@
%{_datadir}/julia/test/
%{_datadir}/julia/julia-config.jl
%{_includedir}/julia/
-%{_libdir}/libjulia.so.%{libjulia_sover_major}
%{_libdir}/libjulia.so
+%files -n %{libname}
+%{_libdir}/libjulia.so.*
+
++++++ julia-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.TbNxce/_old 2023-12-19 23:16:17.390532852 +0100
+++ /var/tmp/diff_new_pack.TbNxce/_new 2023-12-19 23:16:17.394532997 +0100
@@ -5,6 +5,9 @@
# We should not unstrip sofiles or binaries generated from this package
# https://github.com/JuliaLang/julia/issues/17941
addFilter("unstripped-binary-or-object")
-# Julia should be an exception. Otherwise, it fails to execute :)
+addFilter("W: hidden-file-or-dir /usr/share/julia/stdlib/v1.9/Pkg/test/test_packages/AugmentedPlatform/*")
+# Julia is unique that rpm cant detect what it needs because
+# it is dlopened
+addFilter("explicit-lib-dependency")
addFilter("devel-dependency")
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-bson for openSUSE:Factory checked in at 2023-12-19 23:16:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-bson (Old)
and /work/SRC/openSUSE:Factory/.python-bson.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-bson"
Tue Dec 19 23:16:00 2023 rev:5 rq:1133931 version:0.5.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-bson/python-bson.changes 2022-11-03 19:15:42.908547547 +0100
+++ /work/SRC/openSUSE:Factory/.python-bson.new.9037/python-bson.changes 2023-12-19 23:16:11.330312168 +0100
@@ -1,0 +2,7 @@
+Tue Dec 19 01:47:46 UTC 2023 - Steve Kowalik <steven.kowalik(a)suse.com>
+
+- Add patch support-python312.patch:
+ * Support Python 3.12 by using assertEqual.
+- Switch to pyproject macros.
+
+-------------------------------------------------------------------
New:
----
support-python312.patch
BETA DEBUG BEGIN:
New:
- Add patch support-python312.patch:
* Support Python 3.12 by using assertEqual.
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-bson.spec ++++++
--- /var/tmp/diff_new_pack.cFuxeH/_old 2023-12-19 23:16:12.514355285 +0100
+++ /var/tmp/diff_new_pack.cFuxeH/_new 2023-12-19 23:16:12.518355430 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-bson
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -21,12 +21,15 @@
Release: 0
Summary: BSON codec for Python
License: Apache-2.0 AND BSD-3-Clause
-Group: Development/Languages/Python
URL: https://github.com/py-bson/bson
Source: https://github.com/py-bson/bson/archive/%{version}.tar.gz#/bson-%{version}.…
# PATCH-FIX-UPSTREAM drop-python2-support.patch gh#py-bson/bson#118
-Patch: drop-python2-support.patch
+Patch0: drop-python2-support.patch
+# PATCH-FIX-OPENSUSE Use assertEqual to support Python 3.12
+Patch1: support-python312.patch
+BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-python-dateutil >= 2.4.0
@@ -44,10 +47,10 @@
sed -i '1 {/^#!/d}' bson/*.py
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@@ -57,5 +60,5 @@
%doc README.rst
%license LICENSE LICENSE_APACHE
%{python_sitelib}/bson
-%{python_sitelib}/bson-%{version}*-info
+%{python_sitelib}/bson-%{version}.dist-info
++++++ support-python312.patch ++++++
Index: bson-0.5.10/bson/tests/test_array.py
===================================================================
--- bson-0.5.10.orig/bson/tests/test_array.py
+++ bson-0.5.10/bson/tests/test_array.py
@@ -69,9 +69,9 @@ class TestArray(TestCase):
def test_long_array(self):
serialized = dumps(self.doc)
doc2 = loads(serialized)
- self.assertEquals(self.doc, doc2)
+ self.assertEqual(self.doc, doc2)
def test_encoded_order(self):
serialized = dumps(self.doc)
expected = repr(serialized)[1:]
- self.assertEquals(expected, '\'\\xea\\x08\\x00\\x00\\x04lyrics\\x00\\xdd\\x08\\x00\\x00\\x020\\x00\\x14\\x00\\x00\\x00Viva La Vida lyrics\\x00\\x021\\x00\\x01\\x00\\x00\\x00\\x00\\x022\\x00!\\x00\\x00\\x00 I used to rule the world\\x00\\x023\\x00-\\x00\\x00\\x00 Seas would rise when I gave the word\\x00\\x024\\x00)\\x00\\x00\\x00 Now in the morning I sleep alone\\x00\\x025\\x00(\\x00\\x00\\x00 Sweep the streets I used to own\\x00\\x026\\x00\\x01\\x00\\x00\\x00\\x00\\x027\\x00 \\x00\\x00\\x00 I used to roll the dice\\x00\\x028\\x00)\\x00\\x00\\x00 Feel the fear in my enemy\\\'s eyes\\x00\\x029\\x00\\\'\\x00\\x00\\x00 Listen as the crowd would sing\\x00\\x0210\\x008\\x00\\x00\\x00 "Now the old king is dead! Long live the king!"\\x00\\x0211\\x00\\x01\\x00\\x00\\x00\\x00\\x0212\\x00"\\x00\\x00\\x00 One minute I held the key\\x00\\x0213\\x00)\\x00\\x00\\x00 Next the walls were closed on me\\x00\\x0214\\x00/\\x0
0\\x00\\x00 And I discovered that my castles stand\\x00\\x0215\\x001\\x00\\x00\\x00 Upon pillars of salt and pillars of sand\\x00\\x0216\\x00\\x01\\x00\\x00\\x00\\x00\\x0217\\x00)\\x00\\x00\\x00 I hear Jerusalem bells a ringing\\x00\\x0218\\x00)\\x00\\x00\\x00 Roman Cavalry choirs are singing\\x00\\x0219\\x00*\\x00\\x00\\x00 Be my mirror, my sword and shield\\x00\\x0220\\x00+\\x00\\x00\\x00 My missionaries in a foreign field\\x00\\x0221\\x00\\x01\\x00\\x00\\x00\\x00\\x0222\\x00(\\x00\\x00\\x00 For some reason I can\\\'t explain\\x00\\x0223\\x00$\\x00\\x00\\x00 Once you go there was never\\x00\\x0224\\x00\\x1d\\x00\\x00\\x00 Never an honest word\\x00\\x0225\\x00,\\x00\\x00\\x00 And that was when I ruled the world\\x00\\x0226\\x00\\x01\\x00\\x00\\x00\\x00\\x0227\\x00(\\x00\\x00\\x00 It was the wicked and wild wind\\x00\\x0228\\x00)\\x00\\x00\\x00 Blew down the doors to let me in\\x00\\x0229\\x001\\x00\
\x00\\x00 Shattered windows and the sound of drums\\x00\\x0230\\x000\\x00\\x00\\x00 People couldn\\\'t believe what I\\\'d become\\x00\\x0231\\x00\\x01\\x00\\x00\\x00\\x00\\x0232\\x00\\x1d\\x00\\x00\\x00 Revolutionaries wait\\x00\\x0233\\x00&\\x00\\x00\\x00 For my head on a silver plate\\x00\\x0234\\x00)\\x00\\x00\\x00 Just a puppet on a lonely string\\x00\\x0235\\x00+\\x00\\x00\\x00 Oh who would ever want to be king?\\x00\\x0236\\x00\\x01\\x00\\x00\\x00\\x00\\x0237\\x00)\\x00\\x00\\x00 I hear Jerusalem bells a ringing\\x00\\x0238\\x00)\\x00\\x00\\x00 Roman Cavalry choirs are singing\\x00\\x0239\\x00*\\x00\\x00\\x00 Be my mirror, my sword and shield\\x00\\x0240\\x00+\\x00\\x00\\x00 My missionaries in a foreign field\\x00\\x0241\\x00\\x01\\x00\\x00\\x00\\x00\\x0242\\x00(\\x00\\x00\\x00 For some reason I can\\\'t explain\\x00\\x0243\\x00.\\x00\\x00\\x00 I know Saint Peter won\\\'t call my name\\x00\\x0
244\\x00\\x1d\\x00\\x00\\x00 Never an honest word\\x00\\x0245\\x00,\\x00\\x00\\x00 But that was when I ruled the world\\x00\\x0246\\x00\\x01\\x00\\x00\\x00\\x00\\x0247\\x00)\\x00\\x00\\x00 I hear Jerusalem bells a ringing\\x00\\x0248\\x00)\\x00\\x00\\x00 Roman Cavalry choirs are singing\\x00\\x0249\\x00*\\x00\\x00\\x00 Be my mirror, my sword and shield\\x00\\x0250\\x00+\\x00\\x00\\x00 My missionaries in a foreign field\\x00\\x0251\\x00\\x01\\x00\\x00\\x00\\x00\\x0252\\x00(\\x00\\x00\\x00 For some reason I can\\\'t explain\\x00\\x0253\\x00.\\x00\\x00\\x00 I know Saint Peter won\\\'t call my name\\x00\\x0254\\x00\\x1d\\x00\\x00\\x00 Never an honest word\\x00\\x0255\\x00,\\x00\\x00\\x00 But that was when I ruled the world\\x00\\x00\\x00\'')
+ self.assertEqual(expected, '\'\\xea\\x08\\x00\\x00\\x04lyrics\\x00\\xdd\\x08\\x00\\x00\\x020\\x00\\x14\\x00\\x00\\x00Viva La Vida lyrics\\x00\\x021\\x00\\x01\\x00\\x00\\x00\\x00\\x022\\x00!\\x00\\x00\\x00 I used to rule the world\\x00\\x023\\x00-\\x00\\x00\\x00 Seas would rise when I gave the word\\x00\\x024\\x00)\\x00\\x00\\x00 Now in the morning I sleep alone\\x00\\x025\\x00(\\x00\\x00\\x00 Sweep the streets I used to own\\x00\\x026\\x00\\x01\\x00\\x00\\x00\\x00\\x027\\x00 \\x00\\x00\\x00 I used to roll the dice\\x00\\x028\\x00)\\x00\\x00\\x00 Feel the fear in my enemy\\\'s eyes\\x00\\x029\\x00\\\'\\x00\\x00\\x00 Listen as the crowd would sing\\x00\\x0210\\x008\\x00\\x00\\x00 "Now the old king is dead! Long live the king!"\\x00\\x0211\\x00\\x01\\x00\\x00\\x00\\x00\\x0212\\x00"\\x00\\x00\\x00 One minute I held the key\\x00\\x0213\\x00)\\x00\\x00\\x00 Next the walls were closed on me\\x00\\x0214\\x00/\\x00
\\x00\\x00 And I discovered that my castles stand\\x00\\x0215\\x001\\x00\\x00\\x00 Upon pillars of salt and pillars of sand\\x00\\x0216\\x00\\x01\\x00\\x00\\x00\\x00\\x0217\\x00)\\x00\\x00\\x00 I hear Jerusalem bells a ringing\\x00\\x0218\\x00)\\x00\\x00\\x00 Roman Cavalry choirs are singing\\x00\\x0219\\x00*\\x00\\x00\\x00 Be my mirror, my sword and shield\\x00\\x0220\\x00+\\x00\\x00\\x00 My missionaries in a foreign field\\x00\\x0221\\x00\\x01\\x00\\x00\\x00\\x00\\x0222\\x00(\\x00\\x00\\x00 For some reason I can\\\'t explain\\x00\\x0223\\x00$\\x00\\x00\\x00 Once you go there was never\\x00\\x0224\\x00\\x1d\\x00\\x00\\x00 Never an honest word\\x00\\x0225\\x00,\\x00\\x00\\x00 And that was when I ruled the world\\x00\\x0226\\x00\\x01\\x00\\x00\\x00\\x00\\x0227\\x00(\\x00\\x00\\x00 It was the wicked and wild wind\\x00\\x0228\\x00)\\x00\\x00\\x00 Blew down the doors to let me in\\x00\\x0229\\x001\\x00\\
x00\\x00 Shattered windows and the sound of drums\\x00\\x0230\\x000\\x00\\x00\\x00 People couldn\\\'t believe what I\\\'d become\\x00\\x0231\\x00\\x01\\x00\\x00\\x00\\x00\\x0232\\x00\\x1d\\x00\\x00\\x00 Revolutionaries wait\\x00\\x0233\\x00&\\x00\\x00\\x00 For my head on a silver plate\\x00\\x0234\\x00)\\x00\\x00\\x00 Just a puppet on a lonely string\\x00\\x0235\\x00+\\x00\\x00\\x00 Oh who would ever want to be king?\\x00\\x0236\\x00\\x01\\x00\\x00\\x00\\x00\\x0237\\x00)\\x00\\x00\\x00 I hear Jerusalem bells a ringing\\x00\\x0238\\x00)\\x00\\x00\\x00 Roman Cavalry choirs are singing\\x00\\x0239\\x00*\\x00\\x00\\x00 Be my mirror, my sword and shield\\x00\\x0240\\x00+\\x00\\x00\\x00 My missionaries in a foreign field\\x00\\x0241\\x00\\x01\\x00\\x00\\x00\\x00\\x0242\\x00(\\x00\\x00\\x00 For some reason I can\\\'t explain\\x00\\x0243\\x00.\\x00\\x00\\x00 I know Saint Peter won\\\'t call my name\\x00\\x02
44\\x00\\x1d\\x00\\x00\\x00 Never an honest word\\x00\\x0245\\x00,\\x00\\x00\\x00 But that was when I ruled the world\\x00\\x0246\\x00\\x01\\x00\\x00\\x00\\x00\\x0247\\x00)\\x00\\x00\\x00 I hear Jerusalem bells a ringing\\x00\\x0248\\x00)\\x00\\x00\\x00 Roman Cavalry choirs are singing\\x00\\x0249\\x00*\\x00\\x00\\x00 Be my mirror, my sword and shield\\x00\\x0250\\x00+\\x00\\x00\\x00 My missionaries in a foreign field\\x00\\x0251\\x00\\x01\\x00\\x00\\x00\\x00\\x0252\\x00(\\x00\\x00\\x00 For some reason I can\\\'t explain\\x00\\x0253\\x00.\\x00\\x00\\x00 I know Saint Peter won\\\'t call my name\\x00\\x0254\\x00\\x1d\\x00\\x00\\x00 Never an honest word\\x00\\x0255\\x00,\\x00\\x00\\x00 But that was when I ruled the world\\x00\\x00\\x00\'')
Index: bson-0.5.10/bson/tests/test_random_tree.py
===================================================================
--- bson-0.5.10.orig/bson/tests/test_random_tree.py
+++ bson-0.5.10/bson/tests/test_random_tree.py
@@ -61,4 +61,4 @@ class TestRandomTree(TestCase):
populate(p, 256, 4)
sp = dumps(p)
p2 = loads(sp)
- self.assertEquals(p, p2)
+ self.assertEqual(p, p2)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package zola for openSUSE:Factory checked in at 2023-12-19 23:15:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/zola (Old)
and /work/SRC/openSUSE:Factory/.zola.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "zola"
Tue Dec 19 23:15:56 2023 rev:10 rq:1133926 version:0.18.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/zola/zola.changes 2023-08-15 16:40:15.491090145 +0200
+++ /work/SRC/openSUSE:Factory/.zola.new.9037/zola.changes 2023-12-19 23:16:08.534210347 +0100
@@ -1,0 +2,12 @@
+Tue Dec 19 00:19:31 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Remove 0001-fix-life-in-zola-serve.patch. Part of 0.18.0 release now.
+- Remove cargo_config. Part of vendored tarball now.
+- Update to version 0.18.0:
+ * update dependencies
+ * remove some dummy file
+ * fix taxonomies missing lang in sitemap
+ * remove code blocks from search index
+ * elasticlunr-rs hu language support
+
+-------------------------------------------------------------------
Old:
----
0001-fix-life-in-zola-serve.patch
cargo_config
zola-0.17.2.tar.zst
New:
----
zola-0.18.0.tar.gz
BETA DEBUG BEGIN:
Old:
- Remove 0001-fix-life-in-zola-serve.patch. Part of 0.18.0 release now.
- Remove cargo_config. Part of vendored tarball now.
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ zola.spec ++++++
--- /var/tmp/diff_new_pack.9wzT5b/_old 2023-12-19 23:16:09.974262787 +0100
+++ /var/tmp/diff_new_pack.9wzT5b/_new 2023-12-19 23:16:09.978262932 +0100
@@ -17,15 +17,13 @@
Name: zola
-Version: 0.17.2
+Version: 0.18.0
Release: 0
Summary: Fast static site generator
License: MIT
URL: https://github.com/getzola/zola
-Source0: %{name}-%{version}.tar.zst
+Source0: https://github.com/getzola/zola/archive/refs/tags/v%{version}.tar.gz#/%{nam…
Source1: vendor.tar.zst
-Source2: cargo_config
-Patch1: https://github.com/getzola/zola/pull/2258.patch#/0001-fix-life-in-zola-serv…
BuildRequires: c++_compiler
BuildRequires: c_compiler
BuildRequires: cargo-packaging
@@ -42,8 +40,6 @@
%prep
%autosetup -a1 -p1
-mkdir .cargo
-cp %{SOURCE2} .cargo/config
%package fish-completion
Summary: Fish Completion for %{name}
++++++ _service ++++++
--- /var/tmp/diff_new_pack.9wzT5b/_old 2023-12-19 23:16:10.014264243 +0100
+++ /var/tmp/diff_new_pack.9wzT5b/_new 2023-12-19 23:16:10.018264389 +0100
@@ -1,28 +1,11 @@
<services>
- <service mode="manual" name="obs_scm">
- <param name="url">https://github.com/getzola/zola</param>
- <param name="versionformat">@PARENT_TAG@</param>
- <param name="scm">git</param>
- <param name="revision">7c6bdc1</param>
- <param name="versionrewrite-pattern">v(.*)</param>
- <param name="versionrewrite-replacement">\1</param>
- <param name="changesgenerate">enable</param>
- <param name="changesauthor">socvirnyl.estela(a)gmail.com</param>
- </service>
- <service mode="manual" name="tar" />
- <service mode="manual" name="recompress">
- <param name="file">*.tar</param>
- <param name="compression">zstd</param>
- </service>
- <service mode="manual" name="set_version"/>
+ <service mode="manual" name="download_files" />
<service name="cargo_vendor" mode="manual">
- <param name="srcdir">zola</param>
+ <param name="src">zola*.tar.gz</param>
<param name="compression">zst</param>
<param name="update">true</param>
</service>
- <service name="cargo_audit" mode="manual">
- <param name="srcdir">zola</param>
- </service>
+ <service name="cargo_audit" mode="manual" />
</services>
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.9wzT5b/_old and /var/tmp/diff_new_pack.9wzT5b/_new differ
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package opencl-cpp-headers for openSUSE:Factory checked in at 2023-12-19 23:15:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/opencl-cpp-headers (Old)
and /work/SRC/openSUSE:Factory/.opencl-cpp-headers.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "opencl-cpp-headers"
Tue Dec 19 23:15:54 2023 rev:13 rq:1133927 version:2023.12.14
Changes:
--------
--- /work/SRC/openSUSE:Factory/opencl-cpp-headers/opencl-cpp-headers.changes 2023-04-19 17:43:02.996218961 +0200
+++ /work/SRC/openSUSE:Factory/.opencl-cpp-headers.new.9037/opencl-cpp-headers.changes 2023-12-19 23:16:06.454134601 +0100
@@ -1,0 +2,13 @@
+Mon Dec 18 22:46:55 UTC 2023 - Aaron Puchert <aaronpuchert(a)alice-dsl.net>
+
+- Update to version 2023.12.14.
+ * Synchronize with OpenCL v3.0.15 specification release.
+ * The device query for CL_DEVICE_PLATFORM now returns a
+ cl::Platform instead of a cl_platform_id. Code wanting a
+ cl_platform_id instead can access this from a cl::Platform
+ using operator().
+ * Querying the device handle list for a semaphore now requires
+ using the semaphore-specific CL_SEMAPHORE_DEVICE_HANDLE_LIST_KHR
+ enum, since the CL_DEVICE_HANDLE_LIST_KHR enum has been removed.
+
+-------------------------------------------------------------------
Old:
----
v2023.04.17.tar.gz
New:
----
v2023.12.14.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ opencl-cpp-headers.spec ++++++
--- /var/tmp/diff_new_pack.omZZV1/_old 2023-12-19 23:16:07.014154994 +0100
+++ /var/tmp/diff_new_pack.omZZV1/_new 2023-12-19 23:16:07.014154994 +0100
@@ -18,7 +18,7 @@
Name: opencl-cpp-headers
-Version: 2023.04.17
+Version: 2023.12.14
Release: 0
Summary: OpenCL C++ headers
License: Apache-2.0
++++++ v2023.04.17.tar.gz -> v2023.12.14.tar.gz ++++++
++++ 3650 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package wayshot for openSUSE:Factory checked in at 2023-12-19 23:15:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wayshot (Old)
and /work/SRC/openSUSE:Factory/.wayshot.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wayshot"
Tue Dec 19 23:15:50 2023 rev:12 rq:1133921 version:1.3.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/wayshot/wayshot.changes 2023-09-06 18:58:11.567557667 +0200
+++ /work/SRC/openSUSE:Factory/.wayshot.new.9037/wayshot.changes 2023-12-19 23:16:03.610031033 +0100
@@ -1,0 +2,21 @@
+Mon Dec 18 22:43:02 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Remove sed line
+
+-------------------------------------------------------------------
+Mon Dec 18 22:28:26 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Remove cargo_config
+- Update to version 1.3.1:
+ * New features
+ - CLI fuzzy selector (--chooseoutput) for screenshots
+ * Improvements
+ - Switch log crate with tracing and parallelize image alterations
+ - Moved multi-monitor logic from wayshot to libwayshot
+ - Remove uneeded resizes and rotations of image buffers
+ - Deprecate xdpw fork in favor of the luminous portal
+ - Update wayland crates
+- Note that libwayshot contains breaking changes and improvements
+ as well but will not be mentioned here since this is wayshot, the cli.
+
+-------------------------------------------------------------------
Old:
----
cargo_config
wayshot-1.3.0.tar.gz
New:
----
wayshot-1.3.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wayshot.spec ++++++
--- /var/tmp/diff_new_pack.bfCmd5/_old 2023-12-19 23:16:04.182051863 +0100
+++ /var/tmp/diff_new_pack.bfCmd5/_new 2023-12-19 23:16:04.182051863 +0100
@@ -19,7 +19,7 @@
%global rustflags '-Clink-arg=-Wl,-z,relro,-z,now'
Name: wayshot
-Version: 1.3.0
+Version: 1.3.1
Release: 0
Summary: Screenshot tool for wlroots based compositors
License: (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (MIT OR Unlicense) AND (Apache-2.0 OR Zlib OR MIT) AND BSD-3-Clause AND ISC AND MIT AND Zlib AND BSD-2-Clause
@@ -27,7 +27,6 @@
URL: https://github.com/waycrate/wayshot
Source0: https://github.com/waycrate/wayshot/archive/refs/tags/%{version}.tar.gz#/%{…
Source1: vendor.tar.zst
-Source2: cargo_config
%if 0%{?suse_version} >= 1500
BuildRequires: cargo-packaging
%else
@@ -40,15 +39,12 @@
%prep
%autosetup -a1
-mkdir .cargo
-cp %{SOURCE2} .cargo/config
%build
pushd wayshot
%if 0%{?suse_version} >= 1500
RUSTFLAGS=%{rustflags} %{cargo_build}
%else
-sed -i 's/2021/2018/g' Cargo.toml
RUSTFLAGS=%{rustflags} cargo build --offline --release
%endif
popd
++++++ _service ++++++
--- /var/tmp/diff_new_pack.bfCmd5/_old 2023-12-19 23:16:04.218053173 +0100
+++ /var/tmp/diff_new_pack.bfCmd5/_new 2023-12-19 23:16:04.222053319 +0100
@@ -1,7 +1,7 @@
<services>
<service name="download_files" mode="manual" />
<service name="cargo_vendor" mode="manual">
- <param name="srctar">wayshot-1.3.0.tar.gz</param>
+ <param name="srctar">wayshot-*.tar.gz</param>
<param name="compression">zst</param>
<param name="update">true</param>
</service>
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.bfCmd5/_old and /var/tmp/diff_new_pack.bfCmd5/_new differ
++++++ wayshot-1.3.0.tar.gz -> wayshot-1.3.1.tar.gz ++++++
++++ 3553 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package putty for openSUSE:Factory checked in at 2023-12-19 23:15:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/putty (Old)
and /work/SRC/openSUSE:Factory/.putty.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "putty"
Tue Dec 19 23:15:47 2023 rev:31 rq:1133917 version:0.80
Changes:
--------
--- /work/SRC/openSUSE:Factory/putty/putty.changes 2023-08-28 17:15:40.493641186 +0200
+++ /work/SRC/openSUSE:Factory/.putty.new.9037/putty.changes 2023-12-19 23:16:01.137941011 +0100
@@ -1,0 +2,6 @@
+Mon Dec 18 21:52:22 UTC 2023 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Update to release 0.80
+ * Fix CVE-2023-48795 [boo#1218128]
+
+-------------------------------------------------------------------
Old:
----
putty-0.79.tar.gz
putty-0.79.tar.gz.gpg
New:
----
putty-0.80.tar.gz
putty-0.80.tar.gz.gpg
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ putty.spec ++++++
--- /var/tmp/diff_new_pack.LeJgGs/_old 2023-12-19 23:16:01.841966648 +0100
+++ /var/tmp/diff_new_pack.LeJgGs/_new 2023-12-19 23:16:01.841966648 +0100
@@ -17,7 +17,7 @@
Name: putty
-Version: 0.79
+Version: 0.80
Release: 0
Summary: SSH client with optional GTK-based terminal emulator frontend
License: MIT
++++++ putty-0.79.tar.gz -> putty-0.80.tar.gz ++++++
++++ 2753 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package wine for openSUSE:Factory checked in at 2023-12-19 23:15:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wine (Old)
and /work/SRC/openSUSE:Factory/.wine.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wine"
Tue Dec 19 23:15:42 2023 rev:427 rq:1133609 version:9.0~rc2
Changes:
--------
--- /work/SRC/openSUSE:Factory/wine/wine.changes 2023-12-11 21:51:34.777815083 +0100
+++ /work/SRC/openSUSE:Factory/.wine.new.9037/wine.changes 2023-12-19 23:15:56.205761404 +0100
@@ -1,0 +2,14 @@
+Sat Dec 16 15:27:29 UTC 2023 - llyyr <llyyr.public(a)gmail.com>
+
+- Add libxkbcommon and libxkbregistry as build requirements to
+ enable building the Wayland driver
+
+-------------------------------------------------------------------
+Sat Dec 16 07:24:54 UTC 2023 - Marcus Meissner <meissner(a)suse.com>
+
+- Updated to 9.0-rc2 release
+ - Bug fixes only, we are in code freeze.
+- update staging to 9.0-rc2 release
+- updated C library bundled provides
+
+-------------------------------------------------------------------
Old:
----
wine-9.0-rc1.tar.xz
wine-9.0-rc1.tar.xz.sign
wine-staging-9.0-rc1.tar.xz
New:
----
wine-9.0-rc2.tar.xz
wine-9.0-rc2.tar.xz.sign
wine-staging-9.0-rc2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wine.spec ++++++
--- /var/tmp/diff_new_pack.8aBMFT/_old 2023-12-19 23:15:57.729816903 +0100
+++ /var/tmp/diff_new_pack.8aBMFT/_new 2023-12-19 23:15:57.733817049 +0100
@@ -29,8 +29,8 @@
%endif
# needs to be on top due to usage of %version macro below
-%define realver 9.0-rc1
-Version: 9.0~rc1
+%define realver 9.0-rc2
+Version: 9.0~rc2
Release: 0
%if "%{flavor}" != ""
@@ -134,6 +134,8 @@
BuildRequires: pkgconfig(xfixes)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xinerama)
+BuildRequires: pkgconfig(xkbcommon)
+BuildRequires: pkgconfig(xkbregistry)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xxf86vm)
@@ -172,7 +174,7 @@
ExclusiveArch: %{ix86} x86_64 ppc armv7l armv7hl aarch64
%if %{staging}
# upstream patch target version
-%define staging_version 9.0-rc1
+%define staging_version 9.0-rc2
Source100: wine-staging-%{staging_version}.tar.xz
BuildRequires: gtk3-devel
BuildRequires: libOSMesa-devel
@@ -190,19 +192,21 @@
%endif
# wine bundles multiple unix libraries to be able to build PE files without dependencies
# current versions are from 7.22 (update this if you update the versions below):
-Provides: bundled(FAudio) = 22.11.0
+Provides: bundled(FAudio) = 23.12.0
+Provides: bundled(fluidsynth) = 2.3.3
Provides: bundled(jpeg) = 9e
Provides: bundled(libgsm) = 1.10.19
Provides: bundled(libjxr) = 1.1
-Provides: bundled(liblcms2) = 2.14
-Provides: bundled(libpng) = 1.6.38
-Provides: bundled(libxml2) = 2.10.3
-Provides: bundled(libxslt) = 1.1.37
-Provides: bundled(mpg123) = 1.30.2
-Provides: bundled(openldap2) = 2.5.13
-Provides: bundled(tiff) = 4.4.0
-Provides: bundled(vkd3d) = 1.5
-Provides: bundled(zlib) = 1.2.13
+Provides: bundled(liblcms2) = 2.15
+Provides: bundled(libpng) = 1.6.40
+Provides: bundled(libxml2) = 2.11.5
+Provides: bundled(libxslt) = 1.1.38
+Provides: bundled(mpg123) = 1.32.2
+Provides: bundled(musl) = 1.2.3
+Provides: bundled(openldap2) = 2.5.16
+Provides: bundled(tiff) = 4.6.0
+Provides: bundled(vkd3d) = 1.10
+Provides: bundled(zlib) = 1.3
%description
Wine is a compatibility layer capable of running Windows
++++++ _service ++++++
--- /var/tmp/diff_new_pack.8aBMFT/_old 2023-12-19 23:15:57.813819962 +0100
+++ /var/tmp/diff_new_pack.8aBMFT/_new 2023-12-19 23:15:57.817820107 +0100
@@ -3,7 +3,7 @@
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="url">https://github.com/wine-staging/wine-staging.git</param>
- <param name="revision">refs/tags/v9.0-rc1</param>
+ <param name="revision">refs/tags/v9.0-rc2</param>
<param name="match-tag">v*.*</param>
<param name="scm">git</param>
</service>
++++++ wine-9.0-rc1.tar.xz -> wine-9.0-rc2.tar.xz ++++++
/work/SRC/openSUSE:Factory/wine/wine-9.0-rc1.tar.xz /work/SRC/openSUSE:Factory/.wine.new.9037/wine-9.0-rc2.tar.xz differ: char 26, line 1
++++++ wine-staging-9.0-rc1.tar.xz -> wine-staging-9.0-rc2.tar.xz ++++++
/work/SRC/openSUSE:Factory/wine/wine-staging-9.0-rc1.tar.xz /work/SRC/openSUSE:Factory/.wine.new.9037/wine-staging-9.0-rc2.tar.xz differ: char 15, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openssh for openSUSE:Factory checked in at 2023-12-19 23:15:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openssh (Old)
and /work/SRC/openSUSE:Factory/.openssh.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openssh"
Tue Dec 19 23:15:40 2023 rev:169 rq:1133933 version:9.3p2
Changes:
--------
--- /work/SRC/openSUSE:Factory/openssh/openssh.changes 2023-11-30 21:59:23.260785993 +0100
+++ /work/SRC/openSUSE:Factory/.openssh.new.9037/openssh.changes 2023-12-19 23:15:52.301619235 +0100
@@ -1,0 +2,7 @@
+Tue Dec 19 01:42:55 UTC 2023 - Hans Petter Jansson <hpj(a)suse.com>
+
+- Added openssh-cve-2023-48795.patch (bsc#1217950, CVE-2023-48795).
+ This mitigates a prefix truncation attack that could be used to
+ undermine channel security.
+
+-------------------------------------------------------------------
@@ -29,0 +37,5 @@
+
+-------------------------------------------------------------------
+Wed Sep 27 06:28:57 UTC 2023 - Thorsten Kukuk <kukuk(a)suse.com>
+
+- Disable SLP by default for Factory and ALP (bsc#1214884)
New:
----
openssh-cve-2023-48795.patch
BETA DEBUG BEGIN:
New:/work/SRC/openSUSE:Factory/.openssh.new.9037/openssh.changes-
/work/SRC/openSUSE:Factory/.openssh.new.9037/openssh.changes:- Added openssh-cve-2023-48795.patch (bsc#1217950, CVE-2023-48795).
/work/SRC/openSUSE:Factory/.openssh.new.9037/openssh.changes- This mitigates a prefix truncation attack that could be used to
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openssh.spec ++++++
--- /var/tmp/diff_new_pack.ljpbqJ/_old 2023-12-19 23:15:53.973680123 +0100
+++ /var/tmp/diff_new_pack.ljpbqJ/_new 2023-12-19 23:15:53.973680123 +0100
@@ -124,6 +124,7 @@
Patch104: openssh-6.6p1-keycat.patch
Patch105: openssh-6.6.1p1-selinux-contexts.patch
Patch106: openssh-7.6p1-cleanup-selinux.patch
+Patch107: openssh-cve-2023-48795.patch
BuildRequires: audit-devel
BuildRequires: automake
BuildRequires: groff
@@ -349,8 +350,10 @@
install -d -m 755 %{buildroot}%{_localstatedir}/lib/sshd
install -d -m 755 %{buildroot}%{_sysconfdir}/ssh/ssh_config.d
install -d -m 755 %{buildroot}%{_sysconfdir}/ssh/sshd_config.d
+%if 0%{?suse_version} < 1600
install -d -m 755 %{buildroot}%{_sysconfdir}/slp.reg.d/
install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/slp.reg.d/
+%endif
install -D -m 0644 %{SOURCE10} %{buildroot}%{_unitdir}/sshd.service
ln -s service %{buildroot}%{_sbindir}/rcsshd
install -d -m 755 %{buildroot}%{_fillupdir}
@@ -500,8 +503,10 @@
%attr(0444,root,root) %{_mandir}/man8/sftp-server.8*
%attr(0444,root,root) %{_mandir}/man8/sshd.8*
%attr(0755,root,root) %{_libexecdir}/ssh/sftp-server
+%if 0%{?suse_version} < 1600
%dir %{_sysconfdir}/slp.reg.d
%config %{_sysconfdir}/slp.reg.d/ssh.reg
+%endif
%{_fillupdir}/sysconfig.ssh
%if 0%{?suse_version} < 1550
%dir %{_fwdir}
++++++ openssh-cve-2023-48795.patch ++++++
Index: openssh-9.3p2/PROTOCOL
===================================================================
--- openssh-9.3p2.orig/PROTOCOL
+++ openssh-9.3p2/PROTOCOL
@@ -104,6 +104,25 @@ http://git.libssh.org/users/aris/libssh.
This is identical to curve25519-sha256 as later published in RFC8731.
+1.9 transport: strict key exchange extension
+
+OpenSSH supports a number of transport-layer hardening measures under
+a "strict KEX" feature. This feature is signalled similarly to the
+RFC8305 ext-info feature: by including a additional algorithm in the
+SSH2_MSG_KEXINIT kex_algorithms field. The client may append
+"kex-strict-c-v00(a)openssh.com" to its kex_algorithms and the server
+may append "kex-strict-s-v00(a)openssh.com".
+
+When endpoint that supports this extension observes this algorithm
+name in a peer's KEXINIT packet, it MUST make the following changes to
+the the protocol:
+
+a) During initial KEX, terminate the connection if any unexpected or
+ out-of-sequence packet is received. This includes terminating the
+ connection if the first packet received is not SSH2_MSG_KEXINIT.
+b) At each SSH2_MSG_NEWKEYS message, reset the packet sequence number
+ to zero.
+
2. Connection protocol changes
2.1. connection: Channel write close extension "eow(a)openssh.com"
Index: openssh-9.3p2/kex.c
===================================================================
--- openssh-9.3p2.orig/kex.c
+++ openssh-9.3p2/kex.c
@@ -76,7 +76,7 @@
#include "fips.h"
/* prototype */
-static int kex_choose_conf(struct ssh *);
+static int kex_choose_conf(struct ssh *, uint32_t seq);
static int kex_input_newkeys(int, u_int32_t, struct ssh *);
static const char * const proposal_names[PROPOSAL_MAX] = {
@@ -261,6 +261,18 @@ kex_names_valid(const char *names)
return 1;
}
+/* returns non-zero if proposal contains any algorithm from algs */
+static int
+has_any_alg(const char *proposal, const char *algs)
+{
+ char *cp;
+
+ if ((cp = match_list(proposal, algs, NULL)) == NULL)
+ return 0;
+ free(cp);
+ return 1;
+}
+
/*
* Concatenate algorithm names, avoiding duplicates in the process.
* Caller must free returned string.
@@ -268,7 +280,7 @@ kex_names_valid(const char *names)
char *
kex_names_cat(const char *a, const char *b)
{
- char *ret = NULL, *tmp = NULL, *cp, *p, *m;
+ char *ret = NULL, *tmp = NULL, *cp, *p;
size_t len;
if (a == NULL || *a == '\0')
@@ -285,10 +297,8 @@ kex_names_cat(const char *a, const char
}
strlcpy(ret, a, len);
for ((p = strsep(&cp, ",")); p && *p != '\0'; (p = strsep(&cp, ","))) {
- if ((m = match_list(ret, p, NULL)) != NULL) {
- free(m);
+ if (has_any_alg(ret, p))
continue; /* Algorithm already present */
- }
if (strlcat(ret, ",", len) >= len ||
strlcat(ret, p, len) >= len) {
free(tmp);
@@ -441,15 +451,23 @@ kex_proposal_populate_entries(struct ssh
const char *defpropclient[PROPOSAL_MAX] = { KEX_CLIENT };
const char **defprop = ssh->kex->server ? defpropserver : defpropclient;
u_int i;
+ char *cp;
if (prop == NULL)
fatal_f("proposal missing");
+ /* Append EXT_INFO signalling to KexAlgorithms */
+ if (kexalgos == NULL)
+ kexalgos = defprop[PROPOSAL_KEX_ALGS];
+ if ((cp = kex_names_cat(kexalgos, ssh->kex->server ?
+ "kex-strict-s-v00(a)openssh.com" :
+ "ext-info-c,kex-strict-c-v00(a)openssh.com")) == NULL)
+ fatal_f("kex_names_cat");
+
for (i = 0; i < PROPOSAL_MAX; i++) {
switch(i) {
case PROPOSAL_KEX_ALGS:
- prop[i] = compat_kex_proposal(ssh,
- kexalgos ? kexalgos : defprop[i]);
+ prop[i] = compat_kex_proposal(ssh, cp);
break;
case PROPOSAL_ENC_ALGS_CTOS:
case PROPOSAL_ENC_ALGS_STOC:
@@ -470,6 +488,7 @@ kex_proposal_populate_entries(struct ssh
prop[i] = xstrdup(defprop[i]);
}
}
+ free(cp);
}
void
@@ -573,7 +592,12 @@ kex_protocol_error(int type, u_int32_t s
{
int r;
- error("kex protocol error: type %d seq %u", type, seq);
+ /* If in strict mode, any unexpected message is an error */
+ if ((ssh->kex->flags & KEX_INITIAL) && ssh->kex->kex_strict) {
+ ssh_packet_disconnect(ssh, "strict KEX violation: "
+ "unexpected packet type %u (seqnr %u)", type, seq);
+ }
+ error_f("type %u seq %u", type, seq);
if ((r = sshpkt_start(ssh, SSH2_MSG_UNIMPLEMENTED)) != 0 ||
(r = sshpkt_put_u32(ssh, seq)) != 0 ||
(r = sshpkt_send(ssh)) != 0)
@@ -651,7 +675,7 @@ kex_input_ext_info(int type, u_int32_t s
if (ninfo >= 1024) {
error("SSH2_MSG_EXT_INFO with too many entries, expected "
"<=1024, received %u", ninfo);
- return SSH_ERR_INVALID_FORMAT;
+ return dispatch_protocol_error(type, seq, ssh);
}
for (i = 0; i < ninfo; i++) {
if ((r = sshpkt_get_cstring(ssh, &name, NULL)) != 0)
@@ -767,7 +791,7 @@ kex_input_kexinit(int type, u_int32_t se
error_f("no kex");
return SSH_ERR_INTERNAL_ERROR;
}
- ssh_dispatch_set(ssh, SSH2_MSG_KEXINIT, NULL);
+ ssh_dispatch_set(ssh, SSH2_MSG_KEXINIT, &kex_protocol_error);
ptr = sshpkt_ptr(ssh, &dlen);
if ((r = sshbuf_put(kex->peer, ptr, dlen)) != 0)
return r;
@@ -803,7 +827,7 @@ kex_input_kexinit(int type, u_int32_t se
if (!(kex->flags & KEX_INIT_SENT))
if ((r = kex_send_kexinit(ssh)) != 0)
return r;
- if ((r = kex_choose_conf(ssh)) != 0)
+ if ((r = kex_choose_conf(ssh, seq)) != 0)
return r;
if (kex->kex_type < KEX_MAX && kex->kex[kex->kex_type] != NULL)
@@ -1082,20 +1106,14 @@ proposals_match(char *my[PROPOSAL_MAX],
return (1);
}
-/* returns non-zero if proposal contains any algorithm from algs */
static int
-has_any_alg(const char *proposal, const char *algs)
+kexalgs_contains(char **peer, const char *ext)
{
- char *cp;
-
- if ((cp = match_list(proposal, algs, NULL)) == NULL)
- return 0;
- free(cp);
- return 1;
+ return has_any_alg(peer[PROPOSAL_KEX_ALGS], ext);
}
static int
-kex_choose_conf(struct ssh *ssh)
+kex_choose_conf(struct ssh *ssh, uint32_t seq)
{
struct kex *kex = ssh->kex;
struct newkeys *newkeys;
@@ -1120,13 +1138,23 @@ kex_choose_conf(struct ssh *ssh)
sprop=peer;
}
- /* Check whether client supports ext_info_c */
- if (kex->server && (kex->flags & KEX_INITIAL)) {
- char *ext;
-
- ext = match_list("ext-info-c", peer[PROPOSAL_KEX_ALGS], NULL);
- kex->ext_info_c = (ext != NULL);
- free(ext);
+ /* Check whether peer supports ext_info/kex_strict */
+ if ((kex->flags & KEX_INITIAL) != 0) {
+ if (kex->server) {
+ kex->ext_info_c = kexalgs_contains(peer, "ext-info-c");
+ kex->kex_strict = kexalgs_contains(peer,
+ "kex-strict-c-v00(a)openssh.com");
+ } else {
+ kex->kex_strict = kexalgs_contains(peer,
+ "kex-strict-s-v00(a)openssh.com");
+ }
+ if (kex->kex_strict) {
+ debug3_f("will use strict KEX ordering");
+ if (seq != 0)
+ ssh_packet_disconnect(ssh,
+ "strict KEX violation: "
+ "KEXINIT was not the first packet");
+ }
}
/* Check whether client supports rsa-sha2 algorithms */
Index: openssh-9.3p2/kex.h
===================================================================
--- openssh-9.3p2.orig/kex.h
+++ openssh-9.3p2/kex.h
@@ -157,6 +157,7 @@ struct kex {
u_int kex_type;
char *server_sig_algs;
int ext_info_c;
+ int kex_strict;
struct sshbuf *my;
struct sshbuf *peer;
struct sshbuf *client_version;
Index: openssh-9.3p2/packet.c
===================================================================
--- openssh-9.3p2.orig/packet.c
+++ openssh-9.3p2/packet.c
@@ -1236,6 +1236,11 @@ ssh_packet_send2_wrapped(struct ssh *ssh
state->p_send.bytes += len;
sshbuf_reset(state->outgoing_packet);
+ if (type == SSH2_MSG_NEWKEYS && ssh->kex->kex_strict) {
+ debug_f("resetting send seqnr %u", state->p_send.seqnr);
+ state->p_send.seqnr = 0;
+ }
+
if (type == SSH2_MSG_NEWKEYS)
r = ssh_set_newkeys(ssh, MODE_OUT);
else if (type == SSH2_MSG_USERAUTH_SUCCESS && state->server_side)
@@ -1364,8 +1369,7 @@ ssh_packet_read_seqnr(struct ssh *ssh, u
/* Stay in the loop until we have received a complete packet. */
for (;;) {
/* Try to read a packet from the buffer. */
- r = ssh_packet_read_poll_seqnr(ssh, typep, seqnr_p);
- if (r != 0)
+ if ((r = ssh_packet_read_poll_seqnr(ssh, typep, seqnr_p)) != 0)
break;
/* If we got a packet, return it. */
if (*typep != SSH_MSG_NONE)
@@ -1649,6 +1630,7 @@ ssh_packet_read_poll2(struct ssh *ssh, u
if ((r = sshbuf_consume(state->input, mac->mac_len)) != 0)
goto out;
}
+
if (seqnr_p != NULL)
*seqnr_p = state->p_read.seqnr;
if (++state->p_read.seqnr == 0)
@@ -1718,6 +1700,10 @@ ssh_packet_read_poll2(struct ssh *ssh, u
#endif
/* reset for next packet */
state->packlen = 0;
+ if (*typep == SSH2_MSG_NEWKEYS && ssh->kex->kex_strict) {
+ debug_f("resetting read seqnr %u", state->p_read.seqnr);
+ state->p_read.seqnr = 0;
+ }
if ((r = ssh_packet_check_rekey(ssh)) != 0)
return r;
@@ -1738,10 +1724,39 @@ ssh_packet_read_poll_seqnr(struct ssh *s
r = ssh_packet_read_poll2(ssh, typep, seqnr_p);
if (r != 0)
return r;
- if (*typep) {
- state->keep_alive_timeouts = 0;
- DBG(debug("received packet type %d", *typep));
+ if (*typep == 0) {
+ /* no message ready */
+ return 0;
}
+ state->keep_alive_timeouts = 0;
+ DBG(debug("received packet type %d", *typep));
+
+ /* Always process disconnect messages */
+ if (*typep == SSH2_MSG_DISCONNECT) {
+ if ((r = sshpkt_get_u32(ssh, &reason)) != 0 ||
+ (r = sshpkt_get_string(ssh, &msg, NULL)) != 0)
+ return r;
+ /* Ignore normal client exit notifications */
+ do_log2(ssh->state->server_side &&
+ reason == SSH2_DISCONNECT_BY_APPLICATION ?
+ SYSLOG_LEVEL_INFO : SYSLOG_LEVEL_ERROR,
+ "Received disconnect from %s port %d:"
+ "%u: %.400s", ssh_remote_ipaddr(ssh),
+ ssh_remote_port(ssh), reason, msg);
+ free(msg);
+ return SSH_ERR_DISCONNECTED;
+ }
+
+ /*
+ * Do not implicitly handle any messages here during initial
+ * KEX when in strict mode. They will be need to be allowed
+ * explicitly by the KEX dispatch table or they will generate
+ * protocol errors.
+ */
+ if (ssh->kex != NULL &&
+ (ssh->kex->flags & KEX_INITIAL) && ssh->kex->kex_strict)
+ return 0;
+ /* Implicitly handle transport-level messages */
switch (*typep) {
case SSH2_MSG_IGNORE:
debug3("Received SSH2_MSG_IGNORE");
@@ -1756,19 +1771,6 @@ ssh_packet_read_poll_seqnr(struct ssh *s
debug("Remote: %.900s", msg);
free(msg);
break;
- case SSH2_MSG_DISCONNECT:
- if ((r = sshpkt_get_u32(ssh, &reason)) != 0 ||
- (r = sshpkt_get_string(ssh, &msg, NULL)) != 0)
- return r;
- /* Ignore normal client exit notifications */
- do_log2(ssh->state->server_side &&
- reason == SSH2_DISCONNECT_BY_APPLICATION ?
- SYSLOG_LEVEL_INFO : SYSLOG_LEVEL_ERROR,
- "Received disconnect from %s port %d:"
- "%u: %.400s", ssh_remote_ipaddr(ssh),
- ssh_remote_port(ssh), reason, msg);
- free(msg);
- return SSH_ERR_DISCONNECTED;
case SSH2_MSG_UNIMPLEMENTED:
if ((r = sshpkt_get_u32(ssh, &seqnr)) != 0)
return r;
@@ -2300,6 +2302,7 @@ kex_to_blob(struct sshbuf *m, struct kex
(r = sshbuf_put_u32(m, kex->hostkey_type)) != 0 ||
(r = sshbuf_put_u32(m, kex->hostkey_nid)) != 0 ||
(r = sshbuf_put_u32(m, kex->kex_type)) != 0 ||
+ (r = sshbuf_put_u32(m, kex->kex_strict)) != 0 ||
(r = sshbuf_put_stringb(m, kex->my)) != 0 ||
(r = sshbuf_put_stringb(m, kex->peer)) != 0 ||
(r = sshbuf_put_stringb(m, kex->client_version)) != 0 ||
@@ -2462,6 +2465,7 @@ kex_from_blob(struct sshbuf *m, struct k
(r = sshbuf_get_u32(m, (u_int *)&kex->hostkey_type)) != 0 ||
(r = sshbuf_get_u32(m, (u_int *)&kex->hostkey_nid)) != 0 ||
(r = sshbuf_get_u32(m, &kex->kex_type)) != 0 ||
+ (r = sshbuf_get_u32(m, &kex->kex_strict)) != 0 ||
(r = sshbuf_get_stringb(m, kex->my)) != 0 ||
(r = sshbuf_get_stringb(m, kex->peer)) != 0 ||
(r = sshbuf_get_stringb(m, kex->client_version)) != 0 ||
@@ -2790,6 +2794,7 @@ sshpkt_disconnect(struct ssh *ssh, const
vsnprintf(buf, sizeof(buf), fmt, args);
va_end(args);
+ debug2_f("sending SSH2_MSG_DISCONNECT: %s", buf);
if ((r = sshpkt_start(ssh, SSH2_MSG_DISCONNECT)) != 0 ||
(r = sshpkt_put_u32(ssh, SSH2_DISCONNECT_PROTOCOL_ERROR)) != 0 ||
(r = sshpkt_put_cstring(ssh, buf)) != 0 ||
Index: openssh-9.3p2/sshconnect2.c
===================================================================
--- openssh-9.3p2.orig/sshconnect2.c
+++ openssh-9.3p2/sshconnect2.c
@@ -420,7 +420,6 @@ struct cauthmethod {
};
static int input_userauth_service_accept(int, u_int32_t, struct ssh *);
-static int input_userauth_ext_info(int, u_int32_t, struct ssh *);
static int input_userauth_success(int, u_int32_t, struct ssh *);
static int input_userauth_failure(int, u_int32_t, struct ssh *);
static int input_userauth_banner(int, u_int32_t, struct ssh *);
@@ -540,7 +539,7 @@ ssh_userauth2(struct ssh *ssh, const cha
ssh->authctxt = &authctxt;
ssh_dispatch_init(ssh, &input_userauth_error);
- ssh_dispatch_set(ssh, SSH2_MSG_EXT_INFO, &input_userauth_ext_info);
+ ssh_dispatch_set(ssh, SSH2_MSG_EXT_INFO, kex_input_ext_info);
ssh_dispatch_set(ssh, SSH2_MSG_SERVICE_ACCEPT, &input_userauth_service_accept);
ssh_dispatch_run_fatal(ssh, DISPATCH_BLOCK, &authctxt.success); /* loop until success */
pubkey_cleanup(ssh);
@@ -591,12 +590,6 @@ input_userauth_service_accept(int type,
return r;
}
-static int
-input_userauth_ext_info(int type, u_int32_t seqnr, struct ssh *ssh)
-{
- return kex_input_ext_info(type, seqnr, ssh);
-}
-
void
userauth(struct ssh *ssh, char *authlist)
{
@@ -675,6 +668,7 @@ input_userauth_success(int type, u_int32
free(authctxt->methoddata);
authctxt->methoddata = NULL;
authctxt->success = 1; /* break out */
+ ssh_dispatch_set(ssh, SSH2_MSG_EXT_INFO, dispatch_protocol_error);
return 0;
}
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghostscript for openSUSE:Factory checked in at 2023-12-19 23:15:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghostscript (Old)
and /work/SRC/openSUSE:Factory/.ghostscript.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghostscript"
Tue Dec 19 23:15:38 2023 rev:62 rq:1133909 version:9.56.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghostscript/ghostscript.changes 2023-09-21 22:14:05.945378183 +0200
+++ /work/SRC/openSUSE:Factory/.ghostscript.new.9037/ghostscript.changes 2023-12-19 23:15:50.661559511 +0100
@@ -1,0 +2,5 @@
+Mon Dec 18 12:50:20 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Recommend cups-filters only when cups is present.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghostscript.spec ++++++
--- /var/tmp/diff_new_pack.cBGDMN/_old 2023-12-19 23:15:51.417587042 +0100
+++ /var/tmp/diff_new_pack.cBGDMN/_new 2023-12-19 23:15:51.417587042 +0100
@@ -187,7 +187,7 @@
# this package ghostscript should replace any version of ghostscript-mini.
Obsoletes: ghostscript-mini
%if 0%{?suse_version} > 1210
-Recommends: cups-filters-ghostscript
+Recommends: (cups-filters-ghostscript if cups)
%endif
%endif
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libsass for openSUSE:Factory checked in at 2023-12-19 23:15:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libsass (Old)
and /work/SRC/openSUSE:Factory/.libsass.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libsass"
Tue Dec 19 23:15:36 2023 rev:14 rq:1133891 version:3.6.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/libsass/libsass.changes 2021-07-22 22:43:32.303185890 +0200
+++ /work/SRC/openSUSE:Factory/.libsass.new.9037/libsass.changes 2023-12-19 23:15:49.217506926 +0100
@@ -1,0 +2,12 @@
+Fri Dec 15 09:40:23 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- security update:
+ * CVE-2022-43357 [bsc#1214573]:
+ Fix stack overflow in Sass:CompoundSelector:has_real_parent_ref()
+ * CVE-2022-43358 [bsc#1214575]:
+ Fix stack overflow in Sass:ComplexSelector:has_placeholde()
+ * CVE-2022-26592 [bsc#1214576]:
+ Fix stack overflow in CompoundSelector:has_real_parent_ref function()
+ + libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch
+
+-------------------------------------------------------------------
New:
----
libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch
BETA DEBUG BEGIN:
New: Fix stack overflow in CompoundSelector:has_real_parent_ref function()
+ libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libsass.spec ++++++
--- /var/tmp/diff_new_pack.o2viFR/_old 2023-12-19 23:15:50.409550334 +0100
+++ /var/tmp/diff_new_pack.o2viFR/_new 2023-12-19 23:15:50.409550334 +0100
@@ -1,7 +1,7 @@
#
# spec file for package libsass
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -27,6 +27,8 @@
Source: https://github.com/sass/libsass/archive/%{version}.tar.gz#/%{name}-%{versio…
Patch1: libsass-am.diff
Patch2: libsass-vers.diff
+# PATCH-FIX-UPSTREAM -- mvetter(a)suse.com -- bsc#1214573, bsc#1214575, bsc#1214576, gh/sass/libsass#3184
+Patch3: libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc-c++
@@ -55,6 +57,7 @@
%prep
%setup -q
%patch -P 1 -P 2 -p1
+%patch3 -p1
%build
if [ ! -f VERSION ]; then
++++++ libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch ++++++
From 5bb0ea0c4b2ebebe542933f788ffacba459a717a Mon Sep 17 00:00:00 2001
From: Marcel Greter <marcel.greter(a)ocbnet.ch>
Date: Thu, 14 Dec 2023 14:40:04 +0100
Subject: [PATCH] Fix most urgent issues in 2023
- Fix recursion when resolving parents
- Fix potential memory leak in `sass_not`
- Fix potential NPE in selector list inspector
---
src/ast_selectors.cpp | 14 ++++++++------
src/debugger.hpp | 1 +
src/fn_miscs.cpp | 12 ++++++++----
src/inspect.cpp | 3 ++-
4 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/src/ast_selectors.cpp b/src/ast_selectors.cpp
index c142842975..f5a4867e9e 100644
--- a/src/ast_selectors.cpp
+++ b/src/ast_selectors.cpp
@@ -868,7 +868,7 @@ namespace Sass {
for (SimpleSelectorObj simple : elements()) {
if (PseudoSelector * pseudo = Cast<PseudoSelector>(simple)) {
if (SelectorList* sel = Cast<SelectorList>(pseudo->selector())) {
- if (parent) {
+ if (parent && !parent->has_real_parent_ref()) {
pseudo->selector(sel->resolve_parent_refs(
pstack, traces, implicit_parent));
}
@@ -976,20 +976,22 @@ namespace Sass {
}
/* better return sass::vector? only - is empty container anyway? */
- SelectorList* ComplexSelector::resolve_parent_refs(SelectorStack pstack, Backtraces& traces, bool implicit_parent)
+ SelectorList* ComplexSelector::resolve_parent_refs(
+ SelectorStack pstack, Backtraces& traces, bool implicit_parent)
{
sass::vector<sass::vector<ComplexSelectorObj>> vars;
auto parent = pstack.back();
+ auto hasRealParent = has_real_parent_ref();
- if (has_real_parent_ref() && !parent) {
+ if (hasRealParent && !parent) {
throw Exception::TopLevelParent(traces, pstate());
}
if (!chroots() && parent) {
- if (!has_real_parent_ref() && !implicit_parent) {
+ if (!hasRealParent && !implicit_parent) {
SelectorList* retval = SASS_MEMORY_NEW(SelectorList, pstate(), 1);
retval->append(this);
return retval;
@@ -1020,10 +1022,10 @@ namespace Sass {
for (auto items : res) {
if (items.size() > 0) {
ComplexSelectorObj first = SASS_MEMORY_COPY(items[0]);
- first->hasPreLineFeed(first->hasPreLineFeed() || (!has_real_parent_ref() && hasPreLineFeed()));
+ first->hasPreLineFeed(first->hasPreLineFeed() || (!hasRealParent && hasPreLineFeed()));
// ToDo: remove once we know how to handle line feeds
// ToDo: currently a mashup between ruby and dart sass
- // if (has_real_parent_ref()) first->has_line_feed(false);
+ // if (hasRealParent) first->has_line_feed(false);
// first->has_line_break(first->has_line_break() || has_line_break());
first->chroots(true); // has been resolved by now
for (size_t i = 1; i < items.size(); i += 1) {
diff --git a/src/debugger.hpp b/src/debugger.hpp
index 703d387183..31af47218a 100644
--- a/src/debugger.hpp
+++ b/src/debugger.hpp
@@ -430,6 +430,7 @@ inline void debug_ast(AST_Node* node, sass::string ind, Env* env)
std::cerr << " <<" << selector->ns_name() << ">>";
std::cerr << (selector->isClass() ? " [isClass]": " -");
std::cerr << (selector->isSyntacticClass() ? " [isSyntacticClass]": " -");
+ std::cerr << (selector->has_real_parent_ref(nullptr) ? " [real parent]" : " -");
std::cerr << std::endl;
debug_ast(selector->argument(), ind + " <= ", env);
debug_ast(selector->selector(), ind + " || ", env);
diff --git a/src/fn_miscs.cpp b/src/fn_miscs.cpp
index 38e8d2a820..d5e28ca6c4 100644
--- a/src/fn_miscs.cpp
+++ b/src/fn_miscs.cpp
@@ -160,10 +160,14 @@ namespace Sass {
ExpressionObj cond = ARG("$condition", Expression)->perform(&expand.eval);
bool is_true = !cond->is_false();
ExpressionObj res = ARG(is_true ? "$if-true" : "$if-false", Expression);
- ValueObj qwe = Cast<Value>(res->perform(&expand.eval));
- // res = res->perform(&expand.eval.val_eval);
- qwe->set_delayed(false); // clone?
- return qwe.detach();
+ ExpressionObj rv = res->perform(&expand.eval);
+ ValueObj value = Cast<Value>(rv);
+ if (value != nullptr) {
+ value->set_delayed(false);
+ return value.detach();
+ }
+ rv->set_delayed(false);
+ return nullptr;
}
//////////////////////////
diff --git a/src/inspect.cpp b/src/inspect.cpp
index 4d079bed8b..bdc73cdac3 100644
--- a/src/inspect.cpp
+++ b/src/inspect.cpp
@@ -463,6 +463,7 @@ namespace Sass {
{ sep[0] = i % 2 ? ':' : ','; }
ExpressionObj list_item = list->at(i);
if (output_style() != TO_SASS) {
+ if (list_item == nullptr) continue;
if (list_item->is_invisible()) {
// this fixes an issue with "" in a list
if (!Cast<String_Constant>(list_item)) {
@@ -1088,7 +1089,7 @@ namespace Sass {
void Inspect::operator()(CompoundSelector* sel)
{
- if (sel->hasRealParent()) {
+ if (sel->hasRealParent() /* || sel->has_real_parent_ref() */) {
append_string("&");
}
for (auto& item : sel->elements()) {
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gdb for openSUSE:Factory checked in at 2023-12-19 23:15:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gdb (Old)
and /work/SRC/openSUSE:Factory/.gdb.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gdb"
Tue Dec 19 23:15:32 2023 rev:174 rq:1133867 version:13.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/gdb/gdb.changes 2023-11-17 20:48:27.526715412 +0100
+++ /work/SRC/openSUSE:Factory/.gdb.new.9037/gdb.changes 2023-12-19 23:15:40.425186751 +0100
@@ -1,0 +2,16 @@
+Wed Dec 13 14:58:14 UTC 2023 - Tom de Vries <tdevries(a)suse.com>
+
+- Patches added (backport from gdb-patches, swo#30728):
+ * gdb-symtab-refactor-condition-in-scan_attributes.patch
+ * gdb-symtab-factor-out-m_die_range_map-usage.patch
+ * gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch
+ * gdb-symtab-factor-out-m_deferred_entries-usage.patch
+ * gdb-symtab-resolve-deferred-entries-inter-shard-case.patch
+ * gdb-symtab-keep-track-of-processed-dies-in-shard.patch
+ * gdb-symtab-resolve-deferred-entries-intra-shard-case.patch
+ * gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch
+ * gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch
+ * gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch
+ * gdb-symtab-fix-dw_tag_inlined_subroutine-entries-in-.patch
+
+-------------------------------------------------------------------
New:
----
gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch
gdb-symtab-factor-out-m_deferred_entries-usage.patch
gdb-symtab-factor-out-m_die_range_map-usage.patch
gdb-symtab-fix-dw_tag_inlined_subroutine-entries-in-.patch
gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch
gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch
gdb-symtab-keep-track-of-processed-dies-in-shard.patch
gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch
gdb-symtab-refactor-condition-in-scan_attributes.patch
gdb-symtab-resolve-deferred-entries-inter-shard-case.patch
gdb-symtab-resolve-deferred-entries-intra-shard-case.patch
BETA DEBUG BEGIN:
New: * gdb-symtab-resolve-deferred-entries-intra-shard-case.patch
* gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch
* gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch
New: * gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch
* gdb-symtab-factor-out-m_deferred_entries-usage.patch
* gdb-symtab-resolve-deferred-entries-inter-shard-case.patch
New: * gdb-symtab-refactor-condition-in-scan_attributes.patch
* gdb-symtab-factor-out-m_die_range_map-usage.patch
* gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch
New: * gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch
* gdb-symtab-fix-dw_tag_inlined_subroutine-entries-in-.patch
New: * gdb-symtab-factor-out-m_die_range_map-usage.patch
* gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch
* gdb-symtab-factor-out-m_deferred_entries-usage.patch
New: * gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch
* gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch
* gdb-symtab-fix-dw_tag_inlined_subroutine-entries-in-.patch
New: * gdb-symtab-resolve-deferred-entries-inter-shard-case.patch
* gdb-symtab-keep-track-of-processed-dies-in-shard.patch
* gdb-symtab-resolve-deferred-entries-intra-shard-case.patch
New: * gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch
* gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch
* gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch
New:- Patches added (backport from gdb-patches, swo#30728):
* gdb-symtab-refactor-condition-in-scan_attributes.patch
* gdb-symtab-factor-out-m_die_range_map-usage.patch
New: * gdb-symtab-factor-out-m_deferred_entries-usage.patch
* gdb-symtab-resolve-deferred-entries-inter-shard-case.patch
* gdb-symtab-keep-track-of-processed-dies-in-shard.patch
New: * gdb-symtab-keep-track-of-processed-dies-in-shard.patch
* gdb-symtab-resolve-deferred-entries-intra-shard-case.patch
* gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gdb.spec ++++++
--- /var/tmp/diff_new_pack.ci5Dd5/_old 2023-12-19 23:15:43.357293525 +0100
+++ /var/tmp/diff_new_pack.ci5Dd5/_new 2023-12-19 23:15:43.357293525 +0100
@@ -369,6 +369,19 @@
# https://sourceware.org/pipermail/gdb-patches/2023-November/203943.html
Patch2109: gdb-fix-segfault-in-for_each_block-part-1.patch
+# https://sourceware.org/pipermail/gdb-patches/2023-December/205054.html
+Patch2120: gdb-symtab-refactor-condition-in-scan_attributes.patch
+Patch2121: gdb-symtab-factor-out-m_die_range_map-usage.patch
+Patch2122: gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch
+Patch2123: gdb-symtab-factor-out-m_deferred_entries-usage.patch
+Patch2124: gdb-symtab-resolve-deferred-entries-inter-shard-case.patch
+Patch2125: gdb-symtab-keep-track-of-processed-dies-in-shard.patch
+Patch2126: gdb-symtab-resolve-deferred-entries-intra-shard-case.patch
+Patch2127: gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch
+Patch2128: gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch
+Patch2129: gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch
+Patch2130: gdb-symtab-fix-dw_tag_inlined_subroutine-entries-in-.patch
+
# Debug patches.
#
@@ -814,6 +827,18 @@
%patch2108 -p1
%patch2109 -p1
+%patch2120 -p1
+%patch2121 -p1
+%patch2122 -p1
+%patch2123 -p1
+%patch2124 -p1
+%patch2125 -p1
+%patch2126 -p1
+%patch2127 -p1
+%patch2128 -p1
+%patch2129 -p1
+%patch2130 -p1
+
#unpack libipt
%if 0%{have_libipt}
tar xzf %{SOURCE7}
++++++ gdb-symtab-don-t-defer-backward-refs-inter-cu-intra-.patch ++++++
From 6d472b241c96f181f88867860e92f1dfe7364903 Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Sat, 16 Sep 2023 04:07:22 +0200
Subject: [PATCH 08/11] [gdb/symtab] Don't defer backward refs, inter-cu
intra-shard case
In patch "[gdb/symtab] Resolve deferred entries, inter-shard case" we've
solved the generic case of handling deferred entries.
Add an optimization that doesn't defer inter-CU intra-shard dependencies that
are present in the shard's parent map.
Tested on x86_64-linux.
---
gdb/dwarf2/read.c | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 0ab3e1a1500..d2d50b5c9cc 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -6709,6 +6709,12 @@ class cooked_index_storage
m_index->set_parent_valid (start, end);
}
+ /* Return true if find_parents can be relied upon. */
+ bool parent_valid (CORE_ADDR addr)
+ {
+ return m_index->parent_valid (addr);
+ }
+
private:
/* Hash function for a cutu_reader. */
@@ -6857,6 +6863,12 @@ class cooked_indexer
{
m_index_storage->set_parent_valid (start, end);
}
+
+ /* Return true if find_parents can be relied upon. */
+ bool parent_valid (CORE_ADDR addr)
+ {
+ return m_index_storage->parent_valid (addr);
+ }
};
/* Subroutine of dwarf2_build_psymtabs_hard to simplify it.
@@ -18387,7 +18399,22 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
else
{
/* Inter-CU case. */
- *maybe_defer = addr;
+ if (parent_valid (addr))
+ {
+ auto tmp = find_parent (addr);
+ if (tmp == &parent_map::deferred)
+ {
+ /* Defer because origin is deferred. */
+ *maybe_defer = addr;
+ }
+ else
+ *parent_entry = tmp;
+ }
+ else
+ {
+ /* Defer because origin is in other shard. */
+ *maybe_defer = addr;
+ }
}
}
--
2.35.3
++++++ gdb-symtab-factor-out-m_deferred_entries-usage.patch ++++++
From dac6c3b27a77589078add7e4e4586515ac85610d Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Fri, 15 Sep 2023 08:38:00 +0200
Subject: [PATCH 04/11] [gdb/symtab] Factor out m_deferred_entries usage
Factor out usage of cooked_indexer::m_deferred_entries in new member
functions defer_entry, handle_deferred_entries and resolve_deferred_entry.
Tested on x86_64-linux.
---
gdb/dwarf2/read.c | 35 ++++++++++++++++++++++++++++-------
1 file changed, 28 insertions(+), 7 deletions(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 1092cb1dca9..ff5be8e7dc5 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -6822,6 +6822,32 @@ class cooked_indexer
we'll know the containing context of all the DIEs that we might
have scanned. This vector stores these deferred entries. */
std::vector<deferred_entry> m_deferred_entries;
+
+ /* Defer creating a cooked_index_entry corresponding to deferred_entry DE. */
+ void defer_entry (const deferred_entry &de)
+ {
+ m_deferred_entries.push_back (de);
+ }
+
+ /* Create a cooked_index_entry corresponding to deferred_entry DE with
+ parent PARENT_ENTRY. */
+ const cooked_index_entry *resolve_deferred_entry
+ (const deferred_entry &de, const cooked_index_entry *parent_entry)
+ {
+ return m_index_storage->add (de.die_offset, de.tag, de.flags, de.name,
+ parent_entry, m_per_cu);
+ }
+
+ /* Create cooked_index_entries for the deferred entries. */
+ void handle_deferred_entries ()
+ {
+ for (const auto &entry : m_deferred_entries)
+ {
+ const cooked_index_entry *parent_entry
+ = find_parent (entry.spec_offset);
+ resolve_deferred_entry (entry, parent_entry);
+ }
+ }
};
/* Subroutine of dwarf2_build_psymtabs_hard to simplify it.
@@ -18519,7 +18545,7 @@ cooked_indexer::index_dies (cutu_reader *reader,
if (name != nullptr)
{
if (defer != 0)
- m_deferred_entries.push_back ({
+ defer_entry ({
this_die, name, defer, abbrev->tag, flags
});
else
@@ -18624,12 +18650,7 @@ cooked_indexer::make_index (cutu_reader *reader)
return;
index_dies (reader, reader->info_ptr, nullptr, false);
- for (const auto &entry : m_deferred_entries)
- {
- const cooked_index_entry *parent = find_parent (entry.spec_offset);
- m_index_storage->add (entry.die_offset, entry.tag, entry.flags,
- entry.name, parent, m_per_cu);
- }
+ handle_deferred_entries ();
}
/* An implementation of quick_symbol_functions for the cooked DWARF
--
2.35.3
++++++ gdb-symtab-factor-out-m_die_range_map-usage.patch ++++++
From 6ac3acf29782a059258fdfe21bd55f1716fc46ed Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Tue, 22 Aug 2023 13:17:47 +0200
Subject: [PATCH 02/11] [gdb/symtab] Factor out m_die_range_map usage
Factor out usage of cooked_indexer::m_die_range_map into new class parent_map
with member functions find_parent and set_parent, and static member function
form_addr.
Tested on x86_64-linux.
---
gdb/dwarf2/cooked-index.h | 32 ++++++++++++++++++++++++++
gdb/dwarf2/read.c | 48 +++++++++++++++++++++------------------
2 files changed, 58 insertions(+), 22 deletions(-)
diff --git a/gdb/dwarf2/cooked-index.h b/gdb/dwarf2/cooked-index.h
index 2ef1f4b27e9..1c967bdbf86 100644
--- a/gdb/dwarf2/cooked-index.h
+++ b/gdb/dwarf2/cooked-index.h
@@ -233,6 +233,38 @@ struct cooked_index_entry : public allocate_on_obstack
bool for_name) const;
};
+class parent_map
+{
+public:
+ /* A helper function to turn a section offset into an address that
+ can be used in a parent_map. */
+ static CORE_ADDR form_addr (sect_offset offset, bool is_dwz)
+ {
+ CORE_ADDR value = to_underlying (offset);
+ if (is_dwz)
+ value |= ((CORE_ADDR) 1) << (8 * sizeof (CORE_ADDR) - 1);
+ return value;
+ }
+
+ /* Find the parent of DIE LOOKUP. */
+ const cooked_index_entry *find_parent (CORE_ADDR lookup) const
+ {
+ const void *obj = m_parent_map.find (lookup);
+ return static_cast<const cooked_index_entry *> (obj);
+ }
+
+ /* Set the parent of DIES in range [START, END] to PARENT_ENTRY. */
+ void set_parent (CORE_ADDR start, CORE_ADDR end,
+ const cooked_index_entry *parent_entry)
+ {
+ m_parent_map.set_empty (start, end, (void *)parent_entry);
+ }
+
+private:
+ /* An addrmap that maps from section offsets to cooked_index_entry *. */
+ addrmap_mutable m_parent_map;
+};
+
class cooked_index_vector;
/* An index of interesting DIEs. This is "cooked", in contrast to a
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 00471d20d41..1092cb1dca9 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -6722,16 +6722,6 @@ class cooked_indexer
private:
- /* A helper function to turn a section offset into an address that
- can be used in an addrmap. */
- CORE_ADDR form_addr (sect_offset offset, bool is_dwz)
- {
- CORE_ADDR value = to_underlying (offset);
- if (is_dwz)
- value |= ((CORE_ADDR) 1) << (8 * sizeof (CORE_ADDR) - 1);
- return value;
- }
-
/* A helper function to scan the PC bounds of READER and record them
in the storage's addrmap. */
void check_bounds (cutu_reader *reader);
@@ -6799,7 +6789,20 @@ class cooked_indexer
/* An addrmap that maps from section offsets (see the form_addr
method) to newly-created entries. See m_deferred_entries to
understand this. */
- addrmap_mutable m_die_range_map;
+ parent_map m_die_range_map;
+
+ /* Find the parent of DIE LOOKUP. */
+ const cooked_index_entry *find_parent (CORE_ADDR lookup) const
+ {
+ return m_die_range_map.find_parent (lookup);
+ }
+
+ /* Set the parent of DIES in range [START, END] to PARENT_ENTRY. */
+ void set_parent (CORE_ADDR start, CORE_ADDR end,
+ const cooked_index_entry *parent_entry)
+ {
+ m_die_range_map.set_parent (start, end, parent_entry);
+ }
/* A single deferred entry. */
struct deferred_entry
@@ -18317,15 +18320,13 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
if (*parent_entry == nullptr)
{
- CORE_ADDR addr = form_addr (origin_offset, origin_is_dwz);
+ CORE_ADDR addr
+ = parent_map::form_addr (origin_offset, origin_is_dwz);
if (new_reader->cu == reader->cu
&& new_info_ptr > watermark_ptr)
*maybe_defer = addr;
else
- {
- void *obj = m_die_range_map.find (addr);
- *parent_entry = static_cast <cooked_index_entry *> (obj);
- }
+ *parent_entry = find_parent (addr);
}
unsigned int bytes_read;
@@ -18444,11 +18445,15 @@ cooked_indexer::recurse (cutu_reader *reader,
if (parent_entry != nullptr)
{
- CORE_ADDR start = form_addr (parent_entry->die_offset,
- reader->cu->per_cu->is_dwz);
- CORE_ADDR end = form_addr (sect_offset (info_ptr - 1 - reader->buffer),
+ /* Both start and end are inclusive, so use both "+ 1" and "- 1" to
+ limit the range to the children of parent_entry. */
+ CORE_ADDR start
+ = parent_map::form_addr (parent_entry->die_offset + 1,
+ reader->cu->per_cu->is_dwz);
+ CORE_ADDR end
+ = parent_map::form_addr (sect_offset (info_ptr - 1 - reader->buffer),
reader->cu->per_cu->is_dwz);
- m_die_range_map.set_empty (start, end, (void *) parent_entry);
+ set_parent (start, end, parent_entry);
}
return info_ptr;
@@ -18621,8 +18626,7 @@ cooked_indexer::make_index (cutu_reader *reader)
for (const auto &entry : m_deferred_entries)
{
- void *obj = m_die_range_map.find (entry.spec_offset);
- cooked_index_entry *parent = static_cast<cooked_index_entry *> (obj);
+ const cooked_index_entry *parent = find_parent (entry.spec_offset);
m_index_storage->add (entry.die_offset, entry.tag, entry.flags,
entry.name, parent, m_per_cu);
}
--
2.35.3
++++++ gdb-symtab-fix-dw_tag_inlined_subroutine-entries-in-.patch ++++++
From 19185006cfe0901da907da4f09fbc197aba976a2 Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Fri, 11 Aug 2023 01:36:50 +0200
Subject: [PATCH 11/11] [gdb/symtab] Fix DW_TAG_inlined_subroutine entries in
the cooked index
We get incorrect qualified names in the cooked index for
DW_TAG_inlined_subroutine DIEs with abstract origin, due to the fact that the
DIE parent is used instead of the abstract origin.
Fix this by preferring the abstract origin parent, if available.
Tested on x86_64-linux.
PR symtab/30728
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30728
---
gdb/dwarf2/read.c | 67 ++++++++++++++++++++++-------------------------
1 file changed, 32 insertions(+), 35 deletions(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index e2d4fe8cde6..418acaabc60 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -18369,52 +18369,49 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
const gdb_byte *new_info_ptr = (new_reader->buffer
+ to_underlying (origin_offset));
- if (*parent_entry == nullptr)
+ gdb_assert (reader->cu->per_cu->is_debug_types
+ == new_reader->cu->per_cu->is_debug_types);
+ CORE_ADDR addr
+ = parent_map::form_addr (origin_offset, origin_is_dwz,
+ reader->cu->per_cu->is_debug_types);
+ if (new_reader->cu == reader->cu)
{
- gdb_assert (reader->cu->per_cu->is_debug_types
- == new_reader->cu->per_cu->is_debug_types);
- CORE_ADDR addr
- = parent_map::form_addr (origin_offset, origin_is_dwz,
- reader->cu->per_cu->is_debug_types);
- if (new_reader->cu == reader->cu)
+ /* Intra-CU case. */
+ if (new_info_ptr > watermark_ptr)
{
- /* Intra-CU case. */
- if (new_info_ptr > watermark_ptr)
- {
- /* Defer because origin is not read yet. */
- *maybe_defer = addr;
- }
- else
- {
- auto tmp = find_parent (addr);
- if (tmp == &parent_map::deferred)
- {
- /* Defer because origin is deferred. */
- *maybe_defer = addr;
- }
- else
- *parent_entry = tmp;
- }
+ /* Defer because origin is not read yet. */
+ *maybe_defer = addr;
}
else
{
- /* Inter-CU case. */
- if (parent_valid (addr))
+ auto tmp = find_parent (addr);
+ if (tmp == &parent_map::deferred)
{
- auto tmp = find_parent (addr);
- if (tmp == &parent_map::deferred)
- {
- /* Defer because origin is deferred. */
- *maybe_defer = addr;
- }
- else
- *parent_entry = tmp;
+ /* Defer because origin is deferred. */
+ *maybe_defer = addr;
}
else
+ *parent_entry = tmp;
+ }
+ }
+ else
+ {
+ /* Inter-CU case. */
+ if (parent_valid (addr))
+ {
+ auto tmp = find_parent (addr);
+ if (tmp == &parent_map::deferred)
{
- /* Defer because origin is in other shard. */
+ /* Defer because origin is deferred. */
*maybe_defer = addr;
}
+ else
+ *parent_entry = tmp;
+ }
+ else
+ {
+ /* Defer because origin is in other shard. */
+ *maybe_defer = addr;
}
}
--
2.35.3
++++++ gdb-symtab-handle-nullptr-parent-in-parent_map-set_p.patch ++++++
From 933f8ee225d4ccd3db9b81312dba76ae5a50b4ea Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Fri, 25 Aug 2023 09:30:54 +0200
Subject: [PATCH 03/11] [gdb/symtab] Handle nullptr parent in
parent_map::set_parent
Set_parent uses m_die_range_map.set_empty, which doesn't allow
parent_entry == nullptr.
So it may be necessary to guard calls to set_parent with
"if (parent_entry != nullptr)".
Fix this by handling the parent_entry == nullptr case in set_parent.
Tested on x86_64-linux.
---
gdb/dwarf2/cooked-index.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/gdb/dwarf2/cooked-index.h b/gdb/dwarf2/cooked-index.h
index 1c967bdbf86..f4abc7a974e 100644
--- a/gdb/dwarf2/cooked-index.h
+++ b/gdb/dwarf2/cooked-index.h
@@ -257,7 +257,9 @@ class parent_map
void set_parent (CORE_ADDR start, CORE_ADDR end,
const cooked_index_entry *parent_entry)
{
- m_parent_map.set_empty (start, end, (void *)parent_entry);
+ /* Calling set_empty with nullptr is currently not allowed. */
+ if (parent_entry != nullptr)
+ m_parent_map.set_empty (start, end, (void *)parent_entry);
}
private:
--
2.35.3
++++++ gdb-symtab-keep-track-of-all-parents-for-cooked-inde.patch ++++++
From be9718e911aff34896dcf1c3dfa41bfe34e5a9f4 Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Thu, 7 Dec 2023 10:38:05 +0100
Subject: [PATCH 10/11] [gdb/symtab] Keep track of all parents for cooked index
Keep track of all parents for cooked index.
Tested on x86_64-linux.
---
gdb/dwarf2/read.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 39f6e480e19..e2d4fe8cde6 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -18626,9 +18626,15 @@ cooked_indexer::index_dies (cutu_reader *reader,
});
}
else
- this_entry = m_index_storage->add (this_die, abbrev->tag, flags,
- name, this_parent_entry,
- m_per_cu);
+ {
+ CORE_ADDR addr
+ = parent_map::form_addr (this_die, reader->cu->per_cu->is_dwz,
+ reader->cu->per_cu->is_debug_types);
+ set_parent (addr, addr, this_parent_entry);
+ this_entry = m_index_storage->add (this_die, abbrev->tag, flags,
+ name, this_parent_entry,
+ m_per_cu);
+ }
}
if (linkage_name != nullptr)
--
2.35.3
++++++ gdb-symtab-keep-track-of-processed-dies-in-shard.patch ++++++
From 439271c6fc28387ea7b6fb6e8bb07963e8b3fd7d Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Sun, 24 Sep 2023 11:41:39 +0200
Subject: [PATCH 06/11] [gdb/symtab] Keep track of processed DIEs in shard
For optimizations in two following patches, we keep track in each shard which
DIEs have been processed.
Tested on x86_64-linux.
---
gdb/dwarf2/cooked-index.c | 1 +
gdb/dwarf2/cooked-index.h | 15 +++++++++++++++
gdb/dwarf2/read.c | 24 ++++++++++++++++++++++++
3 files changed, 40 insertions(+)
diff --git a/gdb/dwarf2/cooked-index.c b/gdb/dwarf2/cooked-index.c
index 4a0ccc78c5d..cef57a96384 100644
--- a/gdb/dwarf2/cooked-index.c
+++ b/gdb/dwarf2/cooked-index.c
@@ -541,6 +541,7 @@ cooked_index_vector::handle_deferred_entries ()
{
shard->m_die_range_map.reset (nullptr);
shard->m_deferred_entries.reset (nullptr);
+ shard->m_die_range_map_valid.reset (nullptr);
}
}
diff --git a/gdb/dwarf2/cooked-index.h b/gdb/dwarf2/cooked-index.h
index a06d99532ed..9d836379666 100644
--- a/gdb/dwarf2/cooked-index.h
+++ b/gdb/dwarf2/cooked-index.h
@@ -312,6 +312,7 @@ class cooked_index
{
m_die_range_map.reset (new parent_map);
m_deferred_entries.reset (new std::vector<deferred_entry>);
+ m_die_range_map_valid.reset (new addrmap_mutable);
}
/* Create a new cooked_index_entry and register it with this object.
@@ -403,6 +404,18 @@ class cooked_index
const cooked_index_entry *resolve_deferred_entry
(const deferred_entry &entry, const cooked_index_entry *parent_entry);
+ /* Mark parents in range [START, END] as valid . */
+ void set_parent_valid (CORE_ADDR start, CORE_ADDR end)
+ {
+ m_die_range_map_valid->set_empty (start, end, (void *) 1);
+ }
+
+ /* Return true if find_parents can be relied upon. */
+ bool parent_valid (CORE_ADDR addr)
+ {
+ return m_die_range_map_valid->find (addr) != nullptr;
+ }
+
private:
/* Return the entry that is believed to represent the program's
@@ -466,6 +479,8 @@ class cooked_index
understand this. */
std::unique_ptr<parent_map> m_die_range_map;
+ std::unique_ptr<addrmap> m_die_range_map_valid;
+
/* The generated DWARF can sometimes have the declaration for a
method in a class (or perhaps namespace) scope, with the
definition appearing outside this scope... just one of the many
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 41fa8affcd0..ba21b6a14c9 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -6697,6 +6697,12 @@ class cooked_index_storage
m_index->defer_entry (de);
}
+ /* Mark parents in range [START, END] as valid . */
+ void set_parent_valid (CORE_ADDR start, CORE_ADDR end)
+ {
+ m_index->set_parent_valid (start, end);
+ }
+
private:
/* Hash function for a cutu_reader. */
@@ -6840,6 +6846,11 @@ class cooked_indexer
{
m_index_storage->defer_entry (de);
}
+
+ void set_parent_valid (CORE_ADDR start, CORE_ADDR end)
+ {
+ m_index_storage->set_parent_valid (start, end);
+ }
};
/* Subroutine of dwarf2_build_psymtabs_hard to simplify it.
@@ -18512,6 +18523,11 @@ cooked_indexer::index_dies (cutu_reader *reader,
+ to_underlying (reader->cu->header.sect_off)
+ reader->cu->header.get_length ());
+ const CORE_ADDR start_cu
+ = parent_map::form_addr (sect_offset (info_ptr - reader->buffer),
+ reader->cu->per_cu->is_dwz,
+ reader->cu->per_cu->is_debug_types);
+
while (info_ptr < end_ptr)
{
sect_offset this_die = (sect_offset) (info_ptr - reader->buffer);
@@ -18662,6 +18678,14 @@ cooked_indexer::index_dies (cutu_reader *reader,
}
}
+ {
+ CORE_ADDR end_prev_die
+ = parent_map::form_addr (sect_offset (info_ptr - reader->buffer - 1),
+ reader->cu->per_cu->is_dwz,
+ reader->cu->per_cu->is_debug_types);
+ set_parent_valid (start_cu, end_prev_die);
+ }
+
return info_ptr;
}
--
2.35.3
++++++ gdb-symtab-recurse-into-c-dw_tag_subprogram-dies-for.patch ++++++
From 541d6970c278dc5a8e9e32246b7139261a687592 Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Thu, 7 Dec 2023 10:36:07 +0100
Subject: [PATCH 09/11] [gdb/symtab] Recurse into c++ DW_TAG_subprogram DIEs
for cooked index
Recurse into c++ DW_TAG_subprogram DIEs for cooked index, to add
DW_TAG_inlined_subroutine entries.
Tested on x86_64-linux.
---
gdb/dwarf2/read.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index d2d50b5c9cc..39f6e480e19 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -18689,7 +18689,8 @@ cooked_indexer::index_dies (cutu_reader *reader,
case DW_TAG_subprogram:
if ((m_language == language_fortran
- || m_language == language_ada)
+ || m_language == language_ada
+ || m_language == language_cplus)
&& this_entry != nullptr)
{
info_ptr = recurse (reader, info_ptr, this_entry, true);
--
2.35.3
++++++ gdb-symtab-refactor-condition-in-scan_attributes.patch ++++++
From 0bba1c5bdbcb404327ba4d5f35254b96d2e48108 Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Mon, 11 Dec 2023 15:41:26 +0100
Subject: [PATCH 01/11] [gdb/symtab] Refactor condition in scan_attributes
In scan_attributes there's code:
...
if (new_reader->cu == reader->cu
&& new_info_ptr > watermark_ptr
&& *parent_entry == nullptr)
...
else if (*parent_entry == nullptr)
...
...
that uses the "*parent_entry == nullptr" condition twice.
Make this somewhat more readable by factoring out the condition:
...
if (*parent_entry == nullptr)
{
if (new_reader->cu == reader->cu
&& new_info_ptr > watermark_ptr)
...
else
...
}
...
This also allows us to factor out "form_addr (origin_offset, origin_is_dwz)".
Tested on x86_64-linux.
---
gdb/dwarf2/read.c | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 2339cceb829..00471d20d41 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -18315,15 +18315,17 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
const gdb_byte *new_info_ptr = (new_reader->buffer
+ to_underlying (origin_offset));
- if (new_reader->cu == reader->cu
- && new_info_ptr > watermark_ptr
- && *parent_entry == nullptr)
- *maybe_defer = form_addr (origin_offset, origin_is_dwz);
- else if (*parent_entry == nullptr)
+ if (*parent_entry == nullptr)
{
- CORE_ADDR lookup = form_addr (origin_offset, origin_is_dwz);
- *parent_entry
- = (cooked_index_entry *) m_die_range_map.find (lookup);
+ CORE_ADDR addr = form_addr (origin_offset, origin_is_dwz);
+ if (new_reader->cu == reader->cu
+ && new_info_ptr > watermark_ptr)
+ *maybe_defer = addr;
+ else
+ {
+ void *obj = m_die_range_map.find (addr);
+ *parent_entry = static_cast <cooked_index_entry *> (obj);
+ }
}
unsigned int bytes_read;
base-commit: d445b7300b129a4886132ec31a23c7c2c894fa75
--
2.35.3
++++++ gdb-symtab-resolve-deferred-entries-inter-shard-case.patch ++++++
From 7464f06e1a7ccf4c5908e563e4cf684744919dac Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Tue, 22 Aug 2023 14:24:42 +0200
Subject: [PATCH 05/11] [gdb/symtab] Resolve deferred entries, inter-shard case
Generically solve the case of inter-CU dependencies, including inter-shard
dependencies:
- mark deferred entries in new data structure m_deferred,
- return &parent_map::deferred in find_parent for deferred entries,
- defer all intra-CU dependencies that depend on deferred entries,
- defer all inter-CU dependencies (note that two subsequent patches implement
optimizations to deal with this more optimally),
- move m_die_range_map and m_deferred_dies to cooked_index_shard, and
- move handle_deferred_dies to the cooked_index, where it is called in the
constructor, and update it to handle the intra-shard case.
Handling units from the .debug_info section alongside units from the
.debug_types section requires us to extend form_addr to take is_debug_types
into account.
Tested on x86_64-linux.
PR symtab/30846
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30846
---
gdb/dwarf2/cooked-index.c | 77 +++++++++++++++++++++++
gdb/dwarf2/cooked-index.h | 105 ++++++++++++++++++++++++++++++-
gdb/dwarf2/read.c | 128 ++++++++++++++++++++++----------------
3 files changed, 254 insertions(+), 56 deletions(-)
diff --git a/gdb/dwarf2/cooked-index.c b/gdb/dwarf2/cooked-index.c
index 2b7f9054fe5..4a0ccc78c5d 100644
--- a/gdb/dwarf2/cooked-index.c
+++ b/gdb/dwarf2/cooked-index.c
@@ -200,6 +200,12 @@ cooked_index_entry::write_scope (struct obstack *storage,
/* See cooked-index.h. */
+cooked_index_entry parent_map::deferred((sect_offset)0, (dwarf_tag)0,
+ (cooked_index_flag)0, nullptr,
+ nullptr, nullptr);
+
+/* See cooked-index.h. */
+
const cooked_index_entry *
cooked_index::add (sect_offset die_offset, enum dwarf_tag tag,
cooked_index_flag flags, const char *name,
@@ -402,6 +408,8 @@ cooked_index::find (const std::string &name, bool completing)
cooked_index_vector::cooked_index_vector (vec_type &&vec)
: m_vector (std::move (vec))
{
+ handle_deferred_entries ();
+
for (auto &idx : m_vector)
idx->finalize ();
}
@@ -467,6 +475,75 @@ cooked_index_vector::get_main () const
return result;
}
+/* See cooked-index.h. */
+
+const cooked_index_entry *
+cooked_index::resolve_deferred_entry
+ (const deferred_entry &de, const cooked_index_entry *parent_entry)
+{
+ reset_parent_deferred (parent_map::form_addr (de.die_offset, de.per_cu_2->is_dwz,
+ de.per_cu_2->is_debug_types));
+ return add (de.die_offset, de.tag, de.flags, de.name,
+ parent_entry, de.per_cu);
+}
+
+/* See cooked-index.h. */
+
+const cooked_index_entry *
+cooked_index_vector::find_parent_deferred_entry
+ (const cooked_index::deferred_entry &entry) const
+{
+ const cooked_index_entry *parent_entry = nullptr;
+ for (auto &parent_map_shard : m_vector)
+ {
+ auto res = parent_map_shard->find_parent (entry.spec_offset);
+ if (res != nullptr)
+ {
+ parent_entry = res;
+ break;
+ }
+ }
+
+ return parent_entry;
+}
+
+/* See cooked-index.h. */
+
+void
+cooked_index_vector::handle_deferred_entries ()
+{
+ bool changed;
+ bool deferred;
+ do
+ {
+ deferred = false;
+ changed = false;
+ for (auto &shard : m_vector)
+ for (auto it = shard->m_deferred_entries->begin ();
+ it != shard->m_deferred_entries->end (); )
+ {
+ const cooked_index_entry *parent_entry
+ = find_parent_deferred_entry (*it);
+ if (parent_entry == &parent_map::deferred)
+ {
+ deferred = true;
+ it++;
+ continue;
+ }
+ shard->resolve_deferred_entry (*it, parent_entry);
+ it = shard->m_deferred_entries->erase (it);
+ changed = true;
+ }
+ }
+ while (changed && deferred);
+
+ for (auto &shard : m_vector)
+ {
+ shard->m_die_range_map.reset (nullptr);
+ shard->m_deferred_entries.reset (nullptr);
+ }
+}
+
void _initialize_cooked_index ();
void
_initialize_cooked_index ()
diff --git a/gdb/dwarf2/cooked-index.h b/gdb/dwarf2/cooked-index.h
index f4abc7a974e..a06d99532ed 100644
--- a/gdb/dwarf2/cooked-index.h
+++ b/gdb/dwarf2/cooked-index.h
@@ -34,6 +34,7 @@
#include "dwarf2/mapped-index.h"
#include "dwarf2/tag.h"
#include "gdbsupport/range-chain.h"
+#include <unordered_set>
struct dwarf2_per_cu_data;
@@ -236,19 +237,29 @@ struct cooked_index_entry : public allocate_on_obstack
class parent_map
{
public:
+ /* A dummy cooked_index_entry to mark that computing the parent has been
+ deferred. */
+ static cooked_index_entry deferred;
+
/* A helper function to turn a section offset into an address that
can be used in a parent_map. */
- static CORE_ADDR form_addr (sect_offset offset, bool is_dwz)
+ static CORE_ADDR form_addr (sect_offset offset, bool is_dwz,
+ bool is_debug_types)
{
CORE_ADDR value = to_underlying (offset);
if (is_dwz)
value |= ((CORE_ADDR) 1) << (8 * sizeof (CORE_ADDR) - 1);
+ if (is_debug_types)
+ value |= ((CORE_ADDR) 1) << (8 * sizeof (CORE_ADDR) - 2);
return value;
}
/* Find the parent of DIE LOOKUP. */
const cooked_index_entry *find_parent (CORE_ADDR lookup) const
{
+ if (m_deferred.find (lookup) != m_deferred.end ())
+ return &parent_map::deferred;
+
const void *obj = m_parent_map.find (lookup);
return static_cast<const cooked_index_entry *> (obj);
}
@@ -259,12 +270,28 @@ class parent_map
{
/* Calling set_empty with nullptr is currently not allowed. */
if (parent_entry != nullptr)
- m_parent_map.set_empty (start, end, (void *)parent_entry);
+ {
+ gdb_assert (parent_entry != &parent_map::deferred);
+ m_parent_map.set_empty (start, end, (void *)parent_entry);
+ }
+ }
+
+ void set_parent_deferred (CORE_ADDR addr)
+ {
+ m_deferred.emplace (addr);
+ }
+
+ void reset_parent_deferred (CORE_ADDR addr)
+ {
+ m_deferred.erase (addr);
}
private:
/* An addrmap that maps from section offsets to cooked_index_entry *. */
addrmap_mutable m_parent_map;
+
+ /* DIEs that are deffered. */
+ std::unordered_set<CORE_ADDR> m_deferred;
};
class cooked_index_vector;
@@ -279,9 +306,14 @@ class cooked_index_vector;
class cooked_index
{
public:
- cooked_index () = default;
DISABLE_COPY_AND_ASSIGN (cooked_index);
+ cooked_index ()
+ {
+ m_die_range_map.reset (new parent_map);
+ m_deferred_entries.reset (new std::vector<deferred_entry>);
+ }
+
/* Create a new cooked_index_entry and register it with this object.
Entries are owned by this object. The new item is returned. */
const cooked_index_entry *add (sect_offset die_offset, enum dwarf_tag tag,
@@ -325,6 +357,52 @@ class cooked_index
for completion, will be returned. */
range find (const std::string &name, bool completing);
+ /* Find the parent of DIE LOOKUP. */
+ const cooked_index_entry *
+ find_parent (CORE_ADDR lookup) const
+ {
+ return m_die_range_map->find_parent (lookup);
+ }
+
+ /* Set the parent of DIES in range [START, END] to PARENT_ENTRY. */
+ void set_parent (CORE_ADDR start, CORE_ADDR end,
+ const cooked_index_entry *parent_entry)
+ {
+ m_die_range_map->set_parent (start, end, parent_entry);
+ }
+
+ void set_parent_deferred (CORE_ADDR addr)
+ {
+ m_die_range_map->set_parent_deferred (addr);
+ }
+
+ void reset_parent_deferred (CORE_ADDR addr)
+ {
+ m_die_range_map->reset_parent_deferred (addr);
+ }
+
+ /* A single deferred entry. See m_deferred_entries. */
+ struct deferred_entry
+ {
+ sect_offset die_offset;
+ const char *name;
+ CORE_ADDR spec_offset;
+ dwarf_tag tag;
+ cooked_index_flag flags;
+ dwarf2_per_cu_data *per_cu;
+ dwarf2_per_cu_data *per_cu_2;
+ };
+
+ /* Defer creating a cooked_index_entry corresponding to DEFERRED. */
+ void defer_entry (deferred_entry de)
+ {
+ m_deferred_entries->push_back (de);
+ }
+
+ /* Variant of add that takes a deferred_entry as parameter. */
+ const cooked_index_entry *resolve_deferred_entry
+ (const deferred_entry &entry, const cooked_index_entry *parent_entry);
+
private:
/* Return the entry that is believed to represent the program's
@@ -382,6 +460,20 @@ class cooked_index
that the 'get' method is never called on this future, only
'wait'. */
gdb::future<void> m_future;
+
+ /* An addrmap that maps from section offsets (see the form_addr
+ method) to newly-created entries. See m_deferred_entries to
+ understand this. */
+ std::unique_ptr<parent_map> m_die_range_map;
+
+ /* The generated DWARF can sometimes have the declaration for a
+ method in a class (or perhaps namespace) scope, with the
+ definition appearing outside this scope... just one of the many
+ bad things about DWARF. In order to handle this situation, we
+ defer certain entries until the end of scanning, at which point
+ we'll know the containing context of all the DIEs that we might
+ have scanned. This vector stores these deferred entries. */
+ std::unique_ptr<std::vector<deferred_entry>> m_deferred_entries;
};
/* The main index of DIEs. The parallel DIE indexers create
@@ -459,6 +551,13 @@ class cooked_index_vector : public dwarf_scanner_base
private:
+ /* Find the parent corresponding to deferred entry ENTRY. */
+ const cooked_index_entry *find_parent_deferred_entry
+ (const cooked_index::deferred_entry &entry) const;
+
+ /* Create cooked_index_entries for the deferred entries. */
+ void handle_deferred_entries ();
+
/* The vector of cooked_index objects. This is stored because the
entries are stored on the obstacks in those objects. */
vec_type m_vector;
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index ff5be8e7dc5..41fa8affcd0 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -6672,6 +6672,31 @@ class cooked_index_storage
return &m_addrmap;
}
+ /* Find the parent of DIE LOOKUP. */
+ const cooked_index_entry *find_parent (CORE_ADDR lookup)
+ {
+ return m_index->find_parent (lookup);
+ }
+
+ /* Set the parent of DIES in range [START, END] to PARENT_ENTRY. */
+ void set_parent (CORE_ADDR start, CORE_ADDR end,
+ const cooked_index_entry *parent_entry)
+ {
+ m_index->set_parent (start, end, parent_entry);
+ }
+
+ /* Set the parent of DIE at ADDR as deferred. */
+ void set_parent_deferred (CORE_ADDR addr)
+ {
+ m_index->set_parent_deferred (addr);
+ }
+
+ /* Defer creating a cooked_index_entry corresponding to deferred_entry DE. */
+ void defer_entry (cooked_index::deferred_entry de)
+ {
+ m_index->defer_entry (de);
+ }
+
private:
/* Hash function for a cutu_reader. */
@@ -6794,59 +6819,26 @@ class cooked_indexer
/* Find the parent of DIE LOOKUP. */
const cooked_index_entry *find_parent (CORE_ADDR lookup) const
{
- return m_die_range_map.find_parent (lookup);
+ return m_index_storage->find_parent (lookup);
}
/* Set the parent of DIES in range [START, END] to PARENT_ENTRY. */
void set_parent (CORE_ADDR start, CORE_ADDR end,
const cooked_index_entry *parent_entry)
{
- m_die_range_map.set_parent (start, end, parent_entry);
+ m_index_storage->set_parent (start, end, parent_entry);
}
- /* A single deferred entry. */
- struct deferred_entry
- {
- sect_offset die_offset;
- const char *name;
- CORE_ADDR spec_offset;
- dwarf_tag tag;
- cooked_index_flag flags;
- };
-
- /* The generated DWARF can sometimes have the declaration for a
- method in a class (or perhaps namespace) scope, with the
- definition appearing outside this scope... just one of the many
- bad things about DWARF. In order to handle this situation, we
- defer certain entries until the end of scanning, at which point
- we'll know the containing context of all the DIEs that we might
- have scanned. This vector stores these deferred entries. */
- std::vector<deferred_entry> m_deferred_entries;
-
- /* Defer creating a cooked_index_entry corresponding to deferred_entry DE. */
- void defer_entry (const deferred_entry &de)
+ /* Set the parent of DIE at ADDR as deferred. */
+ void set_parent_deferred (CORE_ADDR addr)
{
- m_deferred_entries.push_back (de);
+ m_index_storage->set_parent_deferred (addr);
}
- /* Create a cooked_index_entry corresponding to deferred_entry DE with
- parent PARENT_ENTRY. */
- const cooked_index_entry *resolve_deferred_entry
- (const deferred_entry &de, const cooked_index_entry *parent_entry)
- {
- return m_index_storage->add (de.die_offset, de.tag, de.flags, de.name,
- parent_entry, m_per_cu);
- }
-
- /* Create cooked_index_entries for the deferred entries. */
- void handle_deferred_entries ()
+ /* Defer creating a cooked_index_entry corresponding to deferred_entry DE. */
+ void defer_entry (const cooked_index::deferred_entry &de)
{
- for (const auto &entry : m_deferred_entries)
- {
- const cooked_index_entry *parent_entry
- = find_parent (entry.spec_offset);
- resolve_deferred_entry (entry, parent_entry);
- }
+ m_index_storage->defer_entry (de);
}
};
@@ -18346,13 +18338,36 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
if (*parent_entry == nullptr)
{
+ gdb_assert (reader->cu->per_cu->is_debug_types
+ == new_reader->cu->per_cu->is_debug_types);
CORE_ADDR addr
- = parent_map::form_addr (origin_offset, origin_is_dwz);
- if (new_reader->cu == reader->cu
- && new_info_ptr > watermark_ptr)
- *maybe_defer = addr;
+ = parent_map::form_addr (origin_offset, origin_is_dwz,
+ reader->cu->per_cu->is_debug_types);
+ if (new_reader->cu == reader->cu)
+ {
+ /* Intra-CU case. */
+ if (new_info_ptr > watermark_ptr)
+ {
+ /* Defer because origin is not read yet. */
+ *maybe_defer = addr;
+ }
+ else
+ {
+ auto tmp = find_parent (addr);
+ if (tmp == &parent_map::deferred)
+ {
+ /* Defer because origin is deferred. */
+ *maybe_defer = addr;
+ }
+ else
+ *parent_entry = tmp;
+ }
+ }
else
- *parent_entry = find_parent (addr);
+ {
+ /* Inter-CU case. */
+ *maybe_defer = addr;
+ }
}
unsigned int bytes_read;
@@ -18475,10 +18490,12 @@ cooked_indexer::recurse (cutu_reader *reader,
limit the range to the children of parent_entry. */
CORE_ADDR start
= parent_map::form_addr (parent_entry->die_offset + 1,
- reader->cu->per_cu->is_dwz);
+ reader->cu->per_cu->is_dwz,
+ reader->cu->per_cu->is_debug_types);
CORE_ADDR end
= parent_map::form_addr (sect_offset (info_ptr - 1 - reader->buffer),
- reader->cu->per_cu->is_dwz);
+ reader->cu->per_cu->is_dwz,
+ reader->cu->per_cu->is_debug_types);
set_parent (start, end, parent_entry);
}
@@ -18545,9 +18562,16 @@ cooked_indexer::index_dies (cutu_reader *reader,
if (name != nullptr)
{
if (defer != 0)
- defer_entry ({
- this_die, name, defer, abbrev->tag, flags
- });
+ {
+ CORE_ADDR addr
+ = parent_map::form_addr (this_die, reader->cu->per_cu->is_dwz,
+ reader->cu->per_cu->is_debug_types);
+ set_parent_deferred (addr);
+ defer_entry ({
+ this_die, name, defer, abbrev->tag, flags, m_per_cu,
+ reader->cu->per_cu
+ });
+ }
else
this_entry = m_index_storage->add (this_die, abbrev->tag, flags,
name, this_parent_entry,
@@ -18649,8 +18673,6 @@ cooked_indexer::make_index (cutu_reader *reader)
if (!reader->comp_unit_die->has_children)
return;
index_dies (reader, reader->info_ptr, nullptr, false);
-
- handle_deferred_entries ();
}
/* An implementation of quick_symbol_functions for the cooked DWARF
--
2.35.3
++++++ gdb-symtab-resolve-deferred-entries-intra-shard-case.patch ++++++
From a4bf216accd43b25ea9b9b7507c93eb973872a82 Mon Sep 17 00:00:00 2001
From: Tom de Vries <tdevries(a)suse.de>
Date: Sun, 24 Sep 2023 11:43:24 +0200
Subject: [PATCH 07/11] [gdb/symtab] Resolve deferred entries, intra-shard case
In patch "[gdb/symtab] Resolve deferred entries, inter-shard case" we've
solved the generic case of handling deferred entries.
Now add an optimization that handles deferred entries with an intra-shard
dependency in the parallel for.
Tested on x86_64-linux.
---
gdb/dwarf2/cooked-index.c | 35 +++++++++++++++++++++++++++++++++++
gdb/dwarf2/cooked-index.h | 7 +++++++
gdb/dwarf2/read.c | 10 ++++++++++
3 files changed, 52 insertions(+)
diff --git a/gdb/dwarf2/cooked-index.c b/gdb/dwarf2/cooked-index.c
index cef57a96384..d8a12bee265 100644
--- a/gdb/dwarf2/cooked-index.c
+++ b/gdb/dwarf2/cooked-index.c
@@ -408,6 +408,7 @@ cooked_index::find (const std::string &name, bool completing)
cooked_index_vector::cooked_index_vector (vec_type &&vec)
: m_vector (std::move (vec))
{
+ /* Handle deferred entries, inter-cu case. */
handle_deferred_entries ();
for (auto &idx : m_vector)
@@ -477,6 +478,40 @@ cooked_index_vector::get_main () const
/* See cooked-index.h. */
+const cooked_index_entry *
+cooked_index::find_parent_deferred_entry
+ (const cooked_index::deferred_entry &entry) const
+{
+ return find_parent (entry.spec_offset);
+}
+
+/* See cooked-index.h. */
+
+void
+cooked_index::handle_deferred_entries ()
+{
+ for (auto it = m_deferred_entries->begin (); it != m_deferred_entries->end (); )
+ {
+ const deferred_entry & deferred_entry = *it;
+ if (!parent_valid (deferred_entry.spec_offset))
+ {
+ it++;
+ continue;
+ }
+ const cooked_index_entry *parent_entry
+ = find_parent_deferred_entry (deferred_entry);
+ if (parent_entry == &parent_map::deferred)
+ {
+ it++;
+ continue;
+ }
+ resolve_deferred_entry (deferred_entry, parent_entry);
+ it = m_deferred_entries->erase (it);
+ }
+}
+
+/* See cooked-index.h. */
+
const cooked_index_entry *
cooked_index::resolve_deferred_entry
(const deferred_entry &de, const cooked_index_entry *parent_entry)
diff --git a/gdb/dwarf2/cooked-index.h b/gdb/dwarf2/cooked-index.h
index 9d836379666..bda1ed1e155 100644
--- a/gdb/dwarf2/cooked-index.h
+++ b/gdb/dwarf2/cooked-index.h
@@ -404,6 +404,13 @@ class cooked_index
const cooked_index_entry *resolve_deferred_entry
(const deferred_entry &entry, const cooked_index_entry *parent_entry);
+ /* Find the parent entry for deferred_entry ENTRY. */
+ const cooked_index_entry *find_parent_deferred_entry
+ (const cooked_index::deferred_entry &entry) const;
+
+ /* Create cooked_index_entries for the deferred entries. */
+ void handle_deferred_entries ();
+
/* Mark parents in range [START, END] as valid . */
void set_parent_valid (CORE_ADDR start, CORE_ADDR end)
{
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index ba21b6a14c9..0ab3e1a1500 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -6697,6 +6697,12 @@ class cooked_index_storage
m_index->defer_entry (de);
}
+ /* Handle deferred entries, intra-cu case. */
+ void handle_deferred_entries ()
+ {
+ m_index->handle_deferred_entries ();
+ }
+
/* Mark parents in range [START, END] as valid . */
void set_parent_valid (CORE_ADDR start, CORE_ADDR end)
{
@@ -7183,6 +7189,10 @@ dwarf2_build_psymtabs_hard (dwarf2_per_objfile *per_objfile)
errors.push_back (std::move (except));
}
}
+
+ /* Handle deferred entries, intra-cu case. */
+ thread_storage.handle_deferred_entries ();
+
return result_type (thread_storage.release (), std::move (errors));
}, task_size);
--
2.35.3
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cloud-init for openSUSE:Factory checked in at 2023-12-19 23:15:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cloud-init (Old)
and /work/SRC/openSUSE:Factory/.cloud-init.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cloud-init"
Tue Dec 19 23:15:31 2023 rev:94 rq:1133887 version:23.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/cloud-init/cloud-init.changes 2023-12-13 18:34:06.744519694 +0100
+++ /work/SRC/openSUSE:Factory/.cloud-init.new.9037/cloud-init.changes 2023-12-19 23:15:37.121066431 +0100
@@ -1,0 +2,5 @@
+Fri Dec 15 14:09:36 UTC 2023 - Robert Schweikert <rjschwei(a)suse.com>
+
+- Switch build dependency to the generic distribution-release package
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cloud-init.spec ++++++
--- /var/tmp/diff_new_pack.AyYvgA/_old 2023-12-19 23:15:38.549118434 +0100
+++ /var/tmp/diff_new_pack.AyYvgA/_new 2023-12-19 23:15:38.553118580 +0100
@@ -67,11 +67,7 @@
BuildRequires: python3-responses
BuildRequires: python3-serial
BuildRequires: system-user-nobody
-%if 0%{?is_opensuse}
-BuildRequires: openSUSE-release
-%else
-BuildRequires: sles-release
-%endif
+BuildRequires: distribution-release
BuildRequires: util-linux
Requires: bash
Requires: dhcp-client
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package thin-provisioning-tools for openSUSE:Factory checked in at 2023-12-19 23:15:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/thin-provisioning-tools (Old)
and /work/SRC/openSUSE:Factory/.thin-provisioning-tools.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "thin-provisioning-tools"
Tue Dec 19 23:15:29 2023 rev:24 rq:1133877 version:1.0.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/thin-provisioning-tools/thin-provisioning-tools.changes 2023-11-29 21:18:36.924493714 +0100
+++ /work/SRC/openSUSE:Factory/.thin-provisioning-tools.new.9037/thin-provisioning-tools.changes 2023-12-19 23:15:34.436968690 +0100
@@ -1,0 +2,16 @@
+Mon Dec 18 14:36:10 UTC 2023 - Martin Pluskal <mpluskal(a)suse.com>
+
+- Update to version 1.0.9:
+ * Update Cargo.lock
+ * [build] Check Cargo.lock while it is updated
+ * Bump version to 1.0.9
+ * [build] Sync dependencies versions between Cargo.lock and Cargo.toml
+ * [thin_check] Extend the --clear-needs-check-flag option to have auto-repair caps
+ * [build] Require that Cargo.lock is up to date
+ * [all] Fix clippy lints for Rust 1.74.0
+ * Update cargo.lock
+ * bump version nr to 1.0.8
+ * [sync io engine] Stop reusing the same gap buffer.
+ * [tests] Fix extra arguments for IO tests
+
+-------------------------------------------------------------------
Old:
----
thin-provisioning-tools-1.0.7.tar.zst
New:
----
thin-provisioning-tools-1.0.9.tar.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ thin-provisioning-tools.spec ++++++
--- /var/tmp/diff_new_pack.ZfgRA7/_old 2023-12-19 23:15:35.929023023 +0100
+++ /var/tmp/diff_new_pack.ZfgRA7/_new 2023-12-19 23:15:35.933023169 +0100
@@ -17,7 +17,7 @@
Name: thin-provisioning-tools
-Version: 1.0.7
+Version: 1.0.9
Release: 0
Summary: Thin Provisioning Tools
License: GPL-3.0-only
++++++ _service ++++++
--- /var/tmp/diff_new_pack.ZfgRA7/_old 2023-12-19 23:15:35.961024188 +0100
+++ /var/tmp/diff_new_pack.ZfgRA7/_new 2023-12-19 23:15:35.965024334 +0100
@@ -6,7 +6,7 @@
<param name="match-tag">*</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="changesgenerate">enable</param>
- <param name="revision">refs/tags/v1.0.7</param>
+ <param name="revision">refs/tags/v1.0.9</param>
</service>
<service mode="manual" name="tar" />
<service mode="manual" name="recompress">
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.ZfgRA7/_old 2023-12-19 23:15:35.981024916 +0100
+++ /var/tmp/diff_new_pack.ZfgRA7/_new 2023-12-19 23:15:35.985025062 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/jthornber/thin-provisioning-tools.git</param>
- <param name="changesrevision">76a8174c9a16647837977344598ad1beabb1a1a9</param></service></servicedata>
+ <param name="changesrevision">1d60839b0a920df6476712b80f933854fb32e160</param></service></servicedata>
(No newline at EOF)
++++++ thin-provisioning-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.ZfgRA7/_old 2023-12-19 23:15:36.029026664 +0100
+++ /var/tmp/diff_new_pack.ZfgRA7/_new 2023-12-19 23:15:36.033026810 +0100
@@ -1,5 +1,5 @@
name: thin-provisioning-tools
-version: 1.0.7
-mtime: 1698938434
-commit: 76a8174c9a16647837977344598ad1beabb1a1a9
+version: 1.0.9
+mtime: 1702054516
+commit: 1d60839b0a920df6476712b80f933854fb32e160
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.ZfgRA7/_old and /var/tmp/diff_new_pack.ZfgRA7/_new differ
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package nodejs20 for openSUSE:Factory checked in at 2023-12-19 23:15:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nodejs20 (Old)
and /work/SRC/openSUSE:Factory/.nodejs20.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nodejs20"
Tue Dec 19 23:15:27 2023 rev:17 rq:1133875 version:20.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/nodejs20/nodejs20.changes 2023-10-27 22:27:02.616984749 +0200
+++ /work/SRC/openSUSE:Factory/.nodejs20.new.9037/nodejs20.changes 2023-12-19 23:15:31.592865121 +0100
@@ -1,0 +2,25 @@
+Thu Nov 23 08:02:58 UTC 2023 - Adam Majer <adam.majer(a)suse.de> - 20.10.0
+
+- Update to 20.10.0:
+ * --experimental-default-type flag to flip module defaults
+ * The new flag --experimental-detect-module can be used to
+ automatically run ES modules when their syntax can be detected.
+ * Added flush option in file system functions for fs.writeFile functions
+ * Added experimental WebSocket client
+ * vm: fix V8 compilation cache support for vm.Script. This fixes
+ performance regression since v16.x when support for
+ importModuleDynamically was added to vm.Script
+
+For details, see
+https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V20.md#20.10.0
+
+- nodejs20-zlib-1.3.patch: upstreamed, removed
+- fix_ci_tests.patch, node-gyp-addon-gypi.patch: refreshed
+
+-------------------------------------------------------------------
+Thu Nov 9 09:05:33 UTC 2023 - Adam Majer <adam.majer(a)suse.de>
+
+- Update to 20.9.0:
+ * No changes, just LTS transition
+
+-------------------------------------------------------------------
Old:
----
node-v20.8.1.tar.xz
nodejs20-zlib-1.3.patch
New:
----
node-v20.10.0.tar.xz
BETA DEBUG BEGIN:
Old:
- nodejs20-zlib-1.3.patch: upstreamed, removed
- fix_ci_tests.patch, node-gyp-addon-gypi.patch: refreshed
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nodejs20.spec ++++++
--- /var/tmp/diff_new_pack.GyP3Nj/_old 2023-12-19 23:15:32.508898478 +0100
+++ /var/tmp/diff_new_pack.GyP3Nj/_new 2023-12-19 23:15:32.508898478 +0100
@@ -31,7 +31,7 @@
%endif
Name: nodejs20
-Version: 20.8.1
+Version: 20.10.0
Release: 0
# Double DWZ memory limits
@@ -49,6 +49,11 @@
%bcond_with libalternatives
%endif
+# nodejs20+ is not for SLE12
+%if %{node_version_number} >= 20 && 0%{?suse_version} > 0 && 0%{?suse_version} < 1500
+ExclusiveArch do_not_build
+%endif
+
%if %node_version_number >= 12
%define openssl_req_ver 1.1.1
%else
@@ -172,7 +177,6 @@
Patch305: qemu_timeouts_arches.patch
Patch308: node-gyp-config.patch
Patch309: gcc13.patch
-Patch311: nodejs20-zlib-1.3.patch
BuildRequires: pkg-config
BuildRequires: fdupes
@@ -293,7 +297,7 @@
%else
# bundled openssl
%if %node_version_number <= 12 && 0%{?suse_version} == 1315 && 0%{?sle_version} < 120400
-Provides: bundled(openssl) = 3.0.10
+Provides: bundled(openssl) = 3.0.12
%else
BuildRequires: bundled_openssl_should_not_be_required
%endif
@@ -304,7 +308,7 @@
%if ! 0%{with intree_cares}
BuildRequires: pkgconfig(libcares) >= 1.17.0
%else
-Provides: bundled(libcares2) = 1.19.1
+Provides: bundled(libcares2) = 1.20.1
%endif
%if ! 0%{with intree_icu}
@@ -365,7 +369,7 @@
%endif
%endif
-Provides: bundled(uvwasi) = 0.0.18
+Provides: bundled(uvwasi) = 0.0.19
Provides: bundled(libuv) = 1.46.0
Provides: bundled(v8) = 11.3.244.8
%if %{with intree_brotli}
@@ -378,9 +382,9 @@
Provides: bundled(llhttp) = 8.1.1
Provides: bundled(ngtcp2) = 0.8.1
Provides: bundled(base64) = 0.5.0
-Provides: bundled(simdutf) = 3.2.17
+Provides: bundled(simdutf) = 3.2.18
# bundled url-ada parser, not ada
-Provides: bundled(ada) = 2.6.0
+Provides: bundled(ada) = 2.7.2
Provides: bundled(node-acorn) = 8.10.0
Provides: bundled(node-acorn-walk) = 8.2.0
@@ -388,10 +392,10 @@
Provides: bundled(node-brace-expansion) = 2.0.1
Provides: bundled(node-busboy) = 1.6.0
Provides: bundled(node-cjs-module-lexer) = 1.2.2
-Provides: bundled(node-corepack) = 0.20.0
+Provides: bundled(node-corepack) = 0.22.0
Provides: bundled(node-minimatch) = 9.0.3
Provides: bundled(node-streamsearch) = 1.1.0
-Provides: bundled(node-undici) = 5.26.3
+Provides: bundled(node-undici) = 5.26.4
Provides: bundled(node-undici-types) = 5.25.1
%description
@@ -421,7 +425,7 @@
Requires: nodejs20 = %{version}
Provides: nodejs-npm = %{version}
Obsoletes: nodejs-npm < 4.0.0
-Provides: npm(npm) = 10.1.0
+Provides: npm(npm) = 10.2.3
Provides: npm = %{version}
%if 0%{?suse_version} >= 1500
%if %{node_version_number} >= 10
@@ -429,12 +433,9 @@
Requires: group(nobody)
%endif
%endif
-Provides: bundled(node-abbrev) = 1.1.1
Provides: bundled(node-abbrev) = 2.0.0
Provides: bundled(node-abort-controller) = 3.0.0
-Provides: bundled(node-agent-base) = 6.0.2
Provides: bundled(node-agent-base) = 7.1.0
-Provides: bundled(node-agentkeepalive) = 4.5.0
Provides: bundled(node-aggregate-error) = 3.1.0
Provides: bundled(node-ansi-regex) = 5.0.1
Provides: bundled(node-ansi-regex) = 6.0.1
@@ -442,33 +443,29 @@
Provides: bundled(node-ansi-styles) = 6.2.1
Provides: bundled(node-aproba) = 2.0.0
Provides: bundled(node-archy) = 1.0.0
-Provides: bundled(node-are-we-there-yet) = 3.0.1
-Provides: bundled(node-are-we-there-yet) = 4.0.0
+Provides: bundled(node-are-we-there-yet) = 4.0.1
Provides: bundled(node-balanced-match) = 1.0.2
Provides: bundled(node-base64-js) = 1.5.1
-Provides: bundled(node-bin-links) = 4.0.2
+Provides: bundled(node-bin-links) = 4.0.3
Provides: bundled(node-binary-extensions) = 2.2.0
-Provides: bundled(node-brace-expansion) = 1.1.11
Provides: bundled(node-brace-expansion) = 2.0.1
Provides: bundled(node-buffer) = 6.0.3
Provides: bundled(node-builtins) = 5.0.1
-Provides: bundled(node-cacache) = 17.1.4
Provides: bundled(node-cacache) = 18.0.0
Provides: bundled(node-chalk) = 5.3.0
Provides: bundled(node-chownr) = 2.0.0
-Provides: bundled(node-ci-info) = 3.8.0
+Provides: bundled(node-ci-info) = 3.9.0
Provides: bundled(node-cidr-regex) = 3.1.1
Provides: bundled(node-clean-stack) = 2.2.0
Provides: bundled(node-cli-columns) = 4.0.0
Provides: bundled(node-cli-table3) = 0.6.3
Provides: bundled(node-clone) = 1.0.4
-Provides: bundled(node-cmd-shim) = 6.0.1
+Provides: bundled(node-cmd-shim) = 6.0.2
Provides: bundled(node-color-convert) = 2.0.1
Provides: bundled(node-color-name) = 1.1.4
Provides: bundled(node-color-support) = 1.1.3
Provides: bundled(node-columnify) = 1.6.0
Provides: bundled(node-common-ancestor-path) = 1.0.1
-Provides: bundled(node-concat-map) = 0.0.1
Provides: bundled(node-console-control-strings) = 1.1.0
Provides: bundled(node-cross-spawn) = 7.0.3
Provides: bundled(node-cssesc) = 3.0.0
@@ -489,66 +486,55 @@
Provides: bundled(node-foreground-child) = 3.1.1
Provides: bundled(node-fs-minipass) = 2.1.0
Provides: bundled(node-fs-minipass) = 3.0.3
-Provides: bundled(node-fs.realpath) = 1.0.0
Provides: bundled(node-function-bind) = 1.1.1
-Provides: bundled(node-gauge) = 4.0.4
Provides: bundled(node-gauge) = 5.0.1
-Provides: bundled(node-glob) = 10.3.3
-Provides: bundled(node-glob) = 7.2.3
+Provides: bundled(node-glob) = 10.3.10
Provides: bundled(node-graceful-fs) = 4.2.11
Provides: bundled(node-has) = 1.0.3
Provides: bundled(node-has-unicode) = 2.0.1
-Provides: bundled(node-hosted-git-info) = 7.0.0
+Provides: bundled(node-hosted-git-info) = 7.0.1
Provides: bundled(node-http-cache-semantics) = 4.1.1
-Provides: bundled(node-http-proxy-agent) = 5.0.0
Provides: bundled(node-http-proxy-agent) = 7.0.0
-Provides: bundled(node-https-proxy-agent) = 5.0.1
-Provides: bundled(node-https-proxy-agent) = 7.0.1
-Provides: bundled(node-humanize-ms) = 1.2.1
+Provides: bundled(node-https-proxy-agent) = 7.0.2
Provides: bundled(node-iconv-lite) = 0.6.3
Provides: bundled(node-ieee754) = 1.2.1
Provides: bundled(node-ignore-walk) = 6.0.3
Provides: bundled(node-imurmurhash) = 0.1.4
Provides: bundled(node-indent-string) = 4.0.0
-Provides: bundled(node-inflight) = 1.0.6
-Provides: bundled(node-inherits) = 2.0.4
Provides: bundled(node-ini) = 4.1.1
Provides: bundled(node-init-package-json) = 6.0.0
Provides: bundled(node-ip) = 2.0.0
Provides: bundled(node-ip-regex) = 4.3.0
Provides: bundled(node-is-cidr) = 4.0.2
-Provides: bundled(node-is-core-module) = 2.12.1
+Provides: bundled(node-is-core-module) = 2.13.0
Provides: bundled(node-is-fullwidth-code-point) = 3.0.0
Provides: bundled(node-is-lambda) = 1.0.1
Provides: bundled(node-isexe) = 2.0.0
Provides: bundled(node-isexe) = 3.1.1
-Provides: bundled(node-jackspeak) = 2.2.1
+Provides: bundled(node-jackspeak) = 2.3.6
Provides: bundled(node-json-parse-even-better-errors) = 3.0.0
Provides: bundled(node-json-stringify-nice) = 1.1.4
Provides: bundled(node-jsonparse) = 1.3.1
Provides: bundled(node-just-diff) = 6.0.2
Provides: bundled(node-just-diff-apply) = 5.5.0
-Provides: bundled(node-libnpmaccess) = 8.0.0
-Provides: bundled(node-libnpmdiff) = 6.0.1
-Provides: bundled(node-libnpmexec) = 7.0.1
-Provides: bundled(node-libnpmfund) = 4.1.1
+Provides: bundled(node-libnpmaccess) = 8.0.1
+Provides: bundled(node-libnpmdiff) = 6.0.3
+Provides: bundled(node-libnpmexec) = 7.0.3
+Provides: bundled(node-libnpmfund) = 5.0.1
Provides: bundled(node-libnpmhook) = 10.0.0
-Provides: bundled(node-libnpmorg) = 6.0.0
-Provides: bundled(node-libnpmpack) = 6.0.1
-Provides: bundled(node-libnpmpublish) = 9.0.0
+Provides: bundled(node-libnpmorg) = 6.0.1
+Provides: bundled(node-libnpmpack) = 6.0.3
+Provides: bundled(node-libnpmpublish) = 9.0.1
Provides: bundled(node-libnpmsearch) = 7.0.0
Provides: bundled(node-libnpmteam) = 6.0.0
-Provides: bundled(node-libnpmversion) = 5.0.0
+Provides: bundled(node-libnpmversion) = 5.0.1
Provides: bundled(node-lru-cache) = 10.0.1
Provides: bundled(node-lru-cache) = 6.0.0
-Provides: bundled(node-lru-cache) = 7.18.3
-Provides: bundled(node-make-fetch-happen) = 11.1.1
Provides: bundled(node-make-fetch-happen) = 13.0.0
-Provides: bundled(node-minimatch) = 3.1.2
Provides: bundled(node-minimatch) = 9.0.3
Provides: bundled(node-minipass) = 3.3.6
Provides: bundled(node-minipass) = 5.0.0
-Provides: bundled(node-minipass) = 7.0.3
+Provides: bundled(node-minipass) = 7.0.4
Provides: bundled(node-minipass-collect) = 1.0.2
Provides: bundled(node-minipass-fetch) = 3.0.4
Provides: bundled(node-minipass-flush) = 1.0.5
@@ -561,27 +547,23 @@
Provides: bundled(node-ms) = 2.1.3
Provides: bundled(node-mute-stream) = 1.0.0
Provides: bundled(node-negotiator) = 0.6.3
-Provides: bundled(node-node-gyp) = 9.4.0
-Provides: bundled(node-nopt) = 6.0.0
+Provides: bundled(node-node-gyp) = 10.0.1
Provides: bundled(node-nopt) = 7.2.0
Provides: bundled(node-normalize-package-data) = 6.0.0
Provides: bundled(node-npm-audit-report) = 5.0.0
Provides: bundled(node-npm-bundled) = 3.0.0
-Provides: bundled(node-npm-install-checks) = 6.2.0
+Provides: bundled(node-npm-install-checks) = 6.3.0
Provides: bundled(node-npm-normalize-package-bin) = 3.0.1
-Provides: bundled(node-npm-package-arg) = 11.0.0
+Provides: bundled(node-npm-package-arg) = 11.0.1
Provides: bundled(node-npm-packlist) = 8.0.0
Provides: bundled(node-npm-pick-manifest) = 9.0.0
Provides: bundled(node-npm-profile) = 9.0.0
-Provides: bundled(node-npm-registry-fetch) = 16.0.0
+Provides: bundled(node-npm-registry-fetch) = 16.1.0
Provides: bundled(node-npm-user-validate) = 2.0.0
-Provides: bundled(node-npmlog) = 6.0.2
Provides: bundled(node-npmlog) = 7.0.1
-Provides: bundled(node-once) = 1.4.0
Provides: bundled(node-p-map) = 4.0.0
Provides: bundled(node-pacote) = 17.0.4
Provides: bundled(node-parse-conflict-json) = 3.0.1
-Provides: bundled(node-path-is-absolute) = 1.0.1
Provides: bundled(node-path-key) = 3.1.1
Provides: bundled(node-path-scurry) = 1.10.1
Provides: bundled(node-postcss-selector-parser) = 6.0.13
@@ -597,27 +579,23 @@
Provides: bundled(node-read-cmd-shim) = 4.0.0
Provides: bundled(node-read-package-json) = 7.0.0
Provides: bundled(node-read-package-json-fast) = 3.0.2
-Provides: bundled(node-readable-stream) = 3.6.2
-Provides: bundled(node-readable-stream) = 4.4.0
+Provides: bundled(node-readable-stream) = 4.4.2
Provides: bundled(node-retry) = 0.12.0
-Provides: bundled(node-rimraf) = 3.0.2
Provides: bundled(node-safe-buffer) = 5.2.1
Provides: bundled(node-safer-buffer) = 2.1.2
Provides: bundled(node-semver) = 7.5.4
Provides: bundled(node-set-blocking) = 2.0.0
Provides: bundled(node-shebang-command) = 2.0.0
Provides: bundled(node-shebang-regex) = 3.0.0
-Provides: bundled(node-signal-exit) = 3.0.7
Provides: bundled(node-signal-exit) = 4.0.2
Provides: bundled(node-sigstore) = 2.1.0
Provides: bundled(node-smart-buffer) = 4.2.0
Provides: bundled(node-socks) = 2.7.1
-Provides: bundled(node-socks-proxy-agent) = 7.0.0
-Provides: bundled(node-socks-proxy-agent) = 8.0.1
+Provides: bundled(node-socks-proxy-agent) = 8.0.2
Provides: bundled(node-spdx-correct) = 3.2.0
Provides: bundled(node-spdx-exceptions) = 2.3.0
Provides: bundled(node-spdx-expression-parse) = 3.0.1
-Provides: bundled(node-spdx-license-ids) = 3.0.13
+Provides: bundled(node-spdx-license-ids) = 3.0.16
Provides: bundled(node-ssri) = 10.0.5
Provides: bundled(node-string_decoder) = 1.3.0
Provides: bundled(node-string-width) = 4.2.3
@@ -625,7 +603,7 @@
Provides: bundled(node-strip-ansi) = 6.0.1
Provides: bundled(node-strip-ansi) = 7.1.0
Provides: bundled(node-supports-color) = 9.4.0
-Provides: bundled(node-tar) = 6.1.15
+Provides: bundled(node-tar) = 6.2.0
Provides: bundled(node-text-table) = 0.2.0
Provides: bundled(node-tiny-relative-date) = 1.3.0
Provides: bundled(node-treeverse) = 3.0.0
@@ -642,7 +620,6 @@
Provides: bundled(node-wide-align) = 1.1.5
Provides: bundled(node-wrap-ansi) = 7.0.0
Provides: bundled(node-wrap-ansi) = 8.1.0
-Provides: bundled(node-wrappy) = 1.0.2
Provides: bundled(node-write-file-atomic) = 5.0.1
Provides: bundled(node-yallist) = 4.0.0
@@ -733,7 +710,6 @@
%patch305 -p1
%patch309 -p1
-%patch311 -p1
%if %{node_version_number} == 12
# minimist security update - patch50
++++++ SHASUMS256.txt ++++++
--- /var/tmp/diff_new_pack.GyP3Nj/_old 2023-12-19 23:15:32.548899935 +0100
+++ /var/tmp/diff_new_pack.GyP3Nj/_new 2023-12-19 23:15:32.552900081 +0100
@@ -1,42 +1,42 @@
-eea26c68c1f4799fc3ac3f2da9bfd4038b987d51d19d9c4ba8b145b3eee53c7d node-v20.8.1-aix-ppc64.tar.gz
-93a5796c02c4e97378d6d0e2fcd8ac7b39418d97c21cf9aa6d9aa605814a1bff node-v20.8.1-arm64.msi
-5451f3651c89cd8f224e74961c84e68f4c8d63fe288431a3223b0465cc8b961e node-v20.8.1-darwin-arm64.tar.gz
-147e700ec86f8dbb8428600675673de303eb8710273b531031e5e9f3cde64644 node-v20.8.1-darwin-arm64.tar.xz
-92b00b357c311eb45dd86516b032d80c63894aa069821c3ae3c8b3bbd00fdb9a node-v20.8.1-darwin-x64.tar.gz
-679843744b44ac897479fd53340fdc6d96e5b5c139e90b9cdcbad8a403eaf807 node-v20.8.1-darwin-x64.tar.xz
-b2db83feb961721f17142e792643974b04456cf2da34c22da3ac29cd00123226 node-v20.8.1-headers.tar.gz
-298e41b8d7fd17738049f9c5f6e315bb0f935ab90f9b542d1a55cf6488cc3d67 node-v20.8.1-headers.tar.xz
-c0420fef5f6e637888be3f400e99297bb844932166fbad5ffa4f188ce59cfcdf node-v20.8.1-linux-arm64.tar.gz
-fec6edefa7ff959b29c7887735582ff2a2211b36a65a539da0f37db6797b7cff node-v20.8.1-linux-arm64.tar.xz
-679fb1cc74ecc460b4a8178b90be2847af28ee817fa2f39d986c832405c0ee1e node-v20.8.1-linux-armv7l.tar.gz
-f8370aaecd2cc2f26f8571aed7ffcf8efb6dc884a9a5e8e7a5e225e5ccfe6b74 node-v20.8.1-linux-armv7l.tar.xz
-162bbf69b2c1aefc8163c371324cfd70582b8527e7623436d6e53823987a23d2 node-v20.8.1-linux-ppc64le.tar.gz
-648d80fcb4a160e3078a66b3fc8c8eac669d28de3cfa533abed0bf8cb5af5785 node-v20.8.1-linux-ppc64le.tar.xz
-d6a384293f18ba49b7507b67ce2ca1958050930768cae817d4705c3d3e672af2 node-v20.8.1-linux-s390x.tar.gz
-4aa14458f2bac422989cc4526c431b14743c2f07889559fd1f2163cc6f3071f4 node-v20.8.1-linux-s390x.tar.xz
-a42ac1f81704b14c7d07ddde989a8e290087b0487ee3f47185eb0240ba518195 node-v20.8.1-linux-x64.tar.gz
-44096f6276cf735f3b25f47ffaaa1629b0abad4d9932c3a77d9dcdc743a3ff92 node-v20.8.1-linux-x64.tar.xz
-abd016ae0dd943b196510e67277542c9cd31d24fbfa6834116a485d2c1d2b882 node-v20.8.1-win-arm64.7z
-fbf7709c815f37577995d04b2cc41764033f06545c2c142d253ed257fe497960 node-v20.8.1-win-arm64.zip
-6b3cb0e8d347ac52f0c45ba27a8c6f099b8053f18dfe7f6802e21c0b312aaedf node-v20.8.1-win-x64.7z
-90b27dab351a582edd3a8de2e8aaa80d95c41f19fe92ebbef83b9a45bac95d00 node-v20.8.1-win-x64.zip
-ea692ad4bb1e80156aa6143c39afda2cfd0d46c36e14a1e03064a5bd084f05cc node-v20.8.1-win-x86.7z
-ba90977d0bee226db2dc89f55a3964eee4d844caef96e4db6994e1800d9c7dce node-v20.8.1-win-x86.zip
-c364cda2bab611b08404d5f8c93913b0007b3a19830a27dee5ff5d466807f5eb node-v20.8.1-x64.msi
-4f3daffb3124c08a31ebeca0a6b9aa4e4effcd5650c1fe1274c61343fb46689c node-v20.8.1-x86.msi
-097897aa8489962e955700d75238230e8295fbc02a27bcdd53d4462ead2c8c7e node-v20.8.1.pkg
-18aed385341bc16c7802e9d03189d1d0ad17b87923b2cdf11714d36534783b6a node-v20.8.1.tar.gz
-f799c66f6a6386bb8ac2c75a378f740c455e97f1fe964393dd39c9f9f6efbc70 node-v20.8.1.tar.xz
-60a3d73fb1d376e6ed0a8b8e6734ab6c80aaa031fa023fd1be42276cc80dff93 win-arm64/node.exe
-90cb9fbf80b276f2ed039533a8b67f1aeaf204f0aaf6396b290ae9c4dcd6d690 win-arm64/node.lib
-6887174c70c5ca8941b9e2bad9b02bb5413158590ec5457f4497bb66d685a545 win-arm64/node_pdb.7z
-3824fb4b85c8f8086f0c33c4e906c1ac448cd6259949a06d6956e2b1b300befe win-arm64/node_pdb.zip
-ccc62758d85434502141611b18af5fdbbc5c9087facaf4a7900d454f3d2fdd48 win-x64/node.exe
-45d2519b3be3655e7b52ffcee613a484c38e768a59e9b9d4f08a3580d76a768a win-x64/node.lib
-e98706e1126309275692c0d318a0f1c54a50ae2447c11e3bcc1c6c261dced63a win-x64/node_pdb.7z
-9840a61ea4dea5128c20632f367e1bed2d2ace5fa008fe29b3ae28a9f4c21805 win-x64/node_pdb.zip
-1c6ddd284a55664f0b2514bed7fcfe1fafcfec06f6dd07e82fefad9bb10aac60 win-x86/node.exe
-0809f4b2f415581f7d932d80be4ac3ff7c4344421f7cccb34ff2f30c18c2ba0c win-x86/node.lib
-63f95d51077f2dd0360c57cc4286cc74a740391b04b63fd04914583007e8cf10 win-x86/node_pdb.7z
-108b21fc46465197cb4c07df4b25143b2a5d348b30e0d64c2536472fd94cba3e win-x86/node_pdb.zip
+97642ac79c8ec4778c20412256fdc9cd1c3ba782d67134fa43e17abdfe2dd3eb node-v20.10.0-aix-ppc64.tar.gz
+b7ac2932c6982e5c433d00485fd1914d5f87a474dd575f29e81bed03155585a2 node-v20.10.0-arm64.msi
+68b93099451d77aac116cf8fce179cabcf53fec079508dc6b39d3a086fb461a8 node-v20.10.0-darwin-arm64.tar.gz
+39b3780ade080ea0b294f7b0df97e31d8fc19dce3452cd6f98f0576f64747df9 node-v20.10.0-darwin-arm64.tar.xz
+5ff5e8abd3eea6e5f507eb6677554f5b2188eedef654096aa4168a9941e91a32 node-v20.10.0-darwin-x64.tar.gz
+2f3ed01243e4311476e2c0d8a361fd8b3909278935b09af83cc875e03df95e07 node-v20.10.0-darwin-x64.tar.xz
+536b07207e38d7ed316480b036ccc19ebbe60ac0cb4974f9b4fdd8eea41e7653 node-v20.10.0-headers.tar.gz
+a6bfda44c5a082a6a2af3f78ee9d7a516704ff489d6f47f2733f70238511031f node-v20.10.0-headers.tar.xz
+8354cdb7cb2ad585ee6bb24819f5229bb48c118c5dabb282dfed153d766a68a4 node-v20.10.0-linux-arm64.tar.gz
+21f19d1f9d2345c5a4ed416c21d89cec20fe4b0715255d49463a4d37e283b4c6 node-v20.10.0-linux-arm64.tar.xz
+cf0c2838a6bb4aa9422084c89fd9447dfc61915754859ac9b1178ea57c953baf node-v20.10.0-linux-armv7l.tar.gz
+2e84bc3051554c123216122daa23e3933472992a6552963dbda3a18866c4b34a node-v20.10.0-linux-armv7l.tar.xz
+4ebedbc3a02e620aa4f1460cb336bcc93c958a2720c14e339f13cd9bc0be606b node-v20.10.0-linux-ppc64le.tar.gz
+d2c5ecc45e8b47308e22b9f92cf11188f9d218d0d974d0f4b419f57c1fbc6e16 node-v20.10.0-linux-ppc64le.tar.xz
+70c6279156bc28f410d5c1d89d777c8a447621c5f9e1c4a3a270a3c3245e9a38 node-v20.10.0-linux-s390x.tar.gz
+97a689117873cb46c7416185b3d8207d44846f69a33d4e143c1c3c74b15fa57a node-v20.10.0-linux-s390x.tar.xz
+d3f0908a9d9190a8525c5b9a716ed91bb57e908555841b0c47f75b2a001ff91b node-v20.10.0-linux-x64.tar.gz
+3fe4ec5d70c8b4ffc1461dec83ab23fc70124e137c4cbbe1ccc9d6ae6ec04a7d node-v20.10.0-linux-x64.tar.xz
+31e94e30b14a74f16f5d2a2d6e353e7007b2357397dff6ef285d498ec6ee1093 node-v20.10.0.pkg
+89680f4ebbf36e0a199be4ed416701fa167aad8f86111c87a3db9207b5d56baa node-v20.10.0.tar.gz
+32eb256eebd8cacd5574e6631e54b42be7ec8ebe25ad47a8ca685403bad15535 node-v20.10.0.tar.xz
+500597317615df3eac27022ccf5d0cc719c60a18373a47a4d0786fd8d746200d node-v20.10.0-win-arm64.7z
+cc4fd729b4646db06535248d349bcc2883ed1fa3804c31d447e72c9ec4e53566 node-v20.10.0-win-arm64.zip
+4d0f27ec72103f67eb904e7c17d2b7fb99816957b1cff9df1bd82a6507f1f265 node-v20.10.0-win-x64.7z
+e5b861814a97e28ae7ac06a34e88fd5e0565b447d270c26e20b5ef60bf0aaaf9 node-v20.10.0-win-x64.zip
+567da0e16ac2f06757c735f14689b1a38ff38bb24df53561ada9ab71c9ba1f79 node-v20.10.0-win-x86.7z
+4f46161a6252043eba426bb75be5dc7140a99add024011d101bda8e00756dcfa node-v20.10.0-win-x86.zip
+90ae1666c56988a6cc38424e8b9bffd05defe0e892a46aa606b94f7552cfb581 node-v20.10.0-x64.msi
+39c3f584ebca40f61fb610739722b7ec163e214f7f9d3e73bd980ce658cffa56 node-v20.10.0-x86.msi
+48861a50d47e387f77ee8387ad0b8c1fe6ed9a33234977c3f0715a5fc43775bb win-arm64/node.exe
+5fd8de535c4106002a21e7dbce76c46158783436eac6856060f5c1a24c354a6e win-arm64/node.lib
+87ce28e3f2bef1009070842be55450e202991eccc3d068e59541b089678414b7 win-arm64/node_pdb.7z
+7b68d43cefd91787ac5669cab12c6996be8210e9b755d48a4ee215a92872b31f win-arm64/node_pdb.zip
+890e6b6ace6efcbd50b2678322cbaef1ba03f316f8515e113fa00d474f8ee25f win-x64/node.exe
+15870bcb4463d5e8bd5f8f15e0d771fe516f98945a2aa8143f608e75e4a338e0 win-x64/node.lib
+3f7f5ec16ff731dcb1d9617d32559cb201e0323e5bddbadecee061a97a47e3e1 win-x64/node_pdb.7z
+41844b66e3383b508fc5d18486b23abb3ee9018ecdbd68deea36677921129f5d win-x64/node_pdb.zip
+692a1d030b69e793c4e1da85e23e882670aa499020ab1fbb4a323c27a055a15e win-x86/node.exe
+decf15298bb570f86253747a42f1c414b36e9b49a59c5fbef06545ad9cf17970 win-x86/node.lib
+bcc03224319ad8ea5427d24b9a93cb3a9f1c572100f496c15c3d509498cbdfd0 win-x86/node_pdb.7z
+c753e562d5f46024938d2399f1328e3c81905ea4f07ed08663fc303d7ef0058b win-x86/node_pdb.zip
++++++ SHASUMS256.txt.sig ++++++
Binary files /var/tmp/diff_new_pack.GyP3Nj/_old and /var/tmp/diff_new_pack.GyP3Nj/_new differ
++++++ fix_ci_tests.patch ++++++
--- /var/tmp/diff_new_pack.GyP3Nj/_old 2023-12-19 23:15:32.600901828 +0100
+++ /var/tmp/diff_new_pack.GyP3Nj/_new 2023-12-19 23:15:32.604901974 +0100
@@ -2,10 +2,10 @@
Date: Dec 20 09:18:49 UTC 2017
Summary: Fix CI unit tests framework for OBS building
-Index: node-v20.8.1/test/parallel/test-module-loading-globalpaths.js
+Index: node-v20.10.0/test/parallel/test-module-loading-globalpaths.js
===================================================================
---- node-v20.8.1.orig/test/parallel/test-module-loading-globalpaths.js
-+++ node-v20.8.1/test/parallel/test-module-loading-globalpaths.js
+--- node-v20.10.0.orig/test/parallel/test-module-loading-globalpaths.js
++++ node-v20.10.0/test/parallel/test-module-loading-globalpaths.js
@@ -11,6 +11,9 @@ const { addLibraryPath } = require('../c
addLibraryPath(process.env);
@@ -16,10 +16,10 @@
if (process.argv[2] === 'child') {
console.log(require(pkgName).string);
} else {
-Index: node-v20.8.1/test/parallel/test-tls-passphrase.js
+Index: node-v20.10.0/test/parallel/test-tls-passphrase.js
===================================================================
---- node-v20.8.1.orig/test/parallel/test-tls-passphrase.js
-+++ node-v20.8.1/test/parallel/test-tls-passphrase.js
+--- node-v20.10.0.orig/test/parallel/test-tls-passphrase.js
++++ node-v20.10.0/test/parallel/test-tls-passphrase.js
@@ -223,7 +223,7 @@ server.listen(0, common.mustCall(functio
}, onSecureConnect());
})).unref();
@@ -29,10 +29,10 @@
// Missing passphrase
assert.throws(function() {
-Index: node-v20.8.1/test/parallel/test-repl-envvars.js
+Index: node-v20.10.0/test/parallel/test-repl-envvars.js
===================================================================
---- node-v20.8.1.orig/test/parallel/test-repl-envvars.js
-+++ node-v20.8.1/test/parallel/test-repl-envvars.js
+--- node-v20.10.0.orig/test/parallel/test-repl-envvars.js
++++ node-v20.10.0/test/parallel/test-repl-envvars.js
@@ -2,7 +2,9 @@
// Flags: --expose-internals
@@ -44,10 +44,10 @@
const stream = require('stream');
const { describe, test } = require('node:test');
const REPL = require('internal/repl');
-Index: node-v20.8.1/Makefile
+Index: node-v20.10.0/Makefile
===================================================================
---- node-v20.8.1.orig/Makefile
-+++ node-v20.8.1/Makefile
+--- node-v20.10.0.orig/Makefile
++++ node-v20.10.0/Makefile
@@ -545,7 +545,8 @@ test-ci-js: | clear-stalled
.PHONY: test-ci
# Related CI jobs: most CI tests, excluding node-test-commit-arm-fanned
@@ -68,10 +68,10 @@
echo "Skipping tools/doc/node_modules (no crypto)"; \
else \
cd tools/doc && $(call available-node,$(run-npm-ci)) \
-Index: node-v20.8.1/tools/test.py
+Index: node-v20.10.0/tools/test.py
===================================================================
---- node-v20.8.1.orig/tools/test.py
-+++ node-v20.8.1/tools/test.py
+--- node-v20.10.0.orig/tools/test.py
++++ node-v20.10.0/tools/test.py
@@ -1361,7 +1361,7 @@ def BuildOptions():
result.add_option("-s", "--suite", help="A test suite",
default=[], action="append")
@@ -81,19 +81,31 @@
result.add_option("--arch", help='The architecture to run tests for',
default='none')
result.add_option("--snapshot", help="Run the tests with snapshot turned on",
-Index: node-v20.8.1/test/parallel/test-crypto-dh.js
+Index: node-v20.10.0/test/parallel/test-crypto-dh.js
===================================================================
---- node-v20.8.1.orig/test/parallel/test-crypto-dh.js
-+++ node-v20.8.1/test/parallel/test-crypto-dh.js
-@@ -87,9 +87,7 @@ const crypto = require('crypto');
-
- assert.throws(() => {
- dh3.computeSecret('');
-- }, { message: common.hasOpenSSL3 ?
-- 'error:02800080:Diffie-Hellman routines::invalid secret' :
-- 'Supplied key is too small' });
+--- node-v20.10.0.orig/test/parallel/test-crypto-dh.js
++++ node-v20.10.0/test/parallel/test-crypto-dh.js
+@@ -90,9 +90,7 @@ const crypto = require('crypto');
+ const hasOpenSSL3WithNewErrorMessage = (v >= 0x300000c0 && v <= 0x30100000) || (v >= 0x30100040 && v <= 0x30200000);
+ assert.throws(() => {
+ dh3.computeSecret('');
+- }, { message: common.hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ?
+- 'error:02800080:Diffie-Hellman routines::invalid secret' :
+- 'Supplied key is too small' });
+ }, /(error:02800080:Diffie-Hellman routines::invalid secret|error:05066066:Diffie-Hellman routines:compute_key:invalid public key|Supplied key is too small)/);
+ }
}
- // Through a fluke of history, g=0 defaults to DH_GENERATOR (2).
+Index: node-v20.10.0/test/parallel/test-node-output-errors.mjs
+===================================================================
+--- node-v20.10.0.orig/test/parallel/test-node-output-errors.mjs
++++ node-v20.10.0/test/parallel/test-node-output-errors.mjs
+@@ -28,6 +28,7 @@ describe('errors output', { concurrency:
+ .replaceAll(/\/(\w)/g, '*$1')
+ .replaceAll('*test*', '*')
+ .replaceAll('*fixtures*errors*', '*')
++ .replace(/`node\d+ --/, '`node --')
+ .replaceAll('file:**', 'file:*/');
+ }
+
++++++ node-gyp-addon-gypi.patch ++++++
--- /var/tmp/diff_new_pack.GyP3Nj/_old 2023-12-19 23:15:32.628902848 +0100
+++ /var/tmp/diff_new_pack.GyP3Nj/_new 2023-12-19 23:15:32.632902994 +0100
@@ -1,7 +1,7 @@
-Index: node-git.b4f0a18b5a/addon-rpm.gypi
+Index: node-v20.10.0/addon-rpm.gypi
===================================================================
--- /dev/null
-+++ node-git.b4f0a18b5a/addon-rpm.gypi
++++ node-v20.10.0/addon-rpm.gypi
@@ -0,0 +1,35 @@
+{
+ 'target_defaults': {
@@ -38,11 +38,11 @@
+ ]
+ }
+}
-Index: node-git.b4f0a18b5a/deps/npm/node_modules/node-gyp/lib/configure.js
+Index: node-v20.10.0/deps/npm/node_modules/node-gyp/lib/configure.js
===================================================================
---- node-git.b4f0a18b5a.orig/deps/npm/node_modules/node-gyp/lib/configure.js
-+++ node-git.b4f0a18b5a/deps/npm/node_modules/node-gyp/lib/configure.js
-@@ -46,10 +46,6 @@ function configure (gyp, argv, callback)
+--- node-v20.10.0.orig/deps/npm/node_modules/node-gyp/lib/configure.js
++++ node-v20.10.0/deps/npm/node_modules/node-gyp/lib/configure.js
+@@ -36,10 +36,6 @@ async function configure (gyp, argv) {
if ('v' + release.version !== process.version) {
// if --target was given, then determine a target version to compile for
log.verbose('get node dir', 'compiling against --target node version: %s', release.version)
@@ -53,10 +53,10 @@
if (!release.semver) {
// could not parse the version string with semver
-@@ -68,6 +64,12 @@ function configure (gyp, argv, callback)
- nodeDir = path.resolve(gyp.devDir, release.versionDir)
- createBuildDir()
- })
+@@ -54,6 +50,12 @@ async function configure (gyp, argv) {
+
+ log.verbose('get node dir', 'target node version installed:', release.versionDir)
+ nodeDir = path.resolve(gyp.devDir, release.versionDir)
+ } else {
+ // if no --target was specified then use RPM-installed headers
+ log.verbose('get node dir', 'no --target version specified, falling back to RPM installed headers')
@@ -64,17 +64,16 @@
+ createBuildDir()
+ }
}
- }
-@@ -282,7 +284,9 @@ function configure (gyp, argv, callback)
+ return createBuildDir()
+@@ -201,7 +203,8 @@ async function configure (gyp, argv) {
// this logic ported from the old `gyp_addon` python file
- var gypScript = path.resolve(__dirname, '..', 'gyp', 'gyp_main.py')
-- var addonGypi = path.resolve(__dirname, '..', 'addon.gypi')
-+ var addon_gypi_file = gyp.opts.target || gyp.opts.nodedir ? 'addon.gypi' : 'addon-rpm.gypi'
-+
+ const gypScript = path.resolve(__dirname, '..', 'gyp', 'gyp_main.py')
+- const addonGypi = path.resolve(__dirname, '..', 'addon.gypi')
++ let addon_gypi_file = gyp.opts.target || gyp.opts.nodedir ? 'addon.gypi' : 'addon-rpm.gypi'
+ var addonGypi = path.resolve(__dirname, '..', addon_gypi_file)
- var commonGypi = path.resolve(nodeDir, 'include/node/common.gypi')
- fs.stat(commonGypi, function (err) {
- if (err) {
+ let commonGypi = path.resolve(nodeDir, 'include/node/common.gypi')
+ try {
+ await fs.stat(commonGypi)
++++++ node-v20.8.1.tar.xz -> node-v20.10.0.tar.xz ++++++
/work/SRC/openSUSE:Factory/nodejs20/node-v20.8.1.tar.xz /work/SRC/openSUSE:Factory/.nodejs20.new.9037/node-v20.10.0.tar.xz differ: char 26, line 1
++++++ update_npm_tarball.sh ++++++
--- /var/tmp/diff_new_pack.GyP3Nj/_old 2023-12-19 23:15:32.704905616 +0100
+++ /var/tmp/diff_new_pack.GyP3Nj/_new 2023-12-19 23:15:32.708905762 +0100
@@ -7,7 +7,7 @@
set -e
tar Jxf node-v*.tar.xz
-cd node-v.*/tools/doc
+cd node-v*/tools/doc
npm ci
cd ../..
exec tar Jcf ../node_modules.tar.xz tools/doc/node_modules
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package publicsuffix for openSUSE:Factory checked in at 2023-12-19 23:15:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/publicsuffix (Old)
and /work/SRC/openSUSE:Factory/.publicsuffix.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "publicsuffix"
Tue Dec 19 23:15:26 2023 rev:101 rq:1133874 version:20231213
Changes:
--------
--- /work/SRC/openSUSE:Factory/publicsuffix/publicsuffix.changes 2023-11-15 21:06:59.068704089 +0100
+++ /work/SRC/openSUSE:Factory/.publicsuffix.new.9037/publicsuffix.changes 2023-12-19 23:15:29.640794035 +0100
@@ -1,0 +2,12 @@
+Mon Dec 18 14:22:11 UTC 2023 - Martin Pluskal <mpluskal(a)suse.com>
+
+- Update to version 20231213:
+ * util: gTLD data autopull updates for 2023-12-12T15:13:54 UTC (#1910)
+ * util: gTLD data autopull updates for 2023-12-06T15:14:08 UTC (#1908)
+ * Place -v after -C in github actions workflows (#1906)
+ * Introduce Go Modules to tooling (#1901)
+ * util: gTLD data autopull updates for 2023-11-21T15:13:46 UTC (#1902)
+ * Handle EBEROs: Use DelegationDate alongside ContractTerminated (#1894)
+ * util: gTLD data autopull updates for 2023-11-18T15:11:52 UTC (#1898)
+
+-------------------------------------------------------------------
Old:
----
publicsuffix-20231108.obscpio
New:
----
publicsuffix-20231213.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ publicsuffix.spec ++++++
--- /var/tmp/diff_new_pack.mcVFJf/_old 2023-12-19 23:15:30.676831763 +0100
+++ /var/tmp/diff_new_pack.mcVFJf/_new 2023-12-19 23:15:30.676831763 +0100
@@ -18,7 +18,7 @@
Name: publicsuffix
-Version: 20231108
+Version: 20231213
Release: 0
Summary: Cross-vendor public domain suffix database
License: MPL-2.0
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.mcVFJf/_old 2023-12-19 23:15:30.712833074 +0100
+++ /var/tmp/diff_new_pack.mcVFJf/_new 2023-12-19 23:15:30.712833074 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/publicsuffix/list.git</param>
- <param name="changesrevision">b5bf572c52988dbe9d865b8f090ea819024a9936</param></service></servicedata>
+ <param name="changesrevision">502e2bfd9458bbded02194720c3142a3fca71902</param></service></servicedata>
(No newline at EOF)
++++++ publicsuffix-20231108.obscpio -> publicsuffix-20231213.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/.github/workflows/test.yml new/publicsuffix-20231213/.github/workflows/test.yml
--- old/publicsuffix-20231108/.github/workflows/test.yml 2023-11-09 01:09:38.000000000 +0100
+++ new/publicsuffix-20231213/.github/workflows/test.yml 2023-12-13 11:45:24.000000000 +0100
@@ -18,7 +18,7 @@
go-version: 'stable'
- name: Run Go unit tests
- run: go test tools/*.go
+ run: go test -C ./tools -v .
- name: Install dependencies
run: sudo apt install -y autopoint
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/.github/workflows/tld-update.yml new/publicsuffix-20231213/.github/workflows/tld-update.yml
--- old/publicsuffix-20231108/.github/workflows/tld-update.yml 2023-11-09 01:09:38.000000000 +0100
+++ new/publicsuffix-20231213/.github/workflows/tld-update.yml 2023-12-13 11:45:24.000000000 +0100
@@ -4,7 +4,7 @@
schedule:
# Run once a day at 15:00 UTC
- cron: '0 15 * * *'
-
+
permissions:
contents: read
@@ -26,7 +26,7 @@
go-version: 'stable'
- name: Run unit tests
- run: go test tools/*.go
+ run: go test -C ./tools -v .
- name: Set current date
id: get-date
@@ -49,7 +49,7 @@
✅ autopull
🚩ICANN (IANA/ICP-3) Section
delete-branch: true
-
+
- name: Check outputs
run: |
echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/public_suffix_list.dat new/publicsuffix-20231213/public_suffix_list.dat
--- old/publicsuffix-20231108/public_suffix_list.dat 2023-11-09 01:09:38.000000000 +0100
+++ new/publicsuffix-20231213/public_suffix_list.dat 2023-12-13 11:45:24.000000000 +0100
@@ -6710,7 +6710,7 @@
// newGTLDs
-// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2023-11-03T15:13:18Z
+// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2023-12-12T15:13:54Z
// This list is auto-generated, don't edit it manually.
// aaa : American Automobile Association, Inc.
// https://www.iana.org/domains/root/db/aaa.html
@@ -7752,6 +7752,10 @@
// https://www.iana.org/domains/root/db/dentist.html
dentist
+// desi
+// https://www.iana.org/domains/root/db/desi.html
+desi
+
// design : Registry Services, LLC
// https://www.iana.org/domains/root/db/design.html
design
@@ -7796,7 +7800,7 @@
// https://www.iana.org/domains/root/db/dish.html
dish
-// diy : Lifestyle Domain Holdings, Inc.
+// diy : Internet Naming Company LLC
// https://www.iana.org/domains/root/db/diy.html
diy
@@ -7928,10 +7932,6 @@
// https://www.iana.org/domains/root/db/estate.html
estate
-// etisalat : Emirates Telecommunications Corporation (trading as Etisalat)
-// https://www.iana.org/domains/root/db/etisalat.html
-etisalat
-
// eurovision : European Broadcasting Union (EBU)
// https://www.iana.org/domains/root/db/eurovision.html
eurovision
@@ -8104,7 +8104,7 @@
// https://www.iana.org/domains/root/db/foo.html
foo
-// food : Lifestyle Domain Holdings, Inc.
+// food : Internet Naming Company LLC
// https://www.iana.org/domains/root/db/food.html
food
@@ -8312,7 +8312,7 @@
// https://www.iana.org/domains/root/db/golf.html
golf
-// goo : NTT Resonant Inc.
+// goo : NTT DOCOMO, INC.
// https://www.iana.org/domains/root/db/goo.html
goo
@@ -8908,7 +8908,7 @@
// https://www.iana.org/domains/root/db/lifeinsurance.html
lifeinsurance
-// lifestyle : Lifestyle Domain Holdings, Inc.
+// lifestyle : Internet Naming Company LLC
// https://www.iana.org/domains/root/db/lifestyle.html
lifestyle
@@ -8948,7 +8948,7 @@
// https://www.iana.org/domains/root/db/live.html
live
-// living : Lifestyle Domain Holdings, Inc.
+// living : Internet Naming Company LLC
// https://www.iana.org/domains/root/db/living.html
living
@@ -9928,10 +9928,6 @@
// https://www.iana.org/domains/root/db/sbs.html
sbs
-// sca : SVENSKA CELLULOSA AKTIEBOLAGET SCA (publ)
-// https://www.iana.org/domains/root/db/sca.html
-sca
-
// scb : The Siam Commercial Bank Public Company Limited ("SCB")
// https://www.iana.org/domains/root/db/scb.html
scb
@@ -10524,7 +10520,7 @@
// https://www.iana.org/domains/root/db/vacations.html
vacations
-// vana : Lifestyle Domain Holdings, Inc.
+// vana : Internet Naming Company LLC
// https://www.iana.org/domains/root/db/vana.html
vana
@@ -10608,10 +10604,6 @@
// https://www.iana.org/domains/root/db/vodka.html
vodka
-// volkswagen : Volkswagen Group of America Inc.
-// https://www.iana.org/domains/root/db/volkswagen.html
-volkswagen
-
// volvo : Volvo Holding Sverige Aktiebolag
// https://www.iana.org/domains/root/db/volvo.html
volvo
@@ -10680,6 +10672,10 @@
// https://www.iana.org/domains/root/db/website.html
website
+// wed
+// https://www.iana.org/domains/root/db/wed.html
+wed
+
// wedding : Registry Services, LLC
// https://www.iana.org/domains/root/db/wedding.html
wedding
@@ -11012,10 +11008,6 @@
// https://www.iana.org/domains/root/db/xn--mgba7c0bbn0a.html
العليان
-// xn--mgbaakc7dvf : Emirates Telecommunications Corporation (trading as Etisalat)
-// https://www.iana.org/domains/root/db/xn--mgbaakc7dvf.html
-اتصالات
-
// xn--mgbab2bd : CORE Association
// https://www.iana.org/domains/root/db/xn--mgbab2bd.html
بازار
@@ -13193,7 +13185,7 @@
// Submitted by Jonathan Rudenberg <jonathan(a)flynn.io>
flynnhosting.net
-// Forgerock : https://www.forgerock.com
+// Forgerock : https://www.forgerock.com
// Submitted by Roderick Parr <roderick.parr(a)forgerock.com>
forgeblocks.com
id.forgerock.io
@@ -14887,7 +14879,7 @@
beta.bounty-full.com
// Smallregistry by Promopixel SARL: https://www.smallregistry.net
-// Former AFNIC's SLDs
+// Former AFNIC's SLDs
// Submitted by Jérôme Lipowicz <support(a)promopixel.com>
aeroport.fr
avocat.fr
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/tools/go.mod new/publicsuffix-20231213/tools/go.mod
--- old/publicsuffix-20231108/tools/go.mod 1970-01-01 01:00:00.000000000 +0100
+++ new/publicsuffix-20231213/tools/go.mod 2023-12-13 11:45:24.000000000 +0100
@@ -0,0 +1,3 @@
+module github.com/publicsuffix/list/tools
+
+go 1.21
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/tools/newgtlds.go new/publicsuffix-20231213/tools/newgtlds.go
--- old/publicsuffix-20231108/tools/newgtlds.go 2023-11-09 01:09:38.000000000 +0100
+++ new/publicsuffix-20231213/tools/newgtlds.go 2023-12-13 11:45:24.000000000 +0100
@@ -96,6 +96,9 @@
// ALabel contains the ASCII gTLD name. For internationalized gTLDs the GTLD
// field is expressed in punycode.
ALabel string `json:"gTLD"`
+ // DelegationDate holds the date the gTLD was delegated to the root zone.
+ // A TLD should be considered dead if the delegation date is empty.
+ DelegationDate string
// ULabel contains the unicode representation of the gTLD name. When the gTLD
// ULabel in the ICANN gTLD data is empty (e.g for an ASCII gTLD like
// '.pizza') the PSL entry will use the ALabel as the ULabel.
@@ -355,14 +358,16 @@
}
// filterGTLDs removes entries that are present in the legacyGTLDs map or have
-// ContractTerminated equal to true, or a non-empty RemovalDate.
+// ContractTerminated equal to true and an empty DelegationDate,
+// or a non-empty RemovalDate.
func filterGTLDs(entries []*pslEntry) []*pslEntry {
var filtered []*pslEntry
for _, entry := range entries {
if _, isLegacy := legacyGTLDs[entry.ALabel]; isLegacy {
continue
}
- if entry.ContractTerminated {
+ // If the Delegation Date is not empty, the gTLD is likely in EBERO.
+ if entry.ContractTerminated && entry.DelegationDate == "" {
continue
}
if entry.RemovalDate != "" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/tools/newgtlds_test.go new/publicsuffix-20231213/tools/newgtlds_test.go
--- old/publicsuffix-20231108/tools/newgtlds_test.go 2023-11-09 01:09:38.000000000 +0100
+++ new/publicsuffix-20231213/tools/newgtlds_test.go 2023-12-13 11:45:24.000000000 +0100
@@ -177,6 +177,15 @@
// NOTE: we include a contract terminated = true entry here to test that
// filtering of terminated entries occurs.
ContractTerminated: true,
+ DelegationDate: "", // Explicitly state that delegation date is empty.
+ },
+ {
+ ALabel: "ebero",
+ // NOTE: We include contract terminated = true with a delegation date that
+ // has data here to ensure we capture TLDs that are in EBERO.
+ ContractTerminated: true,
+ DelegationDate: "2012-12-21",
+ RegistryOperator: "ICANN't itself",
},
},
}
@@ -196,6 +205,13 @@
RegistryOperator: "@cpu's bargain gTLD emporium " +
"(now with bonus whitespace)",
},
+ {
+ ALabel: "ebero",
+ ULabel: "ebero",
+ RegistryOperator: "ICANN't itself",
+ ContractTerminated: true,
+ DelegationDate: "2012-12-21",
+ },
}
handler := &mockHandler{jsonBytes}
@@ -259,6 +275,7 @@
ALabel: "terminated",
// NOTE: Setting ContractTerminated to ensure filtering.
ContractTerminated: true,
+ DelegationDate: "", // Explicitly state that DelegationDate is empty
},
{
ALabel: "removed",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/publicsuffix-20231108/tools/patchnewgtlds new/publicsuffix-20231213/tools/patchnewgtlds
--- old/publicsuffix-20231108/tools/patchnewgtlds 2023-11-09 01:09:38.000000000 +0100
+++ new/publicsuffix-20231213/tools/patchnewgtlds 2023-12-13 11:45:24.000000000 +0100
@@ -2,6 +2,7 @@
set -e
set -o pipefail
+set -x
if ! [ -x "$(command -v go)" ]
then
@@ -9,8 +10,9 @@
exit 1
fi
-BASEDIR=$(dirname "$0")
+SCRIPT=$(realpath "$0")
+BASEDIR=$(dirname "$SCRIPT")
-go run "$BASEDIR/newgtlds.go" \
+go run -C "$BASEDIR/" . \
-overwrite \
-psl-dat-file="$BASEDIR/../public_suffix_list.dat"
++++++ publicsuffix.obsinfo ++++++
--- /var/tmp/diff_new_pack.mcVFJf/_old 2023-12-19 23:15:30.828837298 +0100
+++ /var/tmp/diff_new_pack.mcVFJf/_new 2023-12-19 23:15:30.828837298 +0100
@@ -1,5 +1,5 @@
name: publicsuffix
-version: 20231108
-mtime: 1699488578
-commit: b5bf572c52988dbe9d865b8f090ea819024a9936
+version: 20231213
+mtime: 1702464324
+commit: 502e2bfd9458bbded02194720c3142a3fca71902
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package dnf for openSUSE:Factory checked in at 2023-12-19 23:15:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dnf (Old)
and /work/SRC/openSUSE:Factory/.dnf.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dnf"
Tue Dec 19 23:15:21 2023 rev:38 rq:1133852 version:4.18.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/dnf/dnf.changes 2023-12-18 08:30:50.857511123 +0100
+++ /work/SRC/openSUSE:Factory/.dnf.new.9037/dnf.changes 2023-12-19 23:15:25.676649681 +0100
@@ -1,0 +2,5 @@
+Mon Dec 18 13:06:38 UTC 2023 - Neal Gompa <ngompa(a)opensuse.org>
+
+- Add Requires(post) dependency for dnf-data
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dnf.spec ++++++
--- /var/tmp/diff_new_pack.H6gLKG/_old 2023-12-19 23:15:26.440677503 +0100
+++ /var/tmp/diff_new_pack.H6gLKG/_new 2023-12-19 23:15:26.440677503 +0100
@@ -115,6 +115,7 @@
Obsoletes: dnf-conf < 4.4.2
Provides: dnf-conf = %{version}-%{release}
Recommends: logrotate
+Requires(post): /bin/ln
%description data
This package provides the common data and configuration files for DNF.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000package-groups for openSUSE:Factory checked in at 2023-12-19 23:15:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000package-groups (Old)
and /work/SRC/openSUSE:Factory/.000package-groups.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000package-groups"
Tue Dec 19 23:15:16 2023 rev:259 rq:1132912 version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
New:
----
Kalpa-release.spec.in
Kalpa.product.in
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Kalpa-release.spec.in ++++++
#
# spec file for package openSUSE-Kalpa-release.spec
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: Kalpa-release
Version: ___VERSION___
Release: 0
Summary: ___SUMMARY___ ___BETA_VERSION___
License: GPL-2.0-or-later
Group: System/Fhs
Source100: weakremovers.inc
BuildRequires: skelcd-openSUSE
# Make sure we are at SLES12 SP2 level
PreReq: glibc >= 2.19
# in rare cases, 'ln' is not found...
Requires(post): coreutils
Suggests: branding-openSUSE
Suggests: distribution-logos-openSUSE-Kalpa
Suggests: openSUSE-build-key
Suggests: openSUSE-repos-Kalpa
Conflicts: distribution-release
Conflicts: kernel < 4.4
Provides: distribution-release
# Kalpa is a SUSE Linux type distribution
Provides: suse-release = %{version}-%{release}
Provides: suse-release-oss = %{version}-%{release}
# Give zypp a hint that this product must be kept up-to-date using zypper dup, not up (boo#1061384)
Provides: product-update() = dup
# With more than one product in the FTP tree, yast needs to know which products are installable
# The name is referenced by the control file as well
Provides: system-installation() = Kalpa
# bnc#826592
Provides: weakremover(kernel-default) < 3.11
Provides: weakremover(kernel-desktop) < 4.2
Provides: weakremover(kernel-ec2) < 3.11
Provides: weakremover(kernel-pae) < 3.11
Provides: weakremover(kernel-vanilla) < 3.11
Provides: weakremover(kernel-xen) < 3.11
# migrated from MANUAL_OBSOLETES/packages
Provides: weakremover(boost-license1_56_0)
Provides: weakremover(boost-license1_59_0)
Provides: weakremover(gpg-pubkey-3d25d3d9-36e12d04)
Provides: weakremover(lib++dfb-1_7-6)
Provides: weakremover(libastro-qt5-1)
Provides: weakremover(libboost_atomic1_59_0)
Provides: weakremover(libboost_atomic1_60_0)
Provides: weakremover(libboost_atomic1_62_0)
Provides: weakremover(libboost_atomic1_63_0)
Provides: weakremover(libboost_chrono1_59_0)
Provides: weakremover(libboost_chrono1_60_0)
Provides: weakremover(libboost_chrono1_62_0)
Provides: weakremover(libboost_chrono1_63_0)
Provides: weakremover(libboost_container1_59_0)
Provides: weakremover(libboost_container1_60_0)
Provides: weakremover(libboost_container1_62_0)
Provides: weakremover(libboost_container1_63_0)
Provides: weakremover(libboost_context1_59_0)
Provides: weakremover(libboost_context1_60_0)
Provides: weakremover(libboost_context1_62_0)
Provides: weakremover(libboost_context1_63_0)
Provides: weakremover(libboost_coroutine1_59_0)
Provides: weakremover(libboost_coroutine1_60_0)
Provides: weakremover(libboost_coroutine1_62_0)
Provides: weakremover(libboost_coroutine1_63_0)
Provides: weakremover(libboost_date_time1_59_0)
Provides: weakremover(libboost_date_time1_60_0)
Provides: weakremover(libboost_date_time1_62_0)
Provides: weakremover(libboost_date_time1_63_0)
Provides: weakremover(libboost_filesystem1_59_0)
Provides: weakremover(libboost_filesystem1_60_0)
Provides: weakremover(libboost_filesystem1_62_0)
Provides: weakremover(libboost_filesystem1_63_0)
Provides: weakremover(libboost_graph1_59_0)
Provides: weakremover(libboost_graph1_60_0)
Provides: weakremover(libboost_graph1_62_0)
Provides: weakremover(libboost_graph1_63_0)
Provides: weakremover(libboost_iostreams1_59_0)
Provides: weakremover(libboost_locale1_59_0)
Provides: weakremover(libboost_log1_59_0)
Provides: weakremover(libboost_log1_60_0)
Provides: weakremover(libboost_log1_62_0)
Provides: weakremover(libboost_log1_63_0)
Provides: weakremover(libboost_math1_59_0)
Provides: weakremover(libboost_program_options1_59_0)
Provides: weakremover(libboost_python1_59_0)
Provides: weakremover(libboost_random1_59_0)
Provides: weakremover(libboost_regex1_59_0)
Provides: weakremover(libboost_regex1_60_0)
Provides: weakremover(libboost_regex1_62_0)
Provides: weakremover(libboost_regex1_63_0)
Provides: weakremover(libboost_serialization1_59_0)
Provides: weakremover(libboost_signals1_59_0)
Provides: weakremover(libboost_system1_56_0)
Provides: weakremover(libboost_system1_59_0)
Provides: weakremover(libboost_test1_59_0)
Provides: weakremover(libboost_thread1_56_0)
Provides: weakremover(libboost_thread1_59_0)
Provides: weakremover(libboost_timer1_59_0)
Provides: weakremover(libboost_wave1_59_0)
Provides: weakremover(libcamel-1_2-54)
Provides: weakremover(libdialog12)
Provides: weakremover(libdirectfb-1_7-6)
Provides: weakremover(libdns146)
Provides: weakremover(libdns160)
Provides: weakremover(libdns161)
Provides: weakremover(libgdict-1_0-9)
Provides: weakremover(libgit2-23)
Provides: weakremover(libgpaste4)
Provides: weakremover(libhdf5-11)
Provides: weakremover(libhdf5_hl11)
Provides: weakremover(libicu54_1)
Provides: weakremover(libicu54_1-ledata)
Provides: weakremover(libicu55_1)
Provides: weakremover(libicu55_1-ledata)
Provides: weakremover(libicu56_1)
Provides: weakremover(libicu56_1-ledata)
Provides: weakremover(libimobiledevice5)
Provides: weakremover(libisc142)
Provides: weakremover(libisc148)
Provides: weakremover(libisl13)
Provides: weakremover(libixion-0_10-0)
Provides: weakremover(liblmdb-0_9_16)
Provides: weakremover(libmicrohttpd11)
Provides: weakremover(libminiupnpc15)
Provides: weakremover(libnis1)
Provides: weakremover(libntfs-3g86)
Provides: weakremover(liborcus-0_10-0)
Provides: weakremover(libpoppler47)
Provides: weakremover(libpoppler48)
Provides: weakremover(libpoppler49)
Provides: weakremover(libpoppler50)
Provides: weakremover(libpoppler51)
Provides: weakremover(libpoppler52)
Provides: weakremover(libpoppler53)
Provides: weakremover(libpoppler54)
Provides: weakremover(libpoppler55)
Provides: weakremover(libpoppler56)
Provides: weakremover(libpoppler57)
Provides: weakremover(libpoppler58)
Provides: weakremover(libpoppler59)
Provides: weakremover(libpoppler61)
Provides: weakremover(libpoppler62)
Provides: weakremover(libpoppler63)
Provides: weakremover(libpoppler64)
Provides: weakremover(libpoppler65)
Provides: weakremover(libprocps4)
Provides: weakremover(libprocps5)
Provides: weakremover(libpsl0)
Provides: weakremover(libsgutils2-1_40-2)
Provides: weakremover(libsgutils2-1_41-2)
Provides: weakremover(libvpx2)
Provides: weakremover(libxtables11)
Provides: weakremover(libzip4)
Provides: weakremover(mt_st)
Provides: weakremover(openssl-debuginfo)
# this package should only be available for the "basearchs" of a product
ExclusiveArch: %ix86 x86_64 ppc64le s390x aarch64 %arm
%include %{SOURCE100}
___PRODUCT_PROVIDES___
___PRODUCT_DEPENDENCIES___
%description
___DESCRIPTION___
___FLAVOR_PACKAGES___
%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} %{buildroot}%{_prefix}/lib/issue.d %{buildroot}/run
echo -e "\nWelcome to ___SUMMARY___ (%{_target_cpu}) - Kernel \\\r (\\\l).\n" > %{buildroot}%{_prefix}/lib/issue.d/10-OS
echo -e "\n" > %{buildroot}%{_prefix}/lib/issue.d/90-OS
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
cat > %{buildroot}%{_prefix}/lib/os-release <<EOF
NAME="openSUSE Kalpa"
# VERSION="%{version}%{?betaversion: %{betaversion}}"
ID="opensuse-kalpa"
ID_LIKE="suse opensuse opensuse-tumbleweed opensuse-microos"
VERSION_ID="$VERSION_ID"
PRETTY_NAME="openSUSE Kalpa"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:kalpa:%{version}"
BUG_REPORT_URL="https://bugzilla.opensuse.org"
SUPPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.kalpadesktop.org/"
DOCUMENTATION_URL="https://en.opensuse.org/Portal:Kalpa"
LOGO="distributor-logo-Kalpa"
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
___CREATE_PRODUCT_FILES___
%post
%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 %{_prefix}/lib/issue.d
%{_prefix}/lib/issue.d/*-OS
%changelog
++++++ Kalpa.product.in ++++++
<?xml version="1.0" encoding="UTF-8"?>
<productdefinition xmlns:xi="http://www.w3.org/2001/XInclude">
<products>
<product>
<vendor>openSUSE</vendor>
<name>Kalpa</name>
<releasepkgname>Kalpa-release</releasepkgname>
<endoflife/>
<version></version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Kalpa</productline>
<summary>openSUSE Kalpa</summary>
<shortsummary>openSUSE Kalpa</shortsummary>
<description>openSUSE Kalpa bundles the benefits of a rolling OS and a read-only root filesystem in a polished Desktop platform. It is a modern Linux Operating System, designed for minimal maintenance and tinkering.
It inherits the benefits of openSUSE Tumbleweed while redefining the operating system into a small, efficient and opinionated desktop.
</description>
<linguas>
<language>en_US</language>
</linguas>
<urls>
<url name="releasenotes">http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-no…</url>
</urls>
<buildconfig>
<!-- This section is needed to generate the installation media -->
<producttheme>Kalpa</producttheme>
<create_flavors>true</create_flavors>
</buildconfig>
<installconfig>
<!-- All flags needed during installation -->
<defaultlang>en_US</defaultlang>
<datadir>suse</datadir>
<descriptiondir>suse/setup/descr</descriptiondir>
<distribution>openSUSE</distribution>
<default_obs_repository_name>openSUSE_Tumbleweed</default_obs_repository_name>
</installconfig>
<!-- All Flags needed in the running system -->
<runtimeconfig/>
</product>
</products>
<!-- Default conditionals, repositories and archsets get imported -->
<xi:include href="defaults-conditionals.include"/>
<xi:include href="defaults-archsets.include"/>
<xi:include href="defaults-repositories.include"/>
<mediasets>
<!-- BEWARE: do not touch the naming here without adapting ftp upload scripts ! -->
<media type="image"
flavor="appliance"
mediastyle="tumbleweed"
name="openSUSE-Kalpa-self-installer" >
<!-- Create no product media, but a flavor release subpackage -->
</media>
</mediasets>
<xi:include href="opensuse_kalpa.group"/>
</productdefinition>
++++++ groups.yml ++++++
--- /var/tmp/diff_new_pack.uCDFHy/_old 2023-12-19 23:15:19.280416760 +0100
+++ /var/tmp/diff_new_pack.uCDFHy/_new 2023-12-19 23:15:19.280416760 +0100
@@ -24,6 +24,12 @@
includes:
- common_locks
- opensuse_aeon
+ - opensuse_kalpa:
+ recommends: true
+ require_all: true
+ includes:
+ - common_locks
+ - opensuse_kalpa
common_locks:
- dummy-release: [locked]
@@ -388,3 +394,8 @@
- patterns-aeon-base: [x86_64]
- suse-module-tools-scriptlets
+opensuse_kalpa:
+ - Kalpa-release: [x86_64]
+ - patterns-kalpa-base: [x86_64]
+ - suse-module-tools-scriptlets
+
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2023-12-19 03:07:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Tue Dec 19 03:07:30 2023 rev:3843 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.730052334 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.738052625 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__MicroOS___20231217" schemaversion="4.1">
+<image name="OBS__MicroOS___20231218" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231217</productvar>
+ <productvar name="VERSION">20231218</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231217,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231218,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231217/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231218/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-Addon-NonOss-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.766053646 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.770053792 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20231217" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20231218" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231217</productvar>
+ <productvar name="VERSION">20231218</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231217,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231218,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.794054666 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.794054666 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231217" schemaversion="4.1">
+<image name="OBS__openSUSE___20231218" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231217</productvar>
+ <productvar name="VERSION">20231218</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231217,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231218,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231217/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231218/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
openSUSE-dvd5-dvd-x86_64.kiwi: same change
++++++ openSUSE-ftp-ftp-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.842056416 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.846056562 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231217" schemaversion="4.1">
+<image name="OBS__openSUSE___20231218" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -20,7 +20,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231217-i586</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231218-i586</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231217</productvar>
+ <productvar name="VERSION">20231218</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231217,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231218,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231217/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231218/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.866057291 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.874057582 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231217" schemaversion="4.1">
+<image name="OBS__openSUSE___20231218" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231217-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231218-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231217</productvar>
+ <productvar name="VERSION">20231218</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231217,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231218,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231217/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231218/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ Aeon.product ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.910058894 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.914059040 +0100
@@ -6,7 +6,7 @@
<name>Aeon</name>
<releasepkgname>Aeon-release</releasepkgname>
<endoflife/>
- <version>20231217</version>
+ <version>20231218</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Aeon</productline>
++++++ MicroOS.product ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:35.934059770 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:35.938059915 +0100
@@ -6,7 +6,7 @@
<name>MicroOS</name>
<releasepkgname>MicroOS-release</releasepkgname>
<endoflife/>
- <version>20231217</version>
+ <version>20231218</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>MicroOS</productline>
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:36.030063269 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:36.034063414 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231217</version>
+ <version>20231218</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:36.058064289 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:36.062064435 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231217</version>
+ <version>20231218</version>
<release>0</release>
<productline>openSUSE</productline>
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.MZxD5w/_old 2023-12-19 03:07:36.158067934 +0100
+++ /var/tmp/diff_new_pack.MZxD5w/_new 2023-12-19 03:07:36.166068225 +0100
@@ -1381,6 +1381,7 @@
- blender-lang
- bless
- bless-doc
+ - blis-devel
- bliss
- bliss-devel
- blitz-devel
@@ -10076,26 +10077,26 @@
- libOSMesa-devel-32bit
- libOSMesa8-32bit
- libOgreBites-devel
- - libOgreBites13_5
- - libOgreBitesQt13_5
+ - libOgreBites13_6
+ - libOgreBitesQt13_6
- libOgreMain-devel
- - libOgreMain13_5
- - libOgreMain13_5-codecs
- - libOgreMain13_5-plugins
+ - libOgreMain13_6
+ - libOgreMain13_6-codecs
+ - libOgreMain13_6-plugins
- libOgreMeshLodGenerator-devel
- - libOgreMeshLodGenerator13_5
+ - libOgreMeshLodGenerator13_6
- libOgreOverlay-devel
- - libOgreOverlay13_5
+ - libOgreOverlay13_6
- libOgrePaging-devel
- - libOgrePaging13_5
+ - libOgrePaging13_6
- libOgreProperty-devel
- - libOgreProperty13_5
+ - libOgreProperty13_6
- libOgreRTShaderSystem-devel
- - libOgreRTShaderSystem13_5
+ - libOgreRTShaderSystem13_6
- libOgreTerrain-devel
- - libOgreTerrain13_5
+ - libOgreTerrain13_6
- libOgreVolume-devel
- - libOgreVolume13_5
+ - libOgreVolume13_6
- libOkteta3
- libOpenCL1
- libOpenCL1-32bit
@@ -10916,6 +10917,7 @@
- libblas3-32bit
- libblastrampoline-devel
- libblastrampoline5
+ - libblis4
- libbliss0_77
- libblitz0
- libblkid-devel
@@ -15772,6 +15774,7 @@
- libxkbfile-devel-32bit
- libxkbfile1-32bit
- libxkbregistry-devel
+ - libxkbregistry0-32bit
- libxkbui-devel
- libxkbui1
- libxklavier-devel
@@ -16623,6 +16626,7 @@
- mame-tools
- man-pages-fi
- man-pages-id
+ - man-pages-ko
- man-pages-mk
- man-pages-nb
- man-pages-nl
@@ -24032,8 +24036,15 @@
- python310-google-auth
- python310-google-auth-httplib2
- python310-google-auth-oauthlib
+ - python310-google-cloud-appengine-logging
- python310-google-cloud-core
+ - python310-google-cloud-domains
+ - python310-google-cloud-iam
- python310-google-cloud-kms
+ - python310-google-cloud-kms-inventory
+ - python310-google-cloud-run
+ - python310-google-cloud-secret-manager
+ - python310-google-cloud-service-directory
- python310-google-cloud-speech
- python310-google-cloud-storage
- python310-google-cloud-translate
@@ -25075,7 +25086,6 @@
- python310-pyinstaller-hooks-contrib
- python310-pyipp
- python310-pyjavaproperties
- - python310-pyjnius
- python310-pyjokes
- python310-pyjsparser
- python310-pyjwkest
@@ -27493,8 +27503,15 @@
- python311-google-auth
- python311-google-auth-httplib2
- python311-google-auth-oauthlib
+ - python311-google-cloud-appengine-logging
- python311-google-cloud-core
+ - python311-google-cloud-domains
+ - python311-google-cloud-iam
- python311-google-cloud-kms
+ - python311-google-cloud-kms-inventory
+ - python311-google-cloud-run
+ - python311-google-cloud-secret-manager
+ - python311-google-cloud-service-directory
- python311-google-cloud-speech
- python311-google-cloud-storage
- python311-google-cloud-translate
@@ -28467,7 +28484,6 @@
- python311-pyinstaller-hooks-contrib
- python311-pyipp
- python311-pyjavaproperties
- - python311-pyjnius
- python311-pyjokes
- python311-pyjsparser
- python311-pyjwkest
@@ -30924,8 +30940,15 @@
- python39-google-auth
- python39-google-auth-httplib2
- python39-google-auth-oauthlib
+ - python39-google-cloud-appengine-logging
- python39-google-cloud-core
+ - python39-google-cloud-domains
+ - python39-google-cloud-iam
- python39-google-cloud-kms
+ - python39-google-cloud-kms-inventory
+ - python39-google-cloud-run
+ - python39-google-cloud-secret-manager
+ - python39-google-cloud-service-directory
- python39-google-cloud-speech
- python39-google-cloud-storage
- python39-google-cloud-translate
@@ -31964,7 +31987,6 @@
- python39-pyinstaller-hooks-contrib
- python39-pyipp
- python39-pyjavaproperties
- - python39-pyjnius
- python39-pyjokes
- python39-pyjsparser
- python39-pyjwkest
@@ -44344,6 +44366,7 @@
- tktable
- tkxcd
- tllist-devel
+ - tlrc
- tls
- tlswrap
- tmate
1
0
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 2023-12-19 03:07:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Tue Dec 19 03:07:28 2023 rev:2652 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
MicroOS-release.spec: same change
openSUSE-Addon-NonOss-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.uWLgxE/_old 2023-12-19 03:07:31.601901875 +0100
+++ /var/tmp/diff_new_pack.uWLgxE/_new 2023-12-19 03:07:31.617902458 +0100
@@ -9218,9 +9218,11 @@
Provides: weakremover(libOIS-1_3_0)
Provides: weakremover(libOgreBites13_2)
Provides: weakremover(libOgreBites13_3)
+Provides: weakremover(libOgreBites13_5)
Provides: weakremover(libOgreBites1_12_12)
Provides: weakremover(libOgreBitesQt13_2)
Provides: weakremover(libOgreBitesQt13_3)
+Provides: weakremover(libOgreBitesQt13_5)
Provides: weakremover(libOgreBitesQt1_12_12)
Provides: weakremover(libOgreMain13_2)
Provides: weakremover(libOgreMain13_2-codecs)
@@ -9228,6 +9230,9 @@
Provides: weakremover(libOgreMain13_3)
Provides: weakremover(libOgreMain13_3-codecs)
Provides: weakremover(libOgreMain13_3-plugins)
+Provides: weakremover(libOgreMain13_5)
+Provides: weakremover(libOgreMain13_5-codecs)
+Provides: weakremover(libOgreMain13_5-plugins)
Provides: weakremover(libOgreMain1_12_12)
Provides: weakremover(libOgreMain1_12_12-codecs)
Provides: weakremover(libOgreMain1_12_12-plugins)
@@ -9235,29 +9240,36 @@
Provides: weakremover(libOgreMain1_9_0-plugins)
Provides: weakremover(libOgreMeshLodGenerator13_2)
Provides: weakremover(libOgreMeshLodGenerator13_3)
+Provides: weakremover(libOgreMeshLodGenerator13_5)
Provides: weakremover(libOgreMeshLodGenerator1_12_12)
Provides: weakremover(libOgreOverlay13_2)
Provides: weakremover(libOgreOverlay13_3)
+Provides: weakremover(libOgreOverlay13_5)
Provides: weakremover(libOgreOverlay1_12_12)
Provides: weakremover(libOgreOverlay1_9_0)
Provides: weakremover(libOgrePaging13_2)
Provides: weakremover(libOgrePaging13_3)
+Provides: weakremover(libOgrePaging13_5)
Provides: weakremover(libOgrePaging1_12_12)
Provides: weakremover(libOgrePaging1_9_0)
Provides: weakremover(libOgreProperty13_2)
Provides: weakremover(libOgreProperty13_3)
+Provides: weakremover(libOgreProperty13_5)
Provides: weakremover(libOgreProperty1_12_12)
Provides: weakremover(libOgreProperty1_9_0)
Provides: weakremover(libOgreRTShaderSystem13_2)
Provides: weakremover(libOgreRTShaderSystem13_3)
+Provides: weakremover(libOgreRTShaderSystem13_5)
Provides: weakremover(libOgreRTShaderSystem1_12_12)
Provides: weakremover(libOgreRTShaderSystem1_9_0)
Provides: weakremover(libOgreTerrain13_2)
Provides: weakremover(libOgreTerrain13_3)
+Provides: weakremover(libOgreTerrain13_5)
Provides: weakremover(libOgreTerrain1_12_12)
Provides: weakremover(libOgreTerrain1_9_0)
Provides: weakremover(libOgreVolume13_2)
Provides: weakremover(libOgreVolume13_3)
+Provides: weakremover(libOgreVolume13_5)
Provides: weakremover(libOgreVolume1_12_12)
Provides: weakremover(libOgreVolume1_9_0)
Provides: weakremover(libOpenColorIO1)
@@ -24690,6 +24702,7 @@
Provides: weakremover(python3-pyfg)
Provides: weakremover(python3-pygame-doc)
Provides: weakremover(python3-pyinsane2)
+Provides: weakremover(python3-pyjnius)
Provides: weakremover(python3-pyliblo)
Provides: weakremover(python3-pyliblo-doc)
Provides: weakremover(python3-pyls-black)
@@ -24970,6 +24983,7 @@
Provides: weakremover(python310-pydle)
Provides: weakremover(python310-pygeos)
Provides: weakremover(python310-pyheif)
+Provides: weakremover(python310-pyjnius)
Provides: weakremover(python310-pyliblo)
Provides: weakremover(python310-pyliblo-doc)
Provides: weakremover(python310-pympv)
@@ -25083,6 +25097,7 @@
Provides: weakremover(python311-pycsw)
Provides: weakremover(python311-pygeos)
Provides: weakremover(python311-pyheif)
+Provides: weakremover(python311-pyjnius)
Provides: weakremover(python311-pyliblo)
Provides: weakremover(python311-pyliblo-doc)
Provides: weakremover(python311-pytest-curio)
@@ -29005,6 +29020,7 @@
Provides: weakremover(python39-pycsw)
Provides: weakremover(python39-pygeos)
Provides: weakremover(python39-pyheif)
+Provides: weakremover(python39-pyjnius)
Provides: weakremover(python39-pyliblo)
Provides: weakremover(python39-pyliblo-doc)
Provides: weakremover(python39-pyls-black)
1
0
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 2023-12-18 23:41:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Mon Dec 18 23:41:28 2023 rev:2651 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Aeon-release.spec ++++++
--- /var/tmp/diff_new_pack.QtuZM2/_old 2023-12-18 23:41:32.719540095 +0100
+++ /var/tmp/diff_new_pack.QtuZM2/_new 2023-12-18 23:41:32.719540095 +0100
@@ -17,7 +17,7 @@
Name: Aeon-release
-Version: 20231217
+Version: 20231218
Release: 0
Summary: openSUSE Aeon
License: GPL-2.0-or-later
@@ -172,9 +172,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = Aeon
-Provides: product(Aeon) = 20231217-0
+Provides: product(Aeon) = 20231218-0
Provides: product-label() = openSUSE%20Aeon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aaeon%3A20231217
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aaeon%3A20231218
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(Aeon)
@@ -190,7 +190,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(Aeon) = 20231217-0
+Provides: product_flavor(Aeon) = 20231218-0
Summary: openSUSE Aeon%{?betaversion: %{betaversion}}
%description appliance
@@ -255,11 +255,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>Aeon</name>
- <version>20231217</version>
+ <version>20231218</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:aeon:20231217</cpeid>
+ <cpeid>cpe:/o:opensuse:aeon:20231218</cpeid>
<productline>Aeon</productline>
<register>
<pool>
++++++ MicroOS-release.spec ++++++
--- /var/tmp/diff_new_pack.QtuZM2/_old 2023-12-18 23:41:32.743540971 +0100
+++ /var/tmp/diff_new_pack.QtuZM2/_new 2023-12-18 23:41:32.747541118 +0100
@@ -17,7 +17,7 @@
Name: MicroOS-release
-Version: 20231217
+Version: 20231218
Release: 0
Summary: openSUSE MicroOS
License: GPL-2.0-or-later
@@ -177,9 +177,9 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = MicroOS
-Provides: product(MicroOS) = 20231217-0
+Provides: product(MicroOS) = 20231218-0
Provides: product-label() = openSUSE%20MicroOS
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20231217
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Amicroos%3A20231218
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)
@@ -195,7 +195,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(MicroOS) = 20231217-0
+Provides: product_flavor(MicroOS) = 20231218-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description dvd
@@ -211,7 +211,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(MicroOS) = 20231217-0
+Provides: product_flavor(MicroOS) = 20231218-0
Summary: openSUSE MicroOS%{?betaversion: %{betaversion}}
%description appliance
@@ -276,11 +276,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>MicroOS</name>
- <version>20231217</version>
+ <version>20231218</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:microos:20231217</cpeid>
+ <cpeid>cpe:/o:opensuse:microos:20231218</cpeid>
<productline>MicroOS</productline>
<register>
<pool>
++++++ openSUSE-Addon-NonOss-release.spec ++++++
--- /var/tmp/diff_new_pack.QtuZM2/_old 2023-12-18 23:41:32.819543748 +0100
+++ /var/tmp/diff_new_pack.QtuZM2/_new 2023-12-18 23:41:32.831544186 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package openSUSE-Addon-NonOss-release (Version 20231217)
+# spec file for package openSUSE-Addon-NonOss-release (Version 20231218)
#
# Copyright (c) 2023 openSUSE.
#
@@ -16,7 +16,7 @@
Name: openSUSE-Addon-NonOss-release
%define product openSUSE-Addon-NonOss
Summary: openSUSE NonOSS Addon%{?betaversion: %{betaversion}}
-Version: 20231217
+Version: 20231218
#!BcntSyncTag: openSUSE-Addon-NonOss
Release: 0
License: BSD-3-Clause
@@ -25,9 +25,9 @@
Provides: %name-%version
Provides: product() = openSUSE%2DAddon%2DNonOss
-Provides: product(openSUSE-Addon-NonOss) = 20231217-0
+Provides: product(openSUSE-Addon-NonOss) = 20231218-0
Provides: product-label() = non%20oss%20addon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20231217
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20231218
AutoReqProv: on
@@ -50,10 +50,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231217</version>
+ <version>20231218</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20231217</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20231218</cpeid>
<register>
<pool>
</pool>
++++++ openSUSE-release.spec ++++++
--- /var/tmp/diff_new_pack.QtuZM2/_old 2023-12-18 23:41:32.859545209 +0100
+++ /var/tmp/diff_new_pack.QtuZM2/_new 2023-12-18 23:41:32.859545209 +0100
@@ -20,7 +20,7 @@
#define betaversion %{nil}
%define codename Tumbleweed
Name: openSUSE-release
-Version: 20231217
+Version: 20231218
Release: 0
# 0 is the product release, not the build release of this package
Summary: openSUSE Tumbleweed
@@ -184,7 +184,7 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = openSUSE
-Provides: product(openSUSE) = 20231217-0
+Provides: product(openSUSE) = 20231218-0
%ifarch x86_64
Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64
%endif
@@ -198,7 +198,7 @@
Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64
%endif
Provides: product-label() = openSUSE
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20231217
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20231218
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)
@@ -212,7 +212,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(ftp)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description ftp
@@ -227,7 +227,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(mini)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description mini
@@ -242,7 +242,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description dvd
@@ -257,7 +257,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-kde)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-kde
@@ -272,7 +272,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-x11)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-x11
@@ -287,7 +287,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-gnome)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-gnome
@@ -302,7 +302,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-xfce)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description livecd-xfce
@@ -317,7 +317,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-kde)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-kde
@@ -332,7 +332,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-gnome)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-gnome
@@ -347,7 +347,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-x11)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description usb-x11
@@ -362,7 +362,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance
@@ -377,7 +377,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-docker)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-docker
@@ -392,7 +392,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-kvm)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-kvm
@@ -407,7 +407,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vmware)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vmware
@@ -422,7 +422,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-openstack)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-openstack
@@ -437,7 +437,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-hyperv)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-hyperv
@@ -452,7 +452,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-vagrant)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-vagrant
@@ -467,7 +467,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-wsl)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-wsl
@@ -482,7 +482,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-custom)
-Provides: product_flavor(openSUSE) = 20231217-0
+Provides: product_flavor(openSUSE) = 20231218-0
Summary: openSUSE Tumbleweed%{?betaversion: %{betaversion}}
%description appliance-custom
@@ -562,10 +562,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231217</version>
+ <version>20231218</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse:20231217</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse:20231218</cpeid>
<productline>openSUSE</productline>
<register>
<target>openSUSE-Tumbleweed-x86_64</target>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-gpxpy for openSUSE:Factory checked in at 2023-12-18 22:57:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-gpxpy (Old)
and /work/SRC/openSUSE:Factory/.python-gpxpy.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-gpxpy"
Mon Dec 18 22:57:26 2023 rev:7 rq:1133908 version:1.6.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-gpxpy/python-gpxpy.changes 2022-09-29 18:15:03.199454347 +0200
+++ /work/SRC/openSUSE:Factory/.python-gpxpy.new.9037/python-gpxpy.changes 2023-12-18 22:57:36.099256204 +0100
@@ -1,0 +2,12 @@
+Mon Dec 18 20:34:52 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.6.2:
+ * NameError: free variable from_start_to_end referenced before
+ assignment in enclosing scope #256
+ * Ignore points with no elevation when calculatin uphill/downhill
+ * Use python-build to also make wheels #237
+ * timezone lost in fields when cloning/copying parsed GPX file
+ * Parsing timezone-unaware GPX files #183
+ * Use python3 code
+
+-------------------------------------------------------------------
Old:
----
gpxpy-1.5.0.tar.gz
New:
----
gpxpy-1.6.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-gpxpy.spec ++++++
--- /var/tmp/diff_new_pack.KcjIdl/_old 2023-12-18 22:57:36.639275981 +0100
+++ /var/tmp/diff_new_pack.KcjIdl/_new 2023-12-18 22:57:36.643276128 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-gpxpy
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
Name: python-gpxpy
-Version: 1.5.0
+Version: 1.6.2
Release: 0
Summary: GPX file parser and GPS track manipulation library
License: Apache-2.0
++++++ gpxpy-1.5.0.tar.gz -> gpxpy-1.6.2.tar.gz ++++++
++++ 1929 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package chezmoi for openSUSE:Factory checked in at 2023-12-18 22:57:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chezmoi (Old)
and /work/SRC/openSUSE:Factory/.chezmoi.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chezmoi"
Mon Dec 18 22:57:24 2023 rev:41 rq:1133901 version:2.42.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/chezmoi/chezmoi.changes 2023-12-06 23:48:10.879162220 +0100
+++ /work/SRC/openSUSE:Factory/.chezmoi.new.9037/chezmoi.changes 2023-12-18 22:57:32.831136518 +0100
@@ -1,0 +2,8 @@
+Mon Dec 18 18:03:57 UTC 2023 - Filippo Bonazzi <filippo.bonazzi(a)suse.com>
+
+- Update to version 2.42.3:
+ - Features
+ * feat: Remove nested subshell check
+ * feat: Make mackupApplicationsDir func agnostic to mackup's installation method
+
+-------------------------------------------------------------------
Old:
----
chezmoi-2.42.2.obscpio
New:
----
chezmoi-2.42.3.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ chezmoi.spec ++++++
--- /var/tmp/diff_new_pack.waxzmz/_old 2023-12-18 22:57:35.247225001 +0100
+++ /var/tmp/diff_new_pack.waxzmz/_new 2023-12-18 22:57:35.247225001 +0100
@@ -17,7 +17,7 @@
Name: chezmoi
-Version: 2.42.2
+Version: 2.42.3
Release: 0
Summary: A multi-host manager for dotfiles
License: MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.waxzmz/_old 2023-12-18 22:57:35.275226027 +0100
+++ /var/tmp/diff_new_pack.waxzmz/_new 2023-12-18 22:57:35.279226173 +0100
@@ -2,7 +2,7 @@
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://github.com/twpayne/chezmoi.git</param>
- <param name="revision">v2.42.2</param>
+ <param name="revision">v2.42.3</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
</service>
++++++ chezmoi-2.42.2.obscpio -> chezmoi-2.42.3.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/.github/workflows/main.yml new/chezmoi-2.42.3/.github/workflows/main.yml
--- old/chezmoi-2.42.2/.github/workflows/main.yml 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/.github/workflows/main.yml 2023-12-17 00:08:59.000000000 +0100
@@ -12,7 +12,7 @@
ACTIONLINT_VERSION: 1.6.26
AGE_VERSION: 1.1.1
CHOCOLATEY_VERSION: 2.2.2
- GO_VERSION: 1.21.4
+ GO_VERSION: 1.21.5
GOFUMPT_VERSION: 0.5.0
GOLANGCI_LINT_VERSION: 1.55.2
GOLINES_VERSION: 0.11.0
@@ -59,7 +59,7 @@
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: reviewdog/action-misspell@cc799b020b057600b66eedf2b6e97ca26137de21
+ - uses: reviewdog/action-misspell@4348e72b9038b006ffc37b6b0dd4421a2e9a68ef
with:
locale: US
test-alpine:
@@ -90,7 +90,7 @@
runs-on: macos-11
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- name: build
@@ -120,7 +120,7 @@
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: oldstable
- name: build
@@ -147,7 +147,7 @@
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
with:
fetch-depth: 0
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- name: install-release-dependencies
@@ -175,31 +175,31 @@
args: release --skip=sign --snapshot --timeout=1h
- name: upload-artifact-chezmoi-darwin-amd64
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
+ uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392
with:
name: chezmoi-darwin-amd64
path: dist/chezmoi-nocgo_darwin_amd64_v1/chezmoi
- name: upload-artifact-chezmoi-darwin-arm64
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
+ uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392
with:
name: chezmoi-darwin-arm64
path: dist/chezmoi-nocgo_darwin_arm64/chezmoi
- name: upload-artifact-chezmoi-linux-amd64
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
+ uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392
with:
name: chezmoi-linux-amd64
path: dist/chezmoi-cgo-glibc_linux_amd64_v1/chezmoi
- name: upload-artifact-chezmoi-linux-musl-amd64
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
+ uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392
with:
name: chezmoi-linux-amd64-musl
path: dist/chezmoi-cgo-musl_linux_amd64_v1/chezmoi
- name: upload-artifact-chezmoi-windows-amd64.exe
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
- uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32
+ uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392
with:
name: chezmoi-windows-amd64
path: dist/chezmoi-nocgo_windows_amd64_v1/chezmoi.exe
@@ -210,7 +210,7 @@
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
with:
fetch-depth: 0
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- name: install-age
@@ -248,7 +248,7 @@
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- name: install-website-dependencies
@@ -264,7 +264,7 @@
runs-on: windows-2022
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84
@@ -303,7 +303,9 @@
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- name: generate
@@ -327,13 +329,21 @@
run: |
go install "github.com/twpayne/find-typos@v${FIND_TYPOS_VERSION}"
find-typos -format=github-actions chezmoi .
+ - name: lint-commit-messages
+ if: github.event_name == 'push'
+ run: |
+ go run ./internal/cmds/lint-commit-messages HEAD~1..HEAD
+ - name: lint-commit-messages
+ if: github.event_name == 'pull_request'
+ run: |
+ go run ./internal/cmds/lint-commit-messages ${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }}..${{ github.event.pull_request.head.sha }}
lint:
needs: changes
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- uses: golangci/golangci-lint-action@3a919529898de77ec3da873e3063ca4b10e7f5cc
@@ -375,10 +385,10 @@
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
with:
fetch-depth: 0
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- - uses: sigstore/cosign-installer@1fc5bd396d372bee37d608f955b336615edf79c8
+ - uses: sigstore/cosign-installer@9614fae9e5c5eddabb09f90a270fcb487c9f7149
- name: create-syso
run: |
make create-syso
@@ -401,7 +411,7 @@
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
with:
fetch-depth: 0
- - uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe
+ - uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491
with:
go-version: ${{ env.GO_VERSION }}
- name: prepare-chezmoi.io
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/.golangci.yml new/chezmoi-2.42.3/.golangci.yml
--- old/chezmoi-2.42.2/.golangci.yml 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/.golangci.yml 2023-12-17 00:08:59.000000000 +0100
@@ -114,7 +114,7 @@
- ^compress/gzip\.
- ^fmt\.Print.*$
- ^ioutil\..*$
- - ^os\.(DirEntry|FileInfo|FileMode|Is.*|Mode.*)$
+ - ^os\.(DirEntry|ErrExist|ErrNotExist|FileInfo|FileMode|Is.*|Mode.*)$
gci:
sections:
- standard
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/Makefile new/chezmoi-2.42.3/Makefile
--- old/chezmoi-2.42.2/Makefile 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/Makefile 2023-12-17 00:08:59.000000000 +0100
@@ -116,6 +116,7 @@
${GO} run ./internal/cmds/lint-whitespace
find . -name \*.txtar | xargs ${GO} run ./internal/cmds/lint-txtar
./bin/find-typos chezmoi .
+ go run ./internal/cmds/lint-commit-messages origin/master..HEAD
.PHONY: format
format: ensure-gofumpt ensure-golines
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/assets/chezmoi.io/docs/links/articles.md.yaml new/chezmoi-2.42.3/assets/chezmoi.io/docs/links/articles.md.yaml
--- old/chezmoi-2.42.2/assets/chezmoi.io/docs/links/articles.md.yaml 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/assets/chezmoi.io/docs/links/articles.md.yaml 2023-12-17 00:08:59.000000000 +0100
@@ -352,3 +352,8 @@
lang: CN
title: 用 chezmoi 管理 dotfiles
url: https://thewang.net/blog/manage-dotfiles-with-chezmoi
+- date: '2023-12-10'
+ version: 2.42.2
+ lang: JP
+ title: chezmoi で dotfiles を管理するときに便利な機能についてまとめる
+ url: https://zenn.dev/ganariya/articles/useful-features-of-chezmoi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/assets/chezmoi.io/docs/links/related-software.md new/chezmoi-2.42.3/assets/chezmoi.io/docs/links/related-software.md
--- old/chezmoi-2.42.2/assets/chezmoi.io/docs/links/related-software.md 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/assets/chezmoi.io/docs/links/related-software.md 2023-12-17 00:08:59.000000000 +0100
@@ -15,6 +15,10 @@
A plugin for VIM to apply the dotfile you are editing on `:w`.
+### [`github.com/xvzc/chezmoi.nvim`](https://github.com/xvzc/chezmoi.nvim)
+
+Edit your chezmoi-managed files and automatically apply.
+
## Other
### [`atuin.sh`](https://atuin.sh/)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/assets/chezmoi.io/docs/links/videos.md.yaml new/chezmoi-2.42.3/assets/chezmoi.io/docs/links/videos.md.yaml
--- old/chezmoi-2.42.2/assets/chezmoi.io/docs/links/videos.md.yaml 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/assets/chezmoi.io/docs/links/videos.md.yaml 2023-12-17 00:08:59.000000000 +0100
@@ -41,3 +41,7 @@
lang: ES
title: Archivos de configuración fácil con chezmoi
url: https://www.youtube.com/watch?v=Xsh2DGSe6Lg
+- date: '2023-12-03'
+ version: 2.42.2
+ title: The ultimate dotfiles setup
+ url: https://www.youtube.com/watch?v=-RkANM9FfTM
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/assets/chezmoi.io/docs/reference/templates/github-functions/gitHubKeys.md new/chezmoi-2.42.3/assets/chezmoi.io/docs/reference/templates/github-functions/gitHubKeys.md
--- old/chezmoi-2.42.2/assets/chezmoi.io/docs/reference/templates/github-functions/gitHubKeys.md 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/assets/chezmoi.io/docs/reference/templates/github-functions/gitHubKeys.md 2023-12-17 00:08:59.000000000 +0100
@@ -13,6 +13,14 @@
by using the `-v` / `--verbose` option when running `chezmoi apply` or
`chezmoi update`.
+ Additionally, GitHub automatically [removes keys which haven't been used in
+ the last
+ year](https://docs.github.com/en/authentication/troubleshooting-ssh/deleted….
+ This may cause your keys to be removed from `~/.ssh/authorized_keys`
+ suddenly, and without any warning or indication of the removal. You should
+ provide one or more keys in plain text alongside this function to avoid
+ unknowingly losing remote access to your machine.
+
!!! example
```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/assets/chezmoi.io/docs/user-guide/advanced/install-packages-declaratively.md new/chezmoi-2.42.3/assets/chezmoi.io/docs/user-guide/advanced/install-packages-declaratively.md
--- old/chezmoi-2.42.2/assets/chezmoi.io/docs/user-guide/advanced/install-packages-declaratively.md 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.42.3/assets/chezmoi.io/docs/user-guide/advanced/install-packages-declaratively.md 2023-12-17 00:08:59.000000000 +0100
@@ -0,0 +1,43 @@
+# Install packages declaratively
+
+chezmoi uses a declarative approach for the contents of dotfiles, but package
+installation requires running imperative commands. However, you can simulate
+declarative package installation with a combination of a `.chezmoidata` file and
+a `run_onchange_` script.
+
+The following example uses [homebrew](https://brew.sh) on macOS, but should be
+adaptable to other operating systems and package managers.
+
+First, create `.chezmoidata/packages.yaml` declaring the packages that you want
+installed, for example:
+
+```yaml title="~/.local/share/chezmoi/.chezmoidata/packages.yaml"
+packages:
+ darwin:
+ brews:
+ - 'git'
+ casks:
+ - 'google-chrome'
+```
+
+Second, create a `run_onchange_darwin-install-packages.sh.tmpl` script that uses
+the package manager to install those packages, for example:
+
+``` title="~/.local/share/chezmoi/run_onchange_darwin-install-packages.sh.tmpl"
+{{ if eq .chezmoi.os "darwin" -}}
+#!/bin/bash
+
+brew bundle --no-lock --file=/dev/stdin <<EOF
+{{ range .packages.darwin.brews -}}
+brew {{ . | quote }}
+{{ end -}}
+{{ range .packages.darwin.casks -}}
+cask {{ . | quote }}
+{{ end -}}
+EOF
+{{ end -}}
+```
+
+Now, when you run `chezmoi apply`, chezmoi will execute the
+`install-packages.sh` script with when the list of packages defined in
+`.chezmoidata/packages.yaml` changes.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/assets/chezmoi.io/mkdocs.yml new/chezmoi-2.42.3/assets/chezmoi.io/mkdocs.yml
--- old/chezmoi-2.42.2/assets/chezmoi.io/mkdocs.yml 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/assets/chezmoi.io/mkdocs.yml 2023-12-17 00:08:59.000000000 +0100
@@ -88,6 +88,7 @@
- Containers and VMs: user-guide/machines/containers-and-vms.md
- Advanced:
- Customize your source directory: user-guide/advanced/customize-your-source-directory.md
+ - Install packages declaratively: user-guide/advanced/install-packages-declaratively.md
- Install your password manager on init: user-guide/advanced/install-your-password-manager-on-init.md
- Use chezmoi with Watchman: user-guide/advanced/use-chezmoi-with-watchman.md
- Migrate away from chezmoi: user-guide/advanced/migrate-away-from-chezmoi.md
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/go.mod new/chezmoi-2.42.3/go.mod
--- old/chezmoi-2.42.2/go.mod 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/go.mod 2023-12-17 00:08:59.000000000 +0100
@@ -8,18 +8,18 @@
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azsecrets v1.0.1
github.com/Masterminds/sprig/v3 v3.2.3
github.com/Shopify/ejson v1.4.1
- github.com/alecthomas/assert/v2 v2.4.0
- github.com/aws/aws-sdk-go-v2 v1.23.5
- github.com/aws/aws-sdk-go-v2/config v1.25.11
- github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.2
+ github.com/alecthomas/assert/v2 v2.4.1
+ github.com/aws/aws-sdk-go-v2 v1.24.0
+ github.com/aws/aws-sdk-go-v2/config v1.26.1
+ github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.5
github.com/bmatcuk/doublestar/v4 v4.6.1
github.com/bradenhilton/mozillainstallhash v1.0.1
- github.com/charmbracelet/bubbles v0.16.1
- github.com/charmbracelet/bubbletea v0.24.2
+ github.com/charmbracelet/bubbles v0.17.1
+ github.com/charmbracelet/bubbletea v0.25.0
github.com/charmbracelet/glamour v0.6.0
github.com/coreos/go-semver v0.3.1
github.com/fsnotify/fsnotify v1.7.0
- github.com/go-git/go-git/v5 v5.10.1
+ github.com/go-git/go-git/v5 v5.11.0
github.com/google/go-github/v57 v57.0.0
github.com/google/renameio/v2 v2.0.0
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79
@@ -29,8 +29,8 @@
github.com/mitchellh/mapstructure v1.5.0
github.com/muesli/combinator v0.3.0
github.com/muesli/termenv v0.15.2
- github.com/pelletier/go-toml/v2 v2.1.0
- github.com/rogpeppe/go-internal v1.11.0
+ github.com/pelletier/go-toml/v2 v2.1.1
+ github.com/rogpeppe/go-internal v1.12.0
github.com/rs/zerolog v1.31.0
github.com/sergi/go-diff v1.1.0
github.com/spf13/cobra v1.8.0
@@ -45,7 +45,7 @@
github.com/zalando/go-keyring v0.2.3
go.etcd.io/bbolt v1.3.8
golang.org/x/crypto v0.16.0
- golang.org/x/exp v0.0.0-20231127185646-65229373498e
+ golang.org/x/exp v0.0.0-20231214170342-aacd6d4b4611
golang.org/x/oauth2 v0.15.0
golang.org/x/sync v0.5.0
golang.org/x/sys v0.15.0
@@ -58,8 +58,8 @@
require (
dario.cat/mergo v1.0.0 // indirect
- github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 // indirect
- github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.1 // indirect
+ github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.1 // indirect
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/internal v1.0.0 // indirect
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
@@ -70,17 +70,17 @@
github.com/alecthomas/repr v0.3.0 // indirect
github.com/alessio/shellescape v1.4.2 // indirect
github.com/atotto/clipboard v0.1.4 // indirect
- github.com/aws/aws-sdk-go-v2/credentials v1.16.9 // indirect
- github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.9 // indirect
- github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.8 // indirect
- github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.8 // indirect
- github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1 // indirect
- github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.3 // indirect
- github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.8 // indirect
- github.com/aws/aws-sdk-go-v2/service/sso v1.18.2 // indirect
- github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.2 // indirect
- github.com/aws/aws-sdk-go-v2/service/sts v1.26.2 // indirect
- github.com/aws/smithy-go v1.18.1 // indirect
+ github.com/aws/aws-sdk-go-v2/credentials v1.16.12 // indirect
+ github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 // indirect
+ github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 // indirect
+ github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 // indirect
+ github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 // indirect
+ github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 // indirect
+ github.com/aws/smithy-go v1.19.0 // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/aymerick/douceur v0.2.0 // indirect
github.com/bradenhilton/cityhash v1.0.0 // indirect
@@ -89,7 +89,7 @@
github.com/cloudflare/circl v1.3.6 // indirect
github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
- github.com/danieljoos/wincred v1.2.0 // indirect
+ github.com/danieljoos/wincred v1.2.1 // indirect
github.com/dlclark/regexp2 v1.10.0 // indirect
github.com/dustin/gojson v0.0.0-20160307161227-2e71ec9dd5ad // indirect
github.com/emirpasic/gods v1.18.1 // indirect
@@ -101,7 +101,7 @@
github.com/golang/protobuf v1.5.3 // indirect
github.com/google/btree v1.1.2 // indirect
github.com/google/go-querystring v1.1.0 // indirect
- github.com/google/uuid v1.4.0 // indirect
+ github.com/google/uuid v1.5.0 // indirect
github.com/gorilla/css v1.0.1 // indirect
github.com/hexops/gotextdiff v1.0.3 // indirect
github.com/huandu/xstrings v1.4.0 // indirect
@@ -136,7 +136,7 @@
golang.org/x/mod v0.14.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/text v0.14.0 // indirect
- golang.org/x/tools v0.16.0 // indirect
+ golang.org/x/tools v0.16.1 // indirect
google.golang.org/appengine v1.6.8 // indirect
google.golang.org/protobuf v1.31.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/go.sum new/chezmoi-2.42.3/go.sum
--- old/chezmoi-2.42.2/go.sum 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/go.sum 2023-12-17 00:08:59.000000000 +0100
@@ -8,12 +8,12 @@
filippo.io/age v1.1.1/go.mod h1:l03SrzDUrBkdBx8+IILdnn2KZysqQdbEBUQ4p3sqEQE=
filippo.io/edwards25519 v1.0.0 h1:0wAIcmJUqRdI8IJ/3eGi5/HwXZWPujYXXlkrQogz0Ek=
filippo.io/edwards25519 v1.0.0/go.mod h1:N1IkdkCkiLB6tki+MYJoSx2JTY9NUlxZE7eHn5EwJns=
-github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 h1:fb8kj/Dh4CSwgsOzHeZY4Xh68cFVbzXx+ONXGMY//4w=
-github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0/go.mod h1:uReU2sSxZExRPBAg3qKzmAucSi51+SP1OhohieR821Q=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.1 h1:lGlwhPtrX6EVml1hO0ivjkUxsSyl4dsiw9qcA1k/3IQ=
+github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.1/go.mod h1:RKUqNu35KJYcVG/fqTRqmuXJZYNhYkBrnC/hX7yGbTA=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 h1:BMAjVKJM0U/CYF27gA0ZMmXGkOcvfFtD0oHVZ1TIPRI=
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0/go.mod h1:1fXstnBMas5kzG+S3q8UoJcmyU6nUeunJcMDHcRYHhs=
-github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 h1:d81/ng9rET2YqdVkVwkb6EXeRrLJIwyGnJcAlAWKwhs=
-github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.1 h1:6oNBlSdi1QqM1PNW7FPA6xOGA5UNsXnkaYZz9vdPGhA=
+github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.1/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azsecrets v1.0.1 h1:8TkzQBrN9PWIwo7ekdd696KpC6IfTltV2/F8qKKBWik=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/azsecrets v1.0.1/go.mod h1:aprFpXPQiTyG5Rkz6Ot5pvU6y6YKg/AKYOcLCoxN0bk=
github.com/Azure/azure-sdk-for-go/sdk/security/keyvault/internal v1.0.0 h1:D3occbWoio4EBLkbkevetNMAVX197GkzbUMtqjGWn80=
@@ -34,8 +34,8 @@
github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0=
github.com/Shopify/ejson v1.4.1 h1:zGGojGJNTdIWza/kOT8gd2HKCg3ZkSi3CZ1ZX70NHsw=
github.com/Shopify/ejson v1.4.1/go.mod h1:VZMUtDzvBW/PAXRUF5fzp1ffb1ucT8MztrZXXLYZurw=
-github.com/alecthomas/assert/v2 v2.4.0 h1:/ZiZ0NnriAWPYYO+4eOjgzNELrFQLaHNr92mHSHFj9U=
-github.com/alecthomas/assert/v2 v2.4.0/go.mod h1:fw5suVxB+wfYJ3291t0hRTqtGzFYdSwstnRQdaQx2DM=
+github.com/alecthomas/assert/v2 v2.4.1 h1:mwPZod/d35nlaCppr6sFP0rbCL05WH9fIo7lvsf47zo=
+github.com/alecthomas/assert/v2 v2.4.1/go.mod h1:fw5suVxB+wfYJ3291t0hRTqtGzFYdSwstnRQdaQx2DM=
github.com/alecthomas/chroma v0.10.0 h1:7XDcGkCQopCNKjZHfYrNLraA+M7e0fMiJ/Mfikbfjek=
github.com/alecthomas/chroma v0.10.0/go.mod h1:jtJATyUxlIORhUOFNA9NZDWGAQ8wpxQQqNSB4rjA/1s=
github.com/alecthomas/repr v0.3.0 h1:NeYzUPfjjlqHY4KtzgKJiWd6sVq2eNUPTi34PiFGjY8=
@@ -48,34 +48,34 @@
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4=
github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI=
-github.com/aws/aws-sdk-go-v2 v1.23.5 h1:xK6C4udTyDMd82RFvNkDQxtAd00xlzFUtX4fF2nMZyg=
-github.com/aws/aws-sdk-go-v2 v1.23.5/go.mod h1:t3szzKfP0NeRU27uBFczDivYJjsmSnqI8kIvKyWb9ds=
-github.com/aws/aws-sdk-go-v2/config v1.25.11 h1:RWzp7jhPRliIcACefGkKp03L0Yofmd2p8M25kbiyvno=
-github.com/aws/aws-sdk-go-v2/config v1.25.11/go.mod h1:BVUs0chMdygHsQtvaMyEOpW2GIW+ubrxJLgIz/JU29s=
-github.com/aws/aws-sdk-go-v2/credentials v1.16.9 h1:LQo3MUIOzod9JdUK+wxmSdgzLVYUbII3jXn3S/HJZU0=
-github.com/aws/aws-sdk-go-v2/credentials v1.16.9/go.mod h1:R7mDuIJoCjH6TxGUc/cylE7Lp/o0bhKVoxdBThsjqCM=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.9 h1:FZVFahMyZle6WcogZCOxo6D/lkDA2lqKIn4/ueUmVXw=
-github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.9/go.mod h1:kjq7REMIkxdtcEC9/4BVXjOsNY5isz6jQbEgk6osRTU=
-github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.8 h1:8GVZIR0y6JRIUNSYI1xAMF4HDfV8H/bOsZ/8AD/uY5Q=
-github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.8/go.mod h1:rwBfu0SoUkBUZndVgPZKAD9Y2JigaZtRP68unRiYToQ=
-github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.8 h1:ZE2ds/qeBkhk3yqYvS3CDCFNvd9ir5hMjlVStLZWrvM=
-github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.8/go.mod h1:/lAPPymDYL023+TS6DJmjuL42nxix2AvEvfjqOBRODk=
-github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1 h1:uR9lXYjdPX0xY+NhvaJ4dD8rpSRz5VY81ccIIoNG+lw=
-github.com/aws/aws-sdk-go-v2/internal/ini v1.7.1/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY=
-github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.3 h1:e3PCNeEaev/ZF01cQyNZgmYE9oYYePIMJs2mWSKG514=
-github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.3/go.mod h1:gIeeNyaL8tIEqZrzAnTeyhHcE0yysCtcaP+N9kxLZ+E=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.8 h1:EamsKe+ZjkOQjDdHd86/JCEucjFKQ9T0atWKO4s2Lgs=
-github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.8/go.mod h1:Q0vV3/csTpbkfKLI5Sb56cJQTCTtJ0ixdb7P+Wedqiw=
-github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.2 h1:JKbfiLwEqJp8zaOAOn6AVSMS96gdwP3TjBMvZYsbxqE=
-github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.2/go.mod h1:pbBOMK8UicdDK11zsPSGbpFh9Xwbd1oD3t7pSxXgNxU=
-github.com/aws/aws-sdk-go-v2/service/sso v1.18.2 h1:xJPydhNm0Hiqct5TVKEuHG7weC0+sOs4MUnd7A5n5F4=
-github.com/aws/aws-sdk-go-v2/service/sso v1.18.2/go.mod h1:zxk6y1X2KXThESWMS5CrKRvISD8mbIMab6nZrCGxDG0=
-github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.2 h1:8dU9zqA77C5egbU6yd4hFLaiIdPv3rU+6cp7sz5FjCU=
-github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.2/go.mod h1:7Lt5mjQ8x5rVdKqg+sKKDeuwoszDJIIPmkd8BVsEdS0=
-github.com/aws/aws-sdk-go-v2/service/sts v1.26.2 h1:fFrLsy08wEbAisqW3KDl/cPHrF43GmV79zXB9EwJiZw=
-github.com/aws/aws-sdk-go-v2/service/sts v1.26.2/go.mod h1:7Ld9eTqocTvJqqJ5K/orbSDwmGcpRdlDiLjz2DO+SL8=
-github.com/aws/smithy-go v1.18.1 h1:pOdBTUfXNazOlxLrgeYalVnuTpKreACHtc62xLwIB3c=
-github.com/aws/smithy-go v1.18.1/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE=
+github.com/aws/aws-sdk-go-v2 v1.24.0 h1:890+mqQ+hTpNuw0gGP6/4akolQkSToDJgHfQE7AwGuk=
+github.com/aws/aws-sdk-go-v2 v1.24.0/go.mod h1:LNh45Br1YAkEKaAqvmE1m8FUx6a5b/V0oAKV7of29b4=
+github.com/aws/aws-sdk-go-v2/config v1.26.1 h1:z6DqMxclFGL3Zfo+4Q0rLnAZ6yVkzCRxhRMsiRQnD1o=
+github.com/aws/aws-sdk-go-v2/config v1.26.1/go.mod h1:ZB+CuKHRbb5v5F0oJtGdhFTelmrxd4iWO1lf0rQwSAg=
+github.com/aws/aws-sdk-go-v2/credentials v1.16.12 h1:v/WgB8NxprNvr5inKIiVVrXPuuTegM+K8nncFkr1usU=
+github.com/aws/aws-sdk-go-v2/credentials v1.16.12/go.mod h1:X21k0FjEJe+/pauud82HYiQbEr9jRKY3kXEIQ4hXeTQ=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 h1:w98BT5w+ao1/r5sUuiH6JkVzjowOKeOJRHERyy1vh58=
+github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10/go.mod h1:K2WGI7vUvkIv1HoNbfBA1bvIZ+9kL3YVmWxeKuLQsiw=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 h1:v+HbZaCGmOwnTTVS86Fleq0vPzOd7tnJGbFhP0stNLs=
+github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9/go.mod h1:Xjqy+Nyj7VDLBtCMkQYOw1QYfAEZCVLrfI0ezve8wd4=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 h1:N94sVhRACtXyVcjXxrwK1SKFIJrA9pOJ5yu2eSHnmls=
+github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9/go.mod h1:hqamLz7g1/4EJP+GH5NBhcUMLjW+gKLQabgyz6/7WAU=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 h1:GrSw8s0Gs/5zZ0SX+gX4zQjRnRsMJDJ2sLur1gRBhEM=
+github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 h1:/b31bi3YVNlkzkBrm9LfpaKoaYZUxIAj4sHfOTmLfqw=
+github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4/go.mod h1:2aGXHFmbInwgP9ZfpmdIfOELL79zhdNYNmReK8qDfdQ=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 h1:Nf2sHxjMJR8CSImIVCONRi4g0Su3J+TSTbS7G0pUeMU=
+github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9/go.mod h1:idky4TER38YIjr2cADF1/ugFMKvZV7p//pVeV5LZbF0=
+github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.5 h1:qYi/BfDrWXZxlmRjlKCyFmtI4HKJwW8OKDKhKRAOZQI=
+github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.25.5/go.mod h1:4Ae1NCLK6ghmjzd45Tc33GgCKhUWD2ORAlULtMO1Cbs=
+github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 h1:ldSFWz9tEHAwHNmjx2Cvy1MjP5/L9kNoR0skc6wyOOM=
+github.com/aws/aws-sdk-go-v2/service/sso v1.18.5/go.mod h1:CaFfXLYL376jgbP7VKC96uFcU8Rlavak0UlAwk1Dlhc=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 h1:2k9KmFawS63euAkY4/ixVNsYYwrwnd5fIvgEKkfZFNM=
+github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5/go.mod h1:W+nd4wWDVkSUIox9bacmkBP5NMFQeTJ/xqNabpzSR38=
+github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 h1:5UYvv8JUvllZsRnfrcMQ+hJ9jNICmcgKPAO1CER25Wg=
+github.com/aws/aws-sdk-go-v2/service/sts v1.26.5/go.mod h1:XX5gh4CB7wAs4KhcF46G6C8a2i7eupU19dcAAE+EydU=
+github.com/aws/smithy-go v1.19.0 h1:KWFKQV80DpP3vJrrA9sVAHQ5gc2z8i4EzrLhLlWXcBM=
+github.com/aws/smithy-go v1.19.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE=
github.com/aymanbagabas/go-osc52 v1.0.3 h1:DTwqENW7X9arYimJrPeGZcV0ln14sGMt3pHZspWD+Mg=
github.com/aymanbagabas/go-osc52 v1.0.3/go.mod h1:zT8H+Rk4VSabYN90pWyugflM3ZhpTZNC7cASDfUCdT4=
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
@@ -90,10 +90,10 @@
github.com/bradenhilton/mozillainstallhash v1.0.1/go.mod h1:J6cA36kUZrgaTkDl2bHRqI+4i2UKO1ImDB1P1x1PyOA=
github.com/bwesterb/go-ristretto v1.2.3 h1:1w53tCkGhCQ5djbat3+MH0BAQ5Kfgbt56UZQ/JMzngw=
github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0=
-github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY=
-github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc=
-github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY=
-github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg=
+github.com/charmbracelet/bubbles v0.17.1 h1:0SIyjOnkrsfDo88YvPgAWvZMwXe26TP6drRvmkjyUu4=
+github.com/charmbracelet/bubbles v0.17.1/go.mod h1:9HxZWlkCqz2PRwsCbYl7a3KXvGzFaDHpYbSYMJ+nE3o=
+github.com/charmbracelet/bubbletea v0.25.0 h1:bAfwk7jRz7FKFl9RzlIULPkStffg5k6pNt5dywy4TcM=
+github.com/charmbracelet/bubbletea v0.25.0/go.mod h1:EN3QDR1T5ZdWmdfDzYcqOCAps45+QIJbLOBxmVNWNNg=
github.com/charmbracelet/glamour v0.6.0 h1:wi8fse3Y7nfcabbbDuwolqTqMQPMnVPeZhDM273bISc=
github.com/charmbracelet/glamour v0.6.0/go.mod h1:taqWV4swIMMbWALc0m7AfE9JkPSU8om2538k9ITBxOc=
github.com/charmbracelet/harmonica v0.2.0 h1:8NxJWRWg/bzKqqEaaeFNipOu77YR5t8aSwG4pgaUBiQ=
@@ -115,8 +115,8 @@
github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4=
github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg=
github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4=
-github.com/danieljoos/wincred v1.2.0 h1:ozqKHaLK0W/ii4KVbbvluM91W2H3Sh0BncbUNPS7jLE=
-github.com/danieljoos/wincred v1.2.0/go.mod h1:FzQLLMKBFdvu+osBrnFODiv32YGwCfx0SkRa/eYHgec=
+github.com/danieljoos/wincred v1.2.1 h1:dl9cBrupW8+r5250DYkYxocLeZ1Y4vB1kxgtjxw8GQs=
+github.com/danieljoos/wincred v1.2.1/go.mod h1:uGaFL9fDn3OLTvzCGulzE+SzjEe5NGlh5FdCcyfPwps=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -145,8 +145,8 @@
github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII=
-github.com/go-git/go-git/v5 v5.10.1 h1:tu8/D8i+TWxgKpzQ3Vc43e+kkhXqtsZCKI/egajKnxk=
-github.com/go-git/go-git/v5 v5.10.1/go.mod h1:uEuHjxkHap8kAl//V5F/nNWwqIYtP/402ddd05mp0wg=
+github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4=
+github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY=
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk=
github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
@@ -173,8 +173,8 @@
github.com/google/renameio/v2 v2.0.0 h1:UifI23ZTGY8Tt29JbYFiuyIU3eX+RNFtUwefq9qAhxg=
github.com/google/renameio/v2 v2.0.0/go.mod h1:BtmJXm5YlszgC+TD4HOEEUFgkJP3nLxehU6hfe7jRt4=
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
-github.com/google/uuid v1.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4=
-github.com/google/uuid v1.4.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
+github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU=
+github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00 h1:l5lAOZEym3oK3SQ2HBHWsJUfbNBiTXJDeW2QDxw9AQ0=
github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
github.com/gorilla/css v1.0.0/go.mod h1:Dn721qIggHpt4+EFCcTLTU/vk5ySda2ReITrtgBl60c=
@@ -263,8 +263,8 @@
github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=
github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI=
github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M=
-github.com/pelletier/go-toml/v2 v2.1.0 h1:FnwAJ4oYMvbT/34k9zzHuZNrhlz48GB3/s6at6/MHO4=
-github.com/pelletier/go-toml/v2 v2.1.0/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc=
+github.com/pelletier/go-toml/v2 v2.1.1 h1:LWAJwfNvjQZCFIDKWYQaM62NcYeYViCmWIwmOStowAI=
+github.com/pelletier/go-toml/v2 v2.1.1/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc=
github.com/peterbourgon/diskv v2.0.1+incompatible h1:UBdAOUP5p4RWqPBg048CAvpKN+vxiaj6gdUUzhl4XmI=
github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU=
github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4=
@@ -281,16 +281,16 @@
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis=
github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
-github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M=
-github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA=
+github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
+github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=
github.com/rs/xid v1.5.0 h1:mKX4bl4iPYJtEIxp6CYiUuLQ/8DYMoz0PUdtGgMFRVc=
github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg=
github.com/rs/zerolog v1.31.0 h1:FcTR3NnLWW+NnTwwhFWiJSZr4ECLpqCm6QsEnyvbV4A=
github.com/rs/zerolog v1.31.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
-github.com/sahilm/fuzzy v0.1.0 h1:FzWGaw2Opqyu+794ZQ9SYifWv2EIXpwP4q8dY1kDAwI=
-github.com/sahilm/fuzzy v0.1.0/go.mod h1:VFvziUEIMCrT6A6tw2RFIXPXXmzXbOsSHF0DOI8ZK9Y=
+github.com/sahilm/fuzzy v0.1.1-0.20230530133925-c48e322e2a8f h1:MvTmaQdww/z0Q4wrYjDSCcZ78NoftLQyHBSLW/Cx79Y=
+github.com/sahilm/fuzzy v0.1.1-0.20230530133925-c48e322e2a8f/go.mod h1:VFvziUEIMCrT6A6tw2RFIXPXXmzXbOsSHF0DOI8ZK9Y=
github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
@@ -367,8 +367,8 @@
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
-golang.org/x/exp v0.0.0-20231127185646-65229373498e h1:Gvh4YaCaXNs6dKTlfgismwWZKyjVZXwOPfIyUaqU3No=
-golang.org/x/exp v0.0.0-20231127185646-65229373498e/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI=
+golang.org/x/exp v0.0.0-20231214170342-aacd6d4b4611 h1:qCEDpW1G+vcj3Y7Fy52pEM1AWm3abj8WimGYejI3SC4=
+golang.org/x/exp v0.0.0-20231214170342-aacd6d4b4611/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0=
@@ -431,8 +431,8 @@
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
-golang.org/x/tools v0.16.0 h1:GO788SKMRunPIBCXiQyo2AaexLstOrVhuAL5YwsckQM=
-golang.org/x/tools v0.16.0/go.mod h1:kYVVN6I1mBNoB1OX+noeBjbRk4IUEPa7JJ+TJMEooJ0=
+golang.org/x/tools v0.16.1 h1:TLyB3WofjdOEepBHAU20JdNC1Zbg87elYofWYAY5oZA=
+golang.org/x/tools v0.16.1/go.mod h1:kYVVN6I1mBNoB1OX+noeBjbRk4IUEPa7JJ+TJMEooJ0=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/chezmoi/externaldiffsystem.go new/chezmoi-2.42.3/internal/chezmoi/externaldiffsystem.go
--- old/chezmoi-2.42.2/internal/chezmoi/externaldiffsystem.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/chezmoi/externaldiffsystem.go 2023-12-17 00:08:59.000000000 +0100
@@ -338,8 +338,8 @@
// Swallow exit status 1 errors if the files differ as diff commands
// traditionally exit with code 1 in this case.
- var exitError *exec.ExitError
- if errors.As(err, &exitError) && exitError.ProcessState.ExitCode() == 1 {
+ if exitError := (&exec.ExitError{}); errors.As(err, &exitError) &&
+ exitError.ProcessState.ExitCode() == 1 {
destData, err2 := s.ReadFile(destAbsPath)
switch {
case errors.Is(err2, fs.ErrNotExist):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/chezmoierrors/chezmoierrors.go new/chezmoi-2.42.3/internal/chezmoierrors/chezmoierrors.go
--- old/chezmoi-2.42.2/internal/chezmoierrors/chezmoierrors.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/chezmoierrors/chezmoierrors.go 2023-12-17 00:08:59.000000000 +0100
@@ -25,12 +25,6 @@
}
}
-// CombineClose combines the error pointed to by errp with the result of calling
-// closer.Close().
-func CombineClose(errp *error, closer interface{ Close() error }) {
- CombineFunc(errp, closer.Close)
-}
-
// CombineFunc combines the error pointed to by errp with the result of calling
// f.
func CombineFunc(errp *error, f func() error) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/chezmoilog/chezmoilog.go new/chezmoi-2.42.3/internal/chezmoilog/chezmoilog.go
--- old/chezmoi-2.42.2/internal/chezmoilog/chezmoilog.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/chezmoilog/chezmoilog.go 2023-12-17 00:08:59.000000000 +0100
@@ -60,13 +60,12 @@
if err.Err == nil {
return
}
- var osExecExitError *exec.ExitError
- if !errors.As(err.Err, &osExecExitError) {
- return
- }
- event.EmbedObject(OSProcessStateLogObject{osExecExitError.ProcessState})
- if osExecExitError.Stderr != nil {
- event.Bytes("stderr", osExecExitError.Stderr)
+ if osExecExitError := (&exec.ExitError{}); errors.As(err.Err, &osExecExitError) {
+ event.EmbedObject(OSProcessStateLogObject{osExecExitError.ProcessState})
+ if osExecExitError.Stderr != nil {
+ event.Bytes("stderr", osExecExitError.Stderr)
+ return
+ }
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/cdcmd.go new/chezmoi-2.42.3/internal/cmd/cdcmd.go
--- old/chezmoi-2.42.2/internal/cmd/cdcmd.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/cdcmd.go 2023-12-17 00:08:59.000000000 +0100
@@ -1,7 +1,6 @@
package cmd
import (
- "errors"
"fmt"
"os"
@@ -36,9 +35,6 @@
}
func (c *Config) runCDCmd(cmd *cobra.Command, args []string) error {
- if _, ok := os.LookupEnv("CHEZMOI_SUBSHELL"); ok {
- return errors.New("already in a chezmoi subshell")
- }
os.Setenv("CHEZMOI_SUBSHELL", "1")
cdCommand, cdArgs, err := c.cdCommand()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/cmd.go new/chezmoi-2.42.3/internal/cmd/cmd.go
--- old/chezmoi-2.42.2/internal/cmd/cmd.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/cmd.go 2023-12-17 00:08:59.000000000 +0100
@@ -120,8 +120,7 @@
}
}
if err != nil {
- var errExitCode chezmoi.ExitCodeError
- if errors.As(err, &errExitCode) {
+ if errExitCode := chezmoi.ExitCodeError(0); errors.As(err, &errExitCode) {
return int(errExitCode)
}
fmt.Fprintf(os.Stderr, "chezmoi: %s\n", deDuplicateError(err))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/config.go new/chezmoi-2.42.3/internal/cmd/config.go
--- old/chezmoi-2.42.2/internal/cmd/config.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/config.go 2023-12-17 00:08:59.000000000 +0100
@@ -2523,8 +2523,7 @@
func (c *Config) targetRelPath(absPath chezmoi.AbsPath) (chezmoi.RelPath, error) {
relPath, err := absPath.TrimDirPrefix(c.DestDirAbsPath)
- var notInAbsDirError *chezmoi.NotInAbsDirError
- if errors.As(err, ¬InAbsDirError) {
+ if notInAbsDirError := (&chezmoi.NotInAbsDirError{}); errors.As(err, ¬InAbsDirError) {
return chezmoi.EmptyRelPath, fmt.Errorf(
"%s: not in destination directory (%s)",
absPath,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/mackupcmd_darwin.go new/chezmoi-2.42.3/internal/cmd/mackupcmd_darwin.go
--- old/chezmoi-2.42.2/internal/cmd/mackupcmd_darwin.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/mackupcmd_darwin.go 2023-12-17 00:08:59.000000000 +0100
@@ -7,8 +7,8 @@
"bytes"
"errors"
"fmt"
- "os"
- "os/exec"
+ "io/fs"
+ "path/filepath"
"regexp"
"strings"
@@ -21,7 +21,6 @@
mackupCommentRx = regexp.MustCompile(`\A#.*\z`)
mackupKeyValueRx = regexp.MustCompile(`\A(\w+)\s*=\s*(.*)\z`)
mackupSectionRx = regexp.MustCompile(`\A\[(.*)\]\z`)
- mackupVersionRx = regexp.MustCompile(`\AMackup\s+(\d+\.\d+\.\d+)\s*\z`)
)
type mackupApplicationApplicationConfig struct {
@@ -77,7 +76,7 @@
for _, arg := range args {
configRelPath := chezmoi.NewRelPath(arg + ".cfg")
data, err := c.baseSystem.ReadFile(mackupDirAbsPath.Join(configRelPath))
- if errors.Is(err, os.ErrNotExist) {
+ if errors.Is(err, fs.ErrNotExist) {
data, err = c.baseSystem.ReadFile(mackupApplicationsDir.Join(configRelPath))
}
if err != nil {
@@ -122,49 +121,42 @@
}
func (c *Config) mackupApplicationsDir() (chezmoi.AbsPath, error) {
- brewPrefixCmd := exec.Command("brew", "--prefix")
- brewPrefixData, err := brewPrefixCmd.Output()
+ mackupBinaryPath, err := chezmoi.LookPath("mackup")
if err != nil {
return chezmoi.EmptyAbsPath, err
}
- brewPrefix := chezmoi.NewAbsPath(strings.TrimRight(string(brewPrefixData), "\n"))
-
- mackupVersionCmd := exec.Command("mackup", "--version")
- mackupVersionData, err := mackupVersionCmd.Output()
+ mackupBinaryPathResolved, err := filepath.EvalSymlinks(mackupBinaryPath)
if err != nil {
return chezmoi.EmptyAbsPath, err
}
- mackupVersionMatch := mackupVersionRx.FindSubmatch(mackupVersionData)
- if mackupVersionMatch == nil {
- return chezmoi.EmptyAbsPath, fmt.Errorf(
- "%q: cannot determine Mackup version",
- mackupVersionData,
- )
- }
- mackupVersion := string(mackupVersionMatch[1])
+ mackupBinaryAbsPath := chezmoi.NewAbsPath(mackupBinaryPathResolved)
- libDirAbsPath := brewPrefix.JoinString("Cellar", "mackup", mackupVersion, "libexec", "lib")
+ libDirAbsPath := mackupBinaryAbsPath.Dir().Dir().JoinString("lib")
dirEntries, err := c.baseSystem.ReadDir(libDirAbsPath)
if err != nil {
return chezmoi.EmptyAbsPath, err
}
- var pythonDirRelPath chezmoi.RelPath
+
for _, dirEntry := range dirEntries {
- if dirEntry.IsDir() && strings.HasPrefix(dirEntry.Name(), "python") {
- pythonDirRelPath = chezmoi.NewRelPath(dirEntry.Name())
- break
+ if !dirEntry.IsDir() || !strings.HasPrefix(dirEntry.Name(), "python") {
+ continue
}
- }
- if pythonDirRelPath.Empty() {
- return chezmoi.EmptyAbsPath, fmt.Errorf(
- "%s: could not find python directory",
- libDirAbsPath,
+ mackupApplicationsDirAbsPath := libDirAbsPath.JoinString(
+ dirEntry.Name(),
+ "site-packages",
+ "mackup",
+ "applications",
)
+ if fileInfo, err := c.baseSystem.Stat(mackupApplicationsDirAbsPath); err == nil &&
+ fileInfo.IsDir() {
+ return mackupApplicationsDirAbsPath, nil
+ }
}
- return libDirAbsPath.Join(pythonDirRelPath).
- JoinString("site-packages", "mackup", "applications"),
- nil
+ return chezmoi.EmptyAbsPath, fmt.Errorf(
+ "%s: mackup application directory not found",
+ libDirAbsPath,
+ )
}
func parseMackupApplication(data []byte) (mackupApplicationConfig, error) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackup_darwin.txtar new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackup_darwin.txtar
--- old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackup_darwin.txtar 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackup_darwin.txtar 1970-01-01 01:00:00.000000000 +0100
@@ -1,63 +0,0 @@
-[!darwin] skip 'Darwin only'
-
-chmod 755 bin/brew
-chmod 755 bin/mackup
-
-# test that chezmoi mackup add adds normal dotfiles
-exec chezmoi mackup add curl
-cmp $CHEZMOISOURCEDIR/dot_curlrc golden/dot_curlrc
-
-# test that chezmoi mackup add adds XDG configuration files
-exec chezmoi mackup add vscode
-cmp $CHEZMOISOURCEDIR/dot_config/Code/User/settings.json golden/settings.json
-
--- bin/brew --
-#!/bin/sh
-
-case "$*" in
-"--prefix")
- echo "opt/homebrew"
- ;;
-*)
- echo "Error: Unknown command $*"
- ;;
-esac
--- bin/mackup --
-#!/bin/sh
-
-case "$*" in
-"--version")
- echo "Mackup 0.8.32"
- ;;
-*)
- echo "Usage:"
- ;;
-esac
--- golden/dot_curlrc --
-# contents of .curlrc
--- golden/settings.json --
-# contents of .config/Code/User/settings.json
--- home/user/.config/Code/User/settings.json --
-# contents of .config/Code/User/settings.json
--- home/user/.curlrc --
-# contents of .curlrc
--- home/user/.mackup/curl.cfg --
-[application]
-name = Curl
-
-[configuration_files]
-.netrc
-.curlrc
--- opt/homebrew/Cellar/mackup/0.8.32/libexec/lib/python3.9/site-packages/mackup/applications/vscode.cfg --
-[application]
-name = Visual Studio Code
-
-[configuration_files]
-Library/Application Support/Code/User/snippets
-Library/Application Support/Code/User/keybindings.json
-Library/Application Support/Code/User/settings.json
-
-[xdg_configuration_files]
-Code/User/snippets
-Code/User/keybindings.json
-Code/User/settings.json
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackupbrew_darwin.txtar new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackupbrew_darwin.txtar
--- old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackupbrew_darwin.txtar 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackupbrew_darwin.txtar 2023-12-17 00:08:59.000000000 +0100
@@ -0,0 +1,47 @@
+[!darwin] skip 'Darwin only'
+
+# simulate a brew installation of mackup
+chmod 755 opt/homebrew/Cellar/mackup/0.8.32/libexec/bin/mackup
+mkdir opt/homebrew/Cellar/mackup/0.8.32/bin opt/homebrew/bin
+symlink opt/homebrew/Cellar/mackup/0.8.32/bin/mackup -> ../libexec/bin/mackup
+symlink opt/homebrew/bin/mackup -> ../Cellar/mackup/0.8.32/bin/mackup
+env PATH=$WORK/opt/homebrew/bin:$PATH
+
+# test that chezmoi mackup add adds normal dotfiles
+exec chezmoi mackup add curl
+cmp $CHEZMOISOURCEDIR/dot_curlrc golden/dot_curlrc
+
+# test that chezmoi mackup add adds XDG configuration files
+exec chezmoi mackup add vscode
+cmp $CHEZMOISOURCEDIR/dot_config/Code/User/settings.json golden/settings.json
+
+-- golden/dot_curlrc --
+# contents of .curlrc
+-- golden/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.config/Code/User/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.curlrc --
+# contents of .curlrc
+-- home/user/.mackup/curl.cfg --
+[application]
+name = Curl
+
+[configuration_files]
+.netrc
+.curlrc
+-- opt/homebrew/Cellar/mackup/0.8.32/libexec/bin/mackup --
+# mackup binary
+-- opt/homebrew/Cellar/mackup/0.8.32/libexec/lib/python3.9/site-packages/mackup/applications/vscode.cfg --
+[application]
+name = Visual Studio Code
+
+[configuration_files]
+Library/Application Support/Code/User/snippets
+Library/Application Support/Code/User/keybindings.json
+Library/Application Support/Code/User/settings.json
+
+[xdg_configuration_files]
+Code/User/snippets
+Code/User/keybindings.json
+Code/User/settings.json
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackupmacports_darwin.txtar new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackupmacports_darwin.txtar
--- old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackupmacports_darwin.txtar 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackupmacports_darwin.txtar 2023-12-17 00:08:59.000000000 +0100
@@ -0,0 +1,46 @@
+[!darwin] skip 'Darwin only'
+
+# simulate a macports installation of mackup
+chmod 755 opt/local/Library/Frameworks/Python.framework/Versions/3.11/bin/mackup
+mkdir opt/local/bin
+symlink opt/local/bin/mackup -> ../Library/Frameworks/Python.framework/Versions/3.11/bin/mackup
+env PATH=$WORK/opt/local/bin:$PATH
+
+# test that chezmoi mackup add adds normal dotfiles
+exec chezmoi mackup add curl
+cmp $CHEZMOISOURCEDIR/dot_curlrc golden/dot_curlrc
+
+# test that chezmoi mackup add adds XDG configuration files
+exec chezmoi mackup add vscode
+cmp $CHEZMOISOURCEDIR/dot_config/Code/User/settings.json golden/settings.json
+
+-- golden/dot_curlrc --
+# contents of .curlrc
+-- golden/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.config/Code/User/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.curlrc --
+# contents of .curlrc
+-- home/user/.mackup/curl.cfg --
+[application]
+name = Curl
+
+[configuration_files]
+.netrc
+.curlrc
+-- opt/local/Library/Frameworks/Python.framework/Versions/3.11/bin/mackup --
+# mackup binary
+-- opt/local/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mackup/applications/vscode.cfg --
+[application]
+name = Visual Studio Code
+
+[configuration_files]
+Library/Application Support/Code/User/snippets
+Library/Application Support/Code/User/keybindings.json
+Library/Application Support/Code/User/settings.json
+
+[xdg_configuration_files]
+Code/User/snippets
+Code/User/keybindings.json
+Code/User/settings.json
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackuppip_darwin.txtar new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackuppip_darwin.txtar
--- old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackuppip_darwin.txtar 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackuppip_darwin.txtar 2023-12-17 00:08:59.000000000 +0100
@@ -0,0 +1,46 @@
+[!darwin] skip 'Darwin only'
+
+# simulate a pip installation of mackup
+chmod 755 usr/local/bin/mackup
+# version 3.9 of python without mackup
+mkdir usr/local/lib/python3.9/site-packages
+env PATH=$WORK/usr/local/bin:$PATH
+
+# test that chezmoi mackup add adds normal dotfiles
+exec chezmoi mackup add curl
+cmp $CHEZMOISOURCEDIR/dot_curlrc golden/dot_curlrc
+
+# test that chezmoi mackup add adds XDG configuration files
+exec chezmoi mackup add vscode
+cmp $CHEZMOISOURCEDIR/dot_config/Code/User/settings.json golden/settings.json
+
+-- golden/dot_curlrc --
+# contents of .curlrc
+-- golden/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.config/Code/User/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.curlrc --
+# contents of .curlrc
+-- home/user/.mackup/curl.cfg --
+[application]
+name = Curl
+
+[configuration_files]
+.netrc
+.curlrc
+-- usr/local/bin/mackup --
+# mackup binary
+-- usr/local/lib/python3.11/site-packages/mackup/applications/vscode.cfg --
+[application]
+name = Visual Studio Code
+
+[configuration_files]
+Library/Application Support/Code/User/snippets
+Library/Application Support/Code/User/keybindings.json
+Library/Application Support/Code/User/settings.json
+
+[xdg_configuration_files]
+Code/User/snippets
+Code/User/keybindings.json
+Code/User/settings.json
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackuppipx_darwin.txtar new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackuppipx_darwin.txtar
--- old/chezmoi-2.42.2/internal/cmd/testdata/scripts/mackuppipx_darwin.txtar 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/testdata/scripts/mackuppipx_darwin.txtar 2023-12-17 00:08:59.000000000 +0100
@@ -0,0 +1,46 @@
+[!darwin] skip 'Darwin only'
+
+# simulate a pipx installation of mackup
+chmod 755 home/.local/pipx/venvs/mackup/bin/mackup
+mkdir home/.local/bin
+symlink home/.local/bin/mackup -> ../pipx/venvs/mackup/bin/mackup
+env PATH=$WORK/home/.local/bin:$PATH
+
+# test that chezmoi mackup add adds normal dotfiles
+exec chezmoi mackup add curl
+cmp $CHEZMOISOURCEDIR/dot_curlrc golden/dot_curlrc
+
+# test that chezmoi mackup add adds XDG configuration files
+exec chezmoi mackup add vscode
+cmp $CHEZMOISOURCEDIR/dot_config/Code/User/settings.json golden/settings.json
+
+-- golden/dot_curlrc --
+# contents of .curlrc
+-- golden/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/.local/pipx/venvs/mackup/bin/mackup --
+# mackup binary
+-- home/.local/pipx/venvs/mackup/lib/python3.11/site-packages/mackup/applications/vscode.cfg --
+[application]
+name = Visual Studio Code
+
+[configuration_files]
+Library/Application Support/Code/User/snippets
+Library/Application Support/Code/User/keybindings.json
+Library/Application Support/Code/User/settings.json
+
+[xdg_configuration_files]
+Code/User/snippets
+Code/User/keybindings.json
+Code/User/settings.json
+-- home/user/.config/Code/User/settings.json --
+# contents of .config/Code/User/settings.json
+-- home/user/.curlrc --
+# contents of .curlrc
+-- home/user/.mackup/curl.cfg --
+[application]
+name = Curl
+
+[configuration_files]
+.netrc
+.curlrc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/util.go new/chezmoi-2.42.3/internal/cmd/util.go
--- old/chezmoi-2.42.2/internal/cmd/util.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/util.go 2023-12-17 00:08:59.000000000 +0100
@@ -1,7 +1,6 @@
package cmd
import (
- "reflect"
"strings"
"unicode"
)
@@ -144,20 +143,3 @@
}
return result
}
-
-func flattenStringList(vpaths []any) []string {
- var paths []string
- for i := range vpaths {
- switch path := vpaths[i].(type) {
- case []string:
- paths = append(paths, path...)
- case string:
- paths = append(paths, path)
- case []any:
- paths = append(paths, flattenStringList(path)...)
- default:
- panic("unknown type: " + reflect.TypeOf(path).String())
- }
- }
- return paths
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmd/util_test.go new/chezmoi-2.42.3/internal/cmd/util_test.go
--- old/chezmoi-2.42.2/internal/cmd/util_test.go 2023-12-02 02:29:57.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmd/util_test.go 2023-12-17 00:08:59.000000000 +0100
@@ -1,8 +1,6 @@
package cmd
import (
- "reflect"
- "strings"
"testing"
"github.com/alecthomas/assert/v2"
@@ -150,47 +148,3 @@
"id": "",
}, actual)
}
-
-func Test_flattenStringList(t *testing.T) {
- tests := []struct {
- name string
- vpaths []any
- want []string
- }{
- {
- name: "Nothing",
- },
- {
- name: "Just a string",
- vpaths: []any{"1"},
- want: []string{"1"},
- },
- {
- name: "Just a array of string",
- vpaths: []any{[]string{"1", "2"}},
- want: []string{"1", "2"},
- },
- {
- name: "Just a array of any containing string",
- vpaths: []any{[]any{"1", "2"}},
- want: []string{"1", "2"},
- },
- {
- name: "Just a array of any containing string",
- vpaths: []any{[]any{"1", "2"}},
- want: []string{"1", "2"},
- },
- {
- name: "Hybrid",
- vpaths: []any{"0", []any{"1", "2"}, []any{[]string{"3", "4"}}, []any{[]any{"5", "6"}}},
- want: strings.Split("0123456", ""),
- },
- }
- for _, tt := range tests {
- t.Run(tt.name, func(t *testing.T) {
- if got := flattenStringList(tt.vpaths); !reflect.DeepEqual(got, tt.want) {
- t.Errorf("flattenStringList() = %v, want %v", got, tt.want)
- }
- })
- }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/chezmoi-2.42.2/internal/cmds/lint-commit-messages/main.go new/chezmoi-2.42.3/internal/cmds/lint-commit-messages/main.go
--- old/chezmoi-2.42.2/internal/cmds/lint-commit-messages/main.go 1970-01-01 01:00:00.000000000 +0100
+++ new/chezmoi-2.42.3/internal/cmds/lint-commit-messages/main.go 2023-12-17 00:08:59.000000000 +0100
@@ -0,0 +1,49 @@
+package main
+
+import (
+ "bufio"
+ "bytes"
+ "fmt"
+ "os"
+ "os/exec"
+ "regexp"
+ "strings"
+)
+
+var commitRx = regexp.MustCompile(`\A([0-9a-f]{40}) (chore(?:\(\w+\))?|docs|feat|fix): `)
+
+func run() error {
+ args := append([]string{"log", "--format=oneline"}, os.Args[1:]...)
+ cmd := exec.Command("git", args...)
+ cmd.Stdin = os.Stdin
+ cmd.Stderr = os.Stderr
+ output, err := cmd.Output()
+ if err != nil {
+ return fmt.Errorf("git: %w", err)
+ }
+
+ var invalidCommitMessages []string
+ scanner := bufio.NewScanner(bytes.NewReader(output))
+ for scanner.Scan() {
+ commitMessage := scanner.Text()
+ if !commitRx.MatchString(commitMessage) {
+ invalidCommitMessages = append(invalidCommitMessages, commitMessage)
+ }
+ }
+ if err := scanner.Err(); err != nil {
+ return fmt.Errorf("scanner: %w", err)
+ }
+
+ if len(invalidCommitMessages) != 0 {
+ return fmt.Errorf("invalid commit messages:\n%s", strings.Join(invalidCommitMessages, "\n"))
+ }
+
+ return nil
+}
+
+func main() {
+ if err := run(); err != nil {
+ fmt.Println(err)
+ os.Exit(1)
+ }
+}
++++++ chezmoi.obsinfo ++++++
--- /var/tmp/diff_new_pack.waxzmz/_old 2023-12-18 22:57:35.715242141 +0100
+++ /var/tmp/diff_new_pack.waxzmz/_new 2023-12-18 22:57:35.719242287 +0100
@@ -1,5 +1,5 @@
name: chezmoi
-version: 2.42.2
-mtime: 1701480597
-commit: ea1e143fe416097792706a708144ffda0d85b268
+version: 2.42.3
+mtime: 1702768139
+commit: 43a4f5790ef1b709de881d36afb0a61745efa34f
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/chezmoi/vendor.tar.gz /work/SRC/openSUSE:Factory/.chezmoi.new.9037/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-asyncssh for openSUSE:Factory checked in at 2023-12-18 22:57:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-asyncssh (Old)
and /work/SRC/openSUSE:Factory/.python-asyncssh.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-asyncssh"
Mon Dec 18 22:57:21 2023 rev:26 rq:1133889 version:2.14.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-asyncssh/python-asyncssh.changes 2023-11-13 22:20:41.635111844 +0100
+++ /work/SRC/openSUSE:Factory/.python-asyncssh.new.9037/python-asyncssh.changes 2023-12-18 22:57:30.619055507 +0100
@@ -1,0 +2,14 @@
+Mon Dec 18 15:55:18 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.14.2 (bsc#1218165, CVE-2023-48795):
+ * Implemented "strict kex" support and other countermeasures to
+ * protect against the Terrapin Attack described in
+ CVE-2023-48795
+ * Fixed config parser to properly an optional equals delimiter
+ in all config arguments.
+ * Fixed TCP send error handling to avoid race condition when
+ receiving incoming disconnect message.
+ * Improved type signature in SSHConnection async context
+ manager.
+
+-------------------------------------------------------------------
Old:
----
asyncssh-2.14.1.tar.gz
New:
----
asyncssh-2.14.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-asyncssh.spec ++++++
--- /var/tmp/diff_new_pack.Ol77YX/_old 2023-12-18 22:57:31.707095353 +0100
+++ /var/tmp/diff_new_pack.Ol77YX/_new 2023-12-18 22:57:31.711095500 +0100
@@ -16,10 +16,9 @@
#
-%define skip_python2 1
-%define skip_python36 1
+%{?sle15_python_module_pythons}
Name: python-asyncssh
-Version: 2.14.1
+Version: 2.14.2
Release: 0
Summary: Asynchronous SSHv2 client and server library
License: EPL-2.0 OR GPL-2.0-or-later
++++++ asyncssh-2.14.1.tar.gz -> asyncssh-2.14.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/.github/workflows/run_tests.yml new/asyncssh-2.14.2/.github/workflows/run_tests.yml
--- old/asyncssh-2.14.1/.github/workflows/run_tests.yml 2023-11-09 03:28:14.000000000 +0100
+++ new/asyncssh-2.14.2/.github/workflows/run_tests.yml 2023-11-09 04:54:11.000000000 +0100
@@ -67,7 +67,9 @@
- name: Install Linux dependencies
if: ${{ runner.os == 'Linux' }}
- run: sudo apt install -y --no-install-recommends libnettle8 libsodium-dev libssl-dev libkrb5-dev ssh cmake ninja-build
+ run: |
+ sudo apt update
+ sudo apt install -y --no-install-recommends libnettle8 libsodium-dev libssl-dev libkrb5-dev ssh cmake ninja-build
- name: Install macOS dependencies
if: ${{ runner.os == 'macOS' }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/PKG-INFO new/asyncssh-2.14.2/PKG-INFO
--- old/asyncssh-2.14.1/PKG-INFO 2023-11-09 04:02:21.000000000 +0100
+++ new/asyncssh-2.14.2/PKG-INFO 2023-12-18 16:49:17.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: asyncssh
-Version: 2.14.1
+Version: 2.14.2
Summary: AsyncSSH: Asynchronous SSHv2 client and server library
Home-page: http://asyncssh.timeheart.net
Author: Ron Frederick
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/asyncssh/config.py new/asyncssh-2.14.2/asyncssh/config.py
--- old/asyncssh-2.14.1/asyncssh/config.py 2022-12-27 22:30:36.000000000 +0100
+++ new/asyncssh-2.14.2/asyncssh/config.py 2023-12-18 16:45:25.000000000 +0100
@@ -315,22 +315,26 @@
continue
try:
- args = shlex.split(line)
+ split_args = shlex.split(line)
except ValueError as exc:
self._error(str(exc))
- option = args.pop(0)
+ args = []
- if option.endswith('='):
- option = option[:-1]
- elif '=' in option:
- option, arg = option.split('=', 1)
- args[:0] =[arg]
- elif args and args[0] == '=':
- del args[0]
- elif args and args[0].startswith('='):
- args[0] = args[0][1:]
+ for arg in split_args:
+ if arg.startswith('='):
+ if len(arg) > 1:
+ args.append(arg[1:])
+ elif arg.endswith('='):
+ args.append(arg[:-1])
+ elif '=' in arg:
+ arg, val = arg.split('=', 1)
+ args.append(arg)
+ args.append(val)
+ else:
+ args.append(arg)
+ option = args.pop(0)
loption = option.lower()
if loption in self._no_split:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/asyncssh/connection.py new/asyncssh-2.14.2/asyncssh/connection.py
--- old/asyncssh-2.14.1/asyncssh/connection.py 2023-11-09 03:28:14.000000000 +0100
+++ new/asyncssh-2.14.2/asyncssh/connection.py 2023-12-18 16:45:25.000000000 +0100
@@ -179,6 +179,7 @@
_ProtocolFactory = Union[_ClientFactory, _ServerFactory]
_Conn = TypeVar('_Conn', 'SSHClientConnection', 'SSHServerConnection')
+_ConnSelf = TypeVar('_ConnSelf', bound='SSHConnection')
class _TunnelProtocol(Protocol):
"""Base protocol for connections to tunnel SSH over"""
@@ -317,12 +318,6 @@
self._conn.connection_lost(exc)
- def is_closing(self) -> bool:
- """Return whether the transport is closing or not"""
-
- assert self._transport is not None
- return self._transport.is_closing()
-
def write(self, data: bytes) -> None:
"""Write data to this tunnel"""
@@ -866,6 +861,7 @@
self._kexinit_sent = False
self._kex_complete = False
self._ignore_first_kex = False
+ self._strict_kex = False
self._gss: Optional[GSSBase] = None
self._gss_kex = False
@@ -944,7 +940,7 @@
self._disable_trivial_auth = False
- async def __aenter__(self) -> 'SSHConnection':
+ async def __aenter__(self: _ConnSelf) -> _ConnSelf:
"""Allow SSHConnection to be used as an async context manager"""
return self
@@ -1403,19 +1399,22 @@
(alg_type, b','.join(local_algs).decode('ascii'),
b','.join(remote_algs).decode('ascii')))
- def _get_ext_info_kex_alg(self) -> List[bytes]:
- """Return the kex alg to add if any to request extension info"""
+ def _get_extra_kex_algs(self) -> List[bytes]:
+ """Return the extra kex algs to add"""
- return [b'ext-info-c' if self.is_client() else b'ext-info-s']
+ if self.is_client():
+ return [b'ext-info-c', b'kex-strict-c-v00(a)openssh.com']
+ else:
+ return [b'ext-info-s', b'kex-strict-s-v00(a)openssh.com']
def _send(self, data: bytes) -> None:
"""Send data to the SSH connection"""
if self._transport:
- if self._transport.is_closing():
- self._force_close(BrokenPipeError())
- else:
+ try:
self._transport.write(data)
+ except BrokenPipeError: # pragma: no cover
+ pass
def _send_version(self) -> None:
"""Start the SSH handshake"""
@@ -1551,6 +1550,11 @@
else:
skip_reason = 'kex not in progress'
exc_reason = 'Key exchange not in progress'
+ elif self._strict_kex and not self._recv_encryption and \
+ MSG_IGNORE <= pkttype <= MSG_DEBUG:
+ skip_reason = 'strict kex violation'
+ exc_reason = 'Strict key exchange violation: ' \
+ 'unexpected packet type %d received' % pkttype
elif MSG_USERAUTH_FIRST <= pkttype <= MSG_USERAUTH_LAST:
if self._auth:
handler = self._auth
@@ -1586,8 +1590,13 @@
raise ProtocolError(str(exc)) from None
if not processed:
- self.logger.debug1('Unknown packet type %d received', pkttype)
- self.send_packet(MSG_UNIMPLEMENTED, UInt32(seq))
+ if self._strict_kex and not self._recv_encryption:
+ exc_reason = 'Strict key exchange violation: ' \
+ 'unexpected packet type %d received' % pkttype
+ else:
+ self.logger.debug1('Unknown packet type %d received',
+ pkttype)
+ self.send_packet(MSG_UNIMPLEMENTED, UInt32(seq))
if exc_reason:
raise ProtocolError(exc_reason)
@@ -1596,9 +1605,16 @@
self._auth_final = True
if self._transport:
- self._recv_seq = (seq + 1) & 0xffffffff
self._recv_handler = self._recv_pkthdr
+ if self._recv_seq == 0xffffffff and not self._recv_encryption:
+ raise ProtocolError('Sequence rollover before kex complete')
+
+ if pkttype == MSG_NEWKEYS and self._strict_kex:
+ self._recv_seq = 0
+ else:
+ self._recv_seq = (seq + 1) & 0xffffffff
+
return True
def send_packet(self, pkttype: int, *args: bytes,
@@ -1650,7 +1666,15 @@
mac = b''
self._send(packet + mac)
- self._send_seq = (seq + 1) & 0xffffffff
+
+ if self._send_seq == 0xffffffff and not self._send_encryption:
+ self._send_seq = 0
+ raise ProtocolError('Sequence rollover before kex complete')
+
+ if pkttype == MSG_NEWKEYS and self._strict_kex:
+ self._send_seq = 0
+ else:
+ self._send_seq = (seq + 1) & 0xffffffff
if self._kex_complete:
self._rekey_bytes_sent += pktlen
@@ -1694,7 +1718,7 @@
kex_algs = expand_kex_algs(self._kex_algs, gss_mechs,
bool(self._server_host_key_algs)) + \
- self._get_ext_info_kex_alg()
+ self._get_extra_kex_algs()
host_key_algs = self._server_host_key_algs or [b'null']
@@ -2196,13 +2220,27 @@
if self.is_server():
self._client_kexinit = packet.get_consumed_payload()
- if b'ext-info-c' in peer_kex_algs and not self._session_id:
- self._can_send_ext_info = True
+ if not self._session_id:
+ if b'ext-info-c' in peer_kex_algs:
+ self._can_send_ext_info = True
+
+ if b'kex-strict-c-v00(a)openssh.com' in peer_kex_algs:
+ self._strict_kex = True
else:
self._server_kexinit = packet.get_consumed_payload()
- if b'ext-info-s' in peer_kex_algs and not self._session_id:
- self._can_send_ext_info = True
+ if not self._session_id:
+ if b'ext-info-s' in peer_kex_algs:
+ self._can_send_ext_info = True
+
+ if b'kex-strict-s-v00(a)openssh.com' in peer_kex_algs:
+ self._strict_kex = True
+
+ if self._strict_kex and not self._recv_encryption and \
+ self._recv_seq != 0:
+ raise ProtocolError('Strict key exchange violation: '
+ 'KEXINIT was not the first packet')
+
if self._kexinit_sent:
self._kexinit_sent = False
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/asyncssh/version.py new/asyncssh-2.14.2/asyncssh/version.py
--- old/asyncssh-2.14.1/asyncssh/version.py 2023-11-09 03:30:33.000000000 +0100
+++ new/asyncssh-2.14.2/asyncssh/version.py 2023-12-18 16:45:49.000000000 +0100
@@ -26,4 +26,4 @@
__url__ = 'http://asyncssh.timeheart.net'
-__version__ = '2.14.1'
+__version__ = '2.14.2'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/asyncssh.egg-info/PKG-INFO new/asyncssh-2.14.2/asyncssh.egg-info/PKG-INFO
--- old/asyncssh-2.14.1/asyncssh.egg-info/PKG-INFO 2023-11-09 04:02:21.000000000 +0100
+++ new/asyncssh-2.14.2/asyncssh.egg-info/PKG-INFO 2023-12-18 16:49:17.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: asyncssh
-Version: 2.14.1
+Version: 2.14.2
Summary: AsyncSSH: Asynchronous SSHv2 client and server library
Home-page: http://asyncssh.timeheart.net
Author: Ron Frederick
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/docs/changes.rst new/asyncssh-2.14.2/docs/changes.rst
--- old/asyncssh-2.14.1/docs/changes.rst 2023-11-09 03:50:21.000000000 +0100
+++ new/asyncssh-2.14.2/docs/changes.rst 2023-12-18 16:45:57.000000000 +0100
@@ -3,13 +3,32 @@
Change Log
==========
+Release 2.14.2 (18 Dec 2023)
+----------------------------
+
+* Implemented "strict kex" support and other countermeasures to
+ protect against the Terrapin Attack described in `CVE-2023-48795
+ <https://github.com/advisories/GHSA-hfmc-7525-mj55>`. Thanks once
+ again go to Fabian Bäumer, Marcus Brinkmann, and Jörg Schwenk for
+ identifying and reporting this vulnerability and providing detailed
+ analysis and suggestions about proposed fixes.
+
+* Fixed config parser to properly an optional equals delimiter in all
+ config arguments. Thanks go to Fawaz Orabi for reporting this issue.
+
+* Fixed TCP send error handling to avoid race condition when receiving
+ incoming disconnect message.
+
+* Improved type signature in SSHConnection async context manager. Thanks
+ go to Pieter-Jan Briers for providing this.
+
Release 2.14.1 (8 Nov 2023)
---------------------------
* Hardened AsyncSSH state machine against potential message
injection attacks, described in more detail in `CVE-2023-46445
- <https://github.com/advisories/CVE-2023-46445>`_ and `CVE-2023-46446
- <https://github.com/advisories/CVE-2023-46446>`_. Thanks go to
+ <https://github.com/advisories/GHSA-cfc2-wr2v-gxm5>`_ and `CVE-2023-46446
+ <https://github.com/advisories/GHSA-c35q-ffpf-5qpm>`_. Thanks go to
Fabian Bäumer, Marcus Brinkmann, and Jörg Schwenk for identifying
and reporting these vulnerabilities and providing detailed analysis
and suggestions about the proposed fixes.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/tests/test_connection.py new/asyncssh-2.14.2/tests/test_connection.py
--- old/asyncssh-2.14.1/tests/test_connection.py 2023-11-09 03:28:14.000000000 +0100
+++ new/asyncssh-2.14.2/tests/test_connection.py 2023-12-18 16:45:25.000000000 +0100
@@ -30,9 +30,10 @@
from unittest.mock import patch
import asyncssh
-from asyncssh.constants import MSG_DEBUG
+from asyncssh.constants import MSG_IGNORE, MSG_DEBUG
from asyncssh.constants import MSG_SERVICE_REQUEST, MSG_SERVICE_ACCEPT
-from asyncssh.constants import MSG_KEXINIT, MSG_NEWKEYS, MSG_KEX_FIRST
+from asyncssh.constants import MSG_KEXINIT, MSG_NEWKEYS
+from asyncssh.constants import MSG_KEX_FIRST, MSG_KEX_LAST
from asyncssh.constants import MSG_USERAUTH_REQUEST, MSG_USERAUTH_SUCCESS
from asyncssh.constants import MSG_USERAUTH_FAILURE, MSG_USERAUTH_BANNER
from asyncssh.constants import MSG_USERAUTH_FIRST
@@ -43,6 +44,7 @@
from asyncssh.crypto.cipher import GCMCipher
from asyncssh.encryption import get_encryption_algs
from asyncssh.kex import get_kex_algs
+from asyncssh.kex_dh import MSG_KEX_ECDH_REPLY
from asyncssh.mac import _HMAC, _mac_handler, get_mac_algs
from asyncssh.packet import Boolean, NameList, String, UInt32
from asyncssh.public_key import get_default_public_key_algs
@@ -51,8 +53,8 @@
from .server import Server, ServerTestCase
-from .util import asynctest, gss_available, nc_available, patch_gss
-from .util import patch_getnameinfo, x509_available
+from .util import asynctest, patch_extra_kex, patch_getnameinfo, patch_gss
+from .util import gss_available, nc_available, x509_available
class _CheckAlgsClientConnection(asyncssh.SSHClientConnection):
@@ -931,22 +933,6 @@
await self.connect(kex_algs=['fail'])
@asynctest
- async def test_skip_ext_info(self):
- """Test not requesting extension info from the server"""
-
- def skip_ext_info(self):
- """Don't request extension information"""
-
- # pylint: disable=unused-argument
-
- return []
-
- with patch('asyncssh.connection.SSHConnection._get_ext_info_kex_alg',
- skip_ext_info):
- async with self.connect():
- pass
-
- @asynctest
async def test_unknown_ext_info(self):
"""Test receiving unknown extension information"""
@@ -971,6 +957,54 @@
await self.connect()
@asynctest
+ async def test_message_before_kexinit_strict_kex(self):
+ """Test receiving a message before KEXINIT with strict_kex enabled"""
+
+ def send_packet(self, pkttype, *args, **kwargs):
+ if pkttype == MSG_KEXINIT:
+ self.send_packet(MSG_IGNORE, String(b''))
+
+ asyncssh.connection.SSHConnection.send_packet(
+ self, pkttype, *args, **kwargs)
+
+ with patch('asyncssh.connection.SSHClientConnection.send_packet',
+ send_packet):
+ with self.assertRaises(asyncssh.ProtocolError):
+ await self.connect()
+
+ @asynctest
+ async def test_message_during_kex_strict_kex(self):
+ """Test receiving an unexpected message with strict_kex enabled"""
+
+ def send_packet(self, pkttype, *args, **kwargs):
+ if pkttype == MSG_KEX_ECDH_REPLY:
+ self.send_packet(MSG_IGNORE, String(b''))
+
+ asyncssh.connection.SSHConnection.send_packet(
+ self, pkttype, *args, **kwargs)
+
+ with patch('asyncssh.connection.SSHServerConnection.send_packet',
+ send_packet):
+ with self.assertRaises(asyncssh.ProtocolError):
+ await self.connect()
+
+ @asynctest
+ async def test_unknown_message_during_kex_strict_kex(self):
+ """Test receiving an unknown message with strict_kex enabled"""
+
+ def send_packet(self, pkttype, *args, **kwargs):
+ if pkttype == MSG_KEX_ECDH_REPLY:
+ self.send_packet(MSG_KEX_LAST)
+
+ asyncssh.connection.SSHConnection.send_packet(
+ self, pkttype, *args, **kwargs)
+
+ with patch('asyncssh.connection.SSHServerConnection.send_packet',
+ send_packet):
+ with self.assertRaises(asyncssh.ProtocolError):
+ await self.connect()
+
+ @asynctest
async def test_encryption_algs(self):
"""Test connecting with different encryption algorithms"""
@@ -1602,6 +1636,81 @@
await self.create_connection(_InternalErrorClient)
+@patch_extra_kex
+class _TestConnectionNoStrictKex(ServerTestCase):
+ """Unit tests for connection API with ext info and strict kex disabled"""
+
+ @classmethod
+ async def start_server(cls):
+ """Start an SSH server to connect to"""
+
+ return (await cls.create_server(_TunnelServer, gss_host=(),
+ compression_algs='*',
+ encryption_algs='*',
+ kex_algs='*', mac_algs='*'))
+
+ @asynctest
+ async def test_skip_ext_info(self):
+ """Test not requesting extension info from the server"""
+
+ async with self.connect():
+ pass
+
+ @asynctest
+ async def test_message_before_kexinit(self):
+ """Test receiving a message before KEXINIT"""
+
+ def send_packet(self, pkttype, *args, **kwargs):
+ if pkttype == MSG_KEXINIT:
+ self.send_packet(MSG_IGNORE, String(b''))
+
+ asyncssh.connection.SSHConnection.send_packet(
+ self, pkttype, *args, **kwargs)
+
+ with patch('asyncssh.connection.SSHClientConnection.send_packet',
+ send_packet):
+ async with self.connect():
+ pass
+
+ @asynctest
+ async def test_message_during_kex(self):
+ """Test receiving an unexpected message in key exchange"""
+
+ def send_packet(self, pkttype, *args, **kwargs):
+ if pkttype == MSG_KEX_ECDH_REPLY:
+ self.send_packet(MSG_IGNORE, String(b''))
+
+ asyncssh.connection.SSHConnection.send_packet(
+ self, pkttype, *args, **kwargs)
+
+ with patch('asyncssh.connection.SSHServerConnection.send_packet',
+ send_packet):
+ async with self.connect():
+ pass
+
+ @asynctest
+ async def test_sequence_wrap_during_kex(self):
+ """Test sequence wrap during initial key exchange"""
+
+ def send_packet(self, pkttype, *args, **kwargs):
+ if pkttype == MSG_KEXINIT:
+ if self._options.command == 'send':
+ self._send_seq = 0xfffffffe
+ else:
+ self._recv_seq = 0xfffffffe
+
+ asyncssh.connection.SSHConnection.send_packet(
+ self, pkttype, *args, **kwargs)
+
+ with patch('asyncssh.connection.SSHClientConnection.send_packet',
+ send_packet):
+ with self.assertRaises(asyncssh.ProtocolError):
+ await self.connect(command='send')
+
+ with self.assertRaises(asyncssh.ProtocolError):
+ await self.connect(command='recv')
+
+
class _TestConnectionListenSock(ServerTestCase):
"""Unit test for specifying a listen socket"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/tests/test_connection_auth.py new/asyncssh-2.14.2/tests/test_connection_auth.py
--- old/asyncssh-2.14.1/tests/test_connection_auth.py 2023-10-22 04:09:07.000000000 +0200
+++ new/asyncssh-2.14.2/tests/test_connection_auth.py 2023-12-18 16:45:25.000000000 +0100
@@ -739,7 +739,7 @@
return []
- with patch('asyncssh.connection.SSHConnection._get_ext_info_kex_alg',
+ with patch('asyncssh.connection.SSHConnection._get_extra_kex_algs',
skip_ext_info):
try:
async with self.connect(username='user',
@@ -1245,7 +1245,7 @@
return []
- with patch('asyncssh.connection.SSHConnection._get_ext_info_kex_alg',
+ with patch('asyncssh.connection.SSHConnection._get_extra_kex_algs',
skip_ext_info):
try:
async with self.connect(username='ckey', client_keys='ckey',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asyncssh-2.14.1/tests/util.py new/asyncssh-2.14.2/tests/util.py
--- old/asyncssh-2.14.1/tests/util.py 2023-10-01 02:35:42.000000000 +0200
+++ new/asyncssh-2.14.2/tests/util.py 2023-12-18 16:45:25.000000000 +0100
@@ -106,6 +106,20 @@
return patch('socket.getnameinfo', getnameinfo)(cls)
+def patch_extra_kex(cls):
+ """Decorator for skipping extra kex algs"""
+
+ def skip_extra_kex_algs(self):
+ """Don't send extra key exchange algorithms"""
+
+ # pylint: disable=unused-argument
+
+ return []
+
+ return patch('asyncssh.connection.SSHConnection._get_extra_kex_algs',
+ skip_extra_kex_algs)(cls)
+
+
def patch_gss(cls):
"""Decorator for patching GSSAPI classes"""
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package open-vmdk for openSUSE:Factory checked in at 2023-12-18 22:57:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/open-vmdk (Old)
and /work/SRC/openSUSE:Factory/.open-vmdk.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "open-vmdk"
Mon Dec 18 22:57:19 2023 rev:2 rq:1133892 version:0.3.6.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/open-vmdk/open-vmdk.changes 2023-09-04 22:55:01.026810765 +0200
+++ /work/SRC/openSUSE:Factory/.open-vmdk.new.9037/open-vmdk.changes 2023-12-18 22:57:28.394974055 +0100
@@ -1,0 +2,27 @@
+Tue Nov 21 19:41:56 UTC 2023 - andreas.stieger(a)gmx.de
+
+- Update to version 0.3.6.0:
+ * -add a test for the manifest file
+ * add option to support sha256 checksum type
+ * add github workflow for pytest
+ * add basic tests with pytest
+ * do not fail if 'transports' or 'categories' are missing
+ * Update README.md for categories and extra_configs
+ * don't fail if no network is configured
+ * add 'no_default_configs' option to 'system'
+ * add categories, fixes issue #35
+ * add extra_configs
+ * Add doc for OVF properties to README.md
+ * fix for split failure when there is more than one equals sign in 'param'
+ * fix error when product section doesn't exist
+ * Add OVF template for hardware version 21
+ * Fix typo, from PR #29
+ * fix vmdisk ids
+ * add OVF properties
+
+-------------------------------------------------------------------
+Thu Nov 16 20:42:19 UTC 2023 - Guilherme Moro <gmoro(a)suse.com>
+
+- Patch: shebang.patch fix bash/sh shebang issue
+
+-------------------------------------------------------------------
Old:
----
open-vmdk-0.3.1.0.obscpio
New:
----
open-vmdk-0.3.6.0.obscpio
open-vmdk-0.3.6.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ open-vmdk.spec ++++++
--- /var/tmp/diff_new_pack.OUKgGK/_old 2023-12-18 22:57:29.431011997 +0100
+++ /var/tmp/diff_new_pack.OUKgGK/_new 2023-12-18 22:57:29.435012144 +0100
@@ -17,7 +17,7 @@
Name: open-vmdk
-Version: 0.3.1.0
+Version: 0.3.6.0
Release: 0
Summary: Tools to create OVA files from raw disk images
License: Apache-2.0
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.OUKgGK/_old 2023-12-18 22:57:29.483013902 +0100
+++ /var/tmp/diff_new_pack.OUKgGK/_new 2023-12-18 22:57:29.487014048 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/vmware/open-vmdk</param>
- <param name="changesrevision">5afbfb5270099586b93e28ae7585f3c661f379b5</param></service></servicedata>
+ <param name="changesrevision">ba658b05c4bf95631e9b7ae55ce5bc248192b798</param></service></servicedata>
(No newline at EOF)
++++++ open-vmdk-0.3.1.0.obscpio -> open-vmdk-0.3.6.0.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/.github/workflows/pytest.yaml new/open-vmdk-0.3.6.0/.github/workflows/pytest.yaml
--- old/open-vmdk-0.3.1.0/.github/workflows/pytest.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/.github/workflows/pytest.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,32 @@
+name: open-vmdk pytests
+
+on: [pull_request, push, workflow_dispatch]
+
+jobs:
+ pytests:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: install build deps
+ run: sudo apt-get -y install zlib1g-dev
+
+ - name: build
+ working-directory: ${{ github.workspace }}
+ run: make
+
+ - name: install
+ working-directory: ${{ github.workspace }}
+ run: sudo make install
+
+ - name: set up python 3
+ uses: actions/setup-python@v4
+ with:
+ python-version: '3.x'
+
+ - name: install pytest
+ run: pip install pytest PyYAML lxml xmltodict
+
+ - name: run tests
+ working-directory: ${{ github.workspace }}
+ run: pytest pytest/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/.gitignore new/open-vmdk-0.3.6.0/.gitignore
--- old/open-vmdk-0.3.1.0/.gitignore 2023-07-25 23:40:09.000000000 +0200
+++ new/open-vmdk-0.3.6.0/.gitignore 2023-11-14 19:12:25.000000000 +0100
@@ -1,2 +1,4 @@
/build/
._*
+__pycache__/
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/README.md new/open-vmdk-0.3.6.0/README.md
--- old/open-vmdk-0.3.1.0/README.md 2023-07-25 23:40:09.000000000 +0200
+++ new/open-vmdk-0.3.6.0/README.md 2023-11-14 19:12:25.000000000 +0100
@@ -12,7 +12,7 @@
The OVF file that will be embedded can be generated using `ova-compose` from a simple yaml config file.
-`ova-compose` will can then create the final OVA from the OVF file, the vmdk images and a manifest (a file that contains checksums of the other files).
+`ova-compose` will then create the final OVA from the OVF file, the vmdk images and a manifest (a file that contains checksums of the other files).
There is also the legacy tool `mkova.sh` that generates OVF files from templates.
@@ -160,6 +160,28 @@
label: Venti
description: too much
+environment:
+ transports:
+ - com.vmware.guestInfo
+ - iso
+ categories:
+ email: Email Settings
+ properties:
+ guestinfo.admin.email:
+ value: admin(a)company.org
+ user_configurable: true
+ type: string
+ description: "The Admin's email address"
+ label: "Email Address"
+ category: email
+
+extra_configs:
+ feature.enabled:
+ required: false
+ value: true
+ log.rotateSize:
+ value: 2048000
+
product:
product: An Example VM
vendor: A Company Inc.
@@ -205,6 +227,8 @@
description: just right
```
The default can also be set with `default_configuration` in the `system` section.
+* `environment` is for setting OVF properties. Variables are added under the new `environment` section as a `properties` map. The key is the name of the variable. Each variable has a mandatory `type`. `value`, `user_configurable` (default: `false`), `qualifiers`, `password` (default `false`),`label`, `description` are optional. Additionally, `transports` can be set in a list. Valid values are `iso` and `com.vmware.guestInfo`. Note that at least one of them must be set to make the properties visible inside the guest. Optionally, categories are set with `categories` to a map with an id as key and a description as value. Each property can have a `category` set to a category id.
+* `extra_configs` is a map of settings with the fields `value` and optionally the boolean `required`.
* `annotation` has the fields `info`, `text` and `file`. `text` and `file` are mutually exclusive - `text` is text inline, `file` can be set to a text file that will be filled in. The annotation text will appear for example as a comment in VMware Fusion.
* `eula` also has the fields `info`, `text` and `file`. It contains the EULA agreement the user has to agree to when deploying the VM.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/ova-compose/ova-compose.py new/open-vmdk-0.3.6.0/ova-compose/ova-compose.py
--- old/open-vmdk-0.3.1.0/ova-compose/ova-compose.py 2023-07-25 23:40:09.000000000 +0200
+++ new/open-vmdk-0.3.6.0/ova-compose/ova-compose.py 2023-11-14 19:12:25.000000000 +0100
@@ -532,7 +532,7 @@
def __init__(self, path):
- self.id = f"vmdisk{OVFFile.next_id}"
+ self.id = f"vmdisk{OVFDisk.next_id}"
OVFDisk.next_id += 1
self.file = OVFFile(path)
@@ -558,7 +558,7 @@
class OVFEmptyDisk(OVFDisk):
def __init__(self, capacity, units="MB"):
- self.id = f"vmdisk{OVFFile.next_id}"
+ self.id = f"vmdisk{OVFDisk.next_id}"
OVFDisk.next_id += 1
self.capacity = capacity
if units == "KB":
@@ -585,6 +585,51 @@
return ''.join(x.title() for x in snake_str.split('_'))
+class OVFProperty(object):
+
+ def __init__(self, key, type,
+ password = False,
+ value=None,
+ user_configurable=False, qualifiers=None,
+ label=None, description=None, category=None):
+ self.key = key
+ self.type = type
+ self.password = False
+ self.value = value
+ self.user_configurable = user_configurable
+ self.qualifiers = qualifiers
+ self.label = label
+ self.description = description
+ self.category = category
+
+
+ @classmethod
+ def from_dict(cls, key, type, d):
+ item = cls(key, type, **d)
+ return item
+
+
+ def xml_item(self):
+ xml_attrs = {
+ '{%s}key' % NS_OVF: self.key,
+ '{%s}type' % NS_OVF: self.type
+ }
+ if self.value is not None:
+ xml_attrs['{%s}value' % NS_OVF] = str(self.value)
+ if self.qualifiers is not None:
+ xml_attrs['{%s}qualifiers' % NS_OVF] = self.qualifiers
+ if self.user_configurable:
+ xml_attrs['{%s}userConfigurable' % NS_OVF] = "true"
+ if self.password:
+ xml_attrs['{%s}password' % NS_OVF] = "true"
+ xml_property = ET.Element('{%s}Property' % NS_OVF, xml_attrs)
+ if self.label is not None:
+ xml_property.append(xml_text_element('{%s}Label' % NS_OVF, self.label))
+ if self.description is not None:
+ xml_property.append(xml_text_element('{%s}Description' % NS_OVF, self.description))
+ return xml_property
+
+
class OVFProduct(object):
# snake case will be converted to camel case in XML
keys = ['info', 'product', 'vendor', 'version', 'full_version']
@@ -593,6 +638,20 @@
self.info = "Information about the installed software"
self.__dict__.update((k, v) for k, v in kwargs.items() if k in self.keys)
+ self.properties = []
+ if 'properties' in kwargs:
+ props = kwargs['properties']
+ for k, v in props.items():
+ self.properties.append(OVFProperty(k, **v))
+
+ self.transports = kwargs.get('transports', [])
+ self.categories = kwargs.get('categories', {})
+
+ # if a property references a non-existing category it will be dropped
+ for prop in self.properties:
+ assert prop.category is None or prop.category in self.categories,\
+ f"property '{prop.key}' references unknown category '{prop.category}'"
+
@classmethod
def from_dict(cls, d):
@@ -607,6 +666,18 @@
if hasattr(self, k) and getattr(self, k) is not None:
xml_name = to_camel_case(k)
xml_product.append(xml_text_element('{%s}%s' % (NS_OVF, xml_name), getattr(self, k)))
+
+ # append category-less properties first
+ for prop in self.properties:
+ if prop.category is None:
+ xml_product.append(prop.xml_item())
+ # then go through all categories, and append matching props
+ for cat_id, cat_name in self.categories.items():
+ xml_product.append(xml_text_element('{%s}Category' % NS_OVF, cat_name))
+ for prop in self.properties:
+ if prop.category == cat_id:
+ xml_product.append(prop.xml_item())
+
return xml_product
@@ -679,7 +750,7 @@
@classmethod
- def from_dict(cls, config):
+ def from_dict(cls, d):
item = cls(**d)
return item
@@ -694,6 +765,34 @@
return elem
+class VmwExtraConfigItem(object):
+
+ def __init__(self, key, value, required=None):
+ self.key = key
+ self.value = value
+ self.required = required
+
+
+ @classmethod
+ def from_dict(cls, d):
+ item = cls(**d)
+ return item
+
+
+ def xml_item(self):
+ value = self.value
+ if type(value) is bool:
+ value = "true" if value else "false"
+ elif type(value) is not str:
+ value = str(value)
+
+ attrs = {'{%s}key' % NS_VMW: self.key, '{%s}value' % NS_VMW: value}
+ if self.required is not None:
+ attrs['{%s}required' % NS_VMW] = "true" if self.required else "false"
+ elem = ET.Element('{%s}ExtraConfig' % NS_VMW, attrs)
+ return elem
+
+
class OVF(object):
CONFIG_DEFAULTS = {
@@ -722,10 +821,13 @@
def __init__(self,
system, files, disks,
- networks, vssd_system, rasd_items,
+ networks,
+ vssd_system, rasd_items, extra_configs,
product, annotation, eula,
configurations):
- self.hardware_config = OVF.CONFIG_DEFAULTS.copy()
+ self.hardware_config = {}
+ if not system.get('no_default_configs', False):
+ self.hardware_config.update(OVF.CONFIG_DEFAULTS)
self.name = system['name']
self.os_cim = system.get('os_cim', 100)
self.os_vmw = system.get('os_vmw', "other4xLinux64Guest")
@@ -742,6 +844,7 @@
self.networks = networks
self.vssd_system = vssd_system
self.rasd_items = rasd_items
+ self.extra_configs = extra_configs
self.product = product
self.annotation = annotation
self.eula = eula
@@ -764,6 +867,8 @@
annotation = None
eula = None
+ assert 'hardware' in config, "config needs a 'hardware' section"
+
hardware = config['hardware']
for hw_id, hw in hardware.items():
if isinstance(hw, dict):
@@ -782,25 +887,41 @@
hw['disk'] = disk
networks = {}
- for nw_id, nw in config['networks'].items():
- network = OVFNetwork.from_dict(nw)
- networks[nw_id] = network
+ if 'networks' in config:
+ for nw_id, nw in config['networks'].items():
+ network = OVFNetwork.from_dict(nw)
+ networks[nw_id] = network
vssd_system = VssdSystem.from_dict(config)
rasd_items = cls.rasd_items_from_dict(config)
+ extra_configs = cls.vmw_extra_config_items_from_dict(config)
+
+ # we want properties in their own section ('environment')
+ # but in OVF they are part of the ProductSection, so copy it
+ if 'environment' in config:
+ env = config['environment']
+ if 'product' not in config:
+ config['product'] = {}
+ for cfg in ['transports', 'properties', 'categories']:
+ if cfg in env:
+ config['product'][cfg] = env[cfg]
+
if 'product' in config:
product = OVFProduct.from_dict(config['product'])
+
if 'annotation' in config:
annotation = OVFAnnotation.from_dict(config['annotation'])
+
if 'eula' in config:
eula = OVFEula.from_dict(config['eula'])
+
configurations = {}
if 'configurations' in config:
for k, v in config['configurations'].items():
configurations[k] = OVFConfiguration(k, **v)
ovf = cls(config['system'], files, disks,
- networks, vssd_system, rasd_items,
+ networks, vssd_system, rasd_items, extra_configs,
product, annotation, eula,
configurations)
@@ -830,6 +951,19 @@
return rasd_items
+ @classmethod
+ def vmw_extra_config_items_from_dict(cls, config):
+ xtra_cfgs = []
+ xconfigs = config.get('extra_configs', None)
+ if xconfigs is None:
+ return []
+ for key, cfg in xconfigs.items():
+ cfg['key'] = key
+ xtra_cfg_item = VmwExtraConfigItem.from_dict(cfg)
+ xtra_cfgs.append(xtra_cfg_item)
+ return xtra_cfgs
+
+
def connect(self):
for hw_id, rasd_item in self.rasd_items.items():
rasd_item.connect(self)
@@ -882,7 +1016,13 @@
oss.append(xml_text_element('{%s}Info' % NS_OVF, "Operating System"))
virtual_system.append(oss)
- hw = ET.Element('{%s}VirtualHardwareSection' % NS_OVF)
+ if self.product and self.product.transports:
+ transports = " ".join(self.product.transports)
+ hw_attrs = {'{%s}transport' % NS_OVF: transports}
+ else:
+ hw_attrs = None
+ hw = ET.Element('{%s}VirtualHardwareSection' % NS_OVF, hw_attrs)
+
hw.append(xml_text_element('{%s}Info' % NS_OVF, "Virtual Hardware"))
virtual_system.append(hw)
@@ -893,6 +1033,9 @@
xml_item[:] = sorted(xml_item, key=lambda child: child.tag)
hw.append(xml_item)
+ for xcfg in self.extra_configs:
+ hw.append(xcfg.xml_item())
+
for key, val in sorted(self.hardware_config.items()):
hw.append(xml_config(key, val))
@@ -933,13 +1076,14 @@
@staticmethod
- def _get_sha512(filename):
+ def _get_hash(filename, hash_type):
+ hash = hashlib.new(hash_type)
with open(filename, "rb") as f:
- hash = hashlib.sha512(f.read()).hexdigest();
- return hash
+ hash.update(f.read())
+ return hash.hexdigest()
- def write_manifest(self, ovf_file=None, mf_file=None):
+ def write_manifest(self, ovf_file=None, mf_file=None, hash_type="sha512"):
if ovf_file == None:
ovf_file = f"{self.name}.ovf"
if mf_file == None:
@@ -950,9 +1094,9 @@
filenames.append(file.path)
with open(mf_file, "wt") as f:
for fname in filenames:
- hash = OVF._get_sha512(fname)
+ hash = OVF._get_hash(fname, hash_type)
fname = os.path.basename(fname)
- f.write(f"SHA512({fname})= {hash}\n")
+ f.write(f"{hash_type.upper()}({fname})= {hash}\n")
def usage():
@@ -963,6 +1107,7 @@
print(" -o, --output-file <file> output file or directory name")
print(" -f, --format ova|ovf|dir output format")
print(" -m, --manifest create manifest file along with ovf (default true for output formats ova and dir)")
+ print(" --checksum-type sha256|sha512 set the checksum type for the manifest. Must be sha256 or sha512.")
print(" -q quiet mode")
print(" -h print help")
print("")
@@ -985,7 +1130,7 @@
assert type(key) is str, f"param name must be a string"
if '=' in key:
- key, default = [t.strip() for t in key.split('=')]
+ key, default = [t.strip() for t in key.split('=', maxsplit=1)]
default = yaml.safe_load(default)
value = params.get(key, default)
@@ -1002,9 +1147,10 @@
do_quiet = False
do_manifest = False
params = {}
+ checksum_type = "sha512"
try:
- opts, args = getopt.getopt(sys.argv[1:], 'f:hi:mo:q', longopts=['format=', 'input-file=', 'manifest', 'output-file=', 'param='])
+ opts, args = getopt.getopt(sys.argv[1:], 'f:hi:mo:q', longopts=['format=', 'input-file=', 'manifest', 'output-file=', 'param=', 'checksum-type='])
except:
print ("invalid option")
sys.exit(2)
@@ -1018,8 +1164,10 @@
output_format = a
elif o in ['-m', '--manifest']:
do_manifest = True
+ elif o in ['--checksum-type']:
+ checksum_type = a
elif o in ['--param']:
- k,v = a.split('=')
+ k,v = a.split('=', maxsplit=1)
params[k] = yaml.safe_load(v)
elif o in ['-q']:
do_quiet = True
@@ -1032,6 +1180,8 @@
assert config_file != None, "no input file specified"
assert output_file != None, "no output file/directory specified"
+ assert checksum_type in ["sha512", "sha256"], f"checksum-type '{checksum_type}' is invalid"
+
if config_file != None:
f = open(config_file, 'r')
@@ -1069,7 +1219,7 @@
ovf_file = output_file
ovf.write_xml(ovf_file=ovf_file)
if do_manifest:
- ovf.write_manifest(ovf_file=ovf_file, mf_file=mf_file)
+ ovf.write_manifest(ovf_file=ovf_file, mf_file=mf_file, hash_type=checksum_type)
elif output_format == "ova" or output_format == "dir":
pwd = os.getcwd()
tmpdir = tempfile.mkdtemp(prefix=f"{basename}-", dir=pwd)
@@ -1084,7 +1234,7 @@
os.symlink(os.path.join(pwd, file.path), dst)
all_files.append(dst)
- ovf.write_manifest(ovf_file=ovf_file, mf_file=mf_file)
+ ovf.write_manifest(ovf_file=ovf_file, mf_file=mf_file, hash_type=checksum_type)
if output_format == "ova":
ret = subprocess.check_call(["tar", "--format=ustar", "-h",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/configs/basic.yaml new/open-vmdk-0.3.6.0/pytest/configs/basic.yaml
--- old/open-vmdk-0.3.1.0/pytest/configs/basic.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/configs/basic.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,34 @@
+system:
+ name: minimal
+ type: vmx-14 vmx-20
+ os_vmw: vmw.vmwarePhoton64Guest
+
+networks:
+ vm_network:
+ name: "None"
+ description: "The None network"
+
+hardware:
+ cpus: 2
+ memory:
+ type: memory
+ size: 4096
+ sata1:
+ type: sata_controller
+ cdrom1:
+ type: cd_drive
+ parent: sata1
+ rootdisk:
+ type: hard_disk
+ parent: sata1
+ disk_image: dummy.vmdk
+ usb1:
+ type: usb_controller
+ ethernet1:
+ type: ethernet
+ subtype: VmxNet3
+ network: vm_network
+ videocard1:
+ type: video_card
+ vmci1:
+ type: vmci
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/configs/basic_no_network.yaml new/open-vmdk-0.3.6.0/pytest/configs/basic_no_network.yaml
--- old/open-vmdk-0.3.1.0/pytest/configs/basic_no_network.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/configs/basic_no_network.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,25 @@
+system:
+ name: minimal
+ type: vmx-14 vmx-20
+ os_vmw: vmwarePhoton64Guest
+
+hardware:
+ cpus: 2
+ memory:
+ type: memory
+ size: 4096
+ sata1:
+ type: sata_controller
+ cdrom1:
+ type: cd_drive
+ parent: sata1
+ rootdisk:
+ type: hard_disk
+ parent: sata1
+ disk_image: dummy.vmdk
+ usb1:
+ type: usb_controller
+ videocard1:
+ type: video_card
+ vmci1:
+ type: vmci
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/configs/configuration.yaml new/open-vmdk-0.3.6.0/pytest/configs/configuration.yaml
--- old/open-vmdk-0.3.1.0/pytest/configs/configuration.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/configs/configuration.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,70 @@
+system:
+ name: minimal
+ type: vmx-14 vmx-20
+ os_vmw: vmwarePhoton64Guest
+ default_configuration: grande
+
+networks:
+ vm_network:
+ name: "None"
+ description: "The None network"
+
+hardware:
+ cpus: 2
+ memory_tall:
+ type: memory
+ size: 2048
+ configuration: tall
+ memory_grande:
+ type: memory
+ size: 4096
+ configuration: grande
+ memory_venti:
+ type: memory
+ size: 8192
+ configuration: venti
+ sata1:
+ type: sata_controller
+ cdrom1:
+ type: cd_drive
+ parent: sata1
+ rootdisk:
+ type: hard_disk
+ parent: sata1
+ disk_image: dummy.vmdk
+ homedisk_tall:
+ type: hard_disk
+ parent: sata1
+ disk_capacity: 10000
+ configuration: tall
+ homedisk_grande:
+ type: hard_disk
+ parent: sata1
+ disk_capacity: 20000
+ configuration: grande
+ homedisk_venti:
+ type: hard_disk
+ parent: sata1
+ disk_capacity: 40000
+ configuration: venti
+ usb1:
+ type: usb_controller
+ ethernet1:
+ type: ethernet
+ subtype: VmxNet3
+ network: vm_network
+ videocard1:
+ type: video_card
+ vmci1:
+ type: vmci
+
+configurations:
+ tall:
+ label: Tall
+ description: too little for the money
+ grande:
+ label: Grande
+ description: just right
+ venti:
+ label: Venti
+ description: too much
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/configs/environment.yaml new/open-vmdk-0.3.6.0/pytest/configs/environment.yaml
--- old/open-vmdk-0.3.1.0/pytest/configs/environment.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/configs/environment.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,56 @@
+system:
+ name: minimal
+ type: vmx-14 vmx-20
+ os_vmw: vmwarePhoton64Guest
+
+networks:
+ vm_network:
+ name: "None"
+ description: "The None network"
+
+hardware:
+ cpus: 2
+ memory:
+ type: memory
+ size: 4096
+ sata1:
+ type: sata_controller
+ cdrom1:
+ type: cd_drive
+ parent: sata1
+ rootdisk:
+ type: hard_disk
+ parent: sata1
+ disk_image: dummy.vmdk
+ usb1:
+ type: usb_controller
+ ethernet1:
+ type: ethernet
+ subtype: VmxNet3
+ network: vm_network
+ videocard1:
+ type: video_card
+ vmci1:
+ type: vmci
+
+environment:
+ transports:
+ - iso
+ - com.vmware.guestInfo
+ categories:
+ some: Some Properties
+ properties:
+ prop.int:
+ user_configurable: true
+ type: uint16
+ value: '50000'
+ description: "an unsigned integer"
+ label: "integer"
+ category: some
+ prop.string:
+ user_configurable: true
+ type: string
+ value: 'a string'
+ description: "a string, yo"
+ label: "string"
+ category: some
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/configs/extra_configs.yaml new/open-vmdk-0.3.6.0/pytest/configs/extra_configs.yaml
--- old/open-vmdk-0.3.1.0/pytest/configs/extra_configs.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/configs/extra_configs.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,51 @@
+system:
+ name: minimal
+ type: vmx-14 vmx-20
+ os_vmw: vmwarePhoton64Guest
+
+networks:
+ vm_network:
+ name: "None"
+ description: "The None network"
+
+hardware:
+ cpus: 2
+ memory:
+ type: memory
+ size: 4096
+ sata1:
+ type: sata_controller
+ cdrom1:
+ type: cd_drive
+ parent: sata1
+ rootdisk:
+ type: hard_disk
+ parent: sata1
+ disk_image: dummy.vmdk
+ usb1:
+ type: usb_controller
+ ethernet1:
+ type: ethernet
+ subtype: VmxNet3
+ network: vm_network
+ videocard1:
+ type: video_card
+ vmci1:
+ type: vmci
+
+extra_configs:
+ type.boolean:
+ required: false
+ value: true
+ type.int:
+ value: 2048000
+ type.string:
+ value: "foo bar"
+ is_required:
+ value: 1
+ required: true
+ not_required:
+ value: 2
+ required: false
+ no_required:
+ value: 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/configs/product.yaml new/open-vmdk-0.3.6.0/pytest/configs/product.yaml
--- old/open-vmdk-0.3.1.0/pytest/configs/product.yaml 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/configs/product.yaml 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,38 @@
+system:
+ name: minimal
+ type: vmx-14 vmx-20
+ os_vmw: vmwarePhoton64Guest
+
+networks:
+ vm_network:
+ name: "None"
+ description: "The None network"
+
+hardware:
+ cpus: 2
+ memory:
+ type: memory
+ size: 4096
+ sata1:
+ type: sata_controller
+ cdrom1:
+ type: cd_drive
+ parent: sata1
+ rootdisk:
+ type: hard_disk
+ parent: sata1
+ disk_image: dummy.vmdk
+ usb1:
+ type: usb_controller
+ ethernet1:
+ type: ethernet
+ subtype: VmxNet3
+ network: vm_network
+ videocard1:
+ type: video_card
+ vmci1:
+ type: vmci
+
+product:
+ product: An Example VM
+ vendor: A Company Inc.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/test_configs.py new/open-vmdk-0.3.6.0/pytest/test_configs.py
--- old/open-vmdk-0.3.1.0/pytest/test_configs.py 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/test_configs.py 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,76 @@
+# Copyright (c) 2023 VMware, Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the “License”); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software distributed
+# under the License is distributed on an “AS IS” BASIS, without warranties or
+# conditions of any kind, EITHER EXPRESS OR IMPLIED. See the License for the
+# specific language governing permissions and limitations under the License.
+
+import glob
+import os
+import pytest
+import shutil
+import subprocess
+import yaml
+import xmltodict
+
+
+THIS_DIR = os.path.dirname(os.path.abspath(__file__))
+OVA_COMPOSE = os.path.join(THIS_DIR, "..", "ova-compose", "ova-compose.py")
+
+VMDK_CONVERT=os.path.join(THIS_DIR, "..", "build", "vmdk", "vmdk-convert")
+
+CONFIG_DIR=os.path.join(THIS_DIR, "configs")
+
+WORK_DIR=os.path.join(os.getcwd(), "pytest-tmp")
+
+
+(a)pytest.fixture(scope='module', autouse=True)
+def setup_test():
+ os.makedirs(WORK_DIR, exist_ok=True)
+
+ process = subprocess.run(["dd", "if=/dev/zero", "of=dummy.img", "bs=1024", "count=1024"], cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ process = subprocess.run([VMDK_CONVERT, "dummy.img", "dummy.vmdk"], cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ yield
+ shutil.rmtree(WORK_DIR)
+
+
+(a)pytest.mark.parametrize("in_yaml", glob.glob(os.path.join(CONFIG_DIR, "*.yaml")))
+def test_configs(in_yaml):
+ basename = os.path.basename(in_yaml.rsplit(".", 1)[0])
+ out_ovf = os.path.join(WORK_DIR, f"{basename}.ovf")
+
+ process = subprocess.run([OVA_COMPOSE, "-i", in_yaml, "-o", out_ovf], cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ with open(in_yaml) as f:
+ yaml_loader = yaml.SafeLoader
+ config = yaml.load(f, Loader=yaml_loader)
+
+ with open(out_ovf) as f:
+ ovf = xmltodict.parse(f.read())
+
+ cfg_system = config['system']
+ assert cfg_system['name'] == ovf['ovf:Envelope']['ovf:VirtualSystem']['ovf:Name']
+ assert cfg_system['os_vmw'] == ovf['ovf:Envelope']['ovf:VirtualSystem']['ovf:OperatingSystemSection']['@vmw:osType']
+ assert cfg_system['type'] == ovf['ovf:Envelope']['ovf:VirtualSystem']['ovf:VirtualHardwareSection']['ovf:System']['vssd:VirtualSystemType']
+
+ vmw_configs = ovf['ovf:Envelope']['ovf:VirtualSystem']['ovf:VirtualHardwareSection']['vmw:Config']
+
+ # TODO: check if default is set to bios unless no_default_configs is set
+ if 'firmware' in cfg_system:
+ firmware = None
+ if type(vmw_configs) == list:
+ for vmw_config in vmw_configs:
+ if vmw_config['@vmw:key'] == "firmware":
+ firmware = vmw_config['@vmw:value']
+ assert cfg_system['firmware'] == firmware
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/pytest/test_manifest.py new/open-vmdk-0.3.6.0/pytest/test_manifest.py
--- old/open-vmdk-0.3.1.0/pytest/test_manifest.py 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/pytest/test_manifest.py 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,115 @@
+# Copyright (c) 2023 VMware, Inc. All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the “License”); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software distributed
+# under the License is distributed on an “AS IS” BASIS, without warranties or
+# conditions of any kind, EITHER EXPRESS OR IMPLIED. See the License for the
+# specific language governing permissions and limitations under the License.
+
+import glob
+import hashlib
+import os
+import pytest
+import shutil
+import subprocess
+import yaml
+import xmltodict
+
+
+THIS_DIR = os.path.dirname(os.path.abspath(__file__))
+OVA_COMPOSE = os.path.join(THIS_DIR, "..", "ova-compose", "ova-compose.py")
+
+VMDK_CONVERT=os.path.join(THIS_DIR, "..", "build", "vmdk", "vmdk-convert")
+
+CONFIG_DIR=os.path.join(THIS_DIR, "configs")
+
+WORK_DIR=os.path.join(os.getcwd(), "pytest-tmp")
+
+
+(a)pytest.fixture(scope='module', autouse=True)
+def setup_test():
+ os.makedirs(WORK_DIR, exist_ok=True)
+
+ process = subprocess.run(["dd", "if=/dev/zero", "of=dummy.img", "bs=1024", "count=1024"], cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ process = subprocess.run([VMDK_CONVERT, "dummy.img", "dummy.vmdk"], cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ yield
+ shutil.rmtree(WORK_DIR)
+
+
+def check_mf(mf_path, hash_type, work_dir=WORK_DIR):
+ with open(mf_path, "rt") as f:
+ for line in f:
+ left, hash_mf = line.split("=")
+ hash_mf = hash_mf.strip()
+
+ assert left.startswith(hash_type.upper())
+
+ filename = left[len(hash_type):].strip("()")
+ hash = hashlib.new(hash_type)
+ with open(os.path.join(work_dir, filename), "rb") as f:
+ hash.update(f.read())
+
+ assert hash.hexdigest() == hash_mf
+
+
+(a)pytest.mark.parametrize("hash_type", [None, "sha256", "sha512"])
+def test_ovf_manifest(hash_type):
+ in_yaml = os.path.join(CONFIG_DIR, "basic.yaml")
+ basename = os.path.basename(in_yaml.rsplit(".", 1)[0])
+ out_ovf = os.path.join(WORK_DIR, f"{basename}.ovf")
+ out_mf = os.path.join(WORK_DIR, f"{basename}.mf")
+
+ args = [OVA_COMPOSE, "-i", in_yaml, "-o", out_ovf, "-m"]
+ if hash_type is not None:
+ args += ["--checksum-type", hash_type]
+ else:
+ hash_type = "sha512"
+
+ process = subprocess.run(args, cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ assert os.path.isfile(out_mf)
+
+ check_mf(out_mf, hash_type)
+
+
+(a)pytest.mark.parametrize("hash_type", [None, "sha256", "sha512"])
+def test_ova_manifest(hash_type):
+ in_yaml = os.path.join(CONFIG_DIR, "basic.yaml")
+ basename = os.path.basename(in_yaml.rsplit(".", 1)[0])
+ out_ova = os.path.join(WORK_DIR, f"{basename}.ova")
+ out_mf = os.path.join(WORK_DIR, f"{basename}.mf")
+
+ args = [OVA_COMPOSE, "-i", in_yaml, "-o", out_ova]
+ if hash_type is not None:
+ args += ["--checksum-type", hash_type]
+ else:
+ hash_type = "sha512"
+
+ process = subprocess.run(args, cwd=WORK_DIR)
+ assert process.returncode == 0
+
+ subprocess.run(["tar", "xf", out_ova], cwd=WORK_DIR)
+
+ check_mf(out_mf, hash_type)
+
+
+def test_manifest_invalid_checksum_type():
+ in_yaml = os.path.join(CONFIG_DIR, "basic.yaml")
+ basename = os.path.basename(in_yaml.rsplit(".", 1)[0])
+ out_ovf = os.path.join(WORK_DIR, f"{basename}.ovf")
+ out_mf = os.path.join(WORK_DIR, f"{basename}.mf")
+
+ args = [OVA_COMPOSE, "-i", in_yaml, "-o", out_ovf, "-m", "--checksum-type", "foobar"]
+ process = subprocess.run(args, cwd=WORK_DIR)
+ assert process.returncode != 0
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vmdk-0.3.1.0/templates/template-hw21.ovf new/open-vmdk-0.3.6.0/templates/template-hw21.ovf
--- old/open-vmdk-0.3.1.0/templates/template-hw21.ovf 1970-01-01 01:00:00.000000000 +0100
+++ new/open-vmdk-0.3.6.0/templates/template-hw21.ovf 2023-11-14 19:12:25.000000000 +0100
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2023 VMware, Inc. All Rights Reserved.
+
+ Licensed under the Apache License, Version 2.0 (the “License”); you may not
+ use this file except in compliance with the License. You may obtain a copy of
+ the License at:
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software distributed
+ under the License is distributed on an “AS IS” BASIS, without warranties or
+ conditions of any kind, EITHER EXPRESS OR IMPLIED. See the License for the
+ specific language governing permissions and limitations under the License.
+-->
+<Envelope xmlns="http://schemas.dmtf.org/ovf/envelope/1" xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSet…" xmlns:vmw="http://www.vmware.com/schema/ovf" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingD…" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <References>
+ <File ovf:href="@@NAME@@-disk1.vmdk" ovf:id="file1" ovf:size="@@VMDK_FILE_SIZE@@"/>
+ </References>
+ <DiskSection>
+ <Info>Virtual disk information</Info>
+ <Disk ovf:capacity="@@VMDK_CAPACITY@@" ovf:capacityAllocationUnits="byte" ovf:diskId="vmdisk1" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized"/>
+ </DiskSection>
+ <NetworkSection>
+ <Info>The list of logical networks</Info>
+ <Network ovf:name="VM Network">
+ <Description>The VM Network network</Description>
+ </Network>
+ </NetworkSection>
+ <VirtualSystem ovf:id="@@NAME@@">
+ <Info>A virtual machine</Info>
+ <Name>@@NAME@@</Name>
+ <OperatingSystemSection ovf:id="1" vmw:osType="other4xLinux64Guest">
+ <Info>The kind of installed guest operating system</Info>
+ </OperatingSystemSection>
+ <VirtualHardwareSection>
+ <Info>Virtual hardware requirements</Info>
+ <System>
+ <vssd:ElementName>Virtual Hardware Family</vssd:ElementName>
+ <vssd:InstanceID>0</vssd:InstanceID>
+ <vssd:VirtualSystemIdentifier>@@NAME@@</vssd:VirtualSystemIdentifier>
+ <vssd:VirtualSystemType>vmx-21</vssd:VirtualSystemType>
+ </System>
+ <Item>
+ <rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>
+ <rasd:Description>Number of Virtual CPUs</rasd:Description>
+ <rasd:ElementName>@@NUM_CPUS@@ virtual CPU(s)</rasd:ElementName>
+ <rasd:InstanceID>1</rasd:InstanceID>
+ <rasd:ResourceType>3</rasd:ResourceType>
+ <rasd:VirtualQuantity>@@NUM_CPUS@@</rasd:VirtualQuantity>
+ </Item>
+ <Item>
+ <rasd:AllocationUnits>byte * 2^20</rasd:AllocationUnits>
+ <rasd:Description>Memory Size</rasd:Description>
+ <rasd:ElementName>@@MEM_SIZE@@MB of memory</rasd:ElementName>
+ <rasd:InstanceID>2</rasd:InstanceID>
+ <rasd:ResourceType>4</rasd:ResourceType>
+ <rasd:VirtualQuantity>@@MEM_SIZE@@</rasd:VirtualQuantity>
+ </Item>
+ <Item>
+ <rasd:Address>0</rasd:Address>
+ <rasd:Description>SCSI Controller</rasd:Description>
+ <rasd:ElementName>SCSI controller 0</rasd:ElementName>
+ <rasd:InstanceID>3</rasd:InstanceID>
+ <rasd:ResourceSubType>VirtualSCSI</rasd:ResourceSubType>
+ <rasd:ResourceType>6</rasd:ResourceType>
+ </Item>
+ <Item>
+ <rasd:Address>1</rasd:Address>
+ <rasd:Description>IDE Controller</rasd:Description>
+ <rasd:ElementName>IDE 1</rasd:ElementName>
+ <rasd:InstanceID>4</rasd:InstanceID>
+ <rasd:ResourceType>5</rasd:ResourceType>
+ </Item>
+ <Item>
+ <rasd:Address>0</rasd:Address>
+ <rasd:Description>IDE Controller</rasd:Description>
+ <rasd:ElementName>IDE 0</rasd:ElementName>
+ <rasd:InstanceID>5</rasd:InstanceID>
+ <rasd:ResourceType>5</rasd:ResourceType>
+ </Item>
+ <Item ovf:required="false">
+ <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+ <rasd:ElementName>Video card</rasd:ElementName>
+ <rasd:InstanceID>6</rasd:InstanceID>
+ <rasd:ResourceType>24</rasd:ResourceType>
+ <vmw:Config ovf:required="false" vmw:key="useAutoDetect" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="videoRamSizeInKB" vmw:value="4096"/>
+ <vmw:Config ovf:required="false" vmw:key="enable3DSupport" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="use3dRenderer" vmw:value="automatic"/>
+ <vmw:Config ovf:required="false" vmw:key="graphicsMemorySizeInKB" vmw:value="262144"/>
+ </Item>
+ <Item ovf:required="false">
+ <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+ <rasd:ElementName>VMCI device</rasd:ElementName>
+ <rasd:InstanceID>7</rasd:InstanceID>
+ <rasd:ResourceSubType>vmware.vmci</rasd:ResourceSubType>
+ <rasd:ResourceType>1</rasd:ResourceType>
+ <vmw:Config ovf:required="false" vmw:key="allowUnrestrictedCommunication" vmw:value="false"/>
+ </Item>
+ <Item ovf:required="false">
+ <rasd:AddressOnParent>0</rasd:AddressOnParent>
+ <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
+ <rasd:ElementName>CD/DVD drive 1</rasd:ElementName>
+ <rasd:InstanceID>8</rasd:InstanceID>
+ <rasd:Parent>5</rasd:Parent>
+ <rasd:ResourceSubType>vmware.cdrom.remotepassthrough</rasd:ResourceSubType>
+ <rasd:ResourceType>15</rasd:ResourceType>
+ <vmw:Config ovf:required="false" vmw:key="backing.exclusive" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="connectable.allowGuestControl" vmw:value="true"/>
+ </Item>
+ <Item>
+ <rasd:AddressOnParent>0</rasd:AddressOnParent>
+ <rasd:ElementName>Hard disk 1</rasd:ElementName>
+ <rasd:HostResource>ovf:/disk/vmdisk1</rasd:HostResource>
+ <rasd:InstanceID>9</rasd:InstanceID>
+ <rasd:Parent>3</rasd:Parent>
+ <rasd:ResourceType>17</rasd:ResourceType>
+ <vmw:Config ovf:required="false" vmw:key="backing.writeThrough" vmw:value="false"/>
+ </Item>
+ <Item>
+ <rasd:AddressOnParent>7</rasd:AddressOnParent>
+ <rasd:AutomaticAllocation>true</rasd:AutomaticAllocation>
+ <rasd:Connection>VM Network</rasd:Connection>
+ <rasd:Description>VmxNet3 ethernet adapter on "VM Network"</rasd:Description>
+ <rasd:ElementName>Network adapter 1</rasd:ElementName>
+ <rasd:InstanceID>10</rasd:InstanceID>
+ <rasd:ResourceSubType>VmxNet3</rasd:ResourceSubType>
+ <rasd:ResourceType>10</rasd:ResourceType>
+ <vmw:Config ovf:required="false" vmw:key="wakeOnLanEnabled" vmw:value="true"/>
+ <vmw:Config ovf:required="false" vmw:key="connectable.allowGuestControl" vmw:value="true"/>
+ </Item>
+ <vmw:Config ovf:required="false" vmw:key="cpuHotAddEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="cpuHotRemoveEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="memoryHotAddEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="firmware" vmw:value="@@FIRMWARE@@"/>
+ <vmw:Config ovf:required="false" vmw:key="tools.syncTimeWithHost" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="tools.afterPowerOn" vmw:value="true"/>
+ <vmw:Config ovf:required="false" vmw:key="tools.afterResume" vmw:value="true"/>
+ <vmw:Config ovf:required="false" vmw:key="tools.beforeGuestShutdown" vmw:value="true"/>
+ <vmw:Config ovf:required="false" vmw:key="tools.beforeGuestStandby" vmw:value="true"/>
+ <vmw:Config ovf:required="false" vmw:key="tools.toolsUpgradePolicy" vmw:value="manual"/>
+ <vmw:Config ovf:required="false" vmw:key="powerOpInfo.powerOffType" vmw:value="soft"/>
+ <vmw:Config ovf:required="false" vmw:key="powerOpInfo.resetType" vmw:value="soft"/>
+ <vmw:Config ovf:required="false" vmw:key="powerOpInfo.suspendType" vmw:value="hard"/>
+ <vmw:Config ovf:required="false" vmw:key="nestedHVEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="vPMCEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="virtualICH7MPresent" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="virtualSMCPresent" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="flags.vvtdEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="flags.vbsEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="bootOptions.efiSecureBootEnabled" vmw:value="false"/>
+ <vmw:Config ovf:required="false" vmw:key="powerOpInfo.standbyAction" vmw:value="checkpoint"/>
+ </VirtualHardwareSection>
+ </VirtualSystem>
+</Envelope>
++++++ open-vmdk.obsinfo ++++++
--- /var/tmp/diff_new_pack.OUKgGK/_old 2023-12-18 22:57:29.603018296 +0100
+++ /var/tmp/diff_new_pack.OUKgGK/_new 2023-12-18 22:57:29.603018296 +0100
@@ -1,5 +1,5 @@
name: open-vmdk
-version: 0.3.1.0
-mtime: 1690321209
-commit: 5afbfb5270099586b93e28ae7585f3c661f379b5
+version: 0.3.6.0
+mtime: 1699985545
+commit: ba658b05c4bf95631e9b7ae55ce5bc248192b798
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rnnoise for openSUSE:Factory checked in at 2023-12-18 22:57:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rnnoise (Old)
and /work/SRC/openSUSE:Factory/.rnnoise.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rnnoise"
Mon Dec 18 22:57:15 2023 rev:2 rq:1133884 version:0.git20210312.7f449bf
Changes:
--------
--- /work/SRC/openSUSE:Factory/rnnoise/rnnoise.changes 2021-07-20 15:40:10.249548220 +0200
+++ /work/SRC/openSUSE:Factory/.rnnoise.new.9037/rnnoise.changes 2023-12-18 22:57:26.654910330 +0100
@@ -1,0 +2,15 @@
+Sat Dec 16 08:40:09 UTC 2023 - dead_mozay(a)opensuse.org
+
+- Update to version 0.git20210312.7f449bf:
+ * Add link to paper and demo to the README
+ * Correct #endif in rnn.h.
+ * Document the API
+ * Add rnnoise_get_frame_size()
+ * Drop unused arguments from README (#103)
+ * fix inclusion of rnnoise.h into C++ code
+ * Document in the README the authorative source for the code.
+ * docs: fix simple typo, delares -> declares
+ * rename TRAINING -> TRAINING-README for case insensitive file system
+ * Update celt_lpc.c
+
+-------------------------------------------------------------------
Old:
----
rnnoise-0.git20210122.1cbdbcf.obscpio
New:
----
rnnoise-0.git20210312.7f449bf.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rnnoise.spec ++++++
--- /var/tmp/diff_new_pack.W5oMtG/_old 2023-12-18 22:57:27.818952959 +0100
+++ /var/tmp/diff_new_pack.W5oMtG/_new 2023-12-18 22:57:27.818952959 +0100
@@ -1,7 +1,7 @@
#
# spec file for package rnnoise
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,11 +18,11 @@
%define libname librnnoise0
Name: rnnoise
-Version: 0.git20210122.1cbdbcf
+Version: 0.git20210312.7f449bf
Release: 0
Summary: Recurrent neural network for audio noise reduction
License: BSD-3-Clause
-URL: https://github.com/xiph/rnnoise
+URL: https://gitlab.xiph.org/xiph/rnnoise
Source: %{name}-%{version}.tar.gz
BuildRequires: autoconf
BuildRequires: automake
@@ -68,9 +68,9 @@
%postun -n %{libname} -p /sbin/ldconfig
%files -n %{libname}
-%doc AUTHORS README TRAINING-README
+%doc README TRAINING-README
%license COPYING
-%{_libdir}/librnnoise.so.*
+%{_libdir}/librnnoise.so.0*
%files devel
%{_includedir}/rnnoise.h
++++++ _service ++++++
--- /var/tmp/diff_new_pack.W5oMtG/_old 2023-12-18 22:57:27.846953985 +0100
+++ /var/tmp/diff_new_pack.W5oMtG/_new 2023-12-18 22:57:27.850954132 +0100
@@ -1,8 +1,8 @@
<?xml version="1.0"?>
<services>
- <service name="obs_scm" mode="disabled">
+ <service name="obs_scm" mode="manual">
<param name="filename">rnnoise</param>
- <param name="url">https://github.com/xiph/rnnoise.git</param>
+ <param name="url">https://gitlab.xiph.org/xiph/rnnoise.git</param>
<param name="scm">git</param>
<param name="version">git-master</param>
<param name="versionformat">0.git%cd.%h</param>
@@ -10,7 +10,7 @@
<param name="changesgenerate">enable</param>
<param name="changesauthor">dead_mozay(a)opensuse.org</param>
</service>
- <service mode="disabled" name="set_version"/>
+ <service mode="manual" name="set_version"/>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
<param name="compression">gz</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.W5oMtG/_old 2023-12-18 22:57:27.870954864 +0100
+++ /var/tmp/diff_new_pack.W5oMtG/_new 2023-12-18 22:57:27.874955010 +0100
@@ -1,6 +1,8 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/xiph/rnnoise.git</param>
- <param name="changesrevision">1cbdbcf1283499bbb2230a6b0f126eb9b236defd</param></service></servicedata>
+ <param name="changesrevision">1cbdbcf1283499bbb2230a6b0f126eb9b236defd</param></service><service name="tar_scm">
+ <param name="url">https://gitlab.xiph.org/xiph/rnnoise.git</param>
+ <param name="changesrevision">7f449bf8bd3b933891d12c30112268c4090e4d59</param></service></servicedata>
(No newline at EOF)
++++++ rnnoise-0.git20210122.1cbdbcf.obscpio -> rnnoise-0.git20210312.7f449bf.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rnnoise-0.git20210122.1cbdbcf/README new/rnnoise-0.git20210312.7f449bf/README
--- old/rnnoise-0.git20210122.1cbdbcf/README 2021-01-22 21:44:33.000000000 +0100
+++ new/rnnoise-0.git20210312.7f449bf/README 2021-03-12 08:05:56.000000000 +0100
@@ -1,4 +1,12 @@
RNNoise is a noise suppression library based on a recurrent neural network.
+A description of the algorithm is provided in the following paper:
+
+J.-M. Valin, A Hybrid DSP/Deep Learning Approach to Real-Time Full-Band Speech
+Enhancement, Proceedings of IEEE Multimedia Signal Processing (MMSP) Workshop,
+arXiv:1709.08243, 2018.
+https://arxiv.org/pdf/1709.08243.pdf
+
+An interactive demo is available at: https://jmvalin.ca/demo/rnnoise/
To compile, just type:
% ./autogen.sh
++++++ rnnoise.obsinfo ++++++
--- /var/tmp/diff_new_pack.W5oMtG/_old 2023-12-18 22:57:28.014960138 +0100
+++ /var/tmp/diff_new_pack.W5oMtG/_new 2023-12-18 22:57:28.018960284 +0100
@@ -1,6 +1,5 @@
name: rnnoise
-version: 0.git20210122.1cbdbcf
-mtime: 1611348273
-commit: 1cbdbcf1283499bbb2230a6b0f126eb9b236defd
-
+version: 0.git20210312.7f449bf
+mtime: 1615532756
+commit: 7f449bf8bd3b933891d12c30112268c4090e4d59
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cilium-cli for openSUSE:Factory checked in at 2023-12-18 22:57:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cilium-cli (Old)
and /work/SRC/openSUSE:Factory/.cilium-cli.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cilium-cli"
Mon Dec 18 22:57:06 2023 rev:55 rq:1133881 version:0.15.19
Changes:
--------
--- /work/SRC/openSUSE:Factory/cilium-cli/cilium-cli.changes 2023-12-13 18:36:55.826767039 +0100
+++ /work/SRC/openSUSE:Factory/.cilium-cli.new.9037/cilium-cli.changes 2023-12-18 22:57:21.342715784 +0100
@@ -1,0 +2,14 @@
+Mon Dec 18 14:24:58 UTC 2023 - kastl(a)b1-systems.de
+
+- Update to version 0.15.19:
+ * Prepare for v0.15.19 release
+ * chore(deps): update docker.io/library/busybox:stable-glibc
+ * docker digest to ee22a58
+ * connectivity: Flag for expected XFRM errors
+ * connectivity, utils: Refactor computeExpectedDropReasons
+ * github: eks: bump timeout to 30m
+ * check: add third client scheduled on a different node
+ * Move perf tests to separate connectivity subcommand
+ * Update stable release to v0.15.18
+
+-------------------------------------------------------------------
Old:
----
cilium-cli-0.15.18.obscpio
New:
----
cilium-cli-0.15.19.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cilium-cli.spec ++++++
--- /var/tmp/diff_new_pack.IrwQul/_old 2023-12-18 22:57:24.086816280 +0100
+++ /var/tmp/diff_new_pack.IrwQul/_new 2023-12-18 22:57:24.090816426 +0100
@@ -19,7 +19,7 @@
%define __arch_install_post export NO_BRP_STRIP_DEBUG=true
Name: cilium-cli
-Version: 0.15.18
+Version: 0.15.19
Release: 0
Summary: CLI to install, manage & troubleshoot Kubernetes clusters running Cilium
License: Apache-2.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.IrwQul/_old 2023-12-18 22:57:24.122817598 +0100
+++ /var/tmp/diff_new_pack.IrwQul/_new 2023-12-18 22:57:24.122817598 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/cilium/cilium-cli</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">v0.15.18</param>
+ <param name="revision">v0.15.19</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="changesgenerate">enable</param>
<param name="versionrewrite-pattern">v(.*)</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.IrwQul/_old 2023-12-18 22:57:24.138818184 +0100
+++ /var/tmp/diff_new_pack.IrwQul/_new 2023-12-18 22:57:24.142818331 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/cilium/cilium-cli</param>
- <param name="changesrevision">301179b6b8fbac37e7181ca2e7179249a1c28267</param></service></servicedata>
+ <param name="changesrevision">32109b32259a487c803648a3c9463cdcafa4c0c3</param></service></servicedata>
(No newline at EOF)
++++++ cilium-cli-0.15.18.obscpio -> cilium-cli-0.15.19.obscpio ++++++
/work/SRC/openSUSE:Factory/cilium-cli/cilium-cli-0.15.18.obscpio /work/SRC/openSUSE:Factory/.cilium-cli.new.9037/cilium-cli-0.15.19.obscpio differ: char 49, line 1
++++++ cilium-cli.obsinfo ++++++
--- /var/tmp/diff_new_pack.IrwQul/_old 2023-12-18 22:57:24.182819796 +0100
+++ /var/tmp/diff_new_pack.IrwQul/_new 2023-12-18 22:57:24.186819942 +0100
@@ -1,5 +1,5 @@
name: cilium-cli
-version: 0.15.18
-mtime: 1702460256
-commit: 301179b6b8fbac37e7181ca2e7179249a1c28267
+version: 0.15.19
+mtime: 1702905553
+commit: 32109b32259a487c803648a3c9463cdcafa4c0c3
++++++ vendor.tar.gz ++++++
/work/SRC/openSUSE:Factory/cilium-cli/vendor.tar.gz /work/SRC/openSUSE:Factory/.cilium-cli.new.9037/vendor.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gh for openSUSE:Factory checked in at 2023-12-18 22:57:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gh (Old)
and /work/SRC/openSUSE:Factory/.gh.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gh"
Mon Dec 18 22:57:01 2023 rev:42 rq:1133869 version:2.40.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/gh/gh.changes 2023-12-14 22:03:39.513188335 +0100
+++ /work/SRC/openSUSE:Factory/.gh.new.9037/gh.changes 2023-12-18 22:57:10.594322152 +0100
@@ -1,0 +2,5 @@
+Mon Dec 18 13:59:47 UTC 2023 - Martin Pluskal <mpluskal(a)suse.com>
+
+- Restore _service to generate changelog
+
+-------------------------------------------------------------------
Old:
----
cli-2.40.1.tar.gz
New:
----
cli-2.40.1.tar.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gh.spec ++++++
--- /var/tmp/diff_new_pack.GMRHJl/_old 2023-12-18 22:57:11.570357896 +0100
+++ /var/tmp/diff_new_pack.GMRHJl/_new 2023-12-18 22:57:11.570357896 +0100
@@ -24,7 +24,7 @@
Summary: The official CLI for GitHub
License: MIT
URL: https://cli.github.com/
-Source0: https://github.com/cli/cli/archive/v%{version}.tar.gz#/%{sname}-%{version}.…
+Source0: %{sname}-%{version}.tar.zst
Source1: vendor.tar.zst
BuildRequires: fish
BuildRequires: git-core
++++++ _service ++++++
--- /var/tmp/diff_new_pack.GMRHJl/_old 2023-12-18 22:57:11.602359069 +0100
+++ /var/tmp/diff_new_pack.GMRHJl/_new 2023-12-18 22:57:11.606359215 +0100
@@ -1,8 +1,22 @@
<services>
- <service name="download_files" mode="manual"/>
+ <service name="tar_scm" mode="manual">
+ <param name="url">https://github.com/cli/cli</param>
+ <param name="scm">git</param>
+ <param name="exclude">.git</param>
+ <param name="revision">v2.40.1</param>
+ <param name="versionformat">@PARENT_TAG@</param>
+ <param name="changesgenerate">enable</param>
+ <param name="versionrewrite-pattern">v(.*)</param>
+ </service>
+ <service name="set_version" mode="manual">
+ <param name="basename">cli</param>
+ </service>
+ <service name="recompress" mode="manual">
+ <param name="file">*.tar</param>
+ <param name="compression">zst</param>
+ </service>
<service name="go_modules" mode="manual">
<param name="archive">cli-2.40.1.tar.gz</param>
- <param name="compression">zst</param>
</service>
</services>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.GMRHJl/_old 2023-12-18 22:57:11.630360094 +0100
+++ /var/tmp/diff_new_pack.GMRHJl/_new 2023-12-18 22:57:11.634360241 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/cli/cli</param>
- <param name="changesrevision">b775a9071f7d67d6b96245474115f7ff92a76b87</param></service></servicedata>
+ <param name="changesrevision">6d11395c083cbba795b955075ddbb92c289fd1df</param></service></servicedata>
(No newline at EOF)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cgns for openSUSE:Factory checked in at 2023-12-18 22:56:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cgns (Old)
and /work/SRC/openSUSE:Factory/.cgns.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cgns"
Mon Dec 18 22:56:57 2023 rev:7 rq:1133861 version:4.4.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/cgns/cgns.changes 2022-05-30 12:43:54.916387726 +0200
+++ /work/SRC/openSUSE:Factory/.cgns.new.9037/cgns.changes 2023-12-18 22:57:06.374167600 +0100
@@ -1,0 +2,13 @@
+Mon Dec 18 06:34:06 UTC 2023 - Wang Jun <badboywj(a)gmail.com>
+
+- Update to version 4.4.0
+ * Removed possible overflow in cgi_error, #343 #701
+ * Increased maximum open file limit default
+ * Added control for HDF5 tuning routine
+ "H5Pset_elink_file_cache_size," which is useful when many
+ external links are used, #351
+ * Fixed backward compatibility issues #702
+ * Removed "NULL" and "UserDefined" Fortran parameters #349
+ * More details: https://github.com/CGNS/CGNS/releases/tag/v4.4.0
+
+-------------------------------------------------------------------
Old:
----
cgns-4.3.0.tar.gz
New:
----
cgns-4.4.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cgns.spec ++++++
--- /var/tmp/diff_new_pack.QZlbIO/_old 2023-12-18 22:57:07.138195580 +0100
+++ /var/tmp/diff_new_pack.QZlbIO/_new 2023-12-18 22:57:07.142195726 +0100
@@ -1,7 +1,7 @@
#
# spec file for package cgns
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%define libname libcgns4_3
Name: cgns
-Version: 4.3.0
+Version: 4.4.0
Release: 0
Summary: CFD General Notation System
License: Zlib
++++++ cgns-4.3.0.tar.gz -> cgns-4.4.0.tar.gz ++++++
++++ 7111 lines of diff (skipped)
++++++ cgns-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.QZlbIO/_old 2023-12-18 22:57:07.450207006 +0100
+++ /var/tmp/diff_new_pack.QZlbIO/_new 2023-12-18 22:57:07.450207006 +0100
@@ -1,3 +1,3 @@
addFilter("E: devel-file-in-non-devel-package")
-(No newline at EOF)
+addFilter("E: shlib-policy-name-error")
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ogre for openSUSE:Factory checked in at 2023-12-18 22:56:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ogre (Old)
and /work/SRC/openSUSE:Factory/.ogre.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ogre"
Mon Dec 18 22:56:53 2023 rev:12 rq:1133847 version:13.6.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/ogre/ogre.changes 2023-06-05 18:08:29.319800147 +0200
+++ /work/SRC/openSUSE:Factory/.ogre.new.9037/ogre.changes 2023-12-18 22:57:01.930004844 +0100
@@ -1,0 +2,54 @@
+Mon Dec 18 12:12:08 UTC 2023 - Ferdinand Thiessen <rpm(a)fthiessen.de>
+
+- Added fix-gslang-cpp17.patch to fix build with our current GLSlang package
+- Update to 13.6.5
+ * DeflateStream can throw in close() > compressFinal()
+ * fix element count of ACT_TIME_0_*
+ * fix ResourceGroupManager shutdown crash
+ * GpuProgramParameters - assert correct autoconstant type
+ * SceneManager - report derived material in renderdoc
+ * Technique - avoid deadlock when shadow_*_material refers to self
+ * use identity for *VIEWPROJ_MATRIX if textureProjector is NULL
+ * RTSS
+ * normalmap - parallax texcoord should also affect normalmap lookup
+ * IBL - ensure envmap is used as cubic texture
+ * GLSupport: early-out if shader source is empty
+ * GLES2/GL3+: fix HardwareBuffer::copyData when offsets are not 0
+ * GLES2: fix check in blitFromMemory
+- Update to 13.6.4
+ * LiSPSMShadowCameraSetup::create - actually forward the params
+ * Mesh - actually only trigger assertion in debug mode
+ * Resource - call prepareResource() before loading an unprepared
+ manual resource
+ * MeshUpgrader - avoid assertion in ~Mesh
+ * XMLConverter: XMLSkeletonSerializer - use correct bone handles
+ for createNodeTrack()
+ * STBICodec: update embedded STB Image
+- Update to 13.6.3
+ * CompositorInstance - fix auto-sorting custom render passes
+ * setBonesUseObjectSpace - use the passed value
+ * RTSS
+ * cook torrance - forward surface alpha
+ * Do not add the gl_PerVertex block when writing the shader.
+- Update to 13.6.2
+ * GpuProgramParameters - do not set variability in clearAutoConstant
+ * move RSC compatibility check to useCustomRenderSystemCapabilities
+ * Assimp:
+ * set emissive to 0 when using an emissive map
+ * support loading embedded textures
+ * GL: RenderToVertexBuffer - fix detection of GLSL shaders
+ * GLSupport
+ * EGL - fix multi-window operation
+ * fix requested version of GL context
+- Update to 13.6.1
+ * GLES2: Better handle the case where we dont have texture_border_clamp
+ * Emscripten: dynamically switch to WebGL2, if possible
+ * RTSS: fix parsing triplanarTexturing params
+- Update to 13.6.0
+ * Image Based Lighting provided by the RTSS
+ * Terrain shaders generated by the RTSS
+ * significantly improved shadowing quality
+ * Rust based image codec
+ * Full changes: https://github.com/OGRECave/ogre/releases/tag/v13.6.0
+
+-------------------------------------------------------------------
Old:
----
ogre-13.5.3.tar.gz
New:
----
fix-gslang-cpp17.patch
ogre-13.6.5.tar.gz
BETA DEBUG BEGIN:
New:
- Added fix-gslang-cpp17.patch to fix build with our current GLSlang package
- Update to 13.6.5
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ogre.spec ++++++
--- /var/tmp/diff_new_pack.JCldhi/_old 2023-12-18 22:57:03.310055384 +0100
+++ /var/tmp/diff_new_pack.JCldhi/_new 2023-12-18 22:57:03.310055384 +0100
@@ -17,8 +17,8 @@
%define major 13
-%define minor 5
-%define third 3
+%define minor 6
+%define third 5
%define sover %{major}.%{minor}
%define soname %{major}_%{minor}
%define plugin_dir %{_libdir}/OGRE%{soname}
@@ -47,6 +47,8 @@
# PATCH-FIX-UPSTREAM fix-sse-detection.patch -- Fix detection of sse for x86 (vs x64)
Patch2: fix-sse-detection.patch
Patch3: swig-3-cpp11.patch
+# PATCH-FIX-OPENSUSE fix-gslang-cpp17.patch -- Our GLSlang package requires c++17
+Patch4: fix-gslang-cpp17.patch
BuildRequires: cmake >= 3.10
BuildRequires: dos2unix
BuildRequires: doxygen
++++++ fix-gslang-cpp17.patch ++++++
diff -Nur ogre-13.6.5/CMakeLists.txt new/CMakeLists.txt
--- ogre-13.6.5/CMakeLists.txt 2023-07-07 23:29:06.000000000 +0200
+++ new/CMakeLists.txt 2023-12-18 13:34:50.712483941 +0100
@@ -16,7 +16,7 @@
cmake_minimum_required(VERSION 3.10.0)
-set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
@@ -252,7 +252,7 @@
set(OGRE_STATIC TRUE CACHE BOOL "Forcing static build for Android" FORCE)
# workaround for the legacy android toolchain
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
elseif(EMSCRIPTEN)
add_definitions(-DEMSCRIPTEN=1 -D__EMSCRIPTEN__=1)
set(TargetPlatform "Emscripten")
++++++ ogre-13.5.3.tar.gz -> ogre-13.6.5.tar.gz ++++++
/work/SRC/openSUSE:Factory/ogre/ogre-13.5.3.tar.gz /work/SRC/openSUSE:Factory/.ogre.new.9037/ogre-13.6.5.tar.gz differ: char 13, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-Flask-SocketIO for openSUSE:Factory checked in at 2023-12-18 22:56:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Flask-SocketIO (Old)
and /work/SRC/openSUSE:Factory/.python-Flask-SocketIO.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-Flask-SocketIO"
Mon Dec 18 22:56:51 2023 rev:6 rq:1133839 version:5.3.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Flask-SocketIO/python-Flask-SocketIO.changes 2023-12-06 23:50:12.555615504 +0100
+++ /work/SRC/openSUSE:Factory/.python-Flask-SocketIO.new.9037/python-Flask-SocketIO.changes 2023-12-18 22:56:57.905857470 +0100
@@ -1,0 +2,7 @@
+Mon Dec 18 12:19:34 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 5.3.6:
+ * Fixes in the test client to support recent changes in Socket.IO
+ dependencies
+
+-------------------------------------------------------------------
Old:
----
Flask-SocketIO-5.3.5.tar.gz
New:
----
Flask-SocketIO-5.3.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-Flask-SocketIO.spec ++++++
--- /var/tmp/diff_new_pack.RPUec2/_old 2023-12-18 22:56:59.761925443 +0100
+++ /var/tmp/diff_new_pack.RPUec2/_new 2023-12-18 22:56:59.761925443 +0100
@@ -16,10 +16,9 @@
#
-%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-Flask-SocketIO
-Version: 5.3.5
+Version: 5.3.6
Release: 0
Summary: SocketIO integration for Flask applications
License: MIT
++++++ Flask-SocketIO-5.3.5.tar.gz -> Flask-SocketIO-5.3.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Flask-SocketIO-5.3.5/PKG-INFO new/Flask-SocketIO-5.3.6/PKG-INFO
--- old/Flask-SocketIO-5.3.5/PKG-INFO 2023-07-26 20:14:16.724852000 +0200
+++ new/Flask-SocketIO-5.3.6/PKG-INFO 2023-09-05 11:35:05.015492200 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: Flask-SocketIO
-Version: 5.3.5
+Version: 5.3.6
Summary: Socket.IO integration for Flask applications
Home-page: https://github.com/miguelgrinberg/flask-socketio
Author: Miguel Grinberg
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Flask-SocketIO-5.3.5/setup.cfg new/Flask-SocketIO-5.3.6/setup.cfg
--- old/Flask-SocketIO-5.3.5/setup.cfg 2023-07-26 20:14:16.724852000 +0200
+++ new/Flask-SocketIO-5.3.6/setup.cfg 2023-09-05 11:35:05.015492200 +0200
@@ -1,6 +1,6 @@
[metadata]
name = Flask-SocketIO
-version = 5.3.5
+version = 5.3.6
author = Miguel Grinberg
author_email = miguel.grinberg(a)gmail.com
description = Socket.IO integration for Flask applications
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Flask-SocketIO-5.3.5/src/Flask_SocketIO.egg-info/PKG-INFO new/Flask-SocketIO-5.3.6/src/Flask_SocketIO.egg-info/PKG-INFO
--- old/Flask-SocketIO-5.3.5/src/Flask_SocketIO.egg-info/PKG-INFO 2023-07-26 20:14:16.000000000 +0200
+++ new/Flask-SocketIO-5.3.6/src/Flask_SocketIO.egg-info/PKG-INFO 2023-09-05 11:35:05.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: Flask-SocketIO
-Version: 5.3.5
+Version: 5.3.6
Summary: Socket.IO integration for Flask applications
Home-page: https://github.com/miguelgrinberg/flask-socketio
Author: Miguel Grinberg
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Flask-SocketIO-5.3.5/src/flask_socketio/test_client.py new/Flask-SocketIO-5.3.6/src/flask_socketio/test_client.py
--- old/Flask-SocketIO-5.3.5/src/flask_socketio/test_client.py 2023-06-13 11:40:37.000000000 +0200
+++ new/Flask-SocketIO-5.3.6/src/flask_socketio/test_client.py 2023-09-05 11:33:49.000000000 +0200
@@ -59,6 +59,23 @@
elif pkt.packet_type in [packet.DISCONNECT, packet.CONNECT_ERROR]:
client.connected[pkt.namespace or '/'] = False
+ _current_packet = None
+
+ def _mock_send_eio_packet(eio_sid, eio_pkt):
+ nonlocal _current_packet
+ if _current_packet is not None:
+ _current_packet.add_attachment(eio_pkt.data)
+ if _current_packet.attachment_count == \
+ len(_current_packet.attachments):
+ _mock_send_packet(eio_sid, _current_packet)
+ _current_packet = None
+ else:
+ pkt = packet.Packet(encoded_packet=eio_pkt.data)
+ if pkt.attachment_count == 0:
+ _mock_send_packet(eio_sid, pkt)
+ else:
+ _current_packet = pkt
+
self.app = app
self.flask_test_client = flask_test_client
self.eio_sid = uuid.uuid4().hex
@@ -69,6 +86,7 @@
self.queue = []
self.acks = None
socketio.server._send_packet = _mock_send_packet
+ socketio.server._send_eio_packet = _mock_send_eio_packet
socketio.server.environ[self.eio_sid] = {}
socketio.server.async_handlers = False # easier to test when
socketio.server.eio.async_handlers = False # events are sync
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-cloudflare for openSUSE:Factory checked in at 2023-12-18 22:56:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-cloudflare (Old)
and /work/SRC/openSUSE:Factory/.python-cloudflare.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-cloudflare"
Mon Dec 18 22:56:33 2023 rev:15 rq:1133820 version:2.14.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-cloudflare/python-cloudflare.changes 2023-11-30 22:01:27.417359734 +0100
+++ /work/SRC/openSUSE:Factory/.python-cloudflare.new.9037/python-cloudflare.changes 2023-12-18 22:56:38.721154881 +0100
@@ -1,0 +2,7 @@
+Mon Dec 18 09:29:38 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.14.3:
+ * /live added - but does not response yet
+ * handle {account-identifier} with a dash vs underscore.
+
+-------------------------------------------------------------------
Old:
----
cloudflare-2.14.2.tar.gz
New:
----
cloudflare-2.14.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-cloudflare.spec ++++++
--- /var/tmp/diff_new_pack.xowJrw/_old 2023-12-18 22:56:39.901198097 +0100
+++ /var/tmp/diff_new_pack.xowJrw/_new 2023-12-18 22:56:39.901198097 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-cloudflare
-Version: 2.14.2
+Version: 2.14.3
Release: 0
Summary: Python wrapper for the Cloudflare v4 API
License: MIT
++++++ cloudflare-2.14.2.tar.gz -> cloudflare-2.14.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloudflare-2.14.2/CloudFlare/__init__.py new/cloudflare-2.14.3/CloudFlare/__init__.py
--- old/cloudflare-2.14.2/CloudFlare/__init__.py 2023-11-26 05:05:05.000000000 +0100
+++ new/cloudflare-2.14.3/CloudFlare/__init__.py 2023-12-13 14:59:14.000000000 +0100
@@ -1,6 +1,6 @@
""" Cloudflare v4 API"""
-__version__ = '2.14.2'
+__version__ = '2.14.3'
from .cloudflare import CloudFlare
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloudflare-2.14.2/CloudFlare/api_decode_from_openapi.py new/cloudflare-2.14.3/CloudFlare/api_decode_from_openapi.py
--- old/cloudflare-2.14.2/CloudFlare/api_decode_from_openapi.py 2023-09-21 18:52:22.000000000 +0200
+++ new/cloudflare-2.14.3/CloudFlare/api_decode_from_openapi.py 2023-12-13 14:50:31.000000000 +0100
@@ -7,7 +7,7 @@
API_TYPES = ['GET', 'POST', 'PATCH', 'PUT', 'DELETE']
-match_identifier = re.compile(r'\{[A-Za-z0-9_]*\}')
+match_identifier = re.compile(r'\{[A-Za-z0-9_\-]*\}')
def do_path(cmd, values):
""" do_path() """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloudflare-2.14.2/CloudFlare/api_v4.py new/cloudflare-2.14.3/CloudFlare/api_v4.py
--- old/cloudflare-2.14.2/CloudFlare/api_v4.py 2023-11-25 19:04:44.000000000 +0100
+++ new/cloudflare-2.14.3/CloudFlare/api_v4.py 2023-12-13 14:47:45.000000000 +0100
@@ -48,6 +48,9 @@
# The API commands for /ips/
ips(self)
+ # The API commands for /live/
+ live(self)
+
# The API commands for /accounts/
accounts(self)
accounts_access(self)
@@ -269,6 +272,11 @@
self.add('OPEN', 'ips')
+def live(self):
+ """ live """
+
+ self.add('AUTH', 'live')
+
def zones_argo(self):
""" zones argo """
@@ -659,6 +667,7 @@
self.add('VOID', 'accounts', 'ai')
self.add('AUTH', 'accounts', 'ai/run')
+ self.add('AUTH', 'accounts', 'ai/run/proxy')
self.add('VOID', 'accounts', 'alerting')
self.add('VOID', 'accounts', 'alerting/v3')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloudflare-2.14.2/PKG-INFO new/cloudflare-2.14.3/PKG-INFO
--- old/cloudflare-2.14.2/PKG-INFO 2023-11-26 05:05:51.078833000 +0100
+++ new/cloudflare-2.14.3/PKG-INFO 2023-12-13 15:01:36.177684300 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: cloudflare
-Version: 2.14.2
+Version: 2.14.3
Summary: Python wrapper for the Cloudflare v4 API
Home-page: https://github.com/cloudflare/python-cloudflare
Author: Martin J. Levy
@@ -13,8 +13,13 @@
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Description-Content-Type: text/markdown
-Provides-Extra: test
License-File: LICENSE
+Requires-Dist: requests
+Requires-Dist: pyyaml
+Requires-Dist: jsonlines
+Requires-Dist: beautifulsoup4
+Provides-Extra: test
+Requires-Dist: pytest; extra == "test"
# cloudflare-python
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cloudflare-2.14.2/cloudflare.egg-info/PKG-INFO new/cloudflare-2.14.3/cloudflare.egg-info/PKG-INFO
--- old/cloudflare-2.14.2/cloudflare.egg-info/PKG-INFO 2023-11-26 05:05:51.000000000 +0100
+++ new/cloudflare-2.14.3/cloudflare.egg-info/PKG-INFO 2023-12-13 15:01:36.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: cloudflare
-Version: 2.14.2
+Version: 2.14.3
Summary: Python wrapper for the Cloudflare v4 API
Home-page: https://github.com/cloudflare/python-cloudflare
Author: Martin J. Levy
@@ -13,8 +13,13 @@
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Description-Content-Type: text/markdown
-Provides-Extra: test
License-File: LICENSE
+Requires-Dist: requests
+Requires-Dist: pyyaml
+Requires-Dist: jsonlines
+Requires-Dist: beautifulsoup4
+Provides-Extra: test
+Requires-Dist: pytest; extra == "test"
# cloudflare-python
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-numexpr for openSUSE:Factory checked in at 2023-12-18 22:56:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-numexpr (Old)
and /work/SRC/openSUSE:Factory/.python-numexpr.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-numexpr"
Mon Dec 18 22:56:31 2023 rev:22 rq:1133817 version:2.8.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-numexpr/python-numexpr.changes 2023-11-27 22:45:34.758712212 +0100
+++ /work/SRC/openSUSE:Factory/.python-numexpr.new.9037/python-numexpr.changes 2023-12-18 22:56:34.933016150 +0100
@@ -1,0 +2,9 @@
+Mon Dec 18 09:23:43 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.8.8:
+ * Fix re_evaluate not taking global_dict as argument.
+ * Fix parsing of simple complex numbers. Now,
+ `ne.evaluate('1.5j')` works.
+ * Fixes for upcoming NumPy 2.0
+
+-------------------------------------------------------------------
Old:
----
numexpr-2.8.7.tar.gz
New:
----
numexpr-2.8.8.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-numexpr.spec ++++++
--- /var/tmp/diff_new_pack.pWSioN/_old 2023-12-18 22:56:35.809048232 +0100
+++ /var/tmp/diff_new_pack.pWSioN/_new 2023-12-18 22:56:35.813048379 +0100
@@ -16,8 +16,9 @@
#
+%{?sle15_python_module_pythons}
Name: python-numexpr
-Version: 2.8.7
+Version: 2.8.8
Release: 0
Summary: Numerical expression evaluator for NumPy
License: MIT
@@ -27,7 +28,6 @@
BuildRequires: %{python_module devel >= 3.7}
BuildRequires: %{python_module numpy-devel >= 1.13.3}
BuildRequires: %{python_module pip}
-BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: gcc-c++
++++++ numexpr-2.8.7.tar.gz -> numexpr-2.8.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/ANNOUNCE.rst new/numexpr-2.8.8/ANNOUNCE.rst
--- old/numexpr-2.8.7/ANNOUNCE.rst 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/ANNOUNCE.rst 2023-12-11 13:56:26.000000000 +0100
@@ -1,40 +1,31 @@
========================
-Announcing NumExpr 2.8.7
+Announcing NumExpr 2.8.8
========================
Hi everyone,
-NumExpr 2.8.7 is a release to deal with issues related to downstream `pandas`
-and other projects where the sanitization blacklist was triggering issue in their
-evaluate. Hopefully, the new sanitization code would be much more robust now.
-
-For those who do not wish to have sanitization on by default, it can be changed
-by setting an environment variable, `NUMEXPR_SANITIZE=0`.
-
-If you use `pandas` in your packages it is advisable you pin
-
-`numexpr >= 2.8.7`
-
-in your requirements.
+NumExpr 2.8.8 is a release to deal mainly with issues appearing with
+upcoming `NumPy` 2.0. Also, some small fixes (support for simple complex
+expressions like `ne.evaluate('1.5j')`) and improvements are included.
Project documentation is available at:
http://numexpr.readthedocs.io/
-Changes from 2.8.5 to 2.8.6
+Changes from 2.8.7 to 2.8.8
---------------------------
-* More permissive rules in sanitizing regular expression: allow to access digits
- after the . with scientific notation. Thanks to Thomas Vincent.
+* Fix re_evaluate not taking global_dict as argument. Thanks to Teng Liu
+ (@27rabbitlt).
-* Don't reject double underscores that are not at the start or end of a variable
- name (pandas uses those), or scientific-notation numbers with digits after the
- decimal point. Thanks to Rebecca Palmer.
+* Fix parsing of simple complex numbers. Now, `ne.evaluate('1.5j')` works.
+ Thanks to Teng Liu (@27rabbitlt).
-* Do not use `numpy.alltrue` in the test suite, as it has been deprecated
- (replaced by `numpy.all`). Thanks to Rebecca Chen.
+* Fixes for upcoming NumPy 2.0:
-* Wheels for Python 3.12. Wheels for 3.7 and 3.8 are not generated anymore.
+ * Replace npy_cdouble with C++ complex. Thanks to Teng Liu (@27rabbitlt).
+ * Add NE_MAXARGS for future numpy change NPY_MAXARGS. Now it is set to 64
+ to match NumPy 2.0 value. Thanks to Teng Liu (@27rabbitlt).
What's Numexpr?
---------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/PKG-INFO new/numexpr-2.8.8/PKG-INFO
--- old/numexpr-2.8.7/PKG-INFO 2023-09-26 10:15:25.606307000 +0200
+++ new/numexpr-2.8.8/PKG-INFO 2023-12-11 14:06:59.466662000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: numexpr
-Version: 2.8.7
+Version: 2.8.8
Summary: Fast numerical expression evaluator for NumPy
Home-page: https://github.com/pydata/numexpr
Author: David M. Cooke, Francesc Alted, and others
@@ -30,8 +30,8 @@
======================================================
:Author: David M. Cooke, Francesc Alted, and others.
-:Maintainer: Robert A. McLeod
-:Contact: robbmcleod(a)gmail.com
+:Maintainer: Francesc Alted
+:Contact: faltet(a)gmail.com
:URL: https://github.com/pydata/numexpr
:Documentation: http://numexpr.readthedocs.io/en/latest/
:Travis CI: |travis|
@@ -51,21 +51,6 @@
.. |version| image:: https://img.shields.io/pypi/v/numexpr.png
:target: https://pypi.python.org/pypi/numexpr
-IMPORTANT NOTE: NumExpr is looking for maintainers!
----------------------------------------------------
-
-After 5 years as a solo maintainer (and performing a most excellent work), Robert McLeod
-is asking for a well deserved break. So the NumExpr project is looking for a new
-maintainer for a package that is used in pandas, PyTables and many other packages.
-If have benefited of NumExpr capabilities in the past, and willing to contribute back to
-the community, we would be happy to hear about you!
-
-We are looking for someone that is knowledgeable about compiling extensions, and that is
-ready to spend some cycles in making releases (2 or 3 a year, maybe even less!).
-Interested? just open a new ticket here and we will help you onboarding!
-
-Thank you!
-
What is NumExpr?
----------------
@@ -96,19 +81,19 @@
into small chunks that easily fit in the cache of the CPU and passed
to the virtual machine. The virtual machine then applies the
operations on each chunk. It's worth noting that all temporaries and
-constants in the expression are also chunked. Chunks are distributed among
-the available cores of the CPU, resulting in highly parallelized code
+constants in the expression are also chunked. Chunks are distributed among
+the available cores of the CPU, resulting in highly parallelized code
execution.
The result is that NumExpr can get the most of your machine computing
capabilities for array-wise computations. Common speed-ups with regard
to NumPy are usually between 0.95x (for very simple expressions like
-:code:`'a + 1'`) and 4x (for relatively complex ones like :code:`'a*b-4.1*a > 2.5*b'`),
-although much higher speed-ups can be achieved for some functions and complex
+:code:`'a + 1'`) and 4x (for relatively complex ones like :code:`'a*b-4.1*a > 2.5*b'`),
+although much higher speed-ups can be achieved for some functions and complex
math operations (up to 15x in some cases).
-NumExpr performs best on matrices that are too large to fit in L1 CPU cache.
-In order to get a better idea on the different speed-ups that can be achieved
+NumExpr performs best on matrices that are too large to fit in L1 CPU cache.
+In order to get a better idea on the different speed-ups that can be achieved
on your platform, run the provided benchmarks.
Installation
@@ -117,13 +102,13 @@
From wheels
^^^^^^^^^^^
-NumExpr is available for install via `pip` for a wide range of platforms and
-Python versions (which may be browsed at: https://pypi.org/project/numexpr/#files).
+NumExpr is available for install via `pip` for a wide range of platforms and
+Python versions (which may be browsed at: https://pypi.org/project/numexpr/#files).
Installation can be performed as::
pip install numexpr
-If you are using the Anaconda or Miniconda distribution of Python you may prefer
+If you are using the Anaconda or Miniconda distribution of Python you may prefer
to use the `conda` package manager in this case::
conda install numexpr
@@ -131,18 +116,18 @@
From Source
^^^^^^^^^^^
-On most \*nix systems your compilers will already be present. However if you
+On most \*nix systems your compilers will already be present. However if you
are using a virtual environment with a substantially newer version of Python than
your system Python you may be prompted to install a new version of `gcc` or `clang`.
-For Windows, you will need to install the Microsoft Visual C++ Build Tools
-(which are free) first. The version depends on which version of Python you have
+For Windows, you will need to install the Microsoft Visual C++ Build Tools
+(which are free) first. The version depends on which version of Python you have
installed:
https://wiki.python.org/moin/WindowsCompilers
-For Python 3.6+ simply installing the latest version of MSVC build tools should
-be sufficient. Note that wheels found via pip do not include MKL support. Wheels
+For Python 3.6+ simply installing the latest version of MSVC build tools should
+be sufficient. Note that wheels found via pip do not include MKL support. Wheels
available via `conda` will have MKL, if the MKL backend is used for NumPy.
See `requirements.txt` for the required version of NumPy.
@@ -160,19 +145,19 @@
Enable Intel® MKL support
^^^^^^^^^^^^^^^^^^^^^^^^^
-NumExpr includes support for Intel's MKL library. This may provide better
-performance on Intel architectures, mainly when evaluating transcendental
-functions (trigonometrical, exponential, ...).
-
-If you have Intel's MKL, copy the `site.cfg.example` that comes with the
-distribution to `site.cfg` and edit the latter file to provide correct paths to
-the MKL libraries in your system. After doing this, you can proceed with the
+NumExpr includes support for Intel's MKL library. This may provide better
+performance on Intel architectures, mainly when evaluating transcendental
+functions (trigonometrical, exponential, ...).
+
+If you have Intel's MKL, copy the `site.cfg.example` that comes with the
+distribution to `site.cfg` and edit the latter file to provide correct paths to
+the MKL libraries in your system. After doing this, you can proceed with the
usual building instructions listed above.
-Pay attention to the messages during the building process in order to know
-whether MKL has been detected or not. Finally, you can check the speed-ups on
-your machine by running the `bench/vml_timing.py` script (you can play with
-different parameters to the `set_vml_accuracy_mode()` and `set_vml_num_threads()`
+Pay attention to the messages during the building process in order to know
+whether MKL has been detected or not. Finally, you can check the speed-ups on
+your machine by running the `bench/vml_timing.py` script (you can play with
+different parameters to the `set_vml_accuracy_mode()` and `set_vml_num_threads()`
functions in the script so as to see how it would affect performance).
Usage
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/README.rst new/numexpr-2.8.8/README.rst
--- old/numexpr-2.8.7/README.rst 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/README.rst 2023-12-11 13:56:26.000000000 +0100
@@ -3,8 +3,8 @@
======================================================
:Author: David M. Cooke, Francesc Alted, and others.
-:Maintainer: Robert A. McLeod
-:Contact: robbmcleod(a)gmail.com
+:Maintainer: Francesc Alted
+:Contact: faltet(a)gmail.com
:URL: https://github.com/pydata/numexpr
:Documentation: http://numexpr.readthedocs.io/en/latest/
:Travis CI: |travis|
@@ -24,21 +24,6 @@
.. |version| image:: https://img.shields.io/pypi/v/numexpr.png
:target: https://pypi.python.org/pypi/numexpr
-IMPORTANT NOTE: NumExpr is looking for maintainers!
----------------------------------------------------
-
-After 5 years as a solo maintainer (and performing a most excellent work), Robert McLeod
-is asking for a well deserved break. So the NumExpr project is looking for a new
-maintainer for a package that is used in pandas, PyTables and many other packages.
-If have benefited of NumExpr capabilities in the past, and willing to contribute back to
-the community, we would be happy to hear about you!
-
-We are looking for someone that is knowledgeable about compiling extensions, and that is
-ready to spend some cycles in making releases (2 or 3 a year, maybe even less!).
-Interested? just open a new ticket here and we will help you onboarding!
-
-Thank you!
-
What is NumExpr?
----------------
@@ -69,19 +54,19 @@
into small chunks that easily fit in the cache of the CPU and passed
to the virtual machine. The virtual machine then applies the
operations on each chunk. It's worth noting that all temporaries and
-constants in the expression are also chunked. Chunks are distributed among
-the available cores of the CPU, resulting in highly parallelized code
+constants in the expression are also chunked. Chunks are distributed among
+the available cores of the CPU, resulting in highly parallelized code
execution.
The result is that NumExpr can get the most of your machine computing
capabilities for array-wise computations. Common speed-ups with regard
to NumPy are usually between 0.95x (for very simple expressions like
-:code:`'a + 1'`) and 4x (for relatively complex ones like :code:`'a*b-4.1*a > 2.5*b'`),
-although much higher speed-ups can be achieved for some functions and complex
+:code:`'a + 1'`) and 4x (for relatively complex ones like :code:`'a*b-4.1*a > 2.5*b'`),
+although much higher speed-ups can be achieved for some functions and complex
math operations (up to 15x in some cases).
-NumExpr performs best on matrices that are too large to fit in L1 CPU cache.
-In order to get a better idea on the different speed-ups that can be achieved
+NumExpr performs best on matrices that are too large to fit in L1 CPU cache.
+In order to get a better idea on the different speed-ups that can be achieved
on your platform, run the provided benchmarks.
Installation
@@ -90,13 +75,13 @@
From wheels
^^^^^^^^^^^
-NumExpr is available for install via `pip` for a wide range of platforms and
-Python versions (which may be browsed at: https://pypi.org/project/numexpr/#files).
+NumExpr is available for install via `pip` for a wide range of platforms and
+Python versions (which may be browsed at: https://pypi.org/project/numexpr/#files).
Installation can be performed as::
pip install numexpr
-If you are using the Anaconda or Miniconda distribution of Python you may prefer
+If you are using the Anaconda or Miniconda distribution of Python you may prefer
to use the `conda` package manager in this case::
conda install numexpr
@@ -104,18 +89,18 @@
From Source
^^^^^^^^^^^
-On most \*nix systems your compilers will already be present. However if you
+On most \*nix systems your compilers will already be present. However if you
are using a virtual environment with a substantially newer version of Python than
your system Python you may be prompted to install a new version of `gcc` or `clang`.
-For Windows, you will need to install the Microsoft Visual C++ Build Tools
-(which are free) first. The version depends on which version of Python you have
+For Windows, you will need to install the Microsoft Visual C++ Build Tools
+(which are free) first. The version depends on which version of Python you have
installed:
https://wiki.python.org/moin/WindowsCompilers
-For Python 3.6+ simply installing the latest version of MSVC build tools should
-be sufficient. Note that wheels found via pip do not include MKL support. Wheels
+For Python 3.6+ simply installing the latest version of MSVC build tools should
+be sufficient. Note that wheels found via pip do not include MKL support. Wheels
available via `conda` will have MKL, if the MKL backend is used for NumPy.
See `requirements.txt` for the required version of NumPy.
@@ -133,19 +118,19 @@
Enable Intel® MKL support
^^^^^^^^^^^^^^^^^^^^^^^^^
-NumExpr includes support for Intel's MKL library. This may provide better
-performance on Intel architectures, mainly when evaluating transcendental
-functions (trigonometrical, exponential, ...).
-
-If you have Intel's MKL, copy the `site.cfg.example` that comes with the
-distribution to `site.cfg` and edit the latter file to provide correct paths to
-the MKL libraries in your system. After doing this, you can proceed with the
+NumExpr includes support for Intel's MKL library. This may provide better
+performance on Intel architectures, mainly when evaluating transcendental
+functions (trigonometrical, exponential, ...).
+
+If you have Intel's MKL, copy the `site.cfg.example` that comes with the
+distribution to `site.cfg` and edit the latter file to provide correct paths to
+the MKL libraries in your system. After doing this, you can proceed with the
usual building instructions listed above.
-Pay attention to the messages during the building process in order to know
-whether MKL has been detected or not. Finally, you can check the speed-ups on
-your machine by running the `bench/vml_timing.py` script (you can play with
-different parameters to the `set_vml_accuracy_mode()` and `set_vml_num_threads()`
+Pay attention to the messages during the building process in order to know
+whether MKL has been detected or not. Finally, you can check the speed-ups on
+your machine by running the `bench/vml_timing.py` script (you can play with
+different parameters to the `set_vml_accuracy_mode()` and `set_vml_num_threads()`
functions in the script so as to see how it would affect performance).
Usage
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/RELEASE_NOTES.rst new/numexpr-2.8.8/RELEASE_NOTES.rst
--- old/numexpr-2.8.7/RELEASE_NOTES.rst 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/RELEASE_NOTES.rst 2023-12-11 13:56:26.000000000 +0100
@@ -2,6 +2,22 @@
Release notes for NumExpr 2.8 series
====================================
+Changes from 2.8.7 to 2.8.8
+---------------------------
+
+* Fix re_evaluate not taking global_dict as argument. Thanks to Teng Liu
+ (@27rabbitlt).
+
+* Fix parsing of simple complex numbers. Now, `ne.evaluate('1.5j')` works.
+ Thanks to Teng Liu (@27rabbitlt).
+
+* Fixes for upcoming NumPy 2.0:
+
+ * Replace npy_cdouble with C++ complex. Thanks to Teng Liu (@27rabbitlt).
+ * Add NE_MAXARGS for future numpy change NPY_MAXARGS. Now it is set to 64
+ to match NumPy 2.0 value. Thanks to Teng Liu (@27rabbitlt).
+
+
Changes from 2.8.6 to 2.8.7
---------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/bench/boolean_timing.py new/numexpr-2.8.8/bench/boolean_timing.py
--- old/numexpr-2.8.7/bench/boolean_timing.py 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/bench/boolean_timing.py 2023-12-11 13:56:26.000000000 +0100
@@ -13,7 +13,7 @@
import timeit
import numpy
-array_size = 1000*1000
+array_size = 5_000_000
iterations = 10
numpy_ttime = []
@@ -23,6 +23,7 @@
numexpr_sttime = []
numexpr_nttime = []
+
def compare_times(expr, nexpr):
global numpy_ttime
global numpy_sttime
@@ -64,7 +65,7 @@
numexpr_stime = round(numexpr_timer.timeit(number=iterations), 4)
numexpr_sttime.append(numexpr_stime)
print("numexpr strided:", numexpr_stime/iterations, end=" ")
- print("Speed-up of numexpr strided over numpy:", \
+ print("Speed-up of numexpr strided over numpy:",
round(numpy_stime/numexpr_stime, 4))
evalexpr = 'evaluate("%s", optimization="aggressive")' % expr
@@ -72,7 +73,7 @@
numexpr_ntime = round(numexpr_timer.timeit(number=iterations), 4)
numexpr_nttime.append(numexpr_ntime)
print("numexpr unaligned:", numexpr_ntime/iterations, end=" ")
- print("Speed-up of numexpr unaligned over numpy:", \
+ print("Speed-up of numexpr unaligned over numpy:",
round(numpy_ntime/numexpr_ntime, 4))
@@ -113,7 +114,7 @@
expressions.append('sqrt(i2**2 + f3**2) > 1')
expressions.append('(i2>2) | ((f3**2>3) & ~(i2*f3<2))')
-def compare(expression=False):
+def compare(expression=None):
if expression:
compare_times(expression, 1)
sys.exit(0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/bench/timing.py new/numexpr-2.8.8/bench/timing.py
--- old/numexpr-2.8.7/bench/timing.py 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/bench/timing.py 2023-12-11 13:56:26.000000000 +0100
@@ -11,7 +11,7 @@
from __future__ import print_function
import timeit, numpy
-array_size = 1e6
+array_size = 5e6
iterations = 2
# Choose the type you want to benchmark
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/bench/vml_timing.py new/numexpr-2.8.8/bench/vml_timing.py
--- old/numexpr-2.8.7/bench/vml_timing.py 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/bench/vml_timing.py 2023-12-11 13:56:26.000000000 +0100
@@ -14,7 +14,7 @@
import numpy
import numexpr
-array_size = 1000*1000
+array_size = 5_000_000
iterations = 10
numpy_ttime = []
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr/complex_functions.hpp new/numexpr-2.8.8/numexpr/complex_functions.hpp
--- old/numexpr-2.8.7/numexpr/complex_functions.hpp 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/numexpr/complex_functions.hpp 2023-12-11 13:56:26.000000000 +0100
@@ -10,16 +10,17 @@
See LICENSE.txt for details about copyright and rights to use.
**********************************************************************/
-// TODO: Could just use std::complex<float> and std::complex<double>
+// Replace npy_cdouble with std::complex<double>
+#include <complex>
/* constants */
-static npy_cdouble nc_1 = {1., 0.};
-static npy_cdouble nc_half = {0.5, 0.};
-static npy_cdouble nc_i = {0., 1.};
-static npy_cdouble nc_i2 = {0., 0.5};
+static std::complex<double> nc_1(1., 0.);
+static std::complex<double> nc_half(0.5, 0.);
+static std::complex<double> nc_i(0., 1.);
+static std::complex<double> nc_i2(0., 0.5);
/*
-static npy_cdouble nc_mi = {0., -1.};
-static npy_cdouble nc_pi2 = {M_PI/2., 0.};
+static std::complex<double> nc_mi = {0., -1.};
+static std::complex<double> nc_pi2 = {M_PI/2., 0.};
*/
/* *************************** WARNING *****************************
@@ -31,42 +32,42 @@
*/
static void
-nc_assign(npy_cdouble *x, npy_cdouble *r)
+nc_assign(std::complex<double> *x, std::complex<double> *r)
{
- r->real = x->real;
- r->imag = x->imag;
+ r->real(x->real());
+ r->imag(x->imag());
return;
}
static void
-nc_sum(npy_cdouble *a, npy_cdouble *b, npy_cdouble *r)
+nc_sum(std::complex<double> *a, std::complex<double> *b, std::complex<double> *r)
{
- r->real = a->real + b->real;
- r->imag = a->imag + b->imag;
+ r->real(a->real() + b->real());
+ r->imag(a->imag() + b->imag());
return;
}
static void
-nc_diff(npy_cdouble *a, npy_cdouble *b, npy_cdouble *r)
+nc_diff(std::complex<double> *a, std::complex<double> *b, std::complex<double> *r)
{
- r->real = a->real - b->real;
- r->imag = a->imag - b->imag;
+ r->real(a->real() - b->real());
+ r->imag(a->imag() - b->imag());
return;
}
static void
-nc_neg(npy_cdouble *a, npy_cdouble *r)
+nc_neg(std::complex<double> *a, std::complex<double> *r)
{
- r->real = -a->real;
- r->imag = -a->imag;
+ r->real(-a->real());
+ r->imag(-a->imag());
return;
}
static void
-nc_conj(npy_cdouble *a, npy_cdouble *r)
+nc_conj(std::complex<double> *a, std::complex<double> *r)
{
- r->real = a->real;
- r->imag = -a->imag;
+ r->real(a->real());
+ r->imag(-a->imag());
return;
}
@@ -85,109 +86,109 @@
}
static void
-nc_prod(npy_cdouble *a, npy_cdouble *b, npy_cdouble *r)
+nc_prod(std::complex<double> *a, std::complex<double> *b, std::complex<double> *r)
{
- double ar=a->real, br=b->real, ai=a->imag, bi=b->imag;
- r->real = ar*br - ai*bi;
- r->imag = ar*bi + ai*br;
+ double ar=a->real(), br=b->real(), ai=a->imag(), bi=b->imag();
+ r->real(ar*br - ai*bi);
+ r->imag(ar*bi + ai*br);
return;
}
static void
-nc_quot(npy_cdouble *a, npy_cdouble *b, npy_cdouble *r)
+nc_quot(std::complex<double> *a, std::complex<double> *b, std::complex<double> *r)
{
- double ar=a->real, br=b->real, ai=a->imag, bi=b->imag;
+ double ar=a->real(), br=b->real(), ai=a->imag(), bi=b->imag();
double d = br*br + bi*bi;
- r->real = (ar*br + ai*bi)/d;
- r->imag = (ai*br - ar*bi)/d;
+ r->real((ar*br + ai*bi)/d);
+ r->imag((ai*br - ar*bi)/d);
return;
}
static void
-nc_sqrt(npy_cdouble *x, npy_cdouble *r)
+nc_sqrt(std::complex<double> *x, std::complex<double> *r)
{
double s,d;
- if (x->real == 0. && x->imag == 0.)
+ if (x->real() == 0. && x->imag() == 0.)
*r = *x;
else {
- s = sqrt((fabs(x->real) + hypot(x->real,x->imag))/2);
- d = x->imag/(2*s);
- if (x->real > 0.) {
- r->real = s;
- r->imag = d;
+ s = sqrt((fabs(x->real()) + hypot(x->real(),x->imag()))/2);
+ d = x->imag()/(2*s);
+ if (x->real() > 0.) {
+ r->real(s);
+ r->imag(d);
}
- else if (x->imag >= 0.) {
- r->real = d;
- r->imag = s;
+ else if (x->imag() >= 0.) {
+ r->real(d);
+ r->imag(s);
}
else {
- r->real = -d;
- r->imag = -s;
+ r->real(-d);
+ r->imag(-s);
}
}
return;
}
static void
-nc_log(npy_cdouble *x, npy_cdouble *r)
+nc_log(std::complex<double> *x, std::complex<double> *r)
{
- double l = hypot(x->real,x->imag);
- r->imag = atan2(x->imag, x->real);
- r->real = log(l);
+ double l = hypot(x->real(),x->imag());
+ r->imag(atan2(x->imag(), x->real()));
+ r->real(log(l));
return;
}
static void
-nc_log1p(npy_cdouble *x, npy_cdouble *r)
+nc_log1p(std::complex<double> *x, std::complex<double> *r)
{
- double l = hypot(x->real + 1.0,x->imag);
- r->imag = atan2(x->imag, x->real + 1.0);
- r->real = log(l);
+ double l = hypot(x->real() + 1.0,x->imag());
+ r->imag(atan2(x->imag(), x->real() + 1.0));
+ r->real(log(l));
return;
}
static void
-nc_exp(npy_cdouble *x, npy_cdouble *r)
+nc_exp(std::complex<double> *x, std::complex<double> *r)
{
- double a = exp(x->real);
- r->real = a*cos(x->imag);
- r->imag = a*sin(x->imag);
+ double a = exp(x->real());
+ r->real(a*cos(x->imag()));
+ r->imag(a*sin(x->imag()));
return;
}
static void
-nc_expm1(npy_cdouble *x, npy_cdouble *r)
+nc_expm1(std::complex<double> *x, std::complex<double> *r)
{
- double a = sin(x->imag / 2);
- double b = exp(x->real);
- r->real = expm1(x->real) * cos(x->imag) - 2 * a * a;
- r->imag = b * sin(x->imag);
+ double a = sin(x->imag() / 2);
+ double b = exp(x->real());
+ r->real(expm1(x->real()) * cos(x->imag()) - 2 * a * a);
+ r->imag(b * sin(x->imag()));
return;
}
static void
-nc_pow(npy_cdouble *a, npy_cdouble *b, npy_cdouble *r)
+nc_pow(std::complex<double> *a, std::complex<double> *b, std::complex<double> *r)
{
npy_intp n;
- double ar=a->real, br=b->real, ai=a->imag, bi=b->imag;
+ double ar=a->real(), br=b->real(), ai=a->imag(), bi=b->imag();
if (br == 0. && bi == 0.) {
- r->real = 1.;
- r->imag = 0.;
+ r->real(1.);
+ r->imag(0.);
return;
}
if (ar == 0. && ai == 0.) {
- r->real = 0.;
- r->imag = 0.;
+ r->real(0.);
+ r->imag(0.);
return;
}
if (bi == 0 && (n=(npy_intp)br) == br) {
if (n > -100 && n < 100) {
- npy_cdouble p, aa;
+ std::complex<double> p, aa;
npy_intp mask = 1;
if (n < 0) n = -n;
aa = nc_1;
- p.real = ar; p.imag = ai;
+ p.real(ar); p.imag(ai);
while (1) {
if (n & mask)
nc_prod(&aa,&p,&aa);
@@ -195,7 +196,7 @@
if (n < mask || mask <= 0) break;
nc_prod(&p,&p,&p);
}
- r->real = aa.real; r->imag = aa.imag;
+ r->real(aa.real()); r->imag(aa.imag());
if (br < 0) nc_quot(&nc_1, r, r);
return;
}
@@ -210,19 +211,19 @@
static void
-nc_prodi(npy_cdouble *x, npy_cdouble *r)
+nc_prodi(std::complex<double> *x, std::complex<double> *r)
{
- double xr = x->real;
- r->real = -x->imag;
- r->imag = xr;
+ double xr = x->real();
+ r->real(-x->imag());
+ r->imag(xr);
return;
}
static void
-nc_acos(npy_cdouble *x, npy_cdouble *r)
+nc_acos(std::complex<double> *x, std::complex<double> *r)
{
- npy_cdouble a, *pa=&a;
+ std::complex<double> a, *pa=&a;
nc_assign(x, pa);
nc_prod(x,x,r);
@@ -240,9 +241,9 @@
}
static void
-nc_acosh(npy_cdouble *x, npy_cdouble *r)
+nc_acosh(std::complex<double> *x, std::complex<double> *r)
{
- npy_cdouble t, a, *pa=&a;
+ std::complex<double> t, a, *pa=&a;
nc_assign(x, pa);
nc_sum(x, &nc_1, &t);
@@ -260,9 +261,9 @@
}
static void
-nc_asin(npy_cdouble *x, npy_cdouble *r)
+nc_asin(std::complex<double> *x, std::complex<double> *r)
{
- npy_cdouble a, *pa=&a;
+ std::complex<double> a, *pa=&a;
nc_prodi(x, pa);
nc_prod(x, x, r);
nc_diff(&nc_1, r, r);
@@ -280,9 +281,9 @@
static void
-nc_asinh(npy_cdouble *x, npy_cdouble *r)
+nc_asinh(std::complex<double> *x, std::complex<double> *r)
{
- npy_cdouble a, *pa=&a;
+ std::complex<double> a, *pa=&a;
nc_assign(x, pa);
nc_prod(x, x, r);
nc_sum(&nc_1, r, r);
@@ -296,9 +297,9 @@
}
static void
-nc_atan(npy_cdouble *x, npy_cdouble *r)
+nc_atan(std::complex<double> *x, std::complex<double> *r)
{
- npy_cdouble a, *pa=&a;
+ std::complex<double> a, *pa=&a;
nc_diff(&nc_i, x, pa);
nc_sum(&nc_i, x, r);
nc_quot(r, pa, r);
@@ -311,9 +312,9 @@
}
static void
-nc_atanh(npy_cdouble *x, npy_cdouble *r)
+nc_atanh(std::complex<double> *x, std::complex<double> *r)
{
- npy_cdouble a, b, *pa=&a, *pb=&b;
+ std::complex<double> a, b, *pa=&a, *pb=&b;
nc_assign(x, pa);
nc_diff(&nc_1, pa, r);
nc_sum(&nc_1, pa, pb);
@@ -327,20 +328,20 @@
}
static void
-nc_cos(npy_cdouble *x, npy_cdouble *r)
+nc_cos(std::complex<double> *x, std::complex<double> *r)
{
- double xr=x->real, xi=x->imag;
- r->real = cos(xr)*cosh(xi);
- r->imag = -sin(xr)*sinh(xi);
+ double xr=x->real(), xi=x->imag();
+ r->real(cos(xr)*cosh(xi));
+ r->imag(-sin(xr)*sinh(xi));
return;
}
static void
-nc_cosh(npy_cdouble *x, npy_cdouble *r)
+nc_cosh(std::complex<double> *x, std::complex<double> *r)
{
- double xr=x->real, xi=x->imag;
- r->real = cos(xi)*cosh(xr);
- r->imag = sin(xi)*sinh(xr);
+ double xr=x->real(), xi=x->imag();
+ r->real(cos(xi)*cosh(xr));
+ r->imag(sin(xi)*sinh(xr));
return;
}
@@ -348,39 +349,39 @@
#define M_LOG10_E 0.434294481903251827651128918916605082294397
static void
-nc_log10(npy_cdouble *x, npy_cdouble *r)
+nc_log10(std::complex<double> *x, std::complex<double> *r)
{
nc_log(x, r);
- r->real *= M_LOG10_E;
- r->imag *= M_LOG10_E;
+ r->real(r->real() * M_LOG10_E);
+ r->imag(r->imag() * M_LOG10_E);
return;
}
static void
-nc_sin(npy_cdouble *x, npy_cdouble *r)
+nc_sin(std::complex<double> *x, std::complex<double> *r)
{
- double xr=x->real, xi=x->imag;
- r->real = sin(xr)*cosh(xi);
- r->imag = cos(xr)*sinh(xi);
+ double xr=x->real(), xi=x->imag();
+ r->real(sin(xr)*cosh(xi));
+ r->imag(cos(xr)*sinh(xi));
return;
}
static void
-nc_sinh(npy_cdouble *x, npy_cdouble *r)
+nc_sinh(std::complex<double> *x, std::complex<double> *r)
{
- double xr=x->real, xi=x->imag;
- r->real = cos(xi)*sinh(xr);
- r->imag = sin(xi)*cosh(xr);
+ double xr=x->real(), xi=x->imag();
+ r->real(cos(xi)*sinh(xr));
+ r->imag(sin(xi)*cosh(xr));
return;
}
static void
-nc_tan(npy_cdouble *x, npy_cdouble *r)
+nc_tan(std::complex<double> *x, std::complex<double> *r)
{
double sr,cr,shi,chi;
double rs,is,rc,ic;
double d;
- double xr=x->real, xi=x->imag;
+ double xr=x->real(), xi=x->imag();
sr = sin(xr);
cr = cos(xr);
shi = sinh(xi);
@@ -390,18 +391,18 @@
rc = cr*chi;
ic = -sr*shi;
d = rc*rc + ic*ic;
- r->real = (rs*rc+is*ic)/d;
- r->imag = (is*rc-rs*ic)/d;
+ r->real((rs*rc+is*ic)/d);
+ r->imag((is*rc-rs*ic)/d);
return;
}
static void
-nc_tanh(npy_cdouble *x, npy_cdouble *r)
+nc_tanh(std::complex<double> *x, std::complex<double> *r)
{
double si,ci,shr,chr;
double rs,is,rc,ic;
double d;
- double xr=x->real, xi=x->imag;
+ double xr=x->real(), xi=x->imag();
si = sin(xi);
ci = cos(xi);
shr = sinh(xr);
@@ -411,16 +412,16 @@
rc = ci*chr;
ic = si*shr;
d = rc*rc + ic*ic;
- r->real = (rs*rc+is*ic)/d;
- r->imag = (is*rc-rs*ic)/d;
+ r->real((rs*rc+is*ic)/d);
+ r->imag((is*rc-rs*ic)/d);
return;
}
static void
-nc_abs(npy_cdouble *x, npy_cdouble *r)
+nc_abs(std::complex<double> *x, std::complex<double> *r)
{
- r->real = sqrt(x->real*x->real + x->imag*x->imag);
- r->imag = 0;
+ r->real(sqrt(x->real()*x->real() + x->imag()*x->imag()));
+ r->imag(0);
}
#endif // NUMEXPR_COMPLEX_FUNCTIONS_HPP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr/interp_body.cpp new/numexpr-2.8.8/numexpr/interp_body.cpp
--- old/numexpr-2.8.7/numexpr/interp_body.cpp 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/numexpr/interp_body.cpp 2023-12-11 13:56:26.000000000 +0100
@@ -199,7 +199,7 @@
#define s3 ((char *)x3+j*sb3)
/* Some temporaries */
double da, db;
- npy_cdouble ca, cb;
+ std::complex<double> ca, cb;
switch (op) {
@@ -432,19 +432,19 @@
(const MKL_Complex16*)x1,
(MKL_Complex16*)dest));
#else
- VEC_ARG1(ca.real = c1r;
- ca.imag = c1i;
+ VEC_ARG1(ca.real(c1r);
+ ca.imag(c1i);
functions_cc[arg2](&ca, &ca);
- cr_dest = ca.real;
- ci_dest = ca.imag);
+ cr_dest = ca.real();
+ ci_dest = ca.imag());
#endif
- case OP_FUNC_CCCN: VEC_ARG2(ca.real = c1r;
- ca.imag = c1i;
- cb.real = c2r;
- cb.imag = c2i;
+ case OP_FUNC_CCCN: VEC_ARG2(ca.real(c1r);
+ ca.imag(c1i);
+ cb.real(c2r);
+ cb.imag(c2i);
functions_ccc[arg3](&ca, &cb, &ca);
- cr_dest = ca.real;
- ci_dest = ca.imag);
+ cr_dest = ca.real();
+ ci_dest = ca.imag());
case OP_REAL_DC: VEC_ARG1(d_dest = c1r);
case OP_IMAG_DC: VEC_ARG1(d_dest = c1i);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr/interpreter.cpp new/numexpr-2.8.8/numexpr/interpreter.cpp
--- old/numexpr-2.8.7/numexpr/interpreter.cpp 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/numexpr/interpreter.cpp 2023-12-11 13:56:26.000000000 +0100
@@ -246,7 +246,7 @@
-typedef void (*FuncCCPtr)(npy_cdouble*, npy_cdouble*);
+typedef void (*FuncCCPtr)(std::complex<double>*, std::complex<double>*);
FuncCCPtr functions_cc[] = {
#define FUNC_CC(fop, s, f, ...) f,
@@ -295,7 +295,7 @@
#endif
-typedef void (*FuncCCCPtr)(npy_cdouble*, npy_cdouble*, npy_cdouble*);
+typedef void (*FuncCCCPtr)(std::complex<double>*, std::complex<double>*, std::complex<double>*);
FuncCCCPtr functions_ccc[] = {
#define FUNC_CCC(fop, s, f) f,
@@ -980,10 +980,10 @@
PyObject *
NumExpr_run(NumExprObject *self, PyObject *args, PyObject *kwds)
{
- PyArrayObject *operands[NPY_MAXARGS];
- PyArray_Descr *dtypes[NPY_MAXARGS], **dtypes_tmp;
+ PyArrayObject *operands[NE_MAXARGS];
+ PyArray_Descr *dtypes[NE_MAXARGS], **dtypes_tmp;
PyObject *tmp, *ret;
- npy_uint32 op_flags[NPY_MAXARGS];
+ npy_uint32 op_flags[NE_MAXARGS];
NPY_CASTING casting = NPY_SAFE_CASTING;
NPY_ORDER order = NPY_KEEPORDER;
unsigned int i, n_inputs;
@@ -997,8 +997,8 @@
bool reduction_outer_loop = false, need_output_buffering = false, full_reduction = false;
// To specify axes when doing a reduction
- int op_axes_values[NPY_MAXARGS][NPY_MAXDIMS],
- op_axes_reduction_values[NPY_MAXARGS];
+ int op_axes_values[NE_MAXARGS][NPY_MAXDIMS],
+ op_axes_reduction_values[NE_MAXARGS];
int *op_axes_ptrs[NPY_MAXDIMS];
int oa_ndim = 0;
int **op_axes = NULL;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr/necompiler.py new/numexpr-2.8.8/numexpr/necompiler.py
--- old/numexpr-2.8.7/numexpr/necompiler.py 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/numexpr/necompiler.py 2023-12-11 13:56:26.000000000 +0100
@@ -265,7 +265,7 @@
_flow_pat = r'[\;\[\:]'
_dunder_pat = r'(^|[^\w])__[\w]+__($|[^\w])'
-_attr_pat = r'\.\b(?!(real|imag|\d*[eE]?[+-]?\d+)\b)'
+_attr_pat = r'\.\b(?!(real|imag|(\d*[eE]?[+-]?\d+)|\d*j)\b)'
_blacklist_re = re.compile(f'{_flow_pat}|{_dunder_pat}|{_attr_pat}')
def stringToExpression(s, types, context, sanitize: bool=True):
@@ -275,6 +275,7 @@
# parse into its homebrew AST. This is to protect the call to `eval` below.
# We forbid `;`, `:`. `[` and `__`, and attribute access via '.'.
# We cannot ban `.real` or `.imag` however...
+ # We also cannot ban `.\d*j`, where `\d*` is some digits (or none), e.g. 1.5j, 1.j
if sanitize:
no_whitespace = re.sub(r'\s+', '', s)
if _blacklist_re.search(no_whitespace) is not None:
@@ -970,11 +971,12 @@
out=out, order=order, casting=casting,
_frame_depth=_frame_depth, sanitize=sanitize, **kwargs)
if e is None:
- return re_evaluate(local_dict=local_dict, _frame_depth=_frame_depth)
+ return re_evaluate(local_dict=local_dict, global_dict=global_dict, _frame_depth=_frame_depth)
else:
raise e
def re_evaluate(local_dict: Optional[Dict] = None,
+ global_dict: Optional[Dict] = None,
_frame_depth: int=2) -> numpy.ndarray:
"""
Re-evaluate the previous executed array expression without any check.
@@ -998,7 +1000,7 @@
except KeyError:
raise RuntimeError("A previous evaluate() execution was not found, please call `validate` or `evaluate` once before `re_evaluate`")
argnames = _numexpr_last['argnames']
- args = getArguments(argnames, local_dict, _frame_depth=_frame_depth)
+ args = getArguments(argnames, local_dict, global_dict, _frame_depth=_frame_depth)
kwargs = _numexpr_last['kwargs']
with evaluate_lock:
return compiled_ex(*args, **kwargs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr/numexpr_config.hpp new/numexpr-2.8.8/numexpr/numexpr_config.hpp
--- old/numexpr-2.8.7/numexpr/numexpr_config.hpp 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/numexpr/numexpr_config.hpp 2023-12-11 13:56:26.000000000 +0100
@@ -23,6 +23,10 @@
// environment variable, "NUMEXPR_MAX_THREADS"
#define DEFAULT_MAX_THREADS 64
+// Remove dependence on NPY_MAXARGS, which would be a runtime constant instead of compiletime
+// constant. If numpy raises NPY_MAXARGS, we should notice and raise this as well
+#define NE_MAXARGS 64
+
#if defined(_WIN32)
#include "win32/pthread.h"
#include <process.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr/version.py new/numexpr-2.8.8/numexpr/version.py
--- old/numexpr-2.8.7/numexpr/version.py 2023-09-26 10:15:25.000000000 +0200
+++ new/numexpr-2.8.8/numexpr/version.py 2023-12-11 14:06:59.000000000 +0100
@@ -1,4 +1,4 @@
# THIS FILE IS GENERATED BY `SETUP.PY`
-version = '2.8.7'
-numpy_build_version = '1.23.2'
+version = '2.8.8'
+numpy_build_version = '1.26.1'
platform_machine = 'AMD64'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/numexpr.egg-info/PKG-INFO new/numexpr-2.8.8/numexpr.egg-info/PKG-INFO
--- old/numexpr-2.8.7/numexpr.egg-info/PKG-INFO 2023-09-26 10:15:25.000000000 +0200
+++ new/numexpr-2.8.8/numexpr.egg-info/PKG-INFO 2023-12-11 14:06:59.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: numexpr
-Version: 2.8.7
+Version: 2.8.8
Summary: Fast numerical expression evaluator for NumPy
Home-page: https://github.com/pydata/numexpr
Author: David M. Cooke, Francesc Alted, and others
@@ -30,8 +30,8 @@
======================================================
:Author: David M. Cooke, Francesc Alted, and others.
-:Maintainer: Robert A. McLeod
-:Contact: robbmcleod(a)gmail.com
+:Maintainer: Francesc Alted
+:Contact: faltet(a)gmail.com
:URL: https://github.com/pydata/numexpr
:Documentation: http://numexpr.readthedocs.io/en/latest/
:Travis CI: |travis|
@@ -51,21 +51,6 @@
.. |version| image:: https://img.shields.io/pypi/v/numexpr.png
:target: https://pypi.python.org/pypi/numexpr
-IMPORTANT NOTE: NumExpr is looking for maintainers!
----------------------------------------------------
-
-After 5 years as a solo maintainer (and performing a most excellent work), Robert McLeod
-is asking for a well deserved break. So the NumExpr project is looking for a new
-maintainer for a package that is used in pandas, PyTables and many other packages.
-If have benefited of NumExpr capabilities in the past, and willing to contribute back to
-the community, we would be happy to hear about you!
-
-We are looking for someone that is knowledgeable about compiling extensions, and that is
-ready to spend some cycles in making releases (2 or 3 a year, maybe even less!).
-Interested? just open a new ticket here and we will help you onboarding!
-
-Thank you!
-
What is NumExpr?
----------------
@@ -96,19 +81,19 @@
into small chunks that easily fit in the cache of the CPU and passed
to the virtual machine. The virtual machine then applies the
operations on each chunk. It's worth noting that all temporaries and
-constants in the expression are also chunked. Chunks are distributed among
-the available cores of the CPU, resulting in highly parallelized code
+constants in the expression are also chunked. Chunks are distributed among
+the available cores of the CPU, resulting in highly parallelized code
execution.
The result is that NumExpr can get the most of your machine computing
capabilities for array-wise computations. Common speed-ups with regard
to NumPy are usually between 0.95x (for very simple expressions like
-:code:`'a + 1'`) and 4x (for relatively complex ones like :code:`'a*b-4.1*a > 2.5*b'`),
-although much higher speed-ups can be achieved for some functions and complex
+:code:`'a + 1'`) and 4x (for relatively complex ones like :code:`'a*b-4.1*a > 2.5*b'`),
+although much higher speed-ups can be achieved for some functions and complex
math operations (up to 15x in some cases).
-NumExpr performs best on matrices that are too large to fit in L1 CPU cache.
-In order to get a better idea on the different speed-ups that can be achieved
+NumExpr performs best on matrices that are too large to fit in L1 CPU cache.
+In order to get a better idea on the different speed-ups that can be achieved
on your platform, run the provided benchmarks.
Installation
@@ -117,13 +102,13 @@
From wheels
^^^^^^^^^^^
-NumExpr is available for install via `pip` for a wide range of platforms and
-Python versions (which may be browsed at: https://pypi.org/project/numexpr/#files).
+NumExpr is available for install via `pip` for a wide range of platforms and
+Python versions (which may be browsed at: https://pypi.org/project/numexpr/#files).
Installation can be performed as::
pip install numexpr
-If you are using the Anaconda or Miniconda distribution of Python you may prefer
+If you are using the Anaconda or Miniconda distribution of Python you may prefer
to use the `conda` package manager in this case::
conda install numexpr
@@ -131,18 +116,18 @@
From Source
^^^^^^^^^^^
-On most \*nix systems your compilers will already be present. However if you
+On most \*nix systems your compilers will already be present. However if you
are using a virtual environment with a substantially newer version of Python than
your system Python you may be prompted to install a new version of `gcc` or `clang`.
-For Windows, you will need to install the Microsoft Visual C++ Build Tools
-(which are free) first. The version depends on which version of Python you have
+For Windows, you will need to install the Microsoft Visual C++ Build Tools
+(which are free) first. The version depends on which version of Python you have
installed:
https://wiki.python.org/moin/WindowsCompilers
-For Python 3.6+ simply installing the latest version of MSVC build tools should
-be sufficient. Note that wheels found via pip do not include MKL support. Wheels
+For Python 3.6+ simply installing the latest version of MSVC build tools should
+be sufficient. Note that wheels found via pip do not include MKL support. Wheels
available via `conda` will have MKL, if the MKL backend is used for NumPy.
See `requirements.txt` for the required version of NumPy.
@@ -160,19 +145,19 @@
Enable Intel® MKL support
^^^^^^^^^^^^^^^^^^^^^^^^^
-NumExpr includes support for Intel's MKL library. This may provide better
-performance on Intel architectures, mainly when evaluating transcendental
-functions (trigonometrical, exponential, ...).
-
-If you have Intel's MKL, copy the `site.cfg.example` that comes with the
-distribution to `site.cfg` and edit the latter file to provide correct paths to
-the MKL libraries in your system. After doing this, you can proceed with the
+NumExpr includes support for Intel's MKL library. This may provide better
+performance on Intel architectures, mainly when evaluating transcendental
+functions (trigonometrical, exponential, ...).
+
+If you have Intel's MKL, copy the `site.cfg.example` that comes with the
+distribution to `site.cfg` and edit the latter file to provide correct paths to
+the MKL libraries in your system. After doing this, you can proceed with the
usual building instructions listed above.
-Pay attention to the messages during the building process in order to know
-whether MKL has been detected or not. Finally, you can check the speed-ups on
-your machine by running the `bench/vml_timing.py` script (you can play with
-different parameters to the `set_vml_accuracy_mode()` and `set_vml_num_threads()`
+Pay attention to the messages during the building process in order to know
+whether MKL has been detected or not. Finally, you can check the speed-ups on
+your machine by running the `bench/vml_timing.py` script (you can play with
+different parameters to the `set_vml_accuracy_mode()` and `set_vml_num_threads()`
functions in the script so as to see how it would affect performance).
Usage
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/setup.cfg new/numexpr-2.8.8/setup.cfg
--- old/numexpr-2.8.7/setup.cfg 2023-09-26 10:15:25.606307000 +0200
+++ new/numexpr-2.8.8/setup.cfg 2023-12-11 14:06:59.466662000 +0100
@@ -1,6 +1,6 @@
[metadata]
name = numexpr
-version = 2.8.7
+version = 2.8.8
description = Fast numerical expression evaluator for NumPy
author = David M. Cooke, Francesc Alted, and others
maintainer = Robert A. McLeod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/numexpr-2.8.7/setup.py new/numexpr-2.8.8/setup.py
--- old/numexpr-2.8.7/setup.py 2023-09-26 10:01:22.000000000 +0200
+++ new/numexpr-2.8.8/setup.py 2023-12-11 13:56:26.000000000 +0100
@@ -11,15 +11,16 @@
import os, os.path as op
from setuptools import setup, Extension
-from setuptools.config import read_configuration
import platform
+import configparser
import numpy as np
with open('requirements.txt') as f:
requirements = f.read().splitlines()
with open('numexpr/version.py', 'w') as fh:
- cfg = read_configuration("setup.cfg")
+ cfg = configparser.ConfigParser()
+ cfg.read('setup.cfg')
fh.write('# THIS FILE IS GENERATED BY `SETUP.PY`\n')
fh.write("version = '%s'\n" % cfg['metadata']['version'])
try:
@@ -54,12 +55,11 @@
"""
Parses `site.cfg`, if it exists, to determine the location of Intel oneAPI MKL.
- To compile NumExpr with MKL (VML) support, typically you need to copy the
- provided `site.cfg.example` to `site.cfg` and then edit the paths in the
- configuration lines for `include_dirs` and `library_dirs` paths to point
+ To compile NumExpr with MKL (VML) support, typically you need to copy the
+ provided `site.cfg.example` to `site.cfg` and then edit the paths in the
+ configuration lines for `include_dirs` and `library_dirs` paths to point
to the appropriate directories on your machine.
"""
- import configparser
site = configparser.ConfigParser()
if not op.isfile('site.cfg'):
return
@@ -77,7 +77,7 @@
site['mkl']['libraries'].replace(os.pathsep, ',').split(','))
def_macros.append(('USE_VML', None))
print(f'FOUND MKL IMPORT')
-
+
def setup_package():
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-pylint for openSUSE:Factory checked in at 2023-12-18 22:56:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pylint (Old)
and /work/SRC/openSUSE:Factory/.python-pylint.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pylint"
Mon Dec 18 22:56:05 2023 rev:40 rq:1133805 version:3.0.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pylint/python-pylint.changes 2023-11-27 22:45:32.322622379 +0100
+++ /work/SRC/openSUSE:Factory/.python-pylint.new.9037/python-pylint.changes 2023-12-18 22:56:16.248331872 +0100
@@ -1,0 +2,22 @@
+Mon Dec 18 08:23:50 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.0.3:
+ * Fixed false positive for ``unnecessary-lambda`` when the call
+ has keyword arguments but not the lambda.
+ * Fixed incorrect suggestion for shallow copy in unnecessary-
+ comprehension
+ * After changing b = [x for x in a] to b = a based on the
+ suggestion, the script now prints [0, 2, 3]. The correct
+ suggestion should be use list(a) to preserve the original
+ behavior.
+ * Fix false positives for ``undefined-variable`` and ``unused-
+ argument`` for classes and functions using Python 3.12 generic
+ type syntax.
+ * Fixed ``pointless-string-statement`` false positive for
+ docstrings on Python 3.12 type aliases.
+ * Fix false positive for ``invalid-exception-operation`` when
+ concatenating tuples of exception types.
+ * Fix a bug where pylint was unable to walk recursively through
+ a directory if the directory has an `__init__.py` file.
+
+-------------------------------------------------------------------
Old:
----
pylint-3.0.2-gh.tar.gz
New:
----
pylint-3.0.3-gh.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pylint.spec ++++++
--- /var/tmp/diff_new_pack.AylRzd/_old 2023-12-18 22:56:17.324371279 +0100
+++ /var/tmp/diff_new_pack.AylRzd/_new 2023-12-18 22:56:17.328371425 +0100
@@ -19,7 +19,7 @@
%{?sle15_python_module_pythons}
%bcond_without tests
Name: python-pylint
-Version: 3.0.2
+Version: 3.0.3
Release: 0
Summary: Syntax and style checker for Python code
License: GPL-2.0-or-later
++++++ pylint-3.0.2-gh.tar.gz -> pylint-3.0.3-gh.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/doc/data/messages/i/implicit-str-concat/details.rst new/pylint-3.0.3/doc/data/messages/i/implicit-str-concat/details.rst
--- old/pylint-3.0.2/doc/data/messages/i/implicit-str-concat/details.rst 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/doc/data/messages/i/implicit-str-concat/details.rst 2023-12-11 14:16:40.000000000 +0100
@@ -11,7 +11,7 @@
.. code-block:: toml
[STRING_CONSTANT]
- check-str-concat-over-line-jumps = yes
+ check-str-concat-over-line-jumps = true
However, the drawback of this setting is that it will trigger false positive
for string parameters passed on multiple lines in function calls:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/doc/data/messages/p/pointless-string-statement/related.rst new/pylint-3.0.3/doc/data/messages/p/pointless-string-statement/related.rst
--- old/pylint-3.0.2/doc/data/messages/p/pointless-string-statement/related.rst 1970-01-01 01:00:00.000000000 +0100
+++ new/pylint-3.0.3/doc/data/messages/p/pointless-string-statement/related.rst 2023-12-11 14:16:40.000000000 +0100
@@ -0,0 +1 @@
+- `Discussion thread re: docstrings on assignments <https://discuss.python.org/t/docstrings-for-new-type-aliases-as-defined-in-…>`_
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/doc/whatsnew/3/3.0/index.rst new/pylint-3.0.3/doc/whatsnew/3/3.0/index.rst
--- old/pylint-3.0.2/doc/whatsnew/3/3.0/index.rst 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/doc/whatsnew/3/3.0/index.rst 2023-12-11 14:16:40.000000000 +0100
@@ -65,6 +65,58 @@
.. towncrier release notes start
+What's new in Pylint 3.0.3?
+---------------------------
+Release date: 2023-12-11
+
+
+False Positives Fixed
+---------------------
+
+- Fixed false positive for ``unnecessary-lambda`` when the call has keyword arguments but not the lambda.
+
+ Closes #9148 (`#9148 <https://github.com/pylint-dev/pylint/issues/9148>`_)
+
+- Fixed incorrect suggestion for shallow copy in unnecessary-comprehension
+
+ Example of the suggestion:
+ #pylint: disable=missing-module-docstring
+ a = [1, 2, 3]
+ b = [x for x in a]
+ b[0] = 0
+ print(a) # [1, 2, 3]
+
+ After changing b = [x for x in a] to b = a based on the suggestion, the script now prints [0, 2, 3]. The correct suggestion should be use list(a) to preserve the original behavior.
+
+ Closes #9172 (`#9172 <https://github.com/pylint-dev/pylint/issues/9172>`_)
+
+- Fix false positives for ``undefined-variable`` and ``unused-argument`` for
+ classes and functions using Python 3.12 generic type syntax.
+
+ Closes #9193 (`#9193 <https://github.com/pylint-dev/pylint/issues/9193>`_)
+
+- Fixed ``pointless-string-statement`` false positive for docstrings
+ on Python 3.12 type aliases.
+
+ Closes #9268 (`#9268 <https://github.com/pylint-dev/pylint/issues/9268>`_)
+
+- Fix false positive for ``invalid-exception-operation`` when concatenating tuples
+ of exception types.
+
+ Closes #9288 (`#9288 <https://github.com/pylint-dev/pylint/issues/9288>`_)
+
+
+
+Other Bug Fixes
+---------------
+
+- Fix a bug where pylint was unable to walk recursively through a directory if the
+ directory has an `__init__.py` file.
+
+ Closes #9210 (`#9210 <https://github.com/pylint-dev/pylint/issues/9210>`_)
+
+
+
What's new in Pylint 3.0.2?
---------------------------
Release date: 2023-10-22
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/__pkginfo__.py new/pylint-3.0.3/pylint/__pkginfo__.py
--- old/pylint-3.0.2/pylint/__pkginfo__.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/__pkginfo__.py 2023-12-11 14:16:40.000000000 +0100
@@ -9,7 +9,7 @@
from __future__ import annotations
-__version__ = "3.0.2"
+__version__ = "3.0.3"
def get_numversion_from_version(v: str) -> tuple[int, int, int]:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/checkers/base/basic_checker.py new/pylint-3.0.3/pylint/checkers/base/basic_checker.py
--- old/pylint-3.0.2/pylint/checkers/base/basic_checker.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/checkers/base/basic_checker.py 2023-12-11 14:16:40.000000000 +0100
@@ -446,7 +446,9 @@
if (
sibling is not None
and sibling.scope() is scope
- and isinstance(sibling, (nodes.Assign, nodes.AnnAssign))
+ and isinstance(
+ sibling, (nodes.Assign, nodes.AnnAssign, nodes.TypeAlias)
+ )
):
return
self.add_message("pointless-string-statement", node=node)
@@ -519,7 +521,6 @@
)
@utils.only_required_for_messages("unnecessary-lambda")
- # pylint: disable-next=too-many-return-statements
def visit_lambda(self, node: nodes.Lambda) -> None:
"""Check whether the lambda is suspicious."""
# if the body of the lambda is a call expression with the same
@@ -544,12 +545,13 @@
# return something else (but we don't check that, yet).
return
- call_site = astroid.arguments.CallSite.from_call(call)
ordinary_args = list(node.args.args)
new_call_args = list(self._filter_vararg(node, call.args))
if node.args.kwarg:
- if self._has_variadic_argument(call.kwargs, node.args.kwarg):
+ if self._has_variadic_argument(call.keywords, node.args.kwarg):
return
+ elif call.keywords:
+ return
if node.args.vararg:
if self._has_variadic_argument(call.starargs, node.args.vararg):
@@ -557,16 +559,6 @@
elif call.starargs:
return
- if call.keywords:
- # Look for additional keyword arguments that are not part
- # of the lambda's signature
- lambda_kwargs = {keyword.name for keyword in node.args.defaults}
- if len(lambda_kwargs) != len(call_site.keyword_arguments):
- # Different lengths, so probably not identical
- return
- if set(call_site.keyword_arguments).difference(lambda_kwargs):
- return
-
# The "ordinary" arguments must be in a correspondence such that:
# ordinary_args[i].name == call.args[i].name.
if len(ordinary_args) != len(new_call_args):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/checkers/exceptions.py new/pylint-3.0.3/pylint/checkers/exceptions.py
--- old/pylint-3.0.2/pylint/checkers/exceptions.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/checkers/exceptions.py 2023-12-11 14:16:40.000000000 +0100
@@ -533,8 +533,19 @@
@utils.only_required_for_messages("wrong-exception-operation")
def visit_binop(self, node: nodes.BinOp) -> None:
if isinstance(node.parent, nodes.ExceptHandler):
+ both_sides_tuple_or_uninferable = isinstance(
+ utils.safe_infer(node.left), (nodes.Tuple, util.UninferableBase)
+ ) and isinstance(
+ utils.safe_infer(node.right), (nodes.Tuple, util.UninferableBase)
+ )
+ # Tuple concatenation allowed
+ if both_sides_tuple_or_uninferable:
+ if node.op == "+":
+ return
+ suggestion = f"Did you mean '({node.left.as_string()} + {node.right.as_string()})' instead?"
# except (V | A)
- suggestion = f"Did you mean '({node.left.as_string()}, {node.right.as_string()})' instead?"
+ else:
+ suggestion = f"Did you mean '({node.left.as_string()}, {node.right.as_string()})' instead?"
self.add_message("wrong-exception-operation", node=node, args=(suggestion,))
@utils.only_required_for_messages("wrong-exception-operation")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/checkers/refactoring/refactoring_checker.py new/pylint-3.0.3/pylint/checkers/refactoring/refactoring_checker.py
--- old/pylint-3.0.2/pylint/checkers/refactoring/refactoring_checker.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/checkers/refactoring/refactoring_checker.py 2023-12-11 14:16:40.000000000 +0100
@@ -1779,15 +1779,15 @@
if isinstance(node.parent, nodes.DictComp) and isinstance(
inferred, astroid.objects.DictItems
):
- args = (f"{node.iter.func.expr.as_string()}",)
- elif (
- isinstance(node.parent, nodes.ListComp)
- and isinstance(inferred, nodes.List)
- ) or (
- isinstance(node.parent, nodes.SetComp)
- and isinstance(inferred, nodes.Set)
+ args = (f"dict({node.iter.func.expr.as_string()})",)
+ elif isinstance(node.parent, nodes.ListComp) and isinstance(
+ inferred, nodes.List
):
- args = (f"{node.iter.as_string()}",)
+ args = (f"list({node.iter.as_string()})",)
+ elif isinstance(node.parent, nodes.SetComp) and isinstance(
+ inferred, nodes.Set
+ ):
+ args = (f"set({node.iter.as_string()})",)
if args:
self.add_message(
"unnecessary-comprehension", node=node.parent, args=args
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/checkers/similar.py new/pylint-3.0.3/pylint/checkers/similar.py
--- old/pylint-3.0.2/pylint/checkers/similar.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/checkers/similar.py 2023-12-11 14:16:40.000000000 +0100
@@ -839,7 +839,7 @@
stream must implement the readlines method
"""
if self.linter.current_name is None:
- # TODO: 3.0 Fix current_name
+ # TODO: 4.0 Fix current_name
warnings.warn(
(
"In pylint 3.0 the current_name attribute of the linter object should be a string. "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/checkers/variables.py new/pylint-3.0.3/pylint/checkers/variables.py
--- old/pylint-3.0.2/pylint/checkers/variables.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/checkers/variables.py 2023-12-11 14:16:40.000000000 +0100
@@ -1738,6 +1738,9 @@
elif consumer.scope_type == "function" and self._defined_in_function_definition(
node, consumer.node
):
+ if any(node.name == param.name.name for param in consumer.node.type_params):
+ return False
+
# If the name node is used as a function default argument's value or as
# a decorator, then start from the parent frame of the function instead
# of the function frame - and thus open an inner class scope
@@ -2262,10 +2265,13 @@
isinstance(defframe, nodes.FunctionDef)
and frame is defframe
and defframe.parent_of(node)
- and stmt is not defstmt
+ and (
+ defnode in defframe.type_params
+ # Single statement function, with the statement on the
+ # same line as the function definition
+ or stmt is not defstmt
+ )
):
- # Single statement function, with the statement on the
- # same line as the function definition
maybe_before_assign = False
elif (
isinstance(defstmt, NODES_WITH_VALUE_ATTR)
@@ -2565,7 +2571,7 @@
else_stmt, (nodes.Return, nodes.Raise, nodes.Break, nodes.Continue)
):
return
- # TODO: 3.0: Consider using RefactoringChecker._is_function_def_never_returning
+ # TODO: 4.0: Consider using RefactoringChecker._is_function_def_never_returning
if isinstance(else_stmt, nodes.Expr) and isinstance(
else_stmt.value, nodes.Call
):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/config/callback_actions.py new/pylint-3.0.3/pylint/config/callback_actions.py
--- old/pylint-3.0.2/pylint/config/callback_actions.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/config/callback_actions.py 2023-12-11 14:16:40.000000000 +0100
@@ -243,7 +243,7 @@
values: str | Sequence[Any] | None,
option_string: str | None = "--generate-rcfile",
) -> None:
- # TODO: 3.x: Deprecate this after the auto-upgrade functionality of
+ # TODO: 4.x: Deprecate this after the auto-upgrade functionality of
# pylint-config is sufficient.
self.run.linter._generate_config(skipsections=("Commands",))
sys.exit(0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/config/config_initialization.py new/pylint-3.0.3/pylint/config/config_initialization.py
--- old/pylint-3.0.2/pylint/config/config_initialization.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/config/config_initialization.py 2023-12-11 14:16:40.000000000 +0100
@@ -110,13 +110,14 @@
"unrecognized-option", args=unrecognized_options_message, line=0
)
- # TODO 3.1: Change this to emit unknown-option-value
+ # TODO: Change this to be checked only when upgrading the configuration
for exc_name in linter.config.overgeneral_exceptions:
if "." not in exc_name:
warnings.warn_explicit(
f"'{exc_name}' is not a proper value for the 'overgeneral-exceptions' option. "
f"Use fully qualified name (maybe 'builtins.{exc_name}' ?) instead. "
- "This will cease to be checked at runtime in 3.1.0.",
+ "This will cease to be checked at runtime when the configuration "
+ "upgrader is released.",
category=UserWarning,
filename="pylint: Command line or configuration file",
lineno=1,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/lint/expand_modules.py new/pylint-3.0.3/pylint/lint/expand_modules.py
--- old/pylint-3.0.2/pylint/lint/expand_modules.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/lint/expand_modules.py 2023-12-11 14:16:40.000000000 +0100
@@ -144,8 +144,9 @@
)
if has_init or is_namespace or is_directory:
for subfilepath in modutils.get_module_files(
- os.path.dirname(filepath), ignore_list, list_all=is_namespace
+ os.path.dirname(filepath) or ".", ignore_list, list_all=is_namespace
):
+ subfilepath = os.path.normpath(subfilepath)
if filepath == subfilepath:
continue
if _is_in_ignore_list_re(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/testutils/functional/test_file.py new/pylint-3.0.3/pylint/testutils/functional/test_file.py
--- old/pylint-3.0.2/pylint/testutils/functional/test_file.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/testutils/functional/test_file.py 2023-12-11 14:16:40.000000000 +0100
@@ -56,7 +56,7 @@
def __init__(self, directory: str, filename: str) -> None:
self._directory = directory
self.base = filename.replace(".py", "")
- # TODO: 3.0: Deprecate FunctionalTestFile.options and related code
+ # TODO:4.0: Deprecate FunctionalTestFile.options and related code
# We should just parse these options like a normal configuration file.
self.options: TestFileOptions = {
"min_pyver": (2, 5),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pylint/utils/utils.py new/pylint-3.0.3/pylint/utils/utils.py
--- old/pylint-3.0.2/pylint/utils/utils.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pylint/utils/utils.py 2023-12-11 14:16:40.000000000 +0100
@@ -315,7 +315,7 @@
) -> None:
"""Format an option's section using the INI format."""
warnings.warn(
- "format_section has been deprecated. It will be removed in pylint 3.0.",
+ "format_section has been deprecated. It will be removed in pylint 4.0.",
DeprecationWarning,
stacklevel=2,
)
@@ -330,7 +330,7 @@
def _ini_format(stream: TextIO, options: list[tuple[str, OptionDict, Any]]) -> None:
"""Format options using the INI format."""
warnings.warn(
- "_ini_format has been deprecated. It will be removed in pylint 3.0.",
+ "_ini_format has been deprecated. It will be removed in pylint 4.0.",
DeprecationWarning,
stacklevel=2,
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/pyproject.toml new/pylint-3.0.3/pyproject.toml
--- old/pylint-3.0.2/pyproject.toml 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/pyproject.toml 2023-12-11 14:16:40.000000000 +0100
@@ -42,7 +42,7 @@
# Pinned to dev of second minor update to allow editable installs and fix primer issues,
# see https://github.com/pylint-dev/astroid/issues/1341
"astroid>=3.0.1,<=3.1.0-dev0",
- "isort>=4.2.5,<6",
+ "isort>=4.2.5,<6,!=5.13.0",
"mccabe>=0.6,<0.8",
"tomli>=1.1.0;python_version<'3.11'",
"tomlkit>=0.10.1",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tbump.toml new/pylint-3.0.3/tbump.toml
--- old/pylint-3.0.2/tbump.toml 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tbump.toml 2023-12-11 14:16:40.000000000 +0100
@@ -1,7 +1,7 @@
github_url = "https://github.com/pylint-dev/pylint"
[version]
-current = "3.0.2"
+current = "3.0.3"
regex = '''
^(?P<major>0|[1-9]\d*)
\.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/s/statement_without_effect_py312.py new/pylint-3.0.3/tests/functional/s/statement_without_effect_py312.py
--- old/pylint-3.0.2/tests/functional/s/statement_without_effect_py312.py 1970-01-01 01:00:00.000000000 +0100
+++ new/pylint-3.0.3/tests/functional/s/statement_without_effect_py312.py 2023-12-11 14:16:40.000000000 +0100
@@ -0,0 +1,7 @@
+"""Move this into statement_without_effect.py when python 3.12 is minimum."""
+
+type MyTuple = tuple[str, str]
+"""
+Multiline docstring
+for Python3.12 type alias (PEP 695)
+"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/s/statement_without_effect_py312.rc new/pylint-3.0.3/tests/functional/s/statement_without_effect_py312.rc
--- old/pylint-3.0.2/tests/functional/s/statement_without_effect_py312.rc 1970-01-01 01:00:00.000000000 +0100
+++ new/pylint-3.0.3/tests/functional/s/statement_without_effect_py312.rc 2023-12-11 14:16:40.000000000 +0100
@@ -0,0 +1,2 @@
+[testoptions]
+min_pyver=3.12
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/u/undefined/undefined_variable_py312.py new/pylint-3.0.3/tests/functional/u/undefined/undefined_variable_py312.py
--- old/pylint-3.0.2/tests/functional/u/undefined/undefined_variable_py312.py 1970-01-01 01:00:00.000000000 +0100
+++ new/pylint-3.0.3/tests/functional/u/undefined/undefined_variable_py312.py 2023-12-11 14:16:40.000000000 +0100
@@ -0,0 +1,7 @@
+# pylint: disable=missing-function-docstring,missing-module-docstring,missing-class-docstring,too-few-public-methods
+
+def f[T](a: T) -> T:
+ print(a)
+
+class ChildClass[T, *Ts, **P]:
+ ...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/u/undefined/undefined_variable_py312.rc new/pylint-3.0.3/tests/functional/u/undefined/undefined_variable_py312.rc
--- old/pylint-3.0.2/tests/functional/u/undefined/undefined_variable_py312.rc 1970-01-01 01:00:00.000000000 +0100
+++ new/pylint-3.0.3/tests/functional/u/undefined/undefined_variable_py312.rc 2023-12-11 14:16:40.000000000 +0100
@@ -0,0 +1,2 @@
+[testoptions]
+min_pyver=3.12
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/u/unnecessary/unnecessary_comprehension.py new/pylint-3.0.3/tests/functional/u/unnecessary/unnecessary_comprehension.py
--- old/pylint-3.0.2/tests/functional/u/unnecessary/unnecessary_comprehension.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/functional/u/unnecessary/unnecessary_comprehension.py 2023-12-11 14:16:40.000000000 +0100
@@ -4,7 +4,9 @@
# List comprehensions
[x for x in iterable] # [unnecessary-comprehension]
[y for x in iterable] # expression != target_list
+[x for x in iterable] # [unnecessary-comprehension] use list(iterable)
[x for x,y,z in iterable] # expression != target_list
+[(x, y) for x, y in iterable] # [unnecessary-comprehension]
[(x,y,z) for x,y,z in iterable] # [unnecessary-comprehension]
[(x,y,z) for (x,y,z) in iterable] # [unnecessary-comprehension]
[x for x, *y in iterable] # expression != target_list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/u/unnecessary/unnecessary_comprehension.txt new/pylint-3.0.3/tests/functional/u/unnecessary/unnecessary_comprehension.txt
--- old/pylint-3.0.2/tests/functional/u/unnecessary/unnecessary_comprehension.txt 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/functional/u/unnecessary/unnecessary_comprehension.txt 2023-12-11 14:16:40.000000000 +0100
@@ -1,13 +1,15 @@
unnecessary-comprehension:5:0:5:21::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
-unnecessary-comprehension:8:0:8:31::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
-unnecessary-comprehension:9:0:9:33::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
-unnecessary-comprehension:17:7:17:42::Unnecessary use of a comprehension, use list(a_dict.items()) instead.:UNDEFINED
-unnecessary-comprehension:20:0:20:21::Unnecessary use of a comprehension, use set(iterable) instead.:UNDEFINED
-unnecessary-comprehension:23:0:23:31::Unnecessary use of a comprehension, use set(iterable) instead.:UNDEFINED
-unnecessary-comprehension:24:7:24:42::Unnecessary use of a comprehension, use set(iterable) instead.:UNDEFINED
-unnecessary-comprehension:32:0:32:27::Unnecessary use of a comprehension, use dict(iterable) instead.:UNDEFINED
-unnecessary-comprehension:34:0:34:29::Unnecessary use of a comprehension, use dict(iterable) instead.:UNDEFINED
-unnecessary-comprehension:46:0:46:26::Unnecessary use of a comprehension, use my_list instead.:UNDEFINED
-unnecessary-comprehension:47:8:47:42::Unnecessary use of a comprehension, use my_dict instead.:UNDEFINED
-consider-using-dict-items:48:0:None:None::Consider iterating with .items():UNDEFINED
-unnecessary-comprehension:49:0:49:25::Unnecessary use of a comprehension, use my_set instead.:UNDEFINED
+unnecessary-comprehension:7:0:7:21::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
+unnecessary-comprehension:9:0:9:29::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
+unnecessary-comprehension:10:0:10:31::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
+unnecessary-comprehension:11:0:11:33::Unnecessary use of a comprehension, use list(iterable) instead.:UNDEFINED
+unnecessary-comprehension:19:7:19:42::Unnecessary use of a comprehension, use list(a_dict.items()) instead.:UNDEFINED
+unnecessary-comprehension:22:0:22:21::Unnecessary use of a comprehension, use set(iterable) instead.:UNDEFINED
+unnecessary-comprehension:25:0:25:31::Unnecessary use of a comprehension, use set(iterable) instead.:UNDEFINED
+unnecessary-comprehension:26:7:26:42::Unnecessary use of a comprehension, use set(iterable) instead.:UNDEFINED
+unnecessary-comprehension:34:0:34:27::Unnecessary use of a comprehension, use dict(iterable) instead.:UNDEFINED
+unnecessary-comprehension:36:0:36:29::Unnecessary use of a comprehension, use dict(iterable) instead.:UNDEFINED
+unnecessary-comprehension:48:0:48:26::Unnecessary use of a comprehension, use list(my_list) instead.:UNDEFINED
+unnecessary-comprehension:49:8:49:42::Unnecessary use of a comprehension, use dict(my_dict) instead.:UNDEFINED
+consider-using-dict-items:50:0:None:None::Consider iterating with .items():UNDEFINED
+unnecessary-comprehension:51:0:51:25::Unnecessary use of a comprehension, use set(my_set) instead.:UNDEFINED
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/u/unnecessary/unnecessary_lambda.py new/pylint-3.0.3/tests/functional/u/unnecessary/unnecessary_lambda.py
--- old/pylint-3.0.2/tests/functional/u/unnecessary/unnecessary_lambda.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/functional/u/unnecessary/unnecessary_lambda.py 2023-12-11 14:16:40.000000000 +0100
@@ -52,6 +52,10 @@
_ = lambda: _ANYARGS(*[3], **{'three': 3})
_ = lambda: _ANYARGS(func=42)
+# pylint: disable=missing-function-docstring
+def f(d):
+ print(lambda x: str(x, **d))
+
# Don't warn about this.
_ = lambda: code().analysis()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/w/wrong_exception_operation.py new/pylint-3.0.3/tests/functional/w/wrong_exception_operation.py
--- old/pylint-3.0.2/tests/functional/w/wrong_exception_operation.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/functional/w/wrong_exception_operation.py 2023-12-11 14:16:40.000000000 +0100
@@ -16,3 +16,24 @@
1/0
except (ValueError < TypeError): # [wrong-exception-operation]
pass
+
+
+# Concatenation of exception type tuples
+DIVISION_BY_ZERO = (ZeroDivisionError,)
+VALUE_ERROR = (ValueError,)
+UNINFERABLE = DIVISION_BY_ZERO | VALUE_ERROR
+
+try:
+ 1/0
+except (ValueError, ) + DIVISION_BY_ZERO:
+ pass
+
+try:
+ 1/0
+except (ValueError, ) | DIVISION_BY_ZERO: # [wrong-exception-operation]
+ pass
+
+try:
+ 1/0
+except (ValueError, ) + UNINFERABLE:
+ pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/functional/w/wrong_exception_operation.txt new/pylint-3.0.3/tests/functional/w/wrong_exception_operation.txt
--- old/pylint-3.0.2/tests/functional/w/wrong_exception_operation.txt 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/functional/w/wrong_exception_operation.txt 2023-12-11 14:16:40.000000000 +0100
@@ -2,3 +2,4 @@
wrong-exception-operation:6:8:6:30::Invalid exception operation. Did you mean '(ValueError, TypeError)' instead?:UNDEFINED
wrong-exception-operation:11:8:11:30::Invalid exception operation. Did you mean '(ValueError, TypeError)' instead?:UNDEFINED
wrong-exception-operation:17:8:17:30::Invalid exception operation. Did you mean '(ValueError, TypeError)' instead?:UNDEFINED
+wrong-exception-operation:33:7:33:40::Invalid exception operation. Did you mean '((ValueError, ) + DIVISION_BY_ZERO)' instead?:UNDEFINED
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/lint/unittest_expand_modules.py new/pylint-3.0.3/tests/lint/unittest_expand_modules.py
--- old/pylint-3.0.2/tests/lint/unittest_expand_modules.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/lint/unittest_expand_modules.py 2023-12-11 14:16:40.000000000 +0100
@@ -4,7 +4,11 @@
from __future__ import annotations
+import copy
+import os
import re
+from collections.abc import Iterator
+from contextlib import contextmanager
from pathlib import Path
import pytest
@@ -28,7 +32,8 @@
TEST_DIRECTORY = Path(__file__).parent.parent
INIT_PATH = str(TEST_DIRECTORY / "lint/__init__.py")
-EXPAND_MODULES = str(TEST_DIRECTORY / "lint/unittest_expand_modules.py")
+EXPAND_MODULES_BASE = "unittest_expand_modules.py"
+EXPAND_MODULES = str(TEST_DIRECTORY / "lint" / EXPAND_MODULES_BASE)
this_file = {
"basename": "lint.unittest_expand_modules",
"basepath": EXPAND_MODULES,
@@ -37,6 +42,14 @@
"path": EXPAND_MODULES,
}
+this_file_relative_to_parent = {
+ "basename": "lint.unittest_expand_modules",
+ "basepath": EXPAND_MODULES_BASE,
+ "isarg": True,
+ "name": "lint.unittest_expand_modules",
+ "path": EXPAND_MODULES_BASE,
+}
+
this_file_from_init = {
"basename": "lint",
"basepath": INIT_PATH,
@@ -117,6 +130,27 @@
)
+def _list_expected_package_modules_relative() -> tuple[dict[str, object], ...]:
+ """Generates reusable list of modules for our package with relative path input."""
+ abs_result = copy.deepcopy(_list_expected_package_modules())
+ for item in abs_result:
+ assert isinstance(item["basepath"], str)
+ assert isinstance(item["path"], str)
+ item["basepath"] = os.path.relpath(item["basepath"], str(Path(__file__).parent))
+ item["path"] = os.path.relpath(item["path"], str(Path(__file__).parent))
+ return abs_result
+
+
+@contextmanager
+def pushd(path: Path) -> Iterator[None]:
+ prev = os.getcwd()
+ os.chdir(path)
+ try:
+ yield
+ finally:
+ os.chdir(prev)
+
+
class TestExpandModules(CheckerTestCase):
"""Test the expand_modules function while allowing options to be set."""
@@ -161,6 +195,40 @@
@pytest.mark.parametrize(
"files_or_modules,expected",
+ [
+ (
+ [Path(__file__).name],
+ {this_file_relative_to_parent["path"]: this_file_relative_to_parent},
+ ),
+ (
+ ["./"],
+ {
+ module["path"]: module # pylint: disable=unsubscriptable-object
+ for module in _list_expected_package_modules_relative()
+ },
+ ),
+ ],
+ )
+ @set_config(ignore_paths="")
+ def test_expand_modules_relative_path(
+ self, files_or_modules: list[str], expected: dict[str, ModuleDescriptionDict]
+ ) -> None:
+ """Test expand_modules with the default value of ignore-paths and relative path as input."""
+ ignore_list: list[str] = []
+ ignore_list_re: list[re.Pattern[str]] = []
+ with pushd(Path(__file__).parent):
+ modules, errors = expand_modules(
+ files_or_modules,
+ [],
+ ignore_list,
+ ignore_list_re,
+ self.linter.config.ignore_paths,
+ )
+ assert modules == expected
+ assert not errors
+
+ @pytest.mark.parametrize(
+ "files_or_modules,expected",
[
([__file__, __file__], {this_file["path"]: this_file}),
(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/tests/test_check_parallel.py new/pylint-3.0.3/tests/test_check_parallel.py
--- old/pylint-3.0.2/tests/test_check_parallel.py 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/tests/test_check_parallel.py 2023-12-11 14:16:40.000000000 +0100
@@ -269,7 +269,7 @@
linter.load_plugin_modules(["pylint.extensions.overlapping_exceptions"])
try:
dill.dumps(linter)
- # TODO: 3.0: Fix this test by raising this assertion again
+ # TODO: 4.0: Fix this test by raising this assertion again
# raise AssertionError(
# "Plugins loaded were pickle-safe! This test needs altering"
# )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pylint-3.0.2/towncrier.toml new/pylint-3.0.3/towncrier.toml
--- old/pylint-3.0.2/towncrier.toml 2023-10-22 15:48:35.000000000 +0200
+++ new/pylint-3.0.3/towncrier.toml 2023-12-11 14:16:40.000000000 +0100
@@ -1,5 +1,5 @@
[tool.towncrier]
-version = "3.0.2"
+version = "3.0.3"
directory = "doc/whatsnew/fragments"
filename = "doc/whatsnew/3/3.0/index.rst"
template = "doc/whatsnew/fragments/_template.rst"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mokutil for openSUSE:Factory checked in at 2023-12-18 22:56:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mokutil (Old)
and /work/SRC/openSUSE:Factory/.mokutil.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mokutil"
Mon Dec 18 22:56:03 2023 rev:30 rq:1112167 version:0.6.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/mokutil/mokutil.changes 2023-08-21 11:43:13.587418099 +0200
+++ /work/SRC/openSUSE:Factory/.mokutil.new.9037/mokutil.changes 2023-12-18 22:56:14.200256867 +0100
@@ -1,0 +2,14 @@
+Tue Sep 19 08:10:49 UTC 2023 - Joey Lee <jlee(a)suse.com>
+
+- Sync change log to prepare for sending mokutil 0.6.0 to SLE15-SP6
+ (jsc#PED-6528)
+ - Removed the following backported patches because they are merged
+ to 0.6.0:
+ - mokutil-fix-missing-header.patch
+ b15e7c4d7 util: add the missing stdio.h
+ - mokutil-enable-setting-fallback-verbosity-and-norebo.patch (bsc#1198458)
+ 57bc38582 mokutil: enable setting fallback verbosity and noreboot mode
+ - mokutil-SBAT-revocation-update-support.patch (bsc#1198458)
+ 6c9890730 SBAT revocation update support
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ast-grep for openSUSE:Factory checked in at 2023-12-18 22:56:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ast-grep (Old)
and /work/SRC/openSUSE:Factory/.ast-grep.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ast-grep"
Mon Dec 18 22:56:02 2023 rev:3 rq:1133804 version:0.15.1+0
Changes:
--------
--- /work/SRC/openSUSE:Factory/ast-grep/ast-grep.changes 2023-12-17 21:35:23.036253310 +0100
+++ /work/SRC/openSUSE:Factory/.ast-grep.new.9037/ast-grep.changes 2023-12-18 22:56:12.520195338 +0100
@@ -1,0 +2,12 @@
+Mon Dec 18 07:57:39 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 0.15.1:
+ * feat: support mutliple rules in -r and --inline-rules #786
+ * refactor: unify run_worker and run_std_in #785
+ * Breaking change: feat: --stdin now always awaits user input #791
+ * feat: support --inline-rules option for sg scan #396
+ * refactor: separate PathWorker and StdInWorker and Worker ef3d8ad
+ * test: add test cases for sg scan ed35c71
+ * fix: revert github action a2f22d8
+
+-------------------------------------------------------------------
Old:
----
ast-grep-0.15.0+0.tar.zst
New:
----
ast-grep-0.15.1+0.tar.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ast-grep.spec ++++++
--- /var/tmp/diff_new_pack.g0CdCG/_old 2023-12-18 22:56:13.772241192 +0100
+++ /var/tmp/diff_new_pack.g0CdCG/_new 2023-12-18 22:56:13.776241338 +0100
@@ -17,7 +17,7 @@
Name: ast-grep
-Version: 0.15.0+0
+Version: 0.15.1+0
Release: 0
Summary: A CLI tool for code structural search, lint and rewriting
License: MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.g0CdCG/_old 2023-12-18 22:56:13.804242364 +0100
+++ /var/tmp/diff_new_pack.g0CdCG/_new 2023-12-18 22:56:13.808242510 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/ast-grep/ast-grep.git</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="scm">git</param>
- <param name="revision">0.15.0</param>
+ <param name="revision">0.15.1</param>
<param name="match-tag">*</param>
<param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
<param name="versionrewrite-replacement">\1</param>
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.g0CdCG/_old and /var/tmp/diff_new_pack.g0CdCG/_new differ
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gromox for openSUSE:Factory checked in at 2023-12-18 22:55:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gromox (Old)
and /work/SRC/openSUSE:Factory/.gromox.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gromox"
Mon Dec 18 22:55:57 2023 rev:24 rq:1133781 version:2.20
Changes:
--------
--- /work/SRC/openSUSE:Factory/gromox/gromox.changes 2023-12-04 23:03:10.295273793 +0100
+++ /work/SRC/openSUSE:Factory/.gromox.new.9037/gromox.changes 2023-12-18 22:56:07.892025844 +0100
@@ -1,0 +2,18 @@
+Fri Dec 15 10:00:02 UTC 2023 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Update to release 2.20
+ * oxdisco: allow autodiscover for room/equipment stores
+ * oxcical: allday events are now emitted (pursuant to the
+ ``oxcical_allday_ymd`` config directive) as "floating time"
+ per the OXCICAL spec recommendations
+ * oxcical: resolve integer underflow that botched weekorder
+ computation in weekly-recurring events
+ * oxcical: resolve out-of-bounds access during generation of
+ iCal RDATE lines * ews: avoid a heap-use-after-free during
+ freebusy retrieval
+ * zcore: zs_getuserfreebusy had failed to resolve usernames and
+ display freebusy status in the scheduling matrix view
+ * ldap_adaptor: resolve data race with double-free when
+ per-organization LDAP settings were used
+
+-------------------------------------------------------------------
Old:
----
gromox-2.19.tar.asc
gromox-2.19.tar.zst
New:
----
gromox-2.20.tar.asc
gromox-2.20.tar.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gromox.spec ++++++
--- /var/tmp/diff_new_pack.oaZs9P/_old 2023-12-18 22:56:09.016067009 +0100
+++ /var/tmp/diff_new_pack.oaZs9P/_new 2023-12-18 22:56:09.020067156 +0100
@@ -19,7 +19,7 @@
%define _libexecdir %_prefix/libexec
Name: gromox
-Version: 2.19
+Version: 2.20
Release: 0
Summary: Groupware server backend with RPC, IMAP,POP3, PHP-MAPI support
License: AGPL-3.0-or-later AND GPL-2.0-only AND GPL-3.0-or-later
++++++ debian.changelog ++++++
--- /var/tmp/diff_new_pack.oaZs9P/_old 2023-12-18 22:56:09.044068034 +0100
+++ /var/tmp/diff_new_pack.oaZs9P/_new 2023-12-18 22:56:09.048068181 +0100
@@ -1,4 +1,4 @@
-gromox (1.36.23.3447095) unstable; urgency=low
+gromox (2.20) unstable; urgency=low
* Initial package.
++++++ gromox.dsc ++++++
--- /var/tmp/diff_new_pack.oaZs9P/_old 2023-12-18 22:56:09.112070525 +0100
+++ /var/tmp/diff_new_pack.oaZs9P/_new 2023-12-18 22:56:09.112070525 +0100
@@ -1,7 +1,7 @@
Format: 1.0
Source: gromox
Architecture: any
-Version: 2.19
+Version: 2.20
DEBTRANSFORM-RELEASE: 1
Maintainer: Gromox <null(a)gromox.com>
Homepage: https://gromox.com
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package tumbler for openSUSE:Factory checked in at 2023-12-18 22:55:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tumbler (Old)
and /work/SRC/openSUSE:Factory/.tumbler.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tumbler"
Mon Dec 18 22:55:52 2023 rev:47 rq:1133769 version:4.18.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/tumbler/tumbler.changes 2023-04-18 15:52:48.737392311 +0200
+++ /work/SRC/openSUSE:Factory/.tumbler.new.9037/tumbler.changes 2023-12-18 22:56:02.903843165 +0100
@@ -1,0 +2,11 @@
+Thu Nov 30 17:11:56 UTC 2023 - Manfred Hollstein <manfred.h(a)gmx.net>
+
+- Update to version 4.18.2
+ * Disambiguate thumbnailer signals
+ * scheduler: Fix ready/error signal forwarding
+ * desktop-thumbnailer: Use empty path to build cmdline if it is null
+ * Update spec link in README
+ * xdg-cache: Fix temporary file management when saving thumbnail
+ * Add icon at 64px, clean up SVG metadata
+
+-------------------------------------------------------------------
Old:
----
tumbler-4.18.1.tar.bz2
New:
----
tumbler-4.18.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tumbler.spec ++++++
--- /var/tmp/diff_new_pack.OJzCnj/_old 2023-12-18 22:56:03.563867336 +0100
+++ /var/tmp/diff_new_pack.OJzCnj/_new 2023-12-18 22:56:03.563867336 +0100
@@ -21,7 +21,7 @@
%define libname libtumbler-1-0
Name: tumbler
-Version: 4.18.1
+Version: 4.18.2
Release: 0
Summary: Thumbnail Management for Xfce
License: GPL-2.0-or-later AND LGPL-2.1-or-later
++++++ tumbler-4.18.1.tar.bz2 -> tumbler-4.18.2.tar.bz2 ++++++
++++ 7663 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package parole for openSUSE:Factory checked in at 2023-12-18 22:55:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/parole (Old)
and /work/SRC/openSUSE:Factory/.parole.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "parole"
Mon Dec 18 22:55:52 2023 rev:38 rq:1133768 version:4.18.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/parole/parole.changes 2023-02-20 17:48:03.844180795 +0100
+++ /work/SRC/openSUSE:Factory/.parole.new.9037/parole.changes 2023-12-18 22:56:01.083776510 +0100
@@ -1,0 +2,23 @@
+Thu Nov 30 17:54:10 UTC 2023 - Manfred Hollstein <manfred.h(a)gmx.net>
+
+- Update to version 4.18.1
+ * Add missing chain-up to parent in constructed()
+ * Add runtime guard for XfceSMClient
+ * build: Restrict XfceSMClient to X11
+ * build: Use XDT_CHECK_OPTIONAL_FEATURE
+ * Small UI Improvements
+ * parole-conf: Fix critical warning and memory leak
+ * build: Define our own windowing macro instead of extending GDK's
+ * plugins: Disable systray icon outside X11
+ * Guard X11 code paths
+ * Fix invisible mouse (Issue #125)
+ * Add middle click actions to tray icon (Fixes #88)
+ * docs: Remove useless check
+ * mpris2: Properly disconnect signal handlers
+ * powermanager: Add missing sanity check
+ * Only use header bar if gtk-dialogs-use-header (Fixes #117)
+ * build: Add -export-dynamic to LDFLAGS
+ * Add icons at missing sizes, clean up SVG metadata
+ * Translation Updates
+
+-------------------------------------------------------------------
Old:
----
parole-4.18.0.tar.bz2
New:
----
parole-4.18.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ parole.spec ++++++
--- /var/tmp/diff_new_pack.7jTZI3/_old 2023-12-18 22:56:01.699799070 +0100
+++ /var/tmp/diff_new_pack.7jTZI3/_new 2023-12-18 22:56:01.699799070 +0100
@@ -17,7 +17,7 @@
Name: parole
-Version: 4.18.0
+Version: 4.18.1
Release: 0
Summary: Media Player for the Xfce Desktop Environment
License: GPL-2.0-or-later
++++++ parole-4.18.0.tar.bz2 -> parole-4.18.1.tar.bz2 ++++++
++++ 45075 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xfce4-settings for openSUSE:Factory checked in at 2023-12-18 22:55:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xfce4-settings (Old)
and /work/SRC/openSUSE:Factory/.xfce4-settings.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xfce4-settings"
Mon Dec 18 22:55:50 2023 rev:55 rq:1133767 version:4.18.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/xfce4-settings/xfce4-settings.changes 2023-07-04 15:23:53.890753069 +0200
+++ /work/SRC/openSUSE:Factory/.xfce4-settings.new.9037/xfce4-settings.changes 2023-12-18 22:55:58.539683338 +0100
@@ -1,0 +2,15 @@
+Thu Nov 30 17:20:12 UTC 2023 - Manfred Hollstein <manfred.h(a)gmx.net>
+
+- Update to version 4.18.4
+ * display-settings: Fix memory management of confirmation dialog
+ * xfsettingsd: displays: Always do some actions on RRScreenChangeNotify
+ * xfsettingsd: displays: Fix memory leak
+ * settings-manager: Support absolute path as icon name
+ * Replace deprecated xfce_spawn(_command_line)?_on_screen
+ * appearance: Match more dark themes (fixes #495)
+ * appearance: Check for presence of color-scheme key
+ * Apply matching xfwm4 when the switch is clicked
+ * displays: Lower warning level
+ * Translation Updates
+
+-------------------------------------------------------------------
Old:
----
xfce4-settings-4.18.3.tar.bz2
New:
----
xfce4-settings-4.18.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xfce4-settings.spec ++++++
--- /var/tmp/diff_new_pack.qSbSQT/_old 2023-12-18 22:55:59.191707217 +0100
+++ /var/tmp/diff_new_pack.qSbSQT/_new 2023-12-18 22:55:59.195707364 +0100
@@ -19,7 +19,7 @@
%bcond_with git
Name: xfce4-settings
-Version: 4.18.3
+Version: 4.18.4
Release: 0
Summary: Tools for Managing Xfce Settings
License: GPL-2.0-only AND GPL-2.0-or-later
++++++ xfce4-settings-4.18.3.tar.bz2 -> xfce4-settings-4.18.4.tar.bz2 ++++++
++++ 2585 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xfce4-power-manager for openSUSE:Factory checked in at 2023-12-18 22:55:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xfce4-power-manager (Old)
and /work/SRC/openSUSE:Factory/.xfce4-power-manager.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xfce4-power-manager"
Mon Dec 18 22:55:48 2023 rev:80 rq:1133766 version:4.18.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/xfce4-power-manager/xfce4-power-manager.changes 2023-06-01 17:19:47.774258489 +0200
+++ /work/SRC/openSUSE:Factory/.xfce4-power-manager.new.9037/xfce4-power-manager.changes 2023-12-18 22:55:55.651577569 +0100
@@ -1,0 +2,43 @@
+Thu Nov 30 17:16:07 UTC 2023 - Manfred Hollstein <manfred.h(a)gmx.net>
+
+- Update to version 4.18.3
+ * power: Fix inhibition management
+ * settings: Present window to the user when already opened
+ * settings: Remove useless g_application_hold/release()
+ * A review of signal handlers disconnection
+ * Remove #ifdefs DEBUG
+ * brightness: Rework min level management
+ * Refactor XfpmBrightness
+ * Remove useless logs
+ * backlight: Adjust some spacing for consistency / readability
+ * backlight: Return earlier when brightness key event should not be
+ handled
+ * backlight: fix "handle display brightness keys" setting
+ * Simplify brightness level management (Fixes #139)
+ * Add missing properties for panel plugin settings
+ * Use same debug function everywhere (V2)
+ * brightness: Silence more warnings
+ * Fix previous commit (again)
+ * Fix previous commit
+ * Fix g_spawn*_sync() wait status management
+ * brightness: Fix g_spawn() wait status management
+ * Silence some more warnings
+ * Update docs url
+ * power: Fix memory leak
+ * settings: Fix hidden widgets when !has_lcd_brightness
+ * backlight: Fix xfconf warning about cancelled operation
+ * Lower some warning levels
+ * Use same debug function everywhere
+ * Fix upower object management
+ * plugin: Fix non unreffed objects on finalize
+ * systray-icon: Fix "floating object" warning on finalize
+ * systray-icon: Fix "invalid property" warnings
+ * Suspend system if lock screen fails on lid close (Fixes #209)
+ * Add energy rate into device details
+ * power: Fix use of g_hash_table_get_values()
+ * Fix light locker integration (Fixes #201)
+ * Add app icon at 64px, 96px, clean up SVG metadata
+ * Fix description for pending states.
+ * Translation Updates
+
+-------------------------------------------------------------------
Old:
----
xfce4-power-manager-4.18.2.tar.bz2
New:
----
xfce4-power-manager-4.18.3.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xfce4-power-manager.spec ++++++
--- /var/tmp/diff_new_pack.Tz0Yc6/_old 2023-12-18 22:55:56.659614486 +0100
+++ /var/tmp/diff_new_pack.Tz0Yc6/_new 2023-12-18 22:55:56.663614632 +0100
@@ -19,7 +19,7 @@
%define panel_version 4.12.0
%bcond_with git
Name: xfce4-power-manager
-Version: 4.18.2
+Version: 4.18.3
Release: 0
Summary: Power Management for the Xfce Desktop Environment
License: GPL-2.0-or-later
++++++ xfce4-power-manager-4.18.2.tar.bz2 -> xfce4-power-manager-4.18.3.tar.bz2 ++++++
++++ 78520 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package elixir-hex for openSUSE:Factory checked in at 2023-12-18 22:55:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/elixir-hex (Old)
and /work/SRC/openSUSE:Factory/.elixir-hex.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "elixir-hex"
Mon Dec 18 22:55:47 2023 rev:5 rq:1133760 version:2.0.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/elixir-hex/elixir-hex.changes 2023-08-02 16:51:08.781753949 +0200
+++ /work/SRC/openSUSE:Factory/.elixir-hex.new.9037/elixir-hex.changes 2023-12-18 22:55:54.451533621 +0100
@@ -1,0 +2,5 @@
+Fri Nov 24 09:34:29 UTC 2023 - Matwey Kornilov <matwey.kornilov(a)gmail.com>
+
+- Cleanup spec file
+
+-------------------------------------------------------------------
Old:
----
hex-v2.0.6.tar.bz2
New:
----
hex-2.0.6.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ elixir-hex.spec ++++++
--- /var/tmp/diff_new_pack.bPB7WR/_old 2023-12-18 22:55:55.231562187 +0100
+++ /var/tmp/diff_new_pack.bPB7WR/_new 2023-12-18 22:55:55.231562187 +0100
@@ -25,7 +25,7 @@
License: Apache-2.0
Group: Development/Libraries/Other
URL: https://github.com/hexpm/hex
-Source: %{app_name}-v%{version}.tar.bz2
+Source: %{app_name}-%{version}.tar.xz
BuildRequires: elixir
Requires: elixir
BuildArch: noarch
@@ -38,7 +38,7 @@
See http://hex.pm for installation instructions and other documentation.
%prep
-%setup -q -n %{app_name}-v%{version}
+%setup -q -n %{app_name}-%{version}
%build
export LANG=en_US.UTF-8
++++++ _service ++++++
--- /var/tmp/diff_new_pack.bPB7WR/_old 2023-12-18 22:55:55.259563213 +0100
+++ /var/tmp/diff_new_pack.bPB7WR/_new 2023-12-18 22:55:55.263563359 +0100
@@ -5,9 +5,14 @@
<param name="revision">v2.0.6</param>
<param name="scm">git</param>
<param name="changesgenerate">enable</param>
+ <param name="versionrewrite-pattern">v(.+)</param>
+ <param name="versionrewrite-replacement">\1</param>
+ </service>
+ <service name="set_version" mode="disabled">
+ <param name="basename">hex</param>
</service>
<service name="recompress" mode="disabled">
- <param name="compression">bz2</param>
+ <param name="compression">xz</param>
<param name="file">*.tar</param>
</service>
</services>
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package manpages-l10n for openSUSE:Factory checked in at 2023-12-18 22:55:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/manpages-l10n (Old)
and /work/SRC/openSUSE:Factory/.manpages-l10n.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "manpages-l10n"
Mon Dec 18 22:55:44 2023 rev:20 rq:1133762 version:4.21.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/manpages-l10n/manpages-l10n.changes 2023-09-06 19:02:15.228243674 +0200
+++ /work/SRC/openSUSE:Factory/.manpages-l10n.new.9037/manpages-l10n.changes 2023-12-18 22:55:53.263490112 +0100
@@ -1,0 +2,7 @@
+Sun Dec 17 11:16:05 UTC 2023 - Antoine Belvire <antoine.belvire(a)opensuse.org>
+
+- Update to version 4.21:
+ * Updated and added many translations.
+ * New language: Korean.
+
+-------------------------------------------------------------------
Old:
----
manpages-l10n-4.20.0.tar.bz2
New:
----
manpages-l10n-4.21.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ manpages-l10n.spec ++++++
--- /var/tmp/diff_new_pack.fXFUoD/_old 2023-12-18 22:55:54.299528054 +0100
+++ /var/tmp/diff_new_pack.fXFUoD/_new 2023-12-18 22:55:54.299528054 +0100
@@ -18,12 +18,12 @@
Name: manpages-l10n
-Version: 4.20.0
+Version: 4.21.0
Release: 0
Summary: Translation of man pages
License: GPL-3.0-or-later
URL: https://manpages-l10n-team.pages.debian.net/manpages-l10n
-Source0: https://salsa.debian.org/manpages-l10n-team/manpages-l10n/-/archive/%{versi…
+Source0: https://salsa.debian.org/manpages-l10n-team/manpages-l10n/-/archive/v%{vers…
Source1: macros.%{name}
# PATCH-FIX-UPSTREAM manpages-l10n-4.20.0-fix-links.patch -- Fix incorrect links in man2 (boo#1202798)
Patch0: manpages-l10n-4.20.0-fix-links.patch
@@ -49,6 +49,7 @@
%man_lang_package nl Dutch
%man_lang_package pl Polish
%man_lang_package pt_BR %{quote:Brazilian Portuguese}
+%man_lang_package ko Korean
%man_lang_package ro Romanian
%man_lang_package ru Russian
%man_lang_package sr Serbian
@@ -57,7 +58,7 @@
%man_lang_package vi Vietnamese
%prep
-%autosetup -p1
+%autosetup -p1 -n %{name}-v%{version}-d1df32843d4a0989104c1764c3d61f1ecdc66fd3
%build
%configure --enable-distribution=%{distribution_id}
++++++ manpages-l10n-4.20.0.tar.bz2 -> manpages-l10n-4.21.0.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/manpages-l10n/manpages-l10n-4.20.0.tar.bz2 /work/SRC/openSUSE:Factory/.manpages-l10n.new.9037/manpages-l10n-4.21.0.tar.bz2 differ: char 11, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package godot for openSUSE:Factory checked in at 2023-12-18 22:55:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/godot (Old)
and /work/SRC/openSUSE:Factory/.godot.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "godot"
Mon Dec 18 22:55:40 2023 rev:34 rq:1133759 version:4.2.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/godot/godot.changes 2023-12-05 17:03:11.685100120 +0100
+++ /work/SRC/openSUSE:Factory/.godot.new.9037/godot.changes 2023-12-18 22:55:44.591172510 +0100
@@ -1,0 +2,16 @@
+Wed Dec 13 12:00:00 UTC 2023 - cunix(a)mail.de
+
+- Update to 4.2.1
+ * Set language encoding flag when using "ZIPPacker"
+ * Prevent infinite recursion when printing errors
+ * Allow dragging editable children in editor
+ * Fix errors on file rename or move in the Filesystem Dock
+ * X11: Send IME update notification deferred
+ * Only allow MeshInstance3D-based nodes in
+ particles emission shape node selector
+ * Comment the shader template light function by default
+
+ and more:
+ https://godotengine.github.io/godot-interactive-changelog/#4.2.1
+
+-------------------------------------------------------------------
Old:
----
godot-4.2-stable.tar.xz
godot-4.2-stable.tar.xz.sha256
New:
----
godot-4.2.1-stable.tar.xz
godot-4.2.1-stable.tar.xz.sha256
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ godot.spec ++++++
--- /var/tmp/diff_new_pack.P6uLSC/_old 2023-12-18 22:55:46.939258503 +0100
+++ /var/tmp/diff_new_pack.P6uLSC/_new 2023-12-18 22:55:46.951258942 +0100
@@ -29,7 +29,7 @@
%define compiler_version_leap 10
Name: godot
-Version: 4.2
+Version: 4.2.1
Release: 0
Summary: Cross-Platform Game Engine with an Integrated Editor
License: MIT
++++++ godot-4.2-stable.tar.xz -> godot-4.2.1-stable.tar.xz ++++++
/work/SRC/openSUSE:Factory/godot/godot-4.2-stable.tar.xz /work/SRC/openSUSE:Factory/.godot.new.9037/godot-4.2.1-stable.tar.xz differ: char 26, line 1
++++++ godot-4.2-stable.tar.xz.sha256 -> godot-4.2.1-stable.tar.xz.sha256 ++++++
--- /work/SRC/openSUSE:Factory/godot/godot-4.2-stable.tar.xz.sha256 2023-12-05 17:03:11.629098056 +0100
+++ /work/SRC/openSUSE:Factory/.godot.new.9037/godot-4.2.1-stable.tar.xz.sha256 2023-12-18 22:55:44.583172217 +0100
@@ -1 +1 @@
-a4ecd31f976de88293dc9bb1c70816499b9982f0bb33fd0d51e221696e1552af godot-4.2-stable.tar.xz
+be2d5b8333628e9135dd6fce992ebd16481b97e99d6facc2296411a7b7f72a62 godot-4.2.1-stable.tar.xz
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package lyx for openSUSE:Factory checked in at 2023-12-18 22:55:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/lyx (Old)
and /work/SRC/openSUSE:Factory/.lyx.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lyx"
Mon Dec 18 22:55:33 2023 rev:107 rq:1132911 version:2.3.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/lyx/lyx.changes 2023-01-05 15:01:25.181199546 +0100
+++ /work/SRC/openSUSE:Factory/.lyx.new.9037/lyx.changes 2023-12-18 22:55:36.046859597 +0100
@@ -1,0 +2,7 @@
+Wed Dec 13 14:45:07 UTC 2023 - Giacomo Comes <gcomes.obs(a)gmail.com>
+
+- move %reconfigure_fonts_prereq to the font package
+- fix build failure on tumbleweed
+ * hack to be removed with lyx 2.4
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ lyx.spec ++++++
--- /var/tmp/diff_new_pack.Wo5s1S/_old 2023-12-18 22:55:36.922891679 +0100
+++ /var/tmp/diff_new_pack.Wo5s1S/_new 2023-12-18 22:55:36.922891679 +0100
@@ -116,7 +116,6 @@
Recommends: texlive-picinpar
Recommends: texlive-shapepar
Recommends: texlive-sidecap
-%reconfigure_fonts_prereq
%description
LyX is a document processor that encourages an approach to writing
@@ -136,6 +135,7 @@
Summary: Fonts for displaying math
Group: System/X11/Fonts
BuildArch: noarch
+%reconfigure_fonts_prereq
%description fonts
A collection of Math symbol fonts for LyX.
@@ -144,6 +144,13 @@
%autosetup -p1
%build
+#hack for tumbleweed and for 2.3.7 only: fix build failure
+#to be removed with lyx 2.4 as it already contains the fix
+%if 0%{?suse_version} > 1500
+if [[ %{version} = 2.3.7 ]]; then
+ sed -i '/static.*zoom_/s@static @@' src/frontends/qt4/GuiView.h
+fi
+%endif
#./autogen.sh
TEXMF=%{_datadir}/texmf
%configure \
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libsecret for openSUSE:Factory checked in at 2023-12-18 22:55:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libsecret (Old)
and /work/SRC/openSUSE:Factory/.libsecret.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libsecret"
Mon Dec 18 22:55:31 2023 rev:34 rq:1133827 version:0.21.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/libsecret/libsecret.changes 2023-11-29 21:19:45.995037059 +0100
+++ /work/SRC/openSUSE:Factory/.libsecret.new.9037/libsecret.changes 2023-12-18 22:55:34.190791623 +0100
@@ -1,0 +2,12 @@
+Fri Dec 15 11:33:09 UTC 2023 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Update to version 0.21.2:
+ + Support GnuTLS as an alternative crypto backend.
+ + Fix LeakSanitizer issues.
+ + secret-tool: Verify that the parsed stdin password is vaild
+ UTF-8.
+ + Fix markup syntax for SecretSchema.
+ + Public secret_attributes_validate method.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
libsecret-0.21.1.tar.xz
New:
----
libsecret-0.21.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libsecret.spec ++++++
--- /var/tmp/diff_new_pack.1zy16W/_old 2023-12-18 22:55:35.058823413 +0100
+++ /var/tmp/diff_new_pack.1zy16W/_new 2023-12-18 22:55:35.062823559 +0100
@@ -18,7 +18,7 @@
%define have_lang 1
Name: libsecret
-Version: 0.21.1
+Version: 0.21.2
Release: 0
Summary: Library for accessing the Secret Service API
License: LGPL-2.1-or-later
++++++ libsecret-0.21.1.tar.xz -> libsecret-0.21.2.tar.xz ++++++
++++ 3432 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package webkit2gtk3 for openSUSE:Factory checked in at 2023-12-18 22:55:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/webkit2gtk3 (Old)
and /work/SRC/openSUSE:Factory/.webkit2gtk3.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "webkit2gtk3"
Mon Dec 18 22:55:28 2023 rev:184 rq:1133816 version:2.42.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/webkit2gtk3/webkit2gtk3.changes 2023-12-08 22:31:31.346827637 +0100
+++ /work/SRC/openSUSE:Factory/.webkit2gtk3.new.9037/webkit2gtk3.changes 2023-12-18 22:55:30.390652452 +0100
@@ -1,0 +2,11 @@
+Sat Dec 16 13:51:42 UTC 2023 - Michael Gorse <mgorse(a)suse.com>
+
+- Update to version 2.42.4 (boo#1218032):
+ + Fix incorrect random images incorrectly displayed as
+ backgrounds of <div> elements.
+ + Fix videos displayed aliased after being resized e.g. in
+ YouTube.
+ + Fix several crashes and rendering issues.
+ + Security fixes: CVE-2023-42883.
+
+-------------------------------------------------------------------
@@ -67 +78 @@
-- Update to version 2.42.0:
+- Update to version 2.42.0 (boo#1218033):
@@ -74 +85,2 @@
- + Security fixes: CVE-2023-39928, CVE-2023-41074, CVE-2023-32359.
+ + Security fixes: CVE-2023-39928, CVE-2023-41074, CVE-2023-32359,
+ CVE-2023-42890.
Old:
----
webkitgtk-2.42.3.tar.xz
webkitgtk-2.42.3.tar.xz.asc
New:
----
webkitgtk-2.42.4.tar.xz
webkitgtk-2.42.4.tar.xz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ webkit2gtk3.spec ++++++
--- /var/tmp/diff_new_pack.EoSNPd/_old 2023-12-18 22:55:32.290722038 +0100
+++ /var/tmp/diff_new_pack.EoSNPd/_new 2023-12-18 22:55:32.290722038 +0100
@@ -74,7 +74,7 @@
Name: webkit2%{_gtknamesuffix}
### FIXME ### Drop the disabling of LTO on next release/versionbump
%define _lto_cflags %{nil}
-Version: 2.42.3
+Version: 2.42.4
Release: 0
Summary: Library for rendering web content, GTK+ Port
License: BSD-3-Clause AND LGPL-2.0-or-later
@@ -430,6 +430,7 @@
# Expand %%lang_package to Obsoletes its older-name counterpart
+
%package -n WebKitGTK-%{_apiver}-lang
Summary: Translations for package %{name}
Group: System/Localization
++++++ webkitgtk-2.42.3.tar.xz -> webkitgtk-2.42.4.tar.xz ++++++
/work/SRC/openSUSE:Factory/webkit2gtk3/webkitgtk-2.42.3.tar.xz /work/SRC/openSUSE:Factory/.webkit2gtk3.new.9037/webkitgtk-2.42.4.tar.xz differ: char 26, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mutter for openSUSE:Factory checked in at 2023-12-18 22:55:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mutter (Old)
and /work/SRC/openSUSE:Factory/.mutter.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mutter"
Mon Dec 18 22:55:26 2023 rev:218 rq:1133815 version:45.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/mutter/mutter.changes 2023-12-08 22:31:36.883031341 +0100
+++ /work/SRC/openSUSE:Factory/.mutter.new.9037/mutter.changes 2023-12-18 22:55:28.798594148 +0100
@@ -1,0 +2,9 @@
+Mon Dec 18 06:47:32 UTC 2023 - Alynx Zhou <alynx.zhou(a)suse.com>
+
+- Add mutter-fix-x11-restart.patch: glgo#GNOME/mutter!2445 breaks
+ restarting under x11 accidentally because it redirects subwindows
+ after redirecting windows, this patch fix it by redirecting
+ subwindows first (glgo#GNOME/gnome-shell#7050,
+ glgo#GNOME/mutter!3329).
+
+-------------------------------------------------------------------
New:
----
mutter-fix-x11-restart.patch
BETA DEBUG BEGIN:
New:
- Add mutter-fix-x11-restart.patch: glgo#GNOME/mutter!2445 breaks
restarting under x11 accidentally because it redirects subwindows
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mutter.spec ++++++
--- /var/tmp/diff_new_pack.B3nOfJ/_old 2023-12-18 22:55:29.690626816 +0100
+++ /var/tmp/diff_new_pack.B3nOfJ/_new 2023-12-18 22:55:29.690626816 +0100
@@ -34,6 +34,8 @@
Patch1: mutter-disable-cvt-s390x.patch
# PATCH-FIX-OPENSUSE mutter-window-actor-Special-case-shaped-Java-windows.patch -- window-actor: Special-case shaped Java windows
Patch2: mutter-window-actor-Special-case-shaped-Java-windows.patch
+# PATCH-FIX-UPSTREAM mutter-fix-x11-restart.patch glgo#GNOME/gnome-shell#7050 glgo#GNOME/mutter!3329 alynx.zhou(a)suse.com -- Fix crash on restarting mutter under x11
+Patch3: mutter-fix-x11-restart.patch
## SLE-only patches start at 1000
# PATCH-FEATURE-SLE mutter-SLE-bell.patch FATE#316042 bnc#889218 idonmez(a)suse.com -- make audible bell work out of the box.
@@ -145,6 +147,7 @@
%else
%patch -P 1 -p1
%patch -P 2 -p1
+%patch -P 3 -p1
%endif
# SLE-only patches and translations.
%if 0%{?sle_version}
++++++ mutter-fix-x11-restart.patch ++++++
From b7a1159a1ecd08b5e6aa1279fea84accf846b411 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl(a)gmail.com>
Date: Fri, 20 Oct 2023 15:44:29 +0800
Subject: [PATCH 1/4] x11-display: Make subwindow redirection call mode
specific
This means that for X11 sessions we'll do it before any windows are
mapped, and before any plugin implementation is started. Doing it before
a plugin is started is important, because things that the plugin does
during startup can have consequences on how compositing on Xorg works.
For the Xwayland case, we'll do it relatively in the setup phase. It
appears to have been harmless to do it later in the post-opened signal,
but there is no harm in doing it as one of the earlier steps.
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3089
---
src/compositor/meta-compositor-x11.c | 2 ++
src/wayland/meta-xwayland.c | 1 +
src/x11/meta-x11-display.c | 1 -
3 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/compositor/meta-compositor-x11.c b/src/compositor/meta-compositor-x11.c
index 1ad3327ddf6..ce7bc1945ce 100644
--- a/src/compositor/meta-compositor-x11.c
+++ b/src/compositor/meta-compositor-x11.c
@@ -188,6 +188,8 @@ meta_compositor_x11_manage (MetaCompositor *compositor,
compositor_x11->have_x11_sync_object = meta_sync_ring_init (xdisplay);
+ meta_x11_display_redirect_windows (x11_display, display);
+
return TRUE;
}
diff --git a/src/wayland/meta-xwayland.c b/src/wayland/meta-xwayland.c
index e95ca564010..83f2fcb25d9 100644
--- a/src/wayland/meta-xwayland.c
+++ b/src/wayland/meta-xwayland.c
@@ -1170,6 +1170,7 @@ on_x11_display_setup (MetaDisplay *display,
{
MetaX11Display *x11_display = meta_display_get_x11_display (display);
+ meta_x11_display_redirect_windows (x11_display, display);
meta_xwayland_init_dnd (x11_display);
meta_xwayland_init_xrandr (manager, x11_display);
}
diff --git a/src/x11/meta-x11-display.c b/src/x11/meta-x11-display.c
index 4e98203dd25..c634a71fb2a 100644
--- a/src/x11/meta-x11-display.c
+++ b/src/x11/meta-x11-display.c
@@ -301,7 +301,6 @@ on_x11_display_opened (MetaX11Display *x11_display,
MetaDisplay *display)
{
meta_display_manage_all_xwindows (display);
- meta_x11_display_redirect_windows (x11_display, display);
}
static void
--
GitLab
From 77fc07943c3171a5e7a047ca34af46feeca347c2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl(a)gmail.com>
Date: Fri, 20 Oct 2023 17:03:31 +0800
Subject: [PATCH 2/4] display: Move X11 initial focus handling to
MetaX11Display
It's X11 specific, so put it in the X11 display manager object.
---
src/core/display.c | 34 ----------------------------------
src/x11/meta-x11-display.c | 25 +++++++++++++++++++++++++
2 files changed, 25 insertions(+), 34 deletions(-)
diff --git a/src/core/display.c b/src/core/display.c
index 0a191c0fbca..b16e50e21de 100644
--- a/src/core/display.c
+++ b/src/core/display.c
@@ -930,9 +930,6 @@ meta_display_new (MetaContext *context,
MetaDisplay *display;
MetaDisplayPrivate *priv;
guint32 timestamp;
-#ifdef HAVE_X11_CLIENT
- Window old_active_xwindow = None;
-#endif
MetaMonitorManager *monitor_manager;
MetaSettings *settings;
MetaInputCapture *input_capture;
@@ -1048,14 +1045,6 @@ meta_display_new (MetaContext *context,
display->last_focus_time = timestamp;
display->last_user_time = timestamp;
-#ifdef HAVE_X11
- if (!meta_is_wayland_compositor ())
- meta_prop_get_window (display->x11_display,
- display->x11_display->xroot,
- display->x11_display->atom__NET_ACTIVE_WINDOW,
- &old_active_xwindow);
-#endif
-
if (!meta_compositor_manage (display->compositor, error))
{
g_object_unref (display);
@@ -1076,30 +1065,7 @@ meta_display_new (MetaContext *context,
g_signal_connect (display->gesture_tracker, "state-changed",
G_CALLBACK (gesture_tracker_state_changed), display);
- /* We know that if mutter is running as a Wayland compositor,
- * we start out with no windows.
- */
-#ifdef HAVE_X11_CLIENT
- if (!meta_is_wayland_compositor ())
- meta_display_manage_all_xwindows (display);
-
- if (old_active_xwindow != None)
- {
- MetaWindow *old_active_window;
- old_active_window = meta_x11_display_lookup_x_window (display->x11_display,
- old_active_xwindow);
- if (old_active_window)
- meta_window_focus (old_active_window, timestamp);
- else
- meta_display_unset_input_focus (display, timestamp);
- }
- else
- {
- meta_display_unset_input_focus (display, timestamp);
- }
-#else
meta_display_unset_input_focus (display, timestamp);
-#endif
g_signal_connect (stage, "notify::is-grabbed",
G_CALLBACK (on_is_grabbed_changed), display);
diff --git a/src/x11/meta-x11-display.c b/src/x11/meta-x11-display.c
index c634a71fb2a..599968a363b 100644
--- a/src/x11/meta-x11-display.c
+++ b/src/x11/meta-x11-display.c
@@ -300,7 +300,32 @@ static void
on_x11_display_opened (MetaX11Display *x11_display,
MetaDisplay *display)
{
+ Window old_active_xwindow = None;
+
+ if (!meta_is_wayland_compositor ())
+ {
+ meta_prop_get_window (display->x11_display,
+ display->x11_display->xroot,
+ display->x11_display->atom__NET_ACTIVE_WINDOW,
+ &old_active_xwindow);
+ }
+
meta_display_manage_all_xwindows (display);
+
+ if (old_active_xwindow != None)
+ {
+ MetaWindow *old_active_window;
+
+ old_active_window = meta_x11_display_lookup_x_window (x11_display,
+ old_active_xwindow);
+ if (old_active_window)
+ {
+ uint32_t timestamp;
+
+ timestamp = display->x11_display->timestamp;
+ meta_window_focus (old_active_window, timestamp);
+ }
+ }
}
static void
--
GitLab
From 668eb0d198dba58c7833b09926dce2f043889155 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl(a)gmail.com>
Date: Tue, 17 Oct 2023 15:46:00 +0800
Subject: [PATCH 3/4] tests/x11: Fix replace test to catch the second instance
failing
The test never noticed that the second instance never actually managed
to load; it was looping a multi second retry session trying to redirect
windows, meaning it failed to catch https://gitlab.gnome.org/GNOME/mutter/-/issues/3089.
Fix the test so that it always waits for mutter to finish loading
successfully, just like it waits fro the first.
---
src/tests/x11-test.sh | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/tests/x11-test.sh b/src/tests/x11-test.sh
index 59e460fc336..d95b2460f6e 100755
--- a/src/tests/x11-test.sh
+++ b/src/tests/x11-test.sh
@@ -34,6 +34,9 @@ echo \# Launched with pid $MUTTER2_PID
MUTTER2_PID=$!
wait $MUTTER1_PID
+echo \# Waiting for the second mutter to finish loading
+gdbus wait --session org.gnome.Mutter.IdleMonitor
+
sleep 2
echo \# Terminating clients > /dev/stderr
--
GitLab
From 8e6f18fcaf63968b0a75bf65da0c00473d71acb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl(a)gmail.com>
Date: Mon, 23 Oct 2023 14:47:33 +0800
Subject: [PATCH 4/4] display: Rename mandatory X11 initialization function
Simply to make it clear that the renamed function is specific to a
particular X11 initialization mode (mandatory Xwayland), put that in the
name, so that it's easier to understand when this function is relevant.
---
src/core/display.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/core/display.c b/src/core/display.c
index b16e50e21de..f851f1be372 100644
--- a/src/core/display.c
+++ b/src/core/display.c
@@ -897,9 +897,9 @@ meta_display_init_x11 (MetaDisplay *display,
}
static void
-on_x11_initialized (MetaDisplay *display,
- GAsyncResult *result,
- gpointer user_data)
+on_mandatory_x11_initialized (MetaDisplay *display,
+ GAsyncResult *result,
+ gpointer user_data)
{
g_autoptr (GError) error = NULL;
@@ -1018,7 +1018,7 @@ meta_display_new (MetaContext *context,
if (x11_display_policy == META_X11_DISPLAY_POLICY_MANDATORY)
{
meta_display_init_x11 (display, NULL,
- (GAsyncReadyCallback) on_x11_initialized,
+ (GAsyncReadyCallback) on_mandatory_x11_initialized,
NULL);
}
#endif /* HAVE_XWAYLAND */
--
GitLab
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package growpart for openSUSE:Factory checked in at 2023-12-18 22:55:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/growpart (Old)
and /work/SRC/openSUSE:Factory/.growpart.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "growpart"
Mon Dec 18 22:55:25 2023 rev:9 rq:1133814 version:0.33
Changes:
--------
--- /work/SRC/openSUSE:Factory/growpart/growpart.changes 2019-12-02 11:28:07.570649398 +0100
+++ /work/SRC/openSUSE:Factory/.growpart.new.9037/growpart.changes 2023-12-18 22:55:27.686553422 +0100
@@ -1,0 +2,72 @@
+Sat Nov 25 22:28:18 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 0.33:
+ * More busybox compatibility changes
+ * growpart: Add support for overprovisioning (#35)
+ * mount-image-callback: do not rely on udevadm
+ * growpart: only run `udevadm` if it exists (#36) [oittaa]
+ * growpart: detect whether blkid is util-linux version and
+ act accordingly
+ * growpart doesn't work when LANG=cs_CZ.UTF-8
+ * growpart: change flock call to use short option for
+ Busybox compatibility [Dermot Bradley]
+ * growpart: Use LANG=C to parse sfdisk output
+ * Fix bad variable use.
+ * Whitespace cleanups.
+ * Growpart fix undefined variable in growpart error message.
+ * cloud-image-utils: Add depends on fdisk, drop e2fsprogs
+ * growpart: add flock support to prevent udev races
+ * Drop the python2 only cloud-utils-euca package and tools.
+ * test-growpart: fix logic error resulting in test failure.
+- fix URL (development moved to GitHub)
+- use fully qualified urls for source validation
+
+-------------------------------------------------------------------
+Wed Aug 2 12:12:05 UTC 2023 - Robert Schweikert <rjschwei(a)suse.com>
+
+- Update to verion 0.32
+ + Only listing growpart changes we do not ship other parts of the source
+ + Growpart fix undefined variable in growpart error message. [Scott Moser]
+ + Add test for growpart lvm resize. [Scott Moser]
+ + Growpart: add support for resizing an lvm pv after growing the
+ partition. [Scott Moser] (LP: #1799953)
+ + growpart: parse the kernel version in a more robust way (#2)
+ [Paride Legovini] (LP: #1881014)
+ + growpart: Do not fail if only sgdisk is available. [Scott Moser]
+ + growpart: Fix reading sector size with newer sgdisk versions.
+ [Scott Moser]
+ + growpart: Fail on unknown values of GROWPART_RESIZER. [Scott Moser]
+ + growpart: add flock support to prevent udev races
+ [Ryan Harper] (LP: #1834875)
+ + test-growpart: fix logic error resulting in test failure.
+ [Scott Moser] (LP: #1842682)
+ + Fix race condition in test-growpart teardown seen on ppc64el.
+ [Scott Moser] (LP: #1836593)
+ + growpart: Fix bug when file image ends in a digit.
+ [Scott Moser] (LP: #1835124)
+
+-------------------------------------------------------------------
+Thu Feb 27 21:20:17 UTC 2020 - Robert Schweikert <rjschwei(a)suse.com>
+
+- Update to version 0.31 (bsc#1164736)
+ + mount-image-callback: mount with -o 'rw' or -o 'ro' (LP: #1663722)
+ + mount-image-callback: run blockdev and udevadm settle on nbd devices.
+ (LP: #1741096, 1741300)
+ + mount-image-callback: Drop support for mounting lxd containers.
+ (LP: #1715994)
+ + growpart: fix bug that stopped GPT disks from being grown past 2TB.
+ (LP: #1762748)
+ + mount-image-callback: mention --help and -C/--cd-mountpoint in Usage
+ + growpart: fix bug when resizing a middle partition with sgdisk
+ (LP: #1706751) [Fred De Backer]
+ + growpart: Resolve symbolic links before operating.
+ [Kevin Locke] (LP: #1744406)
+ + growpart: fix bug occurring if start sector and size were the same.
+ [Lars Kellogg-Stedman] (LP: #1807171)
+ + debian/control: drop Suggests on lxc1
+ + debian/tests/control: add test growpart-start-matches-size.
+ + White space cleanup. Remove trailing space and tabs.
+ + Move to git.
+- drop licenseGPLv3.patch (upstream)
+
+-------------------------------------------------------------------
Old:
----
cloud-utils-0.30.tar.gz
licenseGPLv3.patch
New:
----
cloud-utils-0.33.tar.gz
BETA DEBUG BEGIN:
Old: + Move to git.
- drop licenseGPLv3.patch (upstream)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ growpart.spec ++++++
--- /var/tmp/diff_new_pack.p7gIzx/_old 2023-12-18 22:55:28.422580377 +0100
+++ /var/tmp/diff_new_pack.p7gIzx/_new 2023-12-18 22:55:28.422580377 +0100
@@ -1,7 +1,7 @@
#
# spec file for package growpart
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,38 +16,35 @@
#
-%define base_version 0.30
Name: growpart
-Version: %{base_version}
+Version: 0.33
Release: 0
Summary: Grow a partition
License: GPL-3.0-only
Group: System/Management
-Url: http://launchpad.net/cloud-utils
-Source0: cloud-utils-%{base_version}.tar.gz
-Patch: licenseGPLv3.patch
-Requires: util-linux
+URL: https://github.com/canonical/cloud-utils
+Source0: https://github.com/canonical/cloud-utils/archive/refs/tags/%{version}.tar.g…
Requires: gptfdisk
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
+Requires: util-linux
BuildArch: noarch
%description
-Grow a partition. This is predominantly useful in the cloud when an instance
-is started with a larger root partition than the image size. The root
-partition can be expanded to take up the additional size.
+Grow a partition. This is predominantly useful in the cloud when an instance is
+started with a larger root partition than the image size. The root partition
+can be expanded to take up the additional size.
%prep
-%autosetup -p1 -n cloud-utils-%{base_version}
+%autosetup -p1 -n cloud-utils-%{version}
%build
%install
install -Dm0755 -t %{buildroot}%{_sbindir} bin/growpart
install -Dm0644 -t %{buildroot}%{_mandir}/man1 man/growpart.1
+install -Dm0644 -t %{buildroot}/%{_defaultlicensedir}/growpart LICENSE
%files
-%defattr(-,root,root,-)
-%license LICENSE-GPLv3
+%license LICENSE
%{_sbindir}/growpart
%{_mandir}/man1/*
++++++ cloud-utils-0.30.tar.gz -> cloud-utils-0.33.tar.gz ++++++
++++ 4161 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package conmon for openSUSE:Factory checked in at 2023-12-18 22:55:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/conmon (Old)
and /work/SRC/openSUSE:Factory/.conmon.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "conmon"
Mon Dec 18 22:55:24 2023 rev:33 rq:1133812 version:2.1.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/conmon/conmon.changes 2023-10-01 21:21:53.983762793 +0200
+++ /work/SRC/openSUSE:Factory/.conmon.new.9037/conmon.changes 2023-12-18 22:55:25.922488818 +0100
@@ -1,0 +2,22 @@
+Mon Dec 18 09:02:52 UTC 2023 - Dan Čermák <dcermak(a)suse.com>
+
+- Add fix-incorrect-free-in-conn_sock.patch
+ This fixes a regression in 2.1.9
+ (https://github.com/containers/conmon/issues/475 and
+ https://github.com/containers/conmon/issues/477)
+
+-------------------------------------------------------------------
+Fri Dec 15 09:54:35 UTC 2023 - Dan Čermák <dcermak(a)suse.com>
+
+- New upstream release 2.1.9
+
+ ### Bug fixes
+ * fix some issues flagged by SAST scan
+ * src: fix write after end of buffer
+ * src: open all files with O_CLOEXEC
+ * oom-score: restore oom score before running exit command
+ ### Features
+ * Forward more messages on the sd-notify socket
+ * logging: -l passthrough accepts TTYs
+
+-------------------------------------------------------------------
Old:
----
conmon-2.1.8.tar.xz
New:
----
conmon-2.1.9.tar.xz
fix-incorrect-free-in-conn_sock.patch
BETA DEBUG BEGIN:
New:
- Add fix-incorrect-free-in-conn_sock.patch
This fixes a regression in 2.1.9
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ conmon.spec ++++++
--- /var/tmp/diff_new_pack.D2oANB/_old 2023-12-18 22:55:27.074531008 +0100
+++ /var/tmp/diff_new_pack.D2oANB/_new 2023-12-18 22:55:27.074531008 +0100
@@ -17,13 +17,14 @@
Name: conmon
-Version: 2.1.8
+Version: 2.1.9
Release: 0
Summary: An OCI container runtime monitor
License: Apache-2.0
Group: System/Management
URL: https://github.com/containers/conmon
Source0: %{name}-%{version}.tar.xz
+Patch0: https://github.com/containers/conmon/pull/476.patch#./fix-incorrect-free-in…
BuildRequires: pkgconfig
BuildRequires: golang(API) >= 1.20
BuildRequires: pkgconfig(glib-2.0)
++++++ _service ++++++
--- /var/tmp/diff_new_pack.D2oANB/_old 2023-12-18 22:55:27.106532181 +0100
+++ /var/tmp/diff_new_pack.D2oANB/_new 2023-12-18 22:55:27.106532181 +0100
@@ -1,17 +1,17 @@
<services>
-<service name="tar_scm" mode="disabled">
+<service name="tar_scm" mode="manual">
<param name="url">https://github.com/containers/conmon</param>
<param name="scm">git</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">[v]?([^\+]+)(.*)</param>
-<param name="revision">v2.1.8</param>
+<param name="revision">v2.1.9</param>
<param name="changesgenerate">disable</param>
</service>
-<service name="recompress" mode="disabled">
+<service name="recompress" mode="manual">
<param name="file">conmon-*.tar</param>
<param name="compression">xz</param>
</service>
-<service name="set_version" mode="disabled">
+<service name="set_version" mode="manual">
<param name="basename">conmon</param>
</service>
</services>
++++++ conmon-2.1.8.tar.xz -> conmon-2.1.9.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/.cirrus.yml new/conmon-2.1.9/.cirrus.yml
--- old/conmon-2.1.8/.cirrus.yml 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/.cirrus.yml 2023-12-14 13:24:13.000000000 +0100
@@ -20,11 +20,11 @@
####
#### Cache-image names to test with (double-quotes around names are critical)
####
- FEDORA_NAME: "fedora-38"
- PRIOR_FEDORA_NAME: "fedora-37"
+ FEDORA_NAME: "fedora-39ß"
+ PRIOR_FEDORA_NAME: "fedora-38"
# VM Image built in containers/automation_images
- IMAGE_SUFFIX: "c20230809t143240z-f38f37d13"
+ IMAGE_SUFFIX: "c20231004t194547z-f39f38d13"
FEDORA_CACHE_IMAGE_NAME: "fedora-${IMAGE_SUFFIX}"
# Container FQIN's
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/.github/workflows/integration.yml new/conmon-2.1.9/.github/workflows/integration.yml
--- old/conmon-2.1.8/.github/workflows/integration.yml 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/.github/workflows/integration.yml 2023-12-14 13:24:13.000000000 +0100
@@ -47,7 +47,7 @@
run: |
cd $(go env GOPATH)/src/github.com/cri-o/cri-o
make all test-binaries
- # skip seccomp tests because they have permission denied issues in a container
- sudo -E test/test_runner.sh $(ls test/ | grep bats | grep -v seccomp)
+ # skip seccomp tests because they have permission denied issues in a container and accept signed image as they don't use conmon
+ sudo -E test/test_runner.sh $(ls test/ | grep bats | grep -E -v seccomp\|image\|policy)
env:
JOBS: '2'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/README.md new/conmon-2.1.9/README.md
--- old/conmon-2.1.8/README.md 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/README.md 2023-12-14 13:24:13.000000000 +0100
@@ -91,7 +91,7 @@
It is possible to build a statically linked binary of conmon by using
the officially provided
-[nix](https://nixos.org/nixos/packages.html?attr=conmon&channel=nixpkgs-unstable&query=conmon)
+[nix](https://nixos.org/nixos/packages.html?attr=conmon&channel=unstable&query=conmon)
package and the derivation of it [within this repository](nix/). The
builds are completely reproducible and will create a x86\_64/amd64
stripped ELF binary for [glibc](https://www.gnu.org/software/libc).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/VERSION new/conmon-2.1.9/VERSION
--- old/conmon-2.1.8/VERSION 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/VERSION 2023-12-14 13:24:13.000000000 +0100
@@ -1 +1 @@
-2.1.8
+2.1.9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/go.mod new/conmon-2.1.9/go.mod
--- old/conmon-2.1.8/go.mod 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/go.mod 2023-12-14 13:24:13.000000000 +0100
@@ -6,11 +6,11 @@
github.com/containers/podman/v4 v4.5.0
github.com/containers/storage v1.48.0
github.com/coreos/go-systemd/v22 v22.5.0
- github.com/onsi/ginkgo/v2 v2.11.0
- github.com/onsi/gomega v1.27.8
+ github.com/onsi/ginkgo/v2 v2.12.0
+ github.com/onsi/gomega v1.27.10
github.com/opencontainers/runtime-tools v0.9.1-0.20230317050512-e931285f4b69
github.com/pkg/errors v0.9.1
- golang.org/x/sys v0.9.0
+ golang.org/x/sys v0.11.0
)
require (
@@ -35,9 +35,9 @@
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635 // indirect
golang.org/x/exp v0.0.0-20230321023759-10a507213a29 // indirect
- golang.org/x/net v0.10.0 // indirect
- golang.org/x/text v0.9.0 // indirect
- golang.org/x/tools v0.9.3 // indirect
+ golang.org/x/net v0.14.0 // indirect
+ golang.org/x/text v0.12.0 // indirect
+ golang.org/x/tools v0.12.0 // indirect
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/go.sum new/conmon-2.1.9/go.sum
--- old/conmon-2.1.8/go.sum 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/go.sum 2023-12-14 13:24:13.000000000 +0100
@@ -79,10 +79,10 @@
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
-github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU=
-github.com/onsi/ginkgo/v2 v2.11.0/go.mod h1:ZhrRA5XmEE3x3rhlzamx/JJvujdZoJ2uvgI7kR0iZvM=
-github.com/onsi/gomega v1.27.8 h1:gegWiwZjBsf2DgiSbf5hpokZ98JVDMcWkUiigk6/KXc=
-github.com/onsi/gomega v1.27.8/go.mod h1:2J8vzI/s+2shY9XHRApDkdgPo1TKT7P2u6fXeJKFnNQ=
+github.com/onsi/ginkgo/v2 v2.12.0 h1:UIVDowFPwpg6yMUpPjGkYvf06K3RAiJXUhCxEwQVHRI=
+github.com/onsi/ginkgo/v2 v2.12.0/go.mod h1:ZNEzXISYlqpb8S36iN71ifqLi3vVD1rVJGvWRCJOUpQ=
+github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI=
+github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M=
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
@@ -126,14 +126,14 @@
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
-golang.org/x/mod v0.10.0 h1:lFO9qtOdlre5W1jxS3r/4szv2/6iXxScdzjoBMXNhYk=
+golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/net v0.10.0 h1:X2//UzNDwYmtCLn7To6G58Wr6f5ahEAQgKNzv9Y951M=
-golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
+golang.org/x/net v0.14.0 h1:BONx9s002vGdD9umnlX1Po8vOZmrgH34qlHcD1MfK14=
+golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -145,20 +145,20 @@
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.9.0 h1:KS/R3tvhPqvJvwcKfnBHJwwthS11LRhmM5D59eEXa0s=
-golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM=
+golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE=
-golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
+golang.org/x/text v0.12.0 h1:k+n5B8goJNdU7hSvEtMUz3d1Q6D/XW4COJSJR6fN0mc=
+golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
-golang.org/x/tools v0.9.3 h1:Gn1I8+64MsuTb/HpH+LmQtNas23LhUVr3rYZ0eKuaMM=
-golang.org/x/tools v0.9.3/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc=
+golang.org/x/tools v0.12.0 h1:YW6HUoUmYBpwSgyaGaZq1fHjrBjX1rlpZ54T6mu2kss=
+golang.org/x/tools v0.12.0/go.mod h1:Sc0INKfu04TlqNoRA1hgpFZbhYXHPr4V5DzpSBTPqQM=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/cgroup.c new/conmon-2.1.9/src/cgroup.c
--- old/conmon-2.1.8/src/cgroup.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/cgroup.c 2023-12-14 13:24:13.000000000 +0100
@@ -323,12 +323,12 @@
ninfo("OOM received");
if (opt_persist_path) {
_cleanup_free_ char *ctr_oom_file_path = g_build_filename(opt_persist_path, "oom", NULL);
- _cleanup_close_ int ctr_oom_fd = open(ctr_oom_file_path, O_CREAT, 0666);
+ _cleanup_close_ int ctr_oom_fd = open(ctr_oom_file_path, O_CREAT | O_CLOEXEC, 0666);
if (ctr_oom_fd < 0) {
nwarn("Failed to write oom file");
}
}
- _cleanup_close_ int oom_fd = open("oom", O_CREAT, 0666);
+ _cleanup_close_ int oom_fd = open("oom", O_CREAT | O_CLOEXEC, 0666);
if (oom_fd < 0) {
nwarn("Failed to write oom file");
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/conmon.c new/conmon-2.1.9/src/conmon.c
--- old/conmon-2.1.8/src/conmon.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/conmon.c 2023-12-14 13:24:13.000000000 +0100
@@ -43,7 +43,6 @@
_cleanup_gerror_ GError *err = NULL;
char buf[BUF_SIZE];
int num_read;
- int old_oom_score = 0;
_cleanup_close_ int dev_null_r_cleanup = -1;
_cleanup_close_ int dev_null_w_cleanup = -1;
_cleanup_close_ int dummyfd = -1;
@@ -55,7 +54,7 @@
process_cli();
- attempt_oom_adjust(-1000, &old_oom_score);
+ attempt_oom_adjust(-1000);
/* ignoring SIGPIPE prevents conmon from being spuriously killed */
signal(SIGPIPE, SIG_IGN);
@@ -295,7 +294,7 @@
}
// We don't want runc to be unkillable so we reset the oom_score_adj back to 0
- attempt_oom_adjust(old_oom_score, NULL);
+ reset_oom_adjust();
execv(g_ptr_array_index(runtime_argv, 0), (char **)runtime_argv->pdata);
exit(127);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/conn_sock.c new/conmon-2.1.9/src/conn_sock.c
--- old/conmon-2.1.8/src/conn_sock.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/conn_sock.c 2023-12-14 13:24:13.000000000 +0100
@@ -179,7 +179,7 @@
if (dname == NULL)
pexitf("Cannot get dirname for %s", csname);
- sfd = open(dname, O_CREAT | O_PATH, 0600);
+ sfd = open(dname, O_CREAT | O_PATH | O_CLOEXEC, 0600);
if (sfd < 0)
pexit("Failed to create file for console-socket");
@@ -263,7 +263,7 @@
int socket_fd = -1;
/* get the parent_dir of the socket. We'll use this to get the location of the socket. */
- char *parent_dir = socket_parent_dir(use_full_attach_path, max_socket_path_len());
+ _cleanup_free_ char *parent_dir = socket_parent_dir(use_full_attach_path, max_socket_path_len());
/*
* To be able to access the location of the attach socket, without first creating the attach socket
@@ -271,7 +271,7 @@
* the corresponding entry in `/proc/self/fd` to act as the path to base_path, then we use the socket_relative_name
* to actually refer to the file where the socket will be created below.
*/
- _cleanup_close_ int parent_dir_fd = open(parent_dir, O_PATH);
+ _cleanup_close_ int parent_dir_fd = open(parent_dir, O_PATH | O_CLOEXEC);
if (parent_dir_fd < 0)
pexitf("failed to open socket path parent dir %s", parent_dir);
@@ -418,7 +418,7 @@
if (SOCK_IS_STREAM(sock->sock_type)) {
num_read = read(sock->fd, sock->buf, CONN_SOCK_BUF_SIZE);
} else {
- num_read = recvfrom(sock->fd, sock->buf, CONN_SOCK_BUF_SIZE - 1, 0, NULL, NULL);
+ num_read = recvfrom(sock->fd, sock->buf, CONN_SOCK_BUF_SIZE, 0, NULL, NULL);
}
if (num_read < 0)
@@ -432,17 +432,52 @@
sock->off = 0;
if (SOCK_IS_NOTIFY(sock->sock_type)) {
- /* Do what OCI runtime does - only pass READY=1 */
+ /* We pass a limited amount of safe messages here, as some existing or
+ future ones could be security sensitive */
+ const char *passon_line[] = {
+ "READY=1", "RELOADING=1", "STOPPING=1", "WATCHDOG=1", "WATCHDOG=trigger",
+ };
+ const char *passon_prefix[] = {
+ "STATUS=",
+ "ERRNO=",
+ "BUSERROR=",
+ "MONOTONIC_USEC=",
+ };
+ char **lines;
+
sock->buf[num_read] = '\0';
- if (strstr(sock->buf, "READY=1")) {
- strncpy(sock->buf, "READY=1", 8);
- sock->remaining = 7;
- } else if (strstr(sock->buf, "WATCHDOG=1")) {
- strncpy(sock->buf, "WATCHDOG=1", 11);
- sock->remaining = 10;
- } else {
- sock->remaining = 0;
+ lines = g_strsplit_set(sock->buf, "\n\r", -1);
+ sock->remaining = 0;
+
+ for (size_t i = 0; lines[i] != NULL; i++) {
+ const char *line = lines[i];
+ gboolean pass_line = FALSE;
+
+ for (size_t j = 0; j < G_N_ELEMENTS(passon_line); j++) {
+ if (strcmp(line, passon_line[j]) == 0) {
+ pass_line = TRUE;
+ break;
+ }
+ }
+
+ for (size_t j = 0; !pass_line && j < G_N_ELEMENTS(passon_prefix); j++) {
+ if (g_str_has_prefix(line, passon_prefix[j])) {
+ pass_line = TRUE;
+ break;
+ }
+ }
+
+ /* This will always fit in sock->buf as we only pass through exact
+ bytes from an existing sock->buf */
+ if (pass_line) {
+ if (sock->remaining > 0)
+ sock->buf[sock->remaining++] = '\n';
+
+ memcpy(sock->buf + sock->remaining, line, strlen(line));
+ sock->remaining += strlen(line);
+ }
}
+ g_strfreev(lines);
}
if (sock->remaining)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/conn_sock.h new/conmon-2.1.9/src/conn_sock.h
--- old/conmon-2.1.8/src/conn_sock.h 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/conn_sock.h 2023-12-14 13:24:13.000000000 +0100
@@ -36,7 +36,7 @@
gboolean writable;
size_t remaining;
size_t off;
- char buf[CONN_SOCK_BUF_SIZE];
+ char buf[CONN_SOCK_BUF_SIZE + 1]; // Extra byte allows null-termination
};
struct local_sock_s {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/ctr_exit.c new/conmon-2.1.9/src/ctr_exit.c
--- old/conmon-2.1.8/src/ctr_exit.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/ctr_exit.c 2023-12-14 13:24:13.000000000 +0100
@@ -7,6 +7,7 @@
#include "globals.h"
#include "ctr_logging.h"
#include "close_fds.h"
+#include "oom.h"
#include <errno.h>
#include <glib.h>
@@ -201,6 +202,8 @@
sleep(opt_exit_delay);
}
+ reset_oom_adjust();
+
execv(opt_exit_command, args);
/* Should not happen, but better be safe. */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/ctr_logging.c new/conmon-2.1.9/src/ctr_logging.c
--- old/conmon-2.1.8/src/ctr_logging.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/ctr_logging.c 2023-12-14 13:24:13.000000000 +0100
@@ -191,9 +191,6 @@
}
if (!strcmp(driver, "passthrough")) {
- if (isatty(STDIN_FILENO) || isatty(STDOUT_FILENO) || isatty(STDERR_FILENO))
- nexitf("cannot use a tty with passthrough logging mode to prevent attacks via TIOCSTI");
-
use_logging_passthrough = TRUE;
return;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/ctr_stdio.c new/conmon-2.1.9/src/ctr_stdio.c
--- old/conmon-2.1.8/src/ctr_stdio.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/ctr_stdio.c 2023-12-14 13:24:13.000000000 +0100
@@ -106,8 +106,8 @@
{
/* We pass a single byte buffer because write_to_logs expects that there is one
byte of capacity beyond the buflen that we specify */
- char buf;
- write_to_logs(pipe, &buf, 0);
+ char buf[1];
+ write_to_logs(pipe, buf, 0);
}
static bool read_stdio(int fd, stdpipe_t pipe, gboolean *eof)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/oom.c new/conmon-2.1.9/src/oom.c
--- old/conmon-2.1.8/src/oom.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/oom.c 2023-12-14 13:24:13.000000000 +0100
@@ -1,3 +1,5 @@
+#define _GNU_SOURCE
+
#include "oom.h"
#include "utils.h"
@@ -5,11 +7,13 @@
#include <string.h>
#include <unistd.h>
-void attempt_oom_adjust(int oom_score, int *old_value)
+int old_oom_score = 0;
+
+static void write_oom_adjust(int oom_score, int *old_value)
{
#ifdef __linux__
char fmt_oom_score[16];
- int oom_score_fd = open("/proc/self/oom_score_adj", O_RDWR);
+ int oom_score_fd = open("/proc/self/oom_score_adj", O_RDWR | O_CLOEXEC);
if (oom_score_fd < 0) {
ndebugf("failed to open /proc/self/oom_score_adj: %s\n", strerror(errno));
return;
@@ -30,3 +34,13 @@
(void)old_value;
#endif
}
+
+void attempt_oom_adjust(int oom_score)
+{
+ write_oom_adjust(oom_score, &old_oom_score);
+}
+
+void reset_oom_adjust()
+{
+ write_oom_adjust(old_oom_score, NULL);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/oom.h new/conmon-2.1.9/src/oom.h
--- old/conmon-2.1.8/src/oom.h 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/oom.h 2023-12-14 13:24:13.000000000 +0100
@@ -1,6 +1,7 @@
#if !defined(OOM_H)
#define OOM_H
-void attempt_oom_adjust(int oom_score, int *old_value);
+void attempt_oom_adjust(int oom_score);
+void reset_oom_adjust();
#endif // OOM_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conmon-2.1.8/src/seccomp_notify.c new/conmon-2.1.9/src/seccomp_notify.c
--- old/conmon-2.1.8/src/seccomp_notify.c 2023-08-24 16:12:18.000000000 +0200
+++ new/conmon-2.1.9/src/seccomp_notify.c 2023-12-14 13:24:13.000000000 +0100
@@ -7,7 +7,6 @@
#include <errno.h>
#include <sys/ioctl.h>
-#include <dlfcn.h>
#include <sys/wait.h>
#include <sys/mount.h>
#include <signal.h>
@@ -19,6 +18,7 @@
#ifdef USE_SECCOMP
+#include <dlfcn.h>
#include <sys/sysmacros.h>
#include <linux/seccomp.h>
#include <seccomp.h>
++++++ fix-incorrect-free-in-conn_sock.patch ++++++
From 8557c117bcab03e3c16e40ffb7bd450d697f72c7 Mon Sep 17 00:00:00 2001
From: Dominique Martinet <dominique.martinet(a)atmark-techno.com>
Date: Fri, 15 Dec 2023 12:44:03 +0900
Subject: [PATCH] Fix incorrect free in conn_sock
Earlier commit freed socket_parent_dir()'s result which is correct in
the case it returns a path from g_build_filename, but when it returns
opt_bundle_path the string should not be freed.
Make the function always return an allocated string that can be freed
Fixes: #475
Fixes: fad6bac8e65f ("fix some issues flagged by SAST scan")
Signed-off-by: Dominique Martinet <dominique.martinet(a)atmark-techno.com>
---
src/conn_sock.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/conn_sock.c b/src/conn_sock.c
index 62a02266..3b854e33 100644
--- a/src/conn_sock.c
+++ b/src/conn_sock.c
@@ -314,7 +314,7 @@ char *socket_parent_dir(gboolean use_full_attach_path, size_t desired_len)
{
/* if we're to use the full path, ignore the socket path and only use the bundle_path */
if (use_full_attach_path)
- return opt_bundle_path;
+ return strdup(opt_bundle_path);
char *base_path = g_build_filename(opt_socket_path, opt_cuuid, NULL);
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package yast2-trans for openSUSE:Factory checked in at 2023-12-18 22:55:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-trans (Old)
and /work/SRC/openSUSE:Factory/.yast2-trans.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-trans"
Mon Dec 18 22:55:22 2023 rev:319 rq:1133792 version:84.87.20231216.c47de7a4bf
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-trans/yast2-trans.changes 2023-11-23 21:39:18.692537509 +0100
+++ /work/SRC/openSUSE:Factory/.yast2-trans.new.9037/yast2-trans.changes 2023-12-18 22:55:24.714444577 +0100
@@ -1,0 +2,24 @@
+Mon Dec 18 05:15:17 UTC 2023 - git(a)opensuse.org
+
+- Update to version 84.87.20231216.c47de7a4bf:
+ * Translated using Weblate (Slovak)
+ * Translated using Weblate (Dutch)
+ * Translated using Weblate (Japanese)
+ * Translated using Weblate (Czech)
+ * Translated using Weblate (Catalan)
+ * New POT for text domain 'pam'.
+ * New POT for text domain 'control'.
+ * Translated using Weblate (Indonesian)
+ * Translated using Weblate (Indonesian)
+ * Translated using Weblate (Indonesian)
+ * Translated using Weblate (Indonesian)
+ * Translated using Weblate (Czech)
+ * Translated using Weblate (Japanese)
+ * Translated using Weblate (Catalan)
+ * Translated using Weblate (Japanese)
+ * Translated using Weblate (Swedish)
+ * Translated using Weblate (Swedish)
+ * Translated using Weblate (Swedish)
+ * Translated using Weblate (Swedish)
+
+-------------------------------------------------------------------
Old:
----
yast2-trans-84.87.20231121.7869d671a6.tar.xz
New:
----
yast2-trans-84.87.20231216.c47de7a4bf.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-trans.spec ++++++
--- /var/tmp/diff_new_pack.K1tpDg/_old 2023-12-18 22:55:25.678479881 +0100
+++ /var/tmp/diff_new_pack.K1tpDg/_new 2023-12-18 22:55:25.682480028 +0100
@@ -17,7 +17,7 @@
Name: yast2-trans
-Version: 84.87.20231121.7869d671a6
+Version: 84.87.20231216.c47de7a4bf
Release: 0
Summary: YaST2 - Translation Container Package
License: GPL-2.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.K1tpDg/_old 2023-12-18 22:55:25.738482079 +0100
+++ /var/tmp/diff_new_pack.K1tpDg/_new 2023-12-18 22:55:25.742482226 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/yast/yast-translations.git</param>
- <param name="changesrevision">7869d671a6cc131ad53e6fbb3f032f83fa897bb8</param></service></servicedata>
+ <param name="changesrevision">c47de7a4bf9c1bf5eb62ed7e070b9034e98af2e7</param></service></servicedata>
(No newline at EOF)
++++++ yast2-trans-84.87.20231121.7869d671a6.tar.xz -> yast2-trans-84.87.20231216.c47de7a4bf.tar.xz ++++++
/work/SRC/openSUSE:Factory/yast2-trans/yast2-trans-84.87.20231121.7869d671a6.tar.xz /work/SRC/openSUSE:Factory/.yast2-trans.new.9037/yast2-trans-84.87.20231216.c47de7a4bf.tar.xz differ: char 27, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package patterns-microos for openSUSE:Factory checked in at 2023-12-18 22:55:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/patterns-microos (Old)
and /work/SRC/openSUSE:Factory/.patterns-microos.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "patterns-microos"
Mon Dec 18 22:55:21 2023 rev:82 rq:1133790 version:5.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/patterns-microos/patterns-microos.changes 2023-11-13 22:16:41.818282094 +0100
+++ /work/SRC/openSUSE:Factory/.patterns-microos.new.9037/patterns-microos.changes 2023-12-18 22:55:23.746409125 +0100
@@ -1,0 +2,8 @@
+Wed Dec 13 08:56:23 UTC 2023 - Ludwig Nussel <lnussel(a)suse.com>
+
+- Require build-key instead of openSUSE-build-key. This allows for
+ forked projects to include their own keys.
+- remove Obsoletes: suse-build-key. Doesn't seem to be the job of a
+ pattern.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ patterns-microos.spec ++++++
--- /var/tmp/diff_new_pack.qP85FG/_old 2023-12-18 22:55:24.302429487 +0100
+++ /var/tmp/diff_new_pack.qP85FG/_new 2023-12-18 22:55:24.306429634 +0100
@@ -76,10 +76,10 @@
Requires: NetworkManager
Requires: NetworkManager-bluetooth
Requires: NetworkManager-wifi
+Requires: build-key
Requires: iproute2
Requires: lastlog2
Requires: libnss_usrfiles2
-Requires: openSUSE-build-key
Requires: pam
Requires: pam-config
Requires: procps
@@ -122,7 +122,6 @@
Requires: timezone
Conflicts: gettext-runtime-mini
Conflicts: krb5-mini
-Obsoletes: suse-build-key < 12.1
Requires: yast2-logs
%description base
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Net-SSLeay for openSUSE:Factory checked in at 2023-12-18 22:55:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Net-SSLeay (Old)
and /work/SRC/openSUSE:Factory/.perl-Net-SSLeay.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Net-SSLeay"
Mon Dec 18 22:55:20 2023 rev:37 rq:1133779 version:1.92
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Net-SSLeay/perl-Net-SSLeay.changes 2022-01-21 01:25:10.874685468 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Net-SSLeay.new.9037/perl-Net-SSLeay.changes 2023-12-18 22:55:22.686370303 +0100
@@ -1,0 +2,6 @@
+Thu Dec 14 13:47:04 UTC 2023 - Otto Hollmann <otto.hollmann(a)suse.com>
+
+- Use constants X509_VERSION_3 and X509_REQ_VERSION_1 when available (#GH-449)
+ * Add Use-constants-X509_VERSION_3-and-X509_REQ_VERSION_1-when-available.patch
+
+-------------------------------------------------------------------
New:
----
Use-constants-X509_VERSION_3-and-X509_REQ_VERSION_1-when-available.patch
BETA DEBUG BEGIN:
New:- Use constants X509_VERSION_3 and X509_REQ_VERSION_1 when available (#GH-449)
* Add Use-constants-X509_VERSION_3-and-X509_REQ_VERSION_1-when-available.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Net-SSLeay.spec ++++++
--- /var/tmp/diff_new_pack.XxL8YT/_old 2023-12-18 22:55:23.206389348 +0100
+++ /var/tmp/diff_new_pack.XxL8YT/_new 2023-12-18 22:55:23.210389494 +0100
@@ -1,7 +1,7 @@
#
# spec file for package perl-Net-SSLeay
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -25,6 +25,8 @@
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/C/CH/CHRISN/%{cpan_name}-%{version}.ta…
Source1: cpanspec.yml
+# PATCH-FIX-UPSTREAM https://github.com/radiator-software/p5-net-ssleay/issues/449
+Patch0: Use-constants-X509_VERSION_3-and-X509_REQ_VERSION_1-when-available.patch
BuildRequires: perl
BuildRequires: perl-macros
%{perl_requires}
@@ -42,7 +44,7 @@
libcrypto (a cryptography API).
%prep
-%autosetup -n %{cpan_name}-%{version}
+%autosetup -n %{cpan_name}-%{version} -p1
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -name "configure" -print0 | xargs -0 chmod 644
%build
++++++ Use-constants-X509_VERSION_3-and-X509_REQ_VERSION_1-when-available.patch ++++++
From 87e8d288e4ab42e0b9e934850195a3498e4de4be Mon Sep 17 00:00:00 2001
From: Heikki Vatiainen <hvn(a)radiatorsoftware.com>
Date: Wed, 6 Dec 2023 23:19:45 +0200
Subject: [PATCH] GH-449 Use constants X509_VERSION_3 and X509_REQ_VERSION_1
when available.
OpenSSL 3.2.0 no longer allows setting certificate version field value to 3
because the highest current value is 2. The confusion likely arises from the
definition of version field values in ASN.1 definitions where value 2 means
version 3, value 1 is version 2, and so forth for certificate request and CRLs.
Test 33_x509_create_cert.t was directly setting certificate version to integer
3 which no longer worked. Using a valid value allows all tests to pass with
OpenSSL 3.2.0.
---
t/local/33_x509_create_cert.t | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
Index: Net-SSLeay-1.92/t/local/33_x509_create_cert.t
===================================================================
--- Net-SSLeay-1.92.orig/t/local/33_x509_create_cert.t
+++ Net-SSLeay-1.92/t/local/33_x509_create_cert.t
@@ -53,7 +53,8 @@ is(Net::SSLeay::X509_NAME_cmp($ca_issuer
#set organizationName via add_entry_by_txt
ok(Net::SSLeay::X509_NAME_add_entry_by_txt($name, "organizationName", MBSTRING_UTF8, "Company Name"), "X509_NAME_add_entry_by_txt");
- ok(Net::SSLeay::X509_set_version($x509, 3), "X509_set_version");
+ my $x509_version_3 = (defined &Net::SSLeay::X509_VERSION_3) ? Net::SSLeay::X509_VERSION_3() : 2; # Note: X509_VERSION_3 is 2
+ ok(Net::SSLeay::X509_set_version($x509, $x509_version_3), "X509_set_version");
ok(my $sn = Net::SSLeay::X509_get_serialNumber($x509), "X509_get_serialNumber");
my $pubkey = Net::SSLeay::X509_get_X509_PUBKEY($x509);
@@ -96,7 +97,7 @@ is(Net::SSLeay::X509_NAME_cmp($ca_issuer
ok(my $sha1_digest = Net::SSLeay::EVP_get_digestbyname("sha1"), "EVP_get_digestbyname");
ok(Net::SSLeay::X509_sign($x509, $ca_pk, $sha1_digest), "X509_sign");
- is(Net::SSLeay::X509_get_version($x509), 3, "X509_get_version");
+ is(Net::SSLeay::X509_get_version($x509), $x509_version_3, "X509_get_version");
is(Net::SSLeay::X509_verify($x509, Net::SSLeay::X509_get_pubkey($ca_cert)), 1, "X509_verify");
like(my $crt_pem = Net::SSLeay::PEM_get_string_X509($x509), qr/-----BEGIN CERTIFICATE-----/, "PEM_get_string_X509");
@@ -183,8 +184,9 @@ is(Net::SSLeay::X509_NAME_cmp($ca_issuer
ok(Net::SSLeay::X509_REQ_add1_attr_by_NID($req, 54, MBSTRING_ASC, 'password xyz'), "X509_REQ_add1_attr_by_NID");
#49 = NID_pkcs9_unstructuredName - XXX-TODO add new constant
ok(Net::SSLeay::X509_REQ_add1_attr_by_NID($req, 49, MBSTRING_ASC, 'Any Uns.name'), "X509_REQ_add1_attr_by_NID");
-
- ok(Net::SSLeay::X509_REQ_set_version($req, 2), "X509_REQ_set_version");
+
+ my $x509_req_version_1 = (defined &Net::SSLeay::X509_REQ_VERSION_1) ? Net::SSLeay::X509_REQ_VERSION_1() : 0; # Note: X509_REQ_VERSION_1 is 0
+ ok(Net::SSLeay::X509_REQ_set_version($req, $x509_req_version_1), "X509_REQ_set_version");
ok(my $sha1_digest = Net::SSLeay::EVP_get_digestbyname("sha1"), "EVP_get_digestbyname");
ok(Net::SSLeay::X509_REQ_sign($req, $pk, $sha1_digest), "X509_REQ_sign");
@@ -192,7 +194,7 @@ is(Net::SSLeay::X509_NAME_cmp($ca_issuer
ok(my $req_pubkey = Net::SSLeay::X509_REQ_get_pubkey($req), "X509_REQ_get_pubkey");
is(Net::SSLeay::X509_REQ_verify($req, $req_pubkey), 1, "X509_REQ_verify");
- is(Net::SSLeay::X509_REQ_get_version($req), 2, "X509_REQ_get_version");
+ is(Net::SSLeay::X509_REQ_get_version($req), $x509_req_version_1, "X509_REQ_get_version");
ok(my $obj_challengePassword = Net::SSLeay::OBJ_txt2obj('1.2.840.113549.1.9.7'), "OBJ_txt2obj");
ok(my $nid_challengePassword = Net::SSLeay::OBJ_obj2nid($obj_challengePassword), "OBJ_obj2nid");
is(Net::SSLeay::X509_REQ_get_attr_count($req), 3, "X509_REQ_get_attr_count");
@@ -214,7 +216,8 @@ is(Net::SSLeay::X509_NAME_cmp($ca_issuer
## PHASE2 - turn X509_REQ into X509 cert + sign with CA key
ok(my $x509ss = Net::SSLeay::X509_new(), "X509_new");
- ok(Net::SSLeay::X509_set_version($x509ss, 2), "X509_set_version");
+ my $x509_version_3 = (defined &Net::SSLeay::X509_VERSION_3) ? Net::SSLeay::X509_VERSION_3() : 2; # Note: X509_VERSION_3 is 2
+ ok(Net::SSLeay::X509_set_version($x509ss, $x509_version_3), "X509_set_version");
ok(my $sn = Net::SSLeay::X509_get_serialNumber($x509ss), "X509_get_serialNumber");
Net::SSLeay::P_ASN1_INTEGER_set_hex($sn, 'ABCDEF');
Net::SSLeay::X509_set_issuer_name($x509ss, Net::SSLeay::X509_get_subject_name($ca_cert));
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libxkbcommon for openSUSE:Factory checked in at 2023-12-18 22:55:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libxkbcommon (Old)
and /work/SRC/openSUSE:Factory/.libxkbcommon.new.9037 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libxkbcommon"
Mon Dec 18 22:55:19 2023 rev:42 rq:1133774 version:1.6.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/libxkbcommon/libxkbcommon.changes 2023-10-20 23:15:51.888544739 +0200
+++ /work/SRC/openSUSE:Factory/.libxkbcommon.new.9037/libxkbcommon.changes 2023-12-18 22:55:21.046310241 +0100
@@ -1,0 +2,5 @@
+Sun Dec 17 20:06:52 UTC 2023 - Tobias Klausmann <tobias.klausmann(a)freenet.de>
+
+- dxvk need libxkbregistry0 for building -32bit variants, provide them.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ baselibs.conf ++++++
--- /var/tmp/diff_new_pack.MQn1I1/_old 2023-12-18 22:55:22.242354043 +0100
+++ /var/tmp/diff_new_pack.MQn1I1/_new 2023-12-18 22:55:22.246354189 +0100
@@ -6,4 +6,5 @@
libxkbcommon-x11-devel
requires -libxkbcommon-x11-<targettype>
requires "libxkbcommon-x11-0-<targettype> = <version>"
+libxkbregistry0
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2023-12-18 00:06:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Mon Dec 18 00:06:35 2023 rev:3842 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.006344295 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.010344440 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__MicroOS___20231215" schemaversion="4.1">
+<image name="OBS__MicroOS___20231217" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231215</productvar>
+ <productvar name="VERSION">20231217</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231215,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:microos:20231217,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231215/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/MicroOS/20231217/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-Addon-NonOss-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.034345313 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.038345459 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20231215" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20231217" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231215</productvar>
+ <productvar name="VERSION">20231217</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231215,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20231217,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2023…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.054346041 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.062346331 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231215" schemaversion="4.1">
+<image name="OBS__openSUSE___20231217" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231215</productvar>
+ <productvar name="VERSION">20231217</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231215,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231217,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231215/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231217/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
openSUSE-dvd5-dvd-x86_64.kiwi: same change
++++++ openSUSE-ftp-ftp-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.098347640 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.102347786 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231215" schemaversion="4.1">
+<image name="OBS__openSUSE___20231217" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -20,7 +20,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231215-i586</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231217-i586</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231215</productvar>
+ <productvar name="VERSION">20231217</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231215,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231217,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231215/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231217/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ openSUSE-ftp-ftp-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.118348368 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.118348368 +0100
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20231215" schemaversion="4.1">
+<image name="OBS__openSUSE___20231217" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20231215-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20231217-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20231215</productvar>
+ <productvar name="VERSION">20231217</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231215,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20231217,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231215/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20231217/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/tumbleweed</productoption>
++++++ Aeon.product ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.154349677 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.154349677 +0100
@@ -6,7 +6,7 @@
<name>Aeon</name>
<releasepkgname>Aeon-release</releasepkgname>
<endoflife/>
- <version>20231215</version>
+ <version>20231217</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>Aeon</productline>
++++++ MicroOS.product ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.170350259 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.174350404 +0100
@@ -6,7 +6,7 @@
<name>MicroOS</name>
<releasepkgname>MicroOS-release</releasepkgname>
<endoflife/>
- <version>20231215</version>
+ <version>20231217</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>MicroOS</productline>
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.250353168 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.254353313 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20231215</version>
+ <version>20231217</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.270353895 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.274354040 +0100
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20231215</version>
+ <version>20231217</version>
<release>0</release>
<productline>openSUSE</productline>
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.M3gVcp/_old 2023-12-18 00:06:39.350356804 +0100
+++ /var/tmp/diff_new_pack.M3gVcp/_new 2023-12-18 00:06:39.358357095 +0100
@@ -22176,7 +22176,6 @@
- python-efl-examples
- python-fastcluster-doc
- python-flake8-doc
- - python-flup-doc
- python-freezerclient-doc
- python-gdbm
- python-gevent-doc
@@ -23959,7 +23958,6 @@
- python310-flufl.lock
- python310-flufl.testing
- python310-fluidity-sm
- - python310-flup
- python310-flynt
- python310-folium
- python310-fontMath
@@ -24285,6 +24283,7 @@
- python310-jsonschema
- python310-jsonschema-format
- python310-jsonschema-format-nongpl
+ - python310-jsonschema-path
- python310-jsonschema-spec
- python310-jsonschema-specifications
- python310-jsonschema417
@@ -27423,7 +27422,6 @@
- python311-fluent
- python311-flufl.testing
- python311-fluidity-sm
- - python311-flup
- python311-flynt
- python311-folium
- python311-fontMath
@@ -27723,6 +27721,7 @@
- python311-jsonrpclib-pelix
- python311-jsonschema-format
- python311-jsonschema-format-nongpl
+ - python311-jsonschema-path
- python311-jsonschema-spec
- python311-jsonschema417
- python311-jsonschema417-format
@@ -30851,7 +30850,6 @@
- python39-flufl.lock
- python39-flufl.testing
- python39-fluidity-sm
- - python39-flup
- python39-flynt
- python39-folium
- python39-fontMath
@@ -31176,6 +31174,7 @@
- python39-jsonschema
- python39-jsonschema-format
- python39-jsonschema-format-nongpl
+ - python39-jsonschema-path
- python39-jsonschema-spec
- python39-jsonschema-specifications
- python39-jsonschema417
@@ -34198,6 +34197,7 @@
- ryzenadj
- rzsz
- s-tui
+ - s390-tools
- s3backer
- s3fs
- sablot
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-Shapely for openSUSE:Factory checked in at 2023-12-17 21:34:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Shapely (Old)
and /work/SRC/openSUSE:Factory/.python-Shapely.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-Shapely"
Sun Dec 17 21:34:21 2023 rev:25 rq:1133756 version:2.0.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Shapely/python-Shapely.changes 2023-11-21 21:32:20.996078691 +0100
+++ /work/SRC/openSUSE:Factory/.python-Shapely.new.25432/python-Shapely.changes 2023-12-17 21:36:15.910174424 +0100
@@ -1,0 +2,5 @@
+Sun Dec 17 16:47:49 UTC 2023 - Ben Greiner <code(a)bnavigator.de>
+
+- Enable sle15_python_module_pythons, but don't test with MPL
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-Shapely.spec ++++++
--- /var/tmp/diff_new_pack.vYOFoh/_old 2023-12-17 21:36:16.338189976 +0100
+++ /var/tmp/diff_new_pack.vYOFoh/_new 2023-12-17 21:36:16.342190121 +0100
@@ -16,6 +16,7 @@
#
+%{?sle15_python_module_pythons}
Name: python-Shapely
Version: 2.0.2
Release: 0
@@ -31,7 +32,11 @@
BuildRequires: %{python_module wheel}
# SECTION test
BuildRequires: %{python_module pytest}
+# Don't test with matplotlib until 15.x has python311-matplotlib.
+# (It's currently in devel:languages:python:backports but not in the Leap :Update repositories)
+%if 0%{?suse_version} > 1500
BuildRequires: %{python_module matplotlib}
+%endif
# /SECTION
BuildRequires: fdupes
BuildRequires: geos-devel >= 3.5
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rabbitmq-server for openSUSE:Factory checked in at 2023-12-17 21:34:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rabbitmq-server (Old)
and /work/SRC/openSUSE:Factory/.rabbitmq-server.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rabbitmq-server"
Sun Dec 17 21:34:11 2023 rev:88 rq:1133729 version:3.12.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/rabbitmq-server/rabbitmq-server.changes 2023-10-29 19:42:30.112910012 +0100
+++ /work/SRC/openSUSE:Factory/.rabbitmq-server.new.25432/rabbitmq-server.changes 2023-12-17 21:36:08.849917898 +0100
@@ -1,0 +2,17 @@
+Sun Dec 17 09:58:46 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.12.10:
+ * Avoids two Shovels being started after an upgrade from 3.12.6
+ or older versions.
+ * When a topic permission was deleted, an internal event of type
+ permission.deleted was emitted in some cases, instead of
+ topic.permission.deleted.
+ * Shovels on 3.12.8 nodes failed during a rolling cluster upgrade
+ due to internal identifier format changes.
+ * Avoids an unnecessary warning in the logs.
+ * avoids a potential exception in the autoheal partition handler.
+ * raft.segment_max_entries is now validated to prevent the value
+ from overflowing its 16-bit segment file field. Maximum
+ supported value is now 65535.
+
+-------------------------------------------------------------------
Old:
----
rabbitmq-server-3.12.7.tar.xz
rabbitmq-server-3.12.7.tar.xz.asc
New:
----
rabbitmq-server-3.12.10.tar.xz
rabbitmq-server-3.12.10.tar.xz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rabbitmq-server.spec ++++++
--- /var/tmp/diff_new_pack.TA0k7E/_old 2023-12-17 21:36:09.377937083 +0100
+++ /var/tmp/diff_new_pack.TA0k7E/_new 2023-12-17 21:36:09.381937229 +0100
@@ -39,7 +39,7 @@
%define _rabbitmq_group rabbitmq
Name: rabbitmq-server
-Version: 3.12.7
+Version: 3.12.10
Release: 0
Summary: A message broker supporting AMQP, STOMP and MQTT
License: MPL-2.0
++++++ rabbitmq-server-3.12.7.tar.xz -> rabbitmq-server-3.12.10.tar.xz ++++++
++++ 1957 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package VirtualGL for openSUSE:Factory checked in at 2023-12-17 21:34:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/VirtualGL (Old)
and /work/SRC/openSUSE:Factory/.VirtualGL.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "VirtualGL"
Sun Dec 17 21:34:08 2023 rev:16 rq:1133726 version:3.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/VirtualGL/VirtualGL.changes 2022-12-22 16:22:44.389914049 +0100
+++ /work/SRC/openSUSE:Factory/.VirtualGL.new.25432/VirtualGL.changes 2023-12-17 21:36:06.581835491 +0100
@@ -1,0 +2,81 @@
+Wed Dec 6 11:11:46 UTC 2023 - ming li <mli(a)suse.com>
+
+- Update to 3.1:
+ 1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
+ were not automatically destroyed along with the context and drawable in which
+ the objects were created.
+
+ 2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
+ `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
+ rather than `exit()` when a non-recoverable error occurs.
+
+ 3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
+ and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
+ native window argument as an X window handle rather than a pointer to an X
+ window handle. This caused a segfault in VLC when using the OpenGL video
+ output module.
+
+ 4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
+ Leap 15.
+
+ 5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
+ `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
+ throwing a fatal error. This allows applications such as Firefox to fail
+ gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
+
+ 6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
+ the X keyboard extension was enabled on the 2D X server.
+
+ 7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
+ unless the VGL Transport or a transport plugin will be used. Even if the 2D X
+ server has stereo visuals, they will never be used with the X11 and XV
+ Transports. Probing the 2D X server for stereo visuals causes problems with
+ certain OpenGL implementations and with applications, such as Tecplot 360, that
+ include static builds of Mesa. An undocumented environment variable
+ (`VGL_PROBEGLX`) can be used to override the default behavior.
+
+ 8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
+ and `glXQueryExtension()` function calls now return `False`, rather than
+ throwing a fatal error, if the 2D X server does not have a GLX extension. (The
+ EGL back end uses the 2D X server's GLX extension for GLX error handling.)
+ This allows applications, such as Chrome/Chromium, to fail gracefully or use a
+ different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
+ GLX.
+
+ 9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
+ requiring Rosetta 2.)
+
+- update to 3.0.90 (3.1 beta1)
+ 1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
+ version of VirtualGL and will continue to be maintained in the 3.0.x branch on
+ a break/fix basis only. Those options, which had been undocumented since
+ VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
+ not universally available and SSH X11 forwarding sometimes introduced a
+ performance penalty. `vglconnect -x` did not work with most modern operating
+ systems, since most modern operating systems disable X11 TCP connections by
+ default.
+
+ 2. SSL encryption of the VGL Transport has been retired in this version of
+ VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
+ basis only. That feature, which had not been included in official VirtualGL
+ packages since VirtualGL 2.1.x, was not widely used. Furthermore, SSL
+ encryption of the VGL Transport had no performance advantages over SSH
+ tunneling on modern systems, and it had some security disadvantages due to its
+ reliance on the RSA key exchange algorithm (which made it incompatible with TLS
+ v1.3.)
+
+ 3. When using the EGL back end, VirtualGL now supports 3D applications
+ (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
+ use the EGL/X11 API instead of the GLX API. As of this writing, VirtualGL does
+ not support EGL pixmap surfaces or front buffer/single buffer rendering with
+ EGL window surfaces.
+
+ 4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
+ option to avoid the need to authenticate with the server multiple times when
+ tunneling the VGL Transport through SSH.
+
+ 5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
+ combined with `-s`, causes VirtualGL to be preloaded into all processes
+ launched in the remote shell, thus eliminating the need to invoke `vglrun`.
+
+-------------------------------------------------------------------
Old:
----
VirtualGL-3.0.2.tar.gz
New:
----
VirtualGL-3.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ VirtualGL.spec ++++++
--- /var/tmp/diff_new_pack.XLLqwf/_old 2023-12-17 21:36:07.065853077 +0100
+++ /var/tmp/diff_new_pack.XLLqwf/_new 2023-12-17 21:36:07.069853222 +0100
@@ -1,7 +1,7 @@
#
# spec file for package VirtualGL
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: VirtualGL
-Version: 3.0.2
+Version: 3.1
Release: 0
Summary: A toolkit for displaying OpenGL applications to thin clients
License: LGPL-2.1-only AND SUSE-wxWidgets-3.1
@@ -122,6 +122,7 @@
# Fix placement of 64b glxspheres
%ifarch x86_64 s390x ppc64 ppc64le aarch64 riscv64
mv %{buildroot}%{_bindir}/glxspheres* %{buildroot}%{_bindir}/glxspheres
+mv %{buildroot}%{_bindir}/eglxspheres* %{buildroot}%{_bindir}/eglxspheres
%endif
# Fix fakelib placement
rm -rf %{buildroot}%{_prefix}/fakelib
@@ -132,6 +133,7 @@
rm -rf %{buildroot}%{_datadir}/doc
mv -f %{buildroot}%{_bindir}/glxinfo %{buildroot}%{_bindir}/vglxinfo
mv -f %{buildroot}%{_bindir}/eglinfo %{buildroot}%{_bindir}/veglinfo
+mv -f %{buildroot}%{_bindir}/eglxinfo %{buildroot}%{_bindir}/veglxinfo
# bsc#1097210 rely on env settings
rm -rf %{buildroot}/%{_bindir}/.vglrun.*
@@ -146,7 +148,9 @@
%{_bindir}/cpustat
%{_bindir}/veglinfo
%{_bindir}/vglxinfo
+%{_bindir}/veglxinfo
%{_bindir}/glxspheres
+%{_bindir}/eglxspheres
%{_bindir}/vglclient
%{_bindir}/vglconfig
%{_bindir}/vglconnect
++++++ VirtualGL-3.0.2.tar.gz -> VirtualGL-3.1.tar.gz ++++++
++++ 10586 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package iosevka-fonts for openSUSE:Factory checked in at 2023-12-17 21:33:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/iosevka-fonts (Old)
and /work/SRC/openSUSE:Factory/.iosevka-fonts.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "iosevka-fonts"
Sun Dec 17 21:33:48 2023 rev:73 rq:1133725 version:28.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/iosevka-fonts/iosevka-fonts.changes 2023-11-19 20:16:26.647873443 +0100
+++ /work/SRC/openSUSE:Factory/.iosevka-fonts.new.25432/iosevka-fonts.changes 2023-12-17 21:36:02.529688260 +0100
@@ -1,0 +2,103 @@
+Sun Dec 17 07:46:56 UTC 2023 - Anton Shvetz <shvetz.anton(a)gmail.com>
+
+- Update to v28.0.0
+ * Changes of version 28.0.0
+ = [BREAKING] The filenames and package filenames are changed.
+ ~ They will now use PascalCase instead of kebab-case.
+ ~ To package manager maintainers: Please upgrade your script
+ to make it capable to download and install the fonts under
+ new names, and properly uninstall the fonts under old
+ names.
+ = [BREAKING] Certain properties in the build plans are changed
+ to camelCase. Using them will trigger a build failure.
+ ~ no-cv-ss → noCvSs
+ ~ no-ligation → noLigation
+ ~ export-glyph-names → exportGlyphNames
+ ~ build-texture-feature → buildTextureFeature
+ ~ metric-override → metricOverride
+ ~ compatibility-ligatures → compatibilityLigatures
+ ~ exclude-chars → excludeChars
+ ~ webfont-formats → webfontFormats
+ = [BREAKING] The "SGr" TTC packages for Iosevka Aile and Etoile
+ will no longer be generated, as they are duplicates to the
+ non-SGr TTC packages.
+ = [BREAKING] Reorder of glyph variants:
+ ~ Influenced characters: M, R, f, i, l, t, x, Long S (ſ),
+ Lower Lambda (λ), Lower Tau (τ), Lower Chi (χ), Cyrillic
+ Lower Em (м), Cyrillic Lower Ef (ф), Cyrillic Ya (Я, я), 5.
+ = [BREAKING] Tags for variant features for Cyrillic lowercase
+ Er and U are changed to cv76 and cv78.
+ ~ Various other glyph variant tags are also changed to
+ reflect this insertion.
+ = [BREAKING] Make the ligation group names for symbol
+ connections more intuitive, and add alternatives to start
+ chaining from at least 3 continuous characters (#2100):
+ ~ plusplus → plus-plus, plus-plus-plus.
+ ~ connected-hyphen → minus-minus, minus-minus-minus.
+ ~ connected-tilde-as-wave → tilde-tilde, tilde-tilde-tilde.
+ ~ connected-underscore → underscore-underscore,
+ underscore-underscore-underscore.
+ ~ connected-number-sign → hash-hash, hash-hash-hash.
+ = Add Characters:
+ ~ CYRILLIC CAPITAL LETTER LHA (U+0514) ... CYRILLIC SMALL
+ LETTER YAE (U+0519) (#2018).
+ ~ GEORGIAN PARAGRAPH SEPARATOR (U+10FB).
+ ~ COMBINING BREVE-MACRON (U+1DCB) ... COMBINING MACRON-BREVE
+ (U+1DCC) (#1880).
+ ~ COMBINING DOUBLE CIRCUMFLEX ABOVE (U+1DCD).
+ ~ COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE
+ (U+1DD3).
+ ~ COMBINING DELETION MARK (U+1DFB).
+ ~ LINE SEPARATOR (U+2028) ... PARAGRAPH SEPARATOR (U+2029).
+ ~ TRIANGLE-HEADED RIGHTWARDS ARROW (U+279D).
+ ~ LONG RIGHTWARDS SQUIGGLE ARROW (U+27FF).
+ ~ LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE (U+2902) ...
+ LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE (U+2904).
+ ~ LONG LEFTWARDS SQUIGGLE ARROW (U+2B33).
+ ~ DOWNWARDS TRIANGLE-HEADED ZIGZAG ARROW (U+2B4D).
+ ~ RAISED SQUARE (U+2E0B).
+ ~ HYPODIASTOLE (U+2E12).
+ ~ TWO DOTS OVER ONE DOT PUNCTUATION (U+2E2A) ... FIVE DOT
+ MARK (U+2E2D).
+ ~ LATIN SMALL LETTER U WITH LEFT HOOK (U+AB52).
+ ~ MODIFIER LETTER SMALL U WITH LEFT HOOK (U+AB5F).
+ = Add hook-inward-serifed variants for a (#2085).
+ = Add single-storey-double-serifed and
+ single-storey-tailed-serifed variants for a and Greek Lower
+ Alpha (α) (#1949).
+ ~ Make a.single-storey-tailed-serifed the default for slab
+ italic to match g and q.
+ = Add bottom-serifed variants for d, and q.
+ = Add bottom-right-serifed variants for U.
+ = Add tailless variants for Greek Lower Iota (ι).
+ = Make Greek Lower Iota (ι) and Greek Lower Tau (τ) semi-tailed
+ under default upright and tailed under default italic.
+ = Remove earless-rounded variants for U+01A5, U+0256, U+02A0,
+ and U+1D91.
+ = Remove earless-corner variants for U+027E.
+ = Improve serifs for turned k (U+029E) to match q and turned h
+ (U+0265).
+ = Improve top-left serif for LATIN SMALL LETTER KRA (U+0138) to
+ match k.
+ = Make Greek Kappa (U+03BA) respond to more serif variants for
+ k (cv36).
+ = Add a top-left serif to GREEK SMALL LETTER HETA (U+0371)
+ under slab.
+ = Add a serif to MATHEMATICAL DOUBLE-STRUCK SMALL J (U+1D55B)
+ to match that of MATHEMATICAL DOUBLE-STRUCK SMALL I
+ (U+1D55A).
+ = Improve vertical alignmant of bowl for LATIN CAPITAL LETTER
+ THORN WITH STROKE (U+A764) and LATIN CAPITAL LETTER THORN
+ WITH STROKE THROUGH DESCENDER (U+A766).
+ = Stylistic set fixes:
+ ~ Fix cv10 for ss01, ss02, and ss08 under slab.
+ ~ Fix cv53 for ss16.
+ ~ Fix cv64 and cv65 for ss07.
+ ~ Fix cv66 for ss17.
+ ~ Fix cv81 and cv82 for ss03 and ss08 under italic slab.
+ ~ Fix cv93 for ss01.
+ ~ Fix vsAJ for ss10.
+ ~ Fix vlAB for ss09 and ss14.
+ ~ Fix vlAD for ss05 and ss14.
+
+-------------------------------------------------------------------
Old:
----
super-ttc-iosevka-27.3.5.zip
super-ttc-iosevka-aile-27.3.5.zip
super-ttc-iosevka-curly-27.3.5.zip
super-ttc-iosevka-curly-slab-27.3.5.zip
super-ttc-iosevka-etoile-27.3.5.zip
super-ttc-iosevka-slab-27.3.5.zip
super-ttc-iosevka-ss01-27.3.5.zip
super-ttc-iosevka-ss02-27.3.5.zip
super-ttc-iosevka-ss03-27.3.5.zip
super-ttc-iosevka-ss04-27.3.5.zip
super-ttc-iosevka-ss05-27.3.5.zip
super-ttc-iosevka-ss06-27.3.5.zip
super-ttc-iosevka-ss07-27.3.5.zip
super-ttc-iosevka-ss08-27.3.5.zip
super-ttc-iosevka-ss09-27.3.5.zip
super-ttc-iosevka-ss10-27.3.5.zip
super-ttc-iosevka-ss11-27.3.5.zip
super-ttc-iosevka-ss12-27.3.5.zip
super-ttc-iosevka-ss13-27.3.5.zip
super-ttc-iosevka-ss14-27.3.5.zip
super-ttc-iosevka-ss15-27.3.5.zip
super-ttc-iosevka-ss16-27.3.5.zip
super-ttc-iosevka-ss17-27.3.5.zip
super-ttc-iosevka-ss18-27.3.5.zip
New:
----
SuperTTC-Iosevka-28.0.0.zip
SuperTTC-IosevkaAile-28.0.0.zip
SuperTTC-IosevkaCurly-28.0.0.zip
SuperTTC-IosevkaCurlySlab-28.0.0.zip
SuperTTC-IosevkaEtoile-28.0.0.zip
SuperTTC-IosevkaSS01-28.0.0.zip
SuperTTC-IosevkaSS02-28.0.0.zip
SuperTTC-IosevkaSS03-28.0.0.zip
SuperTTC-IosevkaSS04-28.0.0.zip
SuperTTC-IosevkaSS05-28.0.0.zip
SuperTTC-IosevkaSS06-28.0.0.zip
SuperTTC-IosevkaSS07-28.0.0.zip
SuperTTC-IosevkaSS08-28.0.0.zip
SuperTTC-IosevkaSS09-28.0.0.zip
SuperTTC-IosevkaSS10-28.0.0.zip
SuperTTC-IosevkaSS11-28.0.0.zip
SuperTTC-IosevkaSS12-28.0.0.zip
SuperTTC-IosevkaSS13-28.0.0.zip
SuperTTC-IosevkaSS14-28.0.0.zip
SuperTTC-IosevkaSS15-28.0.0.zip
SuperTTC-IosevkaSS16-28.0.0.zip
SuperTTC-IosevkaSS17-28.0.0.zip
SuperTTC-IosevkaSS18-28.0.0.zip
SuperTTC-IosevkaSlab-28.0.0.zip
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ iosevka-fonts.spec ++++++
--- /var/tmp/diff_new_pack.PfktGm/_old 2023-12-17 21:36:06.217822265 +0100
+++ /var/tmp/diff_new_pack.PfktGm/_new 2023-12-17 21:36:06.217822265 +0100
@@ -20,36 +20,36 @@
typeface family, designed for writing code, using in terminals, and\
preparing technical documents.
Name: iosevka-fonts
-Version: 27.3.5
+Version: 28.0.0
Release: 0
Summary: Slender typeface for source code
License: OFL-1.1
Group: System/X11/Fonts
URL: https://typeof.net/Iosevka/
-Source0: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source1: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source2: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source3: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source4: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source5: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source6: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source7: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source8: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source9: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source10: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source11: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source12: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source13: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source14: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source15: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source16: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source17: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source18: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source19: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source20: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source21: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source22: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
-Source23: https://github.com/be5invis/Iosevka/releases/download/v%{version}/super-ttc…
+Source0: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source1: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source2: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source3: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source4: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source5: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source6: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source7: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source8: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source9: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source10: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source11: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source12: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source13: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source14: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source15: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source16: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source17: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source18: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source19: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source20: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source21: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source22: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
+Source23: https://github.com/be5invis/Iosevka/releases/download/v%{version}/SuperTTC-…
Source100: https://github.com/be5invis/Iosevka/raw/v%{version}/LICENSE.md
Source101: https://github.com/be5invis/Iosevka/raw/v%{version}/README.md
Source102: https://github.com/be5invis/Iosevka/raw/v%{version}/CHANGELOG.md
@@ -306,7 +306,7 @@
%prep
%autosetup -cT
-for s in %{_sourcedir}/super-ttc-iosevka*%{version}.zip; do
+for s in %{_sourcedir}/SuperTTC-Iosevka*%{version}.zip; do
unzip -qq $s '*.ttc'
done
cp %{SOURCE100} %{SOURCE101} %{SOURCE102} .
@@ -315,16 +315,7 @@
%install
install -d %{buildroot}%{_ttfontsdir}
-install -m0644 iosevka.ttc %{buildroot}%{_ttfontsdir}/Iosevka.ttc
-install -m0644 iosevka-aile.ttc %{buildroot}%{_ttfontsdir}/IosevkaAile.ttc
-install -m0644 iosevka-curly.ttc %{buildroot}%{_ttfontsdir}/IosevkaCurly.ttc
-install -m0644 iosevka-curly-slab.ttc %{buildroot}%{_ttfontsdir}/IosevkaCurlySlab.ttc
-install -m0644 iosevka-etoile.ttc %{buildroot}%{_ttfontsdir}/IosevkaEtoile.ttc
-install -m0644 iosevka-curly-slab.ttc %{buildroot}%{_ttfontsdir}/IosevkaCurlySlab.ttc
-install -m0644 iosevka-slab.ttc %{buildroot}%{_ttfontsdir}/IosevkaSlab.ttc
-for i in $(seq -w 1 18); do
- install -m0644 iosevka-ss$i.ttc %{buildroot}%{_ttfontsdir}/IosevkaSS$i.ttc
-done
+install -m0644 *.ttc %{buildroot}%{_ttfontsdir}
%reconfigure_fonts_scriptlets
%reconfigure_fonts_scriptlets -n iosevka-slab-fonts
++++++ CHANGELOG.md ++++++
--- /var/tmp/diff_new_pack.PfktGm/_old 2023-12-17 21:36:06.245823282 +0100
+++ /var/tmp/diff_new_pack.PfktGm/_new 2023-12-17 21:36:06.249823427 +0100
@@ -1,164 +1,72 @@
## Modifications since last major version
-### 27.3.5
+### 28.0.0
-* Add italic form of CYRILLIC SMALL LETTER THREE-LEGGED TE (`U+1C85`).
-* Add top-right serif to fully serifed form for CYRILLIC SMALL LETTER TALL TE (`U+1C84`).
-* Fix serifs of GREEK LETTER DIGAMMA (`U+03DC`) under `ss12`.
-* Improve crossbar position of GREEK SMALL LETTER DIGAMMA (`U+03DD`) and add a middle serif under slab.
-* Refine Greek Capital Sho (U+03F7) glyph (#2079).
-* \[Experimental\] Add a font feature for texture control (#2081).
- - Currently only available through custom builds with `build-texture-feature = true`.
-* Make SYMBOL FOR DELETE FORM TWO (`U+2425`) narrow by default, align with other Control Pictures characters (#2084).
-* Make APL FUNCTIONAL SYMBOL CIRCLE STAR (`U+235F`) always be five-pointed and upright, to align its pentagram history (#2083).
-
-
-### 27.3.4
-
-* Disunify anonymous untagged variant selectors for Cyrillic Capital Yeri/Yery for consistency in style-driven configurations.
-* Make LATIN CAPITAL LETTER Y WITH LOOP (`U+1EFE`) follow variants of capital `Y` (`cv24`) for a more balanced slab-italic form like that of Cyrillic Capital U.
-* Remove `base-serifed`-only variants for CYRILLIC SMALL LETTER STRAIGHT U (`U+04AF`, `U+04B1`).
-* Make Etoile use `flat-bottom-serifed` for `M` and Cyrillic Lower Em (`cv13`, `cv74`).
-
-
-### 27.3.3
-
-* Make `cv96` take effect on math asterisk operators (#2066).
-* Fix serifs of italic small Yat in Etoile (#2067).
-* Add characters:
- - LEFTWARDS HARPOON WITH BARB UP TO BAR (`U+2952`) .. DOWNWARDS HARPOON WITH BARB LEFT FROM BAR (`U+2961`).
-
-
-### 27.3.2
-
-* Fix overlapping serifs of italic Yat (#2061).
-* Fix width of VERY MUCH GREATER-THAN (`U+22D9`).
-* Remove duplicate variants for `U+0181`, `U+018A`, `U+01A4`, and `U+2C64`.
-* Remove asymmetric variants for small capital `B` (`U+0299`, `U+1D03`) and Cyrillic Lower Ve (`U+0432`).
-
-
-### 27.3.1
-
-* Fix application of `cv39` on italic Cyrillic Yat.
-* Fix mark placement for `U+024F`.
-* Fix overlay placement of Tugrik Sign (U+20AE) under Etoile (#2060).
-
-
-### 27.3.0
-
-* Make the tailed variants of `i` and `l` use the fully-tailed shape even when upright, as is consistent with `t = bent-hook` (#1692).
- - The old, slightly-curly variants for `i`, `l`, iota (`ι`) and tau (`τ`) are moved to `semi-tailed` variants.
- - Corresponded SSes are changed to keep the shape identical to the old version.
-* Make Cyrillic Yat to follow Yeri variants. Italic Yat will also respond to variants of `n` (#2047).
-* Add short-tailed lowercase tau (`τ`) (#2050).
-* Fix tailed variants for `U+02A0`.
+* \[**BREAKING**\] The filenames and package filenames are changed.
+ - They will now use PascalCase instead of kebab-case.
+ - To package manager maintainers: Please upgrade your script to make it capable to download and install the fonts under new names, and properly uninstall the fonts under old names.
+* \[**BREAKING**\] Certain properties in the build plans are changed to camelCase. Using them will trigger a build failure.
+ - `no-cv-ss` → `noCvSs`
+ - `no-ligation` → `noLigation`
+ - `export-glyph-names` → `exportGlyphNames`
+ - `build-texture-feature` → `buildTextureFeature`
+ - `metric-override` → `metricOverride`
+ - `compatibility-ligatures` → `compatibilityLigatures`
+ - `exclude-chars` → `excludeChars`
+ - `webfont-formats` → `webfontFormats`
+* \[**BREAKING**\] The "SGr" TTC packages for Iosevka Aile and Etoile will no longer be generated, as they are duplicates to the non-SGr TTC packages.
+* \[**BREAKING**\] Reorder of glyph variants:
+ - Influenced characters: `M`, `R`, `f`, `i`, `l`, `t`, `x`, Long S (`ſ`), Lower Lambda (`λ`), Lower Tau (`τ`), Lower Chi (`χ`), Cyrillic Lower Em (`м`), Cyrillic Lower Ef (`ф`), Cyrillic Ya (`Я`, `я`), `5`.
+* \[**BREAKING**\] Tags for variant features for Cyrillic lowercase Er and U are changed to `cv76` and `cv78`.
+ - Various other glyph variant tags are also changed to reflect this insertion.
+* \[**BREAKING**\] Make the ligation group names for symbol connections more intuitive, and add alternatives to start chaining from at least 3 continuous characters (#2100):
+ - `plusplus` → `plus-plus`, `plus-plus-plus`.
+ - `connected-hyphen` → `minus-minus`, `minus-minus-minus`.
+ - `connected-tilde-as-wave` → `tilde-tilde`, `tilde-tilde-tilde`.
+ - `connected-underscore` → `underscore-underscore`, `underscore-underscore-underscore`.
+ - `connected-number-sign` → `hash-hash`, `hash-hash-hash`.
+* Add Characters:
+ - CYRILLIC CAPITAL LETTER LHA (`U+0514`) ... CYRILLIC SMALL LETTER YAE (`U+0519`) (#2018).
+ - GEORGIAN PARAGRAPH SEPARATOR (`U+10FB`).
+ - COMBINING BREVE-MACRON (`U+1DCB`) ... COMBINING MACRON-BREVE (`U+1DCC`) (#1880).
+ - COMBINING DOUBLE CIRCUMFLEX ABOVE (`U+1DCD`).
+ - COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE (`U+1DD3`).
+ - COMBINING DELETION MARK (`U+1DFB`).
+ - LINE SEPARATOR (`U+2028`) ... PARAGRAPH SEPARATOR (`U+2029`).
+ - TRIANGLE-HEADED RIGHTWARDS ARROW (`U+279D`).
+ - LONG RIGHTWARDS SQUIGGLE ARROW (`U+27FF`).
+ - LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE (`U+2902`) ... LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE (`U+2904`).
+ - LONG LEFTWARDS SQUIGGLE ARROW (`U+2B33`).
+ - DOWNWARDS TRIANGLE-HEADED ZIGZAG ARROW (`U+2B4D`).
+ - RAISED SQUARE (`U+2E0B`).
+ - HYPODIASTOLE (`U+2E12`).
+ - TWO DOTS OVER ONE DOT PUNCTUATION (`U+2E2A`) ... FIVE DOT MARK (`U+2E2D`).
+ - LATIN SMALL LETTER U WITH LEFT HOOK (`U+AB52`).
+ - MODIFIER LETTER SMALL U WITH LEFT HOOK (`U+AB5F`).
+* Add hook-inward-serifed variants for `a` (#2085).
+* Add single-storey-double-serifed and single-storey-tailed-serifed variants for `a` and Greek Lower Alpha (`α`) (#1949).
+ - Make `a`.`single-storey-tailed-serifed` the default for slab italic to match `g` and `q`.
+* Add bottom-serifed variants for `d`, and `q`.
+* Add bottom-right-serifed variants for `U`.
+* Add tailless variants for Greek Lower Iota (`ι`).
+* Make Greek Lower Iota (`ι`) and Greek Lower Tau (`τ`) semi-tailed under default upright and tailed under default italic.
+* Remove earless-rounded variants for `U+01A5`, `U+0256`, `U+02A0`, and `U+1D91`.
+* Remove earless-corner variants for `U+027E`.
+* Improve serifs for turned k (`U+029E`) to match `q` and turned h (`U+0265`).
+* Improve top-left serif for LATIN SMALL LETTER KRA (`U+0138`) to match `k`.
+* Make Greek Kappa (`U+03BA`) respond to more serif variants for `k` (`cv36`).
+* Add a top-left serif to GREEK SMALL LETTER HETA (`U+0371`) under slab.
+* Add a serif to MATHEMATICAL DOUBLE-STRUCK SMALL J (`U+1D55B`) to match that of MATHEMATICAL DOUBLE-STRUCK SMALL I (`U+1D55A`).
+* Improve vertical alignmant of bowl for LATIN CAPITAL LETTER THORN WITH STROKE (`U+A764`) and LATIN CAPITAL LETTER THORN WITH STROKE THROUGH DESCENDER (`U+A766`).
* Stylistic set fixes:
- * Fix `cv44` and `cv99` for `ss13`.
- * Fix `cv48` and `cv54` for `ss17`.
- * Fix `cv51` for Etoile.
- * Fix `cv52` for `ss15` and Etoile.
- * Fix `cv58` for `ss15`.
- * Fix `cv59` for `ss07`.
- * Fix `cv61` for `ss15` and `ss17`.
- * Fix `cv66` for `ss01`, `ss06`, and `ss15`.
- * Fix `vsAF` for `ss11`.
- * Fix `vsAL` for `ss09` and `ss18`.
-
-
-### 27.2.1
-
-* Refine shape of flat `5` (#2030).
-* Fix `ss02`, `ss04`, `ss06`, `ss13`, `ss17`'s application on `i` and `j` (#2033).
-* Add tailed lower lambda (#2036).
-* Add Chancery and Semi-Chancery variants for lowercase `x` and Greek Chi (#2037).
-* Add `arrow-lr` ligation group for C-like's spaceship operators (#2041).
-* Add raised cap-height cent sign (`¢`) variants to `VSAM` (#2044).
-* Fix `cv02`, `cv04`, `cv05`, `cv06`, `cv11`, `cv12`, `cv15`, `cv17`, `cv18`, `cv25`, `cv28`, `cv43`, `cv70`, `cv71`, `cv81`, and `cv82` for `ss17` under slab.
-
-
-### 27.2.0
-
-* Add characters
- - TELEPHONE RECORDER (`U+2315`) (#2020).
- - COUNTERSINK (`U+2335`) (#2020).
- - BROKEN CIRCLE WITH NORTHWEST ARROW (`U+238B`) (#2020).
- - TRIPLE PLUS (`U+29FB`) (#2020).
-* Correction of letter assignments for stylistic styles:
- - Fix `cv10` and `cv30` for `ss14`.
- - Fix `cv12`, `cv36`, and `cv82` for `ss16`.
- - Fix `cv22`, `cv31`, `cv47`, and `cv91` for `ss07`.
- - Fix `cv26` for `ss07`, `ss14`, and `ss15`.
- - Fix `cv28`, `cv43`, and `cv70` for `ss01`, `ss04`, `ss05`, `ss06`, `ss07`, `ss13`, and `ss16`.
- - Fix `cv55` for `ss03`, `ss09`, `cv12`, and `ss14`.
- - Fix `cv53` and `cv84` for `ss10`.
- - Fix `cv58` for `ss06` and `ss10`.
- - Fix `cv59` for `ss09` and `ss18`.
- - Fix `cv61` for `ss08` and `ss20`.
- - Fix `cv62` for `ss01`.
- - Fix `cv63` for `ss02`, `ss05`, and `ss12`.
- - Fix `cv68` for `ss03`.
- - Fix `cv72` for `ss03`, `ss05`, `ss06`, `cv07`, and `ss13`.
- - Fix `cv77` for `ss03`, `ss04`, `ss06`, `ss07`, `ss08`, `ss12`, `ss13`, and `ss18`.
- - Fix `cv79` and `cv80` for `ss01`, `ss02`, `ss04`, `ss05`, `ss06`, `ss07`, `ss09`, `ss12`, `ss13`, `ss14`, `ss16`, `ss18`, and Aile.
- - Fix `cv88` for `ss18`.
- - Fix `vsAA` and `vsAM` for `ss06`.
- - Fix `vsAG` for `ss03` and Etoile.
-
-
-### 27.1.0
-
-* \[**Breaking**\] Change of variant names:
- - `five`.`vertical-upper-left-bar` → `five`.`upright-arched`
- - `five`.`oblique-upper-left-bar` → `five`.`oblique-arched`
-* Add characters:
- - CYRILLIC CAPITAL LETTER DCHE (`U+052C`) (#1897).
- - CYRILLIC SMALL LETTER DCHE (`U+052D`) (#1897).
-* Add separate variant selector `VXAA` for Cyrillic Lower Er (`р`) (#2006).
-* Add separate variant selector `VXAB` for Cyrillic Lower U (`у`) (#2006).
-* Add flat middle stroke variant for `5` (#1995).
-* Fix variants for Serbian Cyrillic Lower Pe (`п`).
-
-
-### 27.0.2
-
-* Add Characters
- - LATIN LETTER SMALL CAPITAL R WITH RIGHT LEG (`U+AB46`).
-* Add variants for Cyrillic lower Ef (`ф`) with a split bowl (#1992).
-* Add Bulgarian local variants for Cyrillic Ef (`Ф`,`ф`).
-* Fix serifs in `U+01A6`.
-* Improve serifs of Turn M (`U+019C`, `U+026F`) under quasi-proportional.
-* Make Turn h (`U+0265`) and Turn M with Long Leg (`U+0270`) follow serif variants of `u`.
-* Optimize geometry for `U+A65A` and `U+A65B` under extended width.
-* Fix assignment of `8` for `ss14` (#1999).
-
-
-### 27.0.1
-
-* Add Characters
- - VERY MUCH LESS-THAN (`U+22D8`) (#1990).
- - VERY MUCH GREATER-THAN (`U+22D9`) (#1990).
-
-
-### 27.0.0
-
-* \[**Breaking**\] Variants for `π`, `τ` and `«` are inserted into the main tag sequence. As a consequence, variant features after them have the tags changed.
-* \[**Breaking**\] Reordered variants of Eszet.
-* \[**Breaking**\] Change of variant names:
- - `upper-r`.`straight-motion-serifed` → `upper-r`.`straight-top-left-serifed`
- - `upper-r`.`curly-motion-serifed` → `upper-r`.`curly-top-left-serifed`
- - `upper-r`.`standing-motion-serifed` → `upper-r`.`standing-top-left-serifed`
- - `upper-r`.`straight-open-motion-serifed` → `upper-r`.`straight-open-top-left-serifed`
- - `upper-r`.`curly-open-motion-serifed` → `upper-r`.`curly-open-top-left-serifed`
- - `upper-r`.`standing-open-motion-serifed` → `upper-r`.`standing-open-top-left-serifed`
-* Add characters:
- - COMBINING RING OVERLAY (`U+20D8`).
-* Add bottom-right and top-left bottom-right serifed variants of `R`.
-* Add bottom-left motion serifed variants of Cyrillic Ya (`Я`,`я`).
-* Add cursive variants for Cyrillic Capital/Small Zhe (`Ж`,`ж`) (#1762).
-* Allow R Rotunda (`U+A75A`, `U+A75B`) and Indian Rupee Sign (`U+20B9`) to have a bottom-right serif.
-* Add OpenType `zero` feature (#1966).
-* Fix broken geometry of `U+AB3A` under condensed width.
-* Improve bowl shape of Latin Phi (`U+0278`).
-* Fix dot radius of COMBINING THREE DOTS ABOVE (`U+20DB`), COMBINING FOUR DOTS ABOVE (`U+20DC`), and COMBINING TRIPLE UNDERDOT (`U+20D8`).
+ - Fix `cv10` for `ss01`, `ss02`, and `ss08` under slab.
+ - Fix `cv53` for `ss16`.
+ - Fix `cv64` and `cv65` for `ss07`.
+ - Fix `cv66` for `ss17`.
+ - Fix `cv81` and `cv82` for `ss03` and `ss08` under italic slab.
+ - Fix `cv93` for `ss01`.
+ - Fix `vsAJ` for `ss10`.
+ - Fix `vlAB` for `ss09` and `ss14`.
+ - Fix `vlAD` for `ss05` and `ss14`.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package openQA for openSUSE:Factory checked in at 2023-12-17 21:33:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openQA (Old)
and /work/SRC/openSUSE:Factory/.openQA.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openQA"
Sun Dec 17 21:33:32 2023 rev:530 rq:1133694 version:4.6.1702649526.dcd6122
Changes:
--------
openQA-devel-test.changes: same change
openQA-test.changes: same change
openQA-worker-test.changes: same change
--- /work/SRC/openSUSE:Factory/openQA/openQA.changes 2023-12-15 21:48:18.952426751 +0100
+++ /work/SRC/openSUSE:Factory/.openQA.new.25432/openQA.changes 2023-12-17 21:35:32.108582944 +0100
@@ -1,0 +2,6 @@
+Sun Dec 17 02:14:53 UTC 2023 - okurz(a)suse.com
+
+- Update to version 4.6.1702649526.dcd6122:
+ * Use postgresql recursive feature for getting scheduled product
+
+-------------------------------------------------------------------
Old:
----
openQA-4.6.1702503492.e68161c.obscpio
New:
----
openQA-4.6.1702649526.dcd6122.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openQA-client-test.spec ++++++
--- /var/tmp/diff_new_pack.WCFFy2/_old 2023-12-17 21:35:32.952613611 +0100
+++ /var/tmp/diff_new_pack.WCFFy2/_new 2023-12-17 21:35:32.952613611 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-client
Name: %{short_name}-test
-Version: 4.6.1702503492.e68161c
+Version: 4.6.1702649526.dcd6122
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA-devel-test.spec ++++++
--- /var/tmp/diff_new_pack.WCFFy2/_old 2023-12-17 21:35:32.976614483 +0100
+++ /var/tmp/diff_new_pack.WCFFy2/_new 2023-12-17 21:35:32.980614628 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-devel
Name: %{short_name}-test
-Version: 4.6.1702503492.e68161c
+Version: 4.6.1702649526.dcd6122
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA-test.spec ++++++
--- /var/tmp/diff_new_pack.WCFFy2/_old 2023-12-17 21:35:33.004615500 +0100
+++ /var/tmp/diff_new_pack.WCFFy2/_new 2023-12-17 21:35:33.004615500 +0100
@@ -18,7 +18,7 @@
%define short_name openQA
Name: %{short_name}-test
-Version: 4.6.1702503492.e68161c
+Version: 4.6.1702649526.dcd6122
Release: 0
Summary: Test package for openQA
License: GPL-2.0-or-later
++++++ openQA-worker-test.spec ++++++
--- /var/tmp/diff_new_pack.WCFFy2/_old 2023-12-17 21:35:33.028616372 +0100
+++ /var/tmp/diff_new_pack.WCFFy2/_new 2023-12-17 21:35:33.032616517 +0100
@@ -18,7 +18,7 @@
%define short_name openQA-worker
Name: %{short_name}-test
-Version: 4.6.1702503492.e68161c
+Version: 4.6.1702649526.dcd6122
Release: 0
Summary: Test package for %{short_name}
License: GPL-2.0-or-later
++++++ openQA.spec ++++++
--- /var/tmp/diff_new_pack.WCFFy2/_old 2023-12-17 21:35:33.056617390 +0100
+++ /var/tmp/diff_new_pack.WCFFy2/_new 2023-12-17 21:35:33.060617535 +0100
@@ -78,7 +78,7 @@
%define devel_requires %devel_no_selenium_requires chromedriver
Name: openQA
-Version: 4.6.1702503492.e68161c
+Version: 4.6.1702649526.dcd6122
Release: 0
Summary: The openQA web-frontend, scheduler and tools
License: GPL-2.0-or-later
++++++ openQA-4.6.1702503492.e68161c.obscpio -> openQA-4.6.1702649526.dcd6122.obscpio ++++++
/work/SRC/openSUSE:Factory/openQA/openQA-4.6.1702503492.e68161c.obscpio /work/SRC/openSUSE:Factory/.openQA.new.25432/openQA-4.6.1702649526.dcd6122.obscpio differ: char 50, line 1
++++++ openQA.obsinfo ++++++
--- /var/tmp/diff_new_pack.WCFFy2/_old 2023-12-17 21:35:33.132620151 +0100
+++ /var/tmp/diff_new_pack.WCFFy2/_new 2023-12-17 21:35:33.136620296 +0100
@@ -1,5 +1,5 @@
name: openQA
-version: 4.6.1702503492.e68161c
-mtime: 1702503492
-commit: e68161ce265973d9ea00e2b915e22b7294b33864
+version: 4.6.1702649526.dcd6122
+mtime: 1702649526
+commit: dcd612245517aa080e63d3d4eb19516c966739e2
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-girder-client for openSUSE:Factory checked in at 2023-12-17 21:33:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-girder-client (Old)
and /work/SRC/openSUSE:Factory/.python-girder-client.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-girder-client"
Sun Dec 17 21:33:30 2023 rev:8 rq:1133684 version:3.1.24
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-girder-client/python-girder-client.changes 2023-06-01 17:19:28.422143779 +0200
+++ /work/SRC/openSUSE:Factory/.python-girder-client.new.25432/python-girder-client.changes 2023-12-17 21:35:31.196549806 +0100
@@ -1,0 +2,6 @@
+Sun Dec 17 02:08:51 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.1.24:
+ * Update swagger-ui from version 2.x to 5.x.
+
+-------------------------------------------------------------------
Old:
----
girder-client-3.1.20.tar.gz
New:
----
girder-client-3.1.24.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-girder-client.spec ++++++
--- /var/tmp/diff_new_pack.aw3A1f/_old 2023-12-17 21:35:31.600564485 +0100
+++ /var/tmp/diff_new_pack.aw3A1f/_new 2023-12-17 21:35:31.600564485 +0100
@@ -18,11 +18,11 @@
%{?sle15_python_module_pythons}
Name: python-girder-client
-Version: 3.1.20
+Version: 3.1.24
Release: 0
Summary: Python Girder client
License: Apache-2.0
-URL: https://girder.readthedocs.org/en/latest/python-client.html
+URL: https://girder.readthedocs.io/en/latest/python-client.html
Source: https://files.pythonhosted.org/packages/source/g/girder-client/girder-clien…
BuildRequires: %{python_module setuptools_scm}
BuildRequires: %{python_module setuptools}
++++++ girder-client-3.1.20.tar.gz -> girder-client-3.1.24.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/girder-client-3.1.20/PKG-INFO new/girder-client-3.1.24/PKG-INFO
--- old/girder-client-3.1.20/PKG-INFO 2023-05-22 22:23:40.000000000 +0200
+++ new/girder-client-3.1.24/PKG-INFO 2023-09-28 16:39:44.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: girder-client
-Version: 3.1.20
+Version: 3.1.24
Summary: Python client for interacting with Girder servers
Home-page: http://girder.readthedocs.org/en/latest/python-client.html
Author: Kitware, Inc.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/girder-client-3.1.20/girder_client.egg-info/PKG-INFO new/girder-client-3.1.24/girder_client.egg-info/PKG-INFO
--- old/girder-client-3.1.20/girder_client.egg-info/PKG-INFO 2023-05-22 22:23:39.000000000 +0200
+++ new/girder-client-3.1.24/girder_client.egg-info/PKG-INFO 2023-09-28 16:39:44.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: girder-client
-Version: 3.1.20
+Version: 3.1.24
Summary: Python client for interacting with Girder servers
Home-page: http://girder.readthedocs.org/en/latest/python-client.html
Author: Kitware, Inc.
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-glfw for openSUSE:Factory checked in at 2023-12-17 21:33:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-glfw (Old)
and /work/SRC/openSUSE:Factory/.python-glfw.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-glfw"
Sun Dec 17 21:33:21 2023 rev:11 rq:1133686 version:2.6.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-glfw/python-glfw.changes 2022-10-29 20:18:46.702745044 +0200
+++ /work/SRC/openSUSE:Factory/.python-glfw.new.25432/python-glfw.changes 2023-12-17 21:35:25.236333248 +0100
@@ -1,0 +2,17 @@
+Sun Dec 17 02:13:39 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.6.3:
+ * Fixed wrapper for glfwGetMonitorWorkarea
+ * Implemented search for GLFW library specific to frozen
+ executables
+ * Revert changes made in 2.6.0
+ * Do not search for GLFW library when running in a frozen
+ executable
+ * Use multiprocessing for library version detection on non-
+ Windows systems
+ * Fixed package version in CHANGELOG.md and glfw/__init__.py
+ * Added more wrappers for unreleased macros
+ * Added support for PYGLFW_LIBRARY_VARIANT
+ * Added warnings for deprecated functions
+
+-------------------------------------------------------------------
Old:
----
glfw-2.5.5.tar.gz
New:
----
glfw-2.6.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-glfw.spec ++++++
--- /var/tmp/diff_new_pack.yPZ8Y6/_old 2023-12-17 21:35:25.644348073 +0100
+++ /var/tmp/diff_new_pack.yPZ8Y6/_new 2023-12-17 21:35:25.644348073 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-glfw
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-glfw
-Version: 2.5.5
+Version: 2.6.3
Release: 0
Summary: A ctypes-based wrapper for GLFW3
License: MIT
++++++ glfw-2.5.5.tar.gz -> glfw-2.6.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/CHANGELOG.md new/glfw-2.6.3/CHANGELOG.md
--- old/glfw-2.5.5/CHANGELOG.md 2022-09-07 18:29:18.000000000 +0200
+++ new/glfw-2.6.3/CHANGELOG.md 2023-11-17 08:41:44.000000000 +0100
@@ -4,6 +4,32 @@
For information on changes in GLFW itself, see the [GLFW version history](https://www.glfw.org/changelog.html).
+
+## [2.6.3] - 2023-11-17
+- Fixed wrapper for glfwGetMonitorWorkarea
+
+## [2.6.2] - 2023-06-30
+- Implemented search for GLFW library specific to frozen executables
+
+## [2.6.1] - 2023-06-23
+- Revert changes made in 2.6.0
+- Do not search for GLFW library when running in a frozen executable
+
+## [2.6.0] - 2023-06-23
+- Use multiprocessing for library version detection on non-Windows systems
+
+## [2.5.9] - 2023-04-01
+- Fixed package version in CHANGELOG.md and glfw/__init__.py
+
+## [2.5.8] - 2023-04-01
+- Added more wrappers for unreleased macros
+
+## [2.5.7] - 2023-03-15
+- Added support for PYGLFW_LIBRARY_VARIANT
+
+## [2.5.6] - 2023-02-01
+- Added warnings for deprecated functions
+
## [2.5.5] - 2022-09-07
- Added wrappers for unreleased macros
- Fixed set_monitor_user_pointer and get_monitor_user_pointer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/PKG-INFO new/glfw-2.6.3/PKG-INFO
--- old/glfw-2.5.5/PKG-INFO 2022-09-07 18:29:33.729395400 +0200
+++ new/glfw-2.6.3/PKG-INFO 2023-11-17 08:41:56.322559800 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: glfw
-Version: 2.5.5
+Version: 2.6.3
Summary: A ctypes-based wrapper for GLFW3.
Home-page: https://github.com/FlorianRhiem/pyGLFW
Author: Florian Rhiem
@@ -79,7 +79,10 @@
Linux
~~~~~
-The GLFW shared library is included in the Python wheels for Linux.
+The GLFW shared library is included in the Python wheels for Linux. Although
+pyGLFW will try to detect whether the GLFW library for Wayland or X11 should
+be used, you can set the ``PYGLFW_LIBRARY_VARIANT`` variable to ``wayland`` or
+``x11`` to select either variant of the library.
If you cannot use these on your system, you can install the GLFW shared
library using a package management system (e.g. ``apt install libglfw3``
@@ -91,6 +94,14 @@
in ``LD_LIBRARY_PATH``). If you want to use a specific library, you can set
the ``PYGLFW_LIBRARY`` environment variable to its path.
+cx_Freeze / PyInstaller
+~~~~~~~~~~~~~~~~~~~~~~~
+
+pyGLFW will search for the GLFW library in the current working directory, the directory
+of the executable and in the package on non-Windows platforms if running in an
+executable frozen with cx_Freeze or PyInstaller, unless the ``PYGLFW_LIBRARY``
+environment variable is set.
+
Development Version
~~~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/README.rst new/glfw-2.6.3/README.rst
--- old/glfw-2.5.5/README.rst 2022-09-07 18:29:18.000000000 +0200
+++ new/glfw-2.6.3/README.rst 2023-11-17 08:41:44.000000000 +0100
@@ -58,7 +58,10 @@
Linux
~~~~~
-The GLFW shared library is included in the Python wheels for Linux.
+The GLFW shared library is included in the Python wheels for Linux. Although
+pyGLFW will try to detect whether the GLFW library for Wayland or X11 should
+be used, you can set the ``PYGLFW_LIBRARY_VARIANT`` variable to ``wayland`` or
+``x11`` to select either variant of the library.
If you cannot use these on your system, you can install the GLFW shared
library using a package management system (e.g. ``apt install libglfw3``
@@ -70,6 +73,14 @@
in ``LD_LIBRARY_PATH``). If you want to use a specific library, you can set
the ``PYGLFW_LIBRARY`` environment variable to its path.
+cx_Freeze / PyInstaller
+~~~~~~~~~~~~~~~~~~~~~~~
+
+pyGLFW will search for the GLFW library in the current working directory, the directory
+of the executable and in the package on non-Windows platforms if running in an
+executable frozen with cx_Freeze or PyInstaller, unless the ``PYGLFW_LIBRARY``
+environment variable is set.
+
Development Version
~~~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/glfw/GLFW.py new/glfw-2.6.3/glfw/GLFW.py
--- old/glfw-2.5.5/glfw/GLFW.py 2022-09-07 18:29:18.000000000 +0200
+++ new/glfw-2.6.3/glfw/GLFW.py 2023-11-17 08:41:44.000000000 +0100
@@ -453,6 +453,9 @@
POSITION_Y as GLFW_POSITION_Y,
WAYLAND_APP_ID as GLFW_WAYLAND_APP_ID,
CURSOR_CAPTURED as GLFW_CURSOR_CAPTURED,
+ WAYLAND_LIBDECOR as GLFW_WAYLAND_LIBDECOR,
+ WAYLAND_PREFER_LIBDECOR as GLFW_WAYLAND_PREFER_LIBDECOR,
+ WAYLAND_DISABLE_LIBDECOR as GLFW_WAYLAND_DISABLE_LIBDECOR,
init_allocator as glfwInitAllocator,
init_vulkan_loader as glfwInitVulkanLoader,
get_platform as glfwGetPlatform,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/glfw/__init__.py new/glfw-2.6.3/glfw/__init__.py
--- old/glfw-2.5.5/glfw/__init__.py 2022-09-07 18:29:18.000000000 +0200
+++ new/glfw-2.6.3/glfw/__init__.py 2023-11-17 08:41:44.000000000 +0100
@@ -7,9 +7,9 @@
from __future__ import unicode_literals
__author__ = 'Florian Rhiem (florian.rhiem(a)gmail.com)'
-__copyright__ = 'Copyright (c) 2013-2021 Florian Rhiem'
+__copyright__ = 'Copyright (c) 2013-2023 Florian Rhiem'
__license__ = 'MIT'
-__version__ = '2.5.5'
+__version__ = '2.6.3'
# By default, GLFW errors will be handled by a pre-defined error callback.
# Depending on the value of ERROR_REPORTING, this callback will:
@@ -652,6 +652,10 @@
WAYLAND_APP_ID = 0x00026001
CURSOR_CAPTURED = 0x00034004
+ WAYLAND_LIBDECOR = 0x00053001
+ WAYLAND_PREFER_LIBDECOR = 0x00038001
+ WAYLAND_DISABLE_LIBDECOR = 0x00038002
+
_exc_info_from_callback = None
def _callback_exception_decorator(func):
@functools.wraps(func)
@@ -991,6 +995,8 @@
_glfw.glfwGetMonitorWorkarea.restype = None
_glfw.glfwGetMonitorWorkarea.argtypes = [ctypes.POINTER(_GLFWmonitor),
ctypes.POINTER(ctypes.c_int),
+ ctypes.POINTER(ctypes.c_int),
+ ctypes.POINTER(ctypes.c_int),
ctypes.POINTER(ctypes.c_int)]
@@ -2299,6 +2305,8 @@
Wrapper for:
void glfwSetClipboardString(GLFWwindow* window, const char* string);
"""
+ if window is not None:
+ warnings.warn("The window parameter to glfwSetClipboardString is deprecated", DeprecationWarning, stacklevel=2)
_glfw.glfwSetClipboardString(window, _to_char_p(string))
_glfw.glfwGetClipboardString.restype = ctypes.c_char_p
@@ -2310,6 +2318,8 @@
Wrapper for:
const char* glfwGetClipboardString(GLFWwindow* window);
"""
+ if window is not None:
+ warnings.warn("The window parameter to glfwSetClipboardString is deprecated", DeprecationWarning, stacklevel=2)
return _glfw.glfwGetClipboardString(window)
_glfw.glfwGetTime.restype = ctypes.c_double
@@ -2448,6 +2458,7 @@
Wrapper for:
GLFWcharmodsfun glfwSetCharModsCallback(GLFWwindow* window, GLFWcharmodsfun cbfun);
"""
+ warnings.warn("glfwSetCharModsCallback is scheduled for removal in GLFW 4.0", DeprecationWarning, stacklevel=2)
window_addr = ctypes.cast(ctypes.pointer(window),
ctypes.POINTER(ctypes.c_long)).contents.value
if window_addr in _window_char_mods_callback_repository:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/glfw/library.py new/glfw-2.6.3/glfw/library.py
--- old/glfw-2.5.5/glfw/library.py 2022-09-07 18:29:18.000000000 +0200
+++ new/glfw-2.6.3/glfw/library.py 2023-11-17 08:41:44.000000000 +0100
@@ -20,10 +20,12 @@
"""
Finds and returns filenames which might be the library you are looking for.
"""
- candidates = set()
- for library_name in library_names:
- for search_path in library_search_paths:
- glob_query = os.path.join(search_path, '*'+library_name+'*')
+ candidates = []
+ for search_path in library_search_paths:
+ if not search_path:
+ continue
+ for library_name in library_names:
+ glob_query = os.path.join(search_path, '*'+library_name+'.*')
for filename in glob.iglob(glob_query):
filename = os.path.realpath(filename)
if filename in candidates:
@@ -38,11 +40,11 @@
for file_extension in library_file_extensions:
if basename_end.startswith(file_extension):
if basename_end[len(file_extension):][:1] in ('', '.'):
- candidates.add(filename)
- if basename_end.endswith(file_extension):
+ candidates.append(filename)
+ elif basename_end.endswith(file_extension):
basename_middle = basename_end[:-len(file_extension)]
if all(c in '0123456789.' for c in basename_middle):
- candidates.add(filename)
+ candidates.append(filename)
return candidates
@@ -55,7 +57,7 @@
library_file_extensions,
library_search_paths)
library_versions = []
- for filename in candidates:
+ for filename in set(candidates):
version = version_check_callback(filename)
if version is not None and version >= (3, 0, 0):
library_versions.append((version, filename))
@@ -66,6 +68,39 @@
return ctypes.CDLL(library_versions[-1][1])
+def _load_first_library(library_names, library_file_extensions,
+ library_search_paths):
+ """
+ Finds, loads and returns the first found version of the library.
+ """
+ candidates = _find_library_candidates(
+ library_names,
+ library_file_extensions,
+ library_search_paths
+ )
+ library = None
+ for filename in candidates:
+ if os.path.isfile(filename):
+ try:
+ library = ctypes.CDLL(filename)
+ break
+ except OSError:
+ pass
+ if library is not None:
+ major_value = ctypes.c_int(0)
+ major = ctypes.pointer(major_value)
+ minor_value = ctypes.c_int(0)
+ minor = ctypes.pointer(minor_value)
+ rev_value = ctypes.c_int(0)
+ rev = ctypes.pointer(rev_value)
+ if hasattr(library, 'glfwGetVersion'):
+ library.glfwGetVersion(major, minor, rev)
+ version = (major_value.value, minor_value.value, rev_value.value)
+ if version >= (3, 0, 0):
+ return library
+ return None
+
+
def _glfw_get_version(filename):
"""
Queries and returns the library version tuple or None by using a
@@ -140,13 +175,9 @@
'/usr/lib/arm-linux-gnueabihf',
]
- if sys.platform != 'darwin':
- # manylinux2014 wheels contain libraries built for X11 and Wayland
- if os.environ.get('XDG_SESSION_TYPE') == 'wayland':
- search_paths.insert(1, os.path.join(package_path, 'wayland'))
- else:
- # X11 is the default, even if XDG_SESSION_TYPE is not set
- search_paths.insert(1, os.path.join(package_path, 'x11'))
+ package_path_variant = _get_package_path_variant(package_path)
+ if package_path_variant:
+ search_paths.insert(1, package_path_variant)
if sys.platform == 'darwin':
path_environment_variable = 'DYLD_LIBRARY_PATH'
@@ -157,6 +188,35 @@
return search_paths
+def _get_frozen_library_search_paths():
+ """
+ Returns a list of library search paths for frozen executables.
+ """
+ current_path = os.path.abspath(os.getcwd())
+ executable_path = os.path.abspath(os.path.dirname(sys.executable))
+ package_path = os.path.abspath(os.path.dirname(__file__))
+ package_path_variant = _get_package_path_variant(package_path)
+ return [
+ executable_path,
+ package_path_variant,
+ package_path,
+ current_path
+ ]
+
+
+def _get_package_path_variant(package_path):
+ if sys.platform in ('darwin', 'win32'):
+ return None
+ # manylinux2014 wheels contain libraries built for X11 and Wayland
+ if os.environ.get('PYGLFW_LIBRARY_VARIANT', '').lower() in ['wayland', 'x11']:
+ return os.path.join(package_path, os.environ['PYGLFW_LIBRARY_VARIANT'].lower())
+ elif os.environ.get('XDG_SESSION_TYPE') == 'wayland':
+ return os.path.join(package_path, 'wayland')
+ else:
+ # X11 is the default, even if XDG_SESSION_TYPE is not set
+ return os.path.join(package_path, 'x11')
+
+
if os.environ.get('PYGLFW_LIBRARY', ''):
try:
glfw = ctypes.CDLL(os.environ['PYGLFW_LIBRARY'])
@@ -190,6 +250,10 @@
glfw = ctypes.CDLL(os.path.join(sys.prefix, 'Library', 'bin', 'glfw3.dll'))
except OSError:
pass
-else:
+elif not getattr(sys, "frozen", False):
glfw = _load_library(['glfw', 'glfw3'], ['.so', '.dylib'],
_get_library_search_paths(), _glfw_get_version)
+else:
+
+ glfw = _load_first_library(['glfw', 'glfw3'], ['.so', '.dylib'],
+ _get_frozen_library_search_paths())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/glfw.egg-info/PKG-INFO new/glfw-2.6.3/glfw.egg-info/PKG-INFO
--- old/glfw-2.5.5/glfw.egg-info/PKG-INFO 2022-09-07 18:29:33.000000000 +0200
+++ new/glfw-2.6.3/glfw.egg-info/PKG-INFO 2023-11-17 08:41:56.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: glfw
-Version: 2.5.5
+Version: 2.6.3
Summary: A ctypes-based wrapper for GLFW3.
Home-page: https://github.com/FlorianRhiem/pyGLFW
Author: Florian Rhiem
@@ -79,7 +79,10 @@
Linux
~~~~~
-The GLFW shared library is included in the Python wheels for Linux.
+The GLFW shared library is included in the Python wheels for Linux. Although
+pyGLFW will try to detect whether the GLFW library for Wayland or X11 should
+be used, you can set the ``PYGLFW_LIBRARY_VARIANT`` variable to ``wayland`` or
+``x11`` to select either variant of the library.
If you cannot use these on your system, you can install the GLFW shared
library using a package management system (e.g. ``apt install libglfw3``
@@ -91,6 +94,14 @@
in ``LD_LIBRARY_PATH``). If you want to use a specific library, you can set
the ``PYGLFW_LIBRARY`` environment variable to its path.
+cx_Freeze / PyInstaller
+~~~~~~~~~~~~~~~~~~~~~~~
+
+pyGLFW will search for the GLFW library in the current working directory, the directory
+of the executable and in the package on non-Windows platforms if running in an
+executable frozen with cx_Freeze or PyInstaller, unless the ``PYGLFW_LIBRARY``
+environment variable is set.
+
Development Version
~~~~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glfw-2.5.5/setup.py new/glfw-2.6.3/setup.py
--- old/glfw-2.5.5/setup.py 2022-09-07 18:29:18.000000000 +0200
+++ new/glfw-2.6.3/setup.py 2023-11-17 08:41:44.000000000 +0100
@@ -8,7 +8,7 @@
setup(
name='glfw',
- version='2.5.5',
+ version='2.6.3',
description='A ctypes-based wrapper for GLFW3.',
long_description=long_description,
url='https://github.com/FlorianRhiem/pyGLFW',
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-isort for openSUSE:Factory checked in at 2023-12-17 21:33:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-isort (Old)
and /work/SRC/openSUSE:Factory/.python-isort.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-isort"
Sun Dec 17 21:33:19 2023 rev:41 rq:1133685 version:5.13.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-isort/python-isort.changes 2023-08-31 13:51:17.784186429 +0200
+++ /work/SRC/openSUSE:Factory/.python-isort.new.25432/python-isort.changes 2023-12-17 21:35:24.428303889 +0100
@@ -1,0 +2,29 @@
+Sun Dec 17 02:10:01 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 5.13.2:
+ * Apply the bracket fix from issue #471 only for
+ use_parentheses=True
+ * Confine pre-commit to stages
+ * Fixed colors extras
+ * Fixed integration tests
+ * Fixed normalizing imports from more than one level of parent
+ modules
+ * Remove optional dependencies without extras
+ * Cleanup deprecated extras
+ * Fixed #1989: settings lookup when working in stream based
+ mode
+ * Fixed 80 line length for wemake linter
+ * Add support for Python 3.12
+ * Fixed assertions in test_git_hook
+ * Removed check for include_trailing_comma for the Hanging
+ Indent wrap mode
+ * Use the standard library tomllib on sufficiently new python
+ * Fixed safety sept 2023
+ * chore: move configurations to pyproject.toml (#2115)
+ * Fixed typo in README
+ * Update version in pre-commit setup to avoid installation
+ issue with poetry
+ * Skip .pytype directory by default.
+ * Fixed a tip block styling in the Config Files section (#2097)
+
+-------------------------------------------------------------------
Old:
----
isort-5.12.0-gh.tar.gz
New:
----
isort-5.13.2-gh.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-isort.spec ++++++
--- /var/tmp/diff_new_pack.en6Du2/_old 2023-12-17 21:35:24.964323365 +0100
+++ /var/tmp/diff_new_pack.en6Du2/_new 2023-12-17 21:35:24.964323365 +0100
@@ -27,7 +27,7 @@
%{?sle15_python_module_pythons}
Name: python-isort%{psuffix}
-Version: 5.12.0
+Version: 5.13.2
Release: 0
Summary: A Python utility / library to sort Python imports
License: MIT
++++++ isort-5.12.0-gh.tar.gz -> isort-5.13.2-gh.tar.gz ++++++
++++ 4730 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package presenterm for openSUSE:Factory checked in at 2023-12-17 21:33:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/presenterm (Old)
and /work/SRC/openSUSE:Factory/.presenterm.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "presenterm"
Sun Dec 17 21:33:14 2023 rev:3 rq:1133672 version:0.4.0+0
Changes:
--------
--- /work/SRC/openSUSE:Factory/presenterm/presenterm.changes 2023-11-26 19:37:08.149794798 +0100
+++ /work/SRC/openSUSE:Factory/.presenterm.new.25432/presenterm.changes 2023-12-17 21:35:21.760206947 +0100
@@ -1,0 +2,19 @@
+Sun Dec 17 00:57:36 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 0.4.0:
+ * Add support for all of bat's code highlighting themes (#67).
+ * Add terminal-dark and terminal-light themes that preserve
+ the terminal's colors and background (#68 #69).
+ * Allow placing themes in $HOME/.config/presenterm/themes
+ to make them available automatically as if they were
+ built-in themes (#73).
+ * Allow configuring the default theme in
+ $HOME/.config/presenterm/config.yaml (#74).
+ * Add support for rendering LaTeX and typst code blocks
+ automatically as images (#75 #76 #79 #81).
+ * Add syntax highlighting support for nix and diff (#78 #82).
+ * Add comment command to jump into the middle of a slide (#86).
+ * Add configuration option to have implicit slide ends (#87 #89).
+ * Add configuration option to have custom comment-command prefix (#91).
+
+-------------------------------------------------------------------
Old:
----
presenterm-0.3.0+0.tar.zst
New:
----
presenterm-0.4.0+0.tar.zst
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ presenterm.spec ++++++
--- /var/tmp/diff_new_pack.YPS2hD/_old 2023-12-17 21:35:22.588237032 +0100
+++ /var/tmp/diff_new_pack.YPS2hD/_new 2023-12-17 21:35:22.592237178 +0100
@@ -17,7 +17,7 @@
Name: presenterm
-Version: 0.3.0+0
+Version: 0.4.0+0
Release: 0
Summary: A terminal slideshow tool
License: BSD-2-Clause
++++++ _service ++++++
--- /var/tmp/diff_new_pack.YPS2hD/_old 2023-12-17 21:35:22.620238195 +0100
+++ /var/tmp/diff_new_pack.YPS2hD/_new 2023-12-17 21:35:22.620238195 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/mfontanini/presenterm</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="scm">git</param>
- <param name="revision">v0.3.0</param>
+ <param name="revision">v0.4.0</param>
<param name="match-tag">*</param>
<param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
<param name="versionrewrite-replacement">\1</param>
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.YPS2hD/_old and /var/tmp/diff_new_pack.YPS2hD/_new differ
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-graphene for openSUSE:Factory checked in at 2023-12-17 21:33:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-graphene (Old)
and /work/SRC/openSUSE:Factory/.python-graphene.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-graphene"
Sun Dec 17 21:33:10 2023 rev:11 rq:1133682 version:3.3.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-graphene/python-graphene.changes 2023-07-10 16:40:48.450867136 +0200
+++ /work/SRC/openSUSE:Factory/.python-graphene.new.25432/python-graphene.changes 2023-12-17 21:35:20.284153316 +0100
@@ -1,0 +2,19 @@
+Sun Dec 17 01:58:11 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.3.0:
+ * Default value for InputObjectTypes
+ * Default enum description to "An enumeration."
+ * Allow the user to change InputObjectType's default value on
+ non-specified inputs to a sentinel value
+ * 881: Corrected enum metaclass to fix pickle.dumps()
+ * chore: Use `typing.TYPE_CHECKING` instead of MYPY
+ * test: print schema with InputObjectType with DateTime field
+ with default_value (#1293)
+ * docs: add get_human function
+ * CI: drop python 3.6
+ * types: add option for strict connection types
+- update to 3.2.2:
+ * This release provides some internal refactoring to the relay
+ types to improve support for adding custom fields to them.
+
+-------------------------------------------------------------------
Old:
----
graphene-3.2.1.tar.gz
New:
----
graphene-3.3.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-graphene.spec ++++++
--- /var/tmp/diff_new_pack.05ARxi/_old 2023-12-17 21:35:20.708168723 +0100
+++ /var/tmp/diff_new_pack.05ARxi/_new 2023-12-17 21:35:20.708168723 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-graphene
-Version: 3.2.1
+Version: 3.3.0
Release: 0
Summary: GraphQL Framework for Python
License: MIT
++++++ graphene-3.2.1.tar.gz -> graphene-3.3.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/.github/workflows/tests.yml new/graphene-3.3.0/.github/workflows/tests.yml
--- old/graphene-3.2.1/.github/workflows/tests.yml 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/.github/workflows/tests.yml 2023-07-26 08:26:30.000000000 +0200
@@ -25,12 +25,11 @@
fail-fast: false
matrix:
include:
- - {name: '3.11', python: '3.11-dev', os: ubuntu-latest, tox: py311}
+ - {name: '3.11', python: '3.11', os: ubuntu-latest, tox: py311}
- {name: '3.10', python: '3.10', os: ubuntu-latest, tox: py310}
- {name: '3.9', python: '3.9', os: ubuntu-latest, tox: py39}
- {name: '3.8', python: '3.8', os: ubuntu-latest, tox: py38}
- {name: '3.7', python: '3.7', os: ubuntu-latest, tox: py37}
- - {name: '3.6', python: '3.6', os: ubuntu-20.04, tox: py36}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/README.md new/graphene-3.3.0/README.md
--- old/graphene-3.2.1/README.md 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/README.md 2023-07-26 08:26:30.000000000 +0200
@@ -1,6 +1,6 @@
-# ![Graphene Logo](http://graphene-python.org/favicon.png) [Graphene](http://graphene-python.org) [![Build Status](https://travis-ci.org/graphql-python/graphene.svg?branch=master)](h… [![PyPI version](https://badge.fury.io/py/graphene.svg)](https://badge.fury.io/py/graphene) [![Coverage Status](https://coveralls.io/repos/graphql-python/graphene/badge.svg?branch=master&service=github)](https://coveralls.io/github/graphql-python/graphene?branch=master)
+# ![Graphene Logo](http://graphene-python.org/favicon.png) [Graphene](http://graphene-python.org) [![PyPI version](https://badge.fury.io/py/graphene.svg)](https://badge.fury.io/py/graphene) [![Coverage Status](https://coveralls.io/repos/graphql-python/graphene/badge.svg?branch=master&service=github)](https://coveralls.io/github/graphql-python/graphene?branch=master) [![](https://dcbadge.vercel.app/api/server/T6Gp6NFYHe?style=flat)](https://discord.gg/T6Gp6NFYHe)
-[💬 Join the community on Slack](https://join.slack.com/t/graphenetools/shared_invite/enQtOTE2MDQ1NTg…
+[💬 Join the community on Discord](https://discord.gg/T6Gp6NFYHe)
**We are looking for contributors**! Please check the current issues to see how you can help ❤️
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/README.rst new/graphene-3.3.0/README.rst
--- old/graphene-3.2.1/README.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/README.rst 2023-07-26 08:26:30.000000000 +0200
@@ -36,9 +36,6 @@
| SQLAlchemy | `graphene-sqlalchemy <https://git |
| | hub.com/graphql-python/graphene-sqlalchemy/>`__ |
+-------------------+-------------------------------------------------+
-| Google App Engine | `graphene-gae <http |
-| | s://github.com/graphql-python/graphene-gae/>`__ |
-+-------------------+-------------------------------------------------+
Also, Graphene is fully compatible with the GraphQL spec, working
seamlessly with all GraphQL clients, such as
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/api/index.rst new/graphene-3.3.0/docs/api/index.rst
--- old/graphene-3.2.1/docs/api/index.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/api/index.rst 2023-07-26 08:26:30.000000000 +0200
@@ -92,7 +92,7 @@
.. autoclass:: graphene.Context
-.. autoclass:: graphql.execution.base.ExecutionResult
+.. autoclass:: graphql.ExecutionResult
.. Relay
.. -----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/conf.py new/graphene-3.3.0/docs/conf.py
--- old/graphene-3.2.1/docs/conf.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/conf.py 2023-07-26 08:26:30.000000000 +0200
@@ -82,7 +82,7 @@
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
-language = None
+# language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
@@ -456,5 +456,4 @@
"http://docs.graphene-python.org/projects/sqlalchemy/en/latest/",
None,
),
- "graphene_gae": ("http://docs.graphene-python.org/projects/gae/en/latest/", None),
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/execution/dataloader.rst new/graphene-3.3.0/docs/execution/dataloader.rst
--- old/graphene-3.2.1/docs/execution/dataloader.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/execution/dataloader.rst 2023-07-26 08:26:30.000000000 +0200
@@ -36,10 +36,10 @@
user_loader = UserLoader()
user1 = await user_loader.load(1)
- user1_best_friend = await user_loader.load(user1.best_friend_id))
+ user1_best_friend = await user_loader.load(user1.best_friend_id)
user2 = await user_loader.load(2)
- user2_best_friend = await user_loader.load(user2.best_friend_id))
+ user2_best_friend = await user_loader.load(user2.best_friend_id)
A naive application may have issued *four* round-trips to a backend for the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/execution/queryvalidation.rst new/graphene-3.3.0/docs/execution/queryvalidation.rst
--- old/graphene-3.2.1/docs/execution/queryvalidation.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/execution/queryvalidation.rst 2023-07-26 08:26:30.000000000 +0200
@@ -1,5 +1,5 @@
Query Validation
-==========
+================
GraphQL uses query validators to check if Query AST is valid and can be executed. Every GraphQL server implements
standard query validators. For example, there is an validator that tests if queried field exists on queried type, that
makes query fail with "Cannot query field on type" error if it doesn't.
@@ -8,7 +8,7 @@
Depth limit Validator
------------------
+---------------------
The depth limit validator helps to prevent execution of malicious
queries. It takes in the following arguments.
@@ -17,7 +17,7 @@
- ``callback`` Called each time validation runs. Receives an Object which is a map of the depths for each operation.
Usage
--------
+-----
Here is how you would implement depth-limiting on your schema.
@@ -54,7 +54,7 @@
This is a useful security measure in production environments.
Usage
--------
+-----
Here is how you would disable introspection for your schema.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/index.rst new/graphene-3.3.0/docs/index.rst
--- old/graphene-3.2.1/docs/index.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/index.rst 2023-07-26 08:26:30.000000000 +0200
@@ -1,12 +1,6 @@
Graphene
========
-------------
-
-The documentation below is for the ``dev`` (prerelease) version of Graphene. To view the documentation for the latest stable Graphene version go to the `v2 docs <https://docs.graphene-python.org/en/stable/>`_.
-
-------------
-
Contents:
.. toctree::
@@ -27,7 +21,6 @@
* `Graphene-Django <http://docs.graphene-python.org/projects/django/en/latest/>`_ (`source <https://github.com/graphql-python/graphene-django/>`_)
* Flask-Graphql (`source <https://github.com/graphql-python/flask-graphql>`_)
* `Graphene-SQLAlchemy <http://docs.graphene-python.org/projects/sqlalchemy/en/latest/>`_ (`source <https://github.com/graphql-python/graphene-sqlalchemy/>`_)
-* `Graphene-GAE <http://docs.graphene-python.org/projects/gae/en/latest/>`_ (`source <https://github.com/graphql-python/graphene-gae/>`_)
* `Graphene-Mongo <http://graphene-mongo.readthedocs.io/en/latest/>`_ (`source <https://github.com/graphql-python/graphene-mongo>`_)
* `Starlette <https://www.starlette.io/graphql/>`_ (`source <https://github.com/encode/starlette>`_)
* `FastAPI <https://fastapi.tiangolo.com/advanced/graphql/>`_ (`source <https://github.com/tiangolo/fastapi>`_)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/requirements.txt new/graphene-3.3.0/docs/requirements.txt
--- old/graphene-3.2.1/docs/requirements.txt 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/requirements.txt 2023-07-26 08:26:30.000000000 +0200
@@ -1,5 +1,5 @@
# Required library
-Sphinx==1.5.3
-sphinx-autobuild==0.7.1
+Sphinx==6.1.3
+sphinx-autobuild==2021.3.14
# Docs template
http://graphene-python.org/sphinx_graphene_theme.zip
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/types/objecttypes.rst new/graphene-3.3.0/docs/types/objecttypes.rst
--- old/graphene-3.2.1/docs/types/objecttypes.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/types/objecttypes.rst 2023-07-26 08:26:30.000000000 +0200
@@ -80,6 +80,10 @@
from graphene import ObjectType, String, Field
+ def get_human(name):
+ first_name, last_name = name.split()
+ return Person(first_name, last_name)
+
class Person(ObjectType):
full_name = String()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/docs/types/scalars.rst new/graphene-3.3.0/docs/types/scalars.rst
--- old/graphene-3.2.1/docs/types/scalars.rst 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/docs/types/scalars.rst 2023-07-26 08:26:30.000000000 +0200
@@ -271,7 +271,7 @@
@staticmethod
def parse_literal(node, _variables=None):
- if isinstance(node, ast.StringValue):
+ if isinstance(node, ast.StringValueNode):
return datetime.datetime.strptime(
node.value, "%Y-%m-%dT%H:%M:%S.%f")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/__init__.py new/graphene-3.3.0/graphene/__init__.py
--- old/graphene-3.2.1/graphene/__init__.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/__init__.py 2023-07-26 08:26:30.000000000 +0200
@@ -46,7 +46,7 @@
from .utils.module_loading import lazy_import
from .utils.resolve_only_args import resolve_only_args
-VERSION = (3, 2, 1, "final", 0)
+VERSION = (3, 3, 0, "final", 0)
__version__ = get_version(VERSION)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/relay/connection.py new/graphene-3.3.0/graphene/relay/connection.py
--- old/graphene-3.2.1/graphene/relay/connection.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/relay/connection.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,6 +1,7 @@
import re
from collections.abc import Iterable
from functools import partial
+from typing import Type
from graphql_relay import connection_from_array
@@ -8,7 +9,34 @@
from ..types.field import Field
from ..types.objecttype import ObjectType, ObjectTypeOptions
from ..utils.thenables import maybe_thenable
-from .node import is_node
+from .node import is_node, AbstractNode
+
+
+def get_edge_class(
+ connection_class: Type["Connection"],
+ _node: Type[AbstractNode],
+ base_name: str,
+ strict_types: bool = False,
+):
+ edge_class = getattr(connection_class, "Edge", None)
+
+ class EdgeBase:
+ node = Field(
+ NonNull(_node) if strict_types else _node,
+ description="The item at the end of the edge",
+ )
+ cursor = String(required=True, description="A cursor for use in pagination")
+
+ class EdgeMeta:
+ description = f"A Relay edge containing a `{base_name}` and its cursor."
+
+ edge_name = f"{base_name}Edge"
+
+ edge_bases = [edge_class, EdgeBase] if edge_class else [EdgeBase]
+ if not isinstance(edge_class, ObjectType):
+ edge_bases = [*edge_bases, ObjectType]
+
+ return type(edge_name, tuple(edge_bases), {"Meta": EdgeMeta})
class PageInfo(ObjectType):
@@ -61,8 +89,11 @@
abstract = True
@classmethod
- def __init_subclass_with_meta__(cls, node=None, name=None, **options):
- _meta = ConnectionOptions(cls)
+ def __init_subclass_with_meta__(
+ cls, node=None, name=None, strict_types=False, _meta=None, **options
+ ):
+ if not _meta:
+ _meta = ConnectionOptions(cls)
assert node, f"You have to provide a node in {cls.__name__}.Meta"
assert isinstance(node, NonNull) or issubclass(
node, (Scalar, Enum, ObjectType, Interface, Union, NonNull)
@@ -72,39 +103,29 @@
if not name:
name = f"{base_name}Connection"
- edge_class = getattr(cls, "Edge", None)
- _node = node
+ options["name"] = name
- class EdgeBase:
- node = Field(_node, description="The item at the end of the edge")
- cursor = String(required=True, description="A cursor for use in pagination")
-
- class EdgeMeta:
- description = f"A Relay edge containing a `{base_name}` and its cursor."
-
- edge_name = f"{base_name}Edge"
- if edge_class:
- edge_bases = (edge_class, EdgeBase, ObjectType)
- else:
- edge_bases = (EdgeBase, ObjectType)
+ _meta.node = node
- edge = type(edge_name, edge_bases, {"Meta": EdgeMeta})
- cls.Edge = edge
+ if not _meta.fields:
+ _meta.fields = {}
- options["name"] = name
- _meta.node = node
- _meta.fields = {
- "page_info": Field(
+ if "page_info" not in _meta.fields:
+ _meta.fields["page_info"] = Field(
PageInfo,
name="pageInfo",
required=True,
description="Pagination data for this connection.",
- ),
- "edges": Field(
- NonNull(List(edge)),
+ )
+
+ if "edges" not in _meta.fields:
+ edge_class = get_edge_class(cls, node, base_name, strict_types) # type: ignore
+ cls.Edge = edge_class
+ _meta.fields["edges"] = Field(
+ NonNull(List(NonNull(edge_class) if strict_types else edge_class)),
description="Contains the nodes in this connection.",
- ),
- }
+ )
+
return super(Connection, cls).__init_subclass_with_meta__(
_meta=_meta, **options
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/relay/tests/test_connection.py new/graphene-3.3.0/graphene/relay/tests/test_connection.py
--- old/graphene-3.2.1/graphene/relay/tests/test_connection.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/relay/tests/test_connection.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,7 +1,15 @@
+import re
+
from pytest import raises
from ...types import Argument, Field, Int, List, NonNull, ObjectType, Schema, String
-from ..connection import Connection, ConnectionField, PageInfo
+from ..connection import (
+ Connection,
+ ConnectionField,
+ PageInfo,
+ ConnectionOptions,
+ get_edge_class,
+)
from ..node import Node
@@ -51,6 +59,111 @@
assert list(fields) == ["page_info", "edges", "extra"]
+def test_connection_extra_abstract_fields():
+ class ConnectionWithNodes(Connection):
+ class Meta:
+ abstract = True
+
+ @classmethod
+ def __init_subclass_with_meta__(cls, node=None, name=None, **options):
+ _meta = ConnectionOptions(cls)
+
+ _meta.fields = {
+ "nodes": Field(
+ NonNull(List(node)),
+ description="Contains all the nodes in this connection.",
+ ),
+ }
+
+ return super(ConnectionWithNodes, cls).__init_subclass_with_meta__(
+ node=node, name=name, _meta=_meta, **options
+ )
+
+ class MyObjectConnection(ConnectionWithNodes):
+ class Meta:
+ node = MyObject
+
+ class Edge:
+ other = String()
+
+ assert MyObjectConnection._meta.name == "MyObjectConnection"
+ fields = MyObjectConnection._meta.fields
+ assert list(fields) == ["nodes", "page_info", "edges"]
+ edge_field = fields["edges"]
+ pageinfo_field = fields["page_info"]
+ nodes_field = fields["nodes"]
+
+ assert isinstance(edge_field, Field)
+ assert isinstance(edge_field.type, NonNull)
+ assert isinstance(edge_field.type.of_type, List)
+ assert edge_field.type.of_type.of_type == MyObjectConnection.Edge
+
+ assert isinstance(pageinfo_field, Field)
+ assert isinstance(pageinfo_field.type, NonNull)
+ assert pageinfo_field.type.of_type == PageInfo
+
+ assert isinstance(nodes_field, Field)
+ assert isinstance(nodes_field.type, NonNull)
+ assert isinstance(nodes_field.type.of_type, List)
+ assert nodes_field.type.of_type.of_type == MyObject
+
+
+def test_connection_override_fields():
+ class ConnectionWithNodes(Connection):
+ class Meta:
+ abstract = True
+
+ @classmethod
+ def __init_subclass_with_meta__(cls, node=None, name=None, **options):
+ _meta = ConnectionOptions(cls)
+ base_name = (
+ re.sub("Connection$", "", name or cls.__name__) or node._meta.name
+ )
+
+ edge_class = get_edge_class(cls, node, base_name)
+
+ _meta.fields = {
+ "page_info": Field(
+ NonNull(
+ PageInfo,
+ name="pageInfo",
+ required=True,
+ description="Pagination data for this connection.",
+ )
+ ),
+ "edges": Field(
+ NonNull(List(NonNull(edge_class))),
+ description="Contains the nodes in this connection.",
+ ),
+ }
+
+ return super(ConnectionWithNodes, cls).__init_subclass_with_meta__(
+ node=node, name=name, _meta=_meta, **options
+ )
+
+ class MyObjectConnection(ConnectionWithNodes):
+ class Meta:
+ node = MyObject
+
+ assert MyObjectConnection._meta.name == "MyObjectConnection"
+ fields = MyObjectConnection._meta.fields
+ assert list(fields) == ["page_info", "edges"]
+ edge_field = fields["edges"]
+ pageinfo_field = fields["page_info"]
+
+ assert isinstance(edge_field, Field)
+ assert isinstance(edge_field.type, NonNull)
+ assert isinstance(edge_field.type.of_type, List)
+ assert isinstance(edge_field.type.of_type.of_type, NonNull)
+
+ assert edge_field.type.of_type.of_type.of_type.__name__ == "MyObjectEdge"
+
+ # This page info is NonNull
+ assert isinstance(pageinfo_field, Field)
+ assert isinstance(edge_field.type, NonNull)
+ assert pageinfo_field.type.of_type == PageInfo
+
+
def test_connection_name():
custom_name = "MyObjectCustomNameConnection"
@@ -186,3 +299,20 @@
executed = schema.execute("{ testConnection { edges { cursor } } }")
assert not executed.errors
assert executed.data == {"testConnection": {"edges": []}}
+
+
+def test_connectionfield_strict_types():
+ class MyObjectConnection(Connection):
+ class Meta:
+ node = MyObject
+ strict_types = True
+
+ connection_field = ConnectionField(MyObjectConnection)
+ edges_field_type = connection_field.type._meta.fields["edges"].type
+ assert isinstance(edges_field_type, NonNull)
+
+ edges_list_element_type = edges_field_type.of_type.of_type
+ assert isinstance(edges_list_element_type, NonNull)
+
+ node_field = edges_list_element_type.of_type._meta.fields["node"]
+ assert isinstance(node_field.type, NonNull)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/tests/issues/test_1293.py new/graphene-3.3.0/graphene/tests/issues/test_1293.py
--- old/graphene-3.2.1/graphene/tests/issues/test_1293.py 1970-01-01 01:00:00.000000000 +0100
+++ new/graphene-3.3.0/graphene/tests/issues/test_1293.py 2023-07-26 08:26:30.000000000 +0200
@@ -0,0 +1,41 @@
+# https://github.com/graphql-python/graphene/issues/1293
+
+import datetime
+
+import graphene
+from graphql.utilities import print_schema
+
+
+class Filters(graphene.InputObjectType):
+ datetime_after = graphene.DateTime(
+ required=False,
+ default_value=datetime.datetime.utcfromtimestamp(1434549820776 / 1000),
+ )
+ datetime_before = graphene.DateTime(
+ required=False,
+ default_value=datetime.datetime.utcfromtimestamp(1444549820776 / 1000),
+ )
+
+
+class SetDatetime(graphene.Mutation):
+ class Arguments:
+ filters = Filters(required=True)
+
+ ok = graphene.Boolean()
+
+ def mutate(root, info, filters):
+ return SetDatetime(ok=True)
+
+
+class Query(graphene.ObjectType):
+ goodbye = graphene.String()
+
+
+class Mutations(graphene.ObjectType):
+ set_datetime = SetDatetime.Field()
+
+
+def test_schema_printable_with_default_datetime_value():
+ schema = graphene.Schema(query=Query, mutation=Mutations)
+ schema_str = print_schema(schema.graphql_schema)
+ assert schema_str, "empty schema printed"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/tests/issues/test_881.py new/graphene-3.3.0/graphene/tests/issues/test_881.py
--- old/graphene-3.2.1/graphene/tests/issues/test_881.py 1970-01-01 01:00:00.000000000 +0100
+++ new/graphene-3.3.0/graphene/tests/issues/test_881.py 2023-07-26 08:26:30.000000000 +0200
@@ -0,0 +1,27 @@
+import pickle
+
+from ...types.enum import Enum
+
+
+class PickleEnum(Enum):
+ # is defined outside of test because pickle unable to dump class inside ot pytest function
+ A = "a"
+ B = 1
+
+
+def test_enums_pickling():
+ a = PickleEnum.A
+ pickled = pickle.dumps(a)
+ restored = pickle.loads(pickled)
+ assert type(a) is type(restored)
+ assert a == restored
+ assert a.value == restored.value
+ assert a.name == restored.name
+
+ b = PickleEnum.B
+ pickled = pickle.dumps(b)
+ restored = pickle.loads(pickled)
+ assert type(a) is type(restored)
+ assert b == restored
+ assert b.value == restored.value
+ assert b.name == restored.name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/enum.py new/graphene-3.3.0/graphene/types/enum.py
--- old/graphene-3.2.1/graphene/types/enum.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/enum.py 2023-07-26 08:26:30.000000000 +0200
@@ -31,9 +31,11 @@
# with the enum values.
enum_members.pop("Meta", None)
enum = PyEnum(cls.__name__, enum_members)
- return SubclassWithMeta_Meta.__new__(
+ obj = SubclassWithMeta_Meta.__new__(
cls, name_, bases, dict(classdict, __enum__=enum), **options
)
+ globals()[name_] = obj.__enum__
+ return obj
def get(cls, value):
return cls._meta.enum(value)
@@ -63,7 +65,7 @@
cls, enum, name=None, description=None, deprecation_reason=None
): # noqa: N805
name = name or enum.__name__
- description = description or enum.__doc__
+ description = description or enum.__doc__ or "An enumeration."
meta_dict = {
"enum": enum,
"description": description,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/inputobjecttype.py new/graphene-3.3.0/graphene/types/inputobjecttype.py
--- old/graphene-3.2.1/graphene/types/inputobjecttype.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/inputobjecttype.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,11 +1,12 @@
+from typing import TYPE_CHECKING
+
from .base import BaseOptions, BaseType
from .inputfield import InputField
from .unmountedtype import UnmountedType
from .utils import yank_fields_from_attrs
-# For static type checking with Mypy
-MYPY = False
-if MYPY:
+# For static type checking with type checker
+if TYPE_CHECKING:
from typing import Dict, Callable # NOQA
@@ -14,6 +15,31 @@
container = None # type: InputObjectTypeContainer
+# Currently in Graphene, we get a `None` whenever we access an (optional) field that was not set in an InputObjectType
+# using the InputObjectType.<attribute> dot access syntax. This is ambiguous, because in this current (Graphene
+# historical) arrangement, we cannot distinguish between a field not being set and a field being set to None.
+# At the same time, we shouldn't break existing code that expects a `None` when accessing a field that was not set.
+_INPUT_OBJECT_TYPE_DEFAULT_VALUE = None
+
+# To mitigate this, we provide the function `set_input_object_type_default_value` to allow users to change the default
+# value returned in non-specified fields in InputObjectType to another meaningful sentinel value (e.g. Undefined)
+# if they want to. This way, we can keep code that expects a `None` working while we figure out a better solution (or
+# a well-documented breaking change) for this issue.
+
+
+def set_input_object_type_default_value(default_value):
+ """
+ Change the sentinel value returned by non-specified fields in an InputObjectType
+ Useful to differentiate between a field not being set and a field being set to None by using a sentinel value
+ (e.g. Undefined is a good sentinel value for this purpose)
+
+ This function should be called at the beginning of the app or in some other place where it is guaranteed to
+ be called before any InputObjectType is defined.
+ """
+ global _INPUT_OBJECT_TYPE_DEFAULT_VALUE
+ _INPUT_OBJECT_TYPE_DEFAULT_VALUE = default_value
+
+
class InputObjectTypeContainer(dict, BaseType): # type: ignore
class Meta:
abstract = True
@@ -21,7 +47,7 @@
def __init__(self, *args, **kwargs):
dict.__init__(self, *args, **kwargs)
for key in self._meta.fields:
- setattr(self, key, self.get(key, None))
+ setattr(self, key, self.get(key, _INPUT_OBJECT_TYPE_DEFAULT_VALUE))
def __init_subclass__(cls, *args, **kwargs):
pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/interface.py new/graphene-3.3.0/graphene/types/interface.py
--- old/graphene-3.2.1/graphene/types/interface.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/interface.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,10 +1,11 @@
+from typing import TYPE_CHECKING
+
from .base import BaseOptions, BaseType
from .field import Field
from .utils import yank_fields_from_attrs
-# For static type checking with Mypy
-MYPY = False
-if MYPY:
+# For static type checking with type checker
+if TYPE_CHECKING:
from typing import Dict, Iterable, Type # NOQA
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/mutation.py new/graphene-3.3.0/graphene/types/mutation.py
--- old/graphene-3.2.1/graphene/types/mutation.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/mutation.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,3 +1,5 @@
+from typing import TYPE_CHECKING
+
from ..utils.deprecated import warn_deprecation
from ..utils.get_unbound_function import get_unbound_function
from ..utils.props import props
@@ -6,9 +8,8 @@
from .utils import yank_fields_from_attrs
from .interface import Interface
-# For static type checking with Mypy
-MYPY = False
-if MYPY:
+# For static type checking with type checker
+if TYPE_CHECKING:
from .argument import Argument # NOQA
from typing import Dict, Type, Callable, Iterable # NOQA
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/objecttype.py new/graphene-3.3.0/graphene/types/objecttype.py
--- old/graphene-3.2.1/graphene/types/objecttype.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/objecttype.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,3 +1,5 @@
+from typing import TYPE_CHECKING
+
from .base import BaseOptions, BaseType, BaseTypeMeta
from .field import Field
from .interface import Interface
@@ -7,9 +9,8 @@
from dataclasses import make_dataclass, field
except ImportError:
from ..pyutils.dataclasses import make_dataclass, field # type: ignore
-# For static type checking with Mypy
-MYPY = False
-if MYPY:
+# For static type checking with type checker
+if TYPE_CHECKING:
from typing import Dict, Iterable, Type # NOQA
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/tests/conftest.py new/graphene-3.3.0/graphene/types/tests/conftest.py
--- old/graphene-3.2.1/graphene/types/tests/conftest.py 1970-01-01 01:00:00.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/tests/conftest.py 2023-07-26 08:26:30.000000000 +0200
@@ -0,0 +1,12 @@
+import pytest
+from graphql import Undefined
+
+from graphene.types.inputobjecttype import set_input_object_type_default_value
+
+
+(a)pytest.fixture()
+def set_default_input_object_type_to_undefined():
+ """This fixture is used to change the default value of optional inputs in InputObjectTypes for specific tests"""
+ set_input_object_type_default_value(Undefined)
+ yield
+ set_input_object_type_default_value(None)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/tests/test_enum.py new/graphene-3.3.0/graphene/types/tests/test_enum.py
--- old/graphene-3.2.1/graphene/types/tests/test_enum.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/tests/test_enum.py 2023-07-26 08:26:30.000000000 +0200
@@ -65,6 +65,21 @@
assert RGB.BLUE
+def test_enum_custom_description_in_constructor():
+ description = "An enumeration, but with a custom description"
+ RGB = Enum(
+ "RGB",
+ "RED,GREEN,BLUE",
+ description=description,
+ )
+ assert RGB._meta.description == description
+
+
+def test_enum_from_python3_enum_uses_default_builtin_doc():
+ RGB = Enum("RGB", "RED,GREEN,BLUE")
+ assert RGB._meta.description == "An enumeration."
+
+
def test_enum_from_builtin_enum_accepts_lambda_description():
def custom_description(value):
if not value:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/tests/test_inputobjecttype.py new/graphene-3.3.0/graphene/types/tests/test_inputobjecttype.py
--- old/graphene-3.2.1/graphene/types/tests/test_inputobjecttype.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/tests/test_inputobjecttype.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,3 +1,5 @@
+from graphql import Undefined
+
from ..argument import Argument
from ..field import Field
from ..inputfield import InputField
@@ -6,6 +8,7 @@
from ..scalars import Boolean, String
from ..schema import Schema
from ..unmountedtype import UnmountedType
+from ... import NonNull
class MyType:
@@ -136,3 +139,31 @@
assert not result.errors
assert result.data == {"isChild": True}
+
+
+def test_inputobjecttype_default_input_as_undefined(
+ set_default_input_object_type_to_undefined,
+):
+ class TestUndefinedInput(InputObjectType):
+ required_field = String(required=True)
+ optional_field = String()
+
+ class Query(ObjectType):
+ undefined_optionals_work = Field(NonNull(Boolean), input=TestUndefinedInput())
+
+ def resolve_undefined_optionals_work(self, info, input: TestUndefinedInput):
+ # Confirm that optional_field comes as Undefined
+ return (
+ input.required_field == "required" and input.optional_field is Undefined
+ )
+
+ schema = Schema(query=Query)
+ result = schema.execute(
+ """query basequery {
+ undefinedOptionalsWork(input: {requiredField: "required"})
+ }
+ """
+ )
+
+ assert not result.errors
+ assert result.data == {"undefinedOptionalsWork": True}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/tests/test_type_map.py new/graphene-3.3.0/graphene/types/tests/test_type_map.py
--- old/graphene-3.2.1/graphene/types/tests/test_type_map.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/tests/test_type_map.py 2023-07-26 08:26:30.000000000 +0200
@@ -20,8 +20,8 @@
from ..interface import Interface
from ..objecttype import ObjectType
from ..scalars import Int, String
-from ..structures import List, NonNull
from ..schema import Schema
+from ..structures import List, NonNull
def create_type_map(types, auto_camelcase=True):
@@ -227,6 +227,18 @@
assert foo_field.description == "Field description"
+def test_inputobject_undefined(set_default_input_object_type_to_undefined):
+ class OtherObjectType(InputObjectType):
+ optional_field = String()
+
+ type_map = create_type_map([OtherObjectType])
+ assert "OtherObjectType" in type_map
+ graphql_type = type_map["OtherObjectType"]
+
+ container = graphql_type.out_type({})
+ assert container.optional_field is Undefined
+
+
def test_objecttype_camelcase():
class MyObjectType(ObjectType):
"""Description"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/types/union.py new/graphene-3.3.0/graphene/types/union.py
--- old/graphene-3.2.1/graphene/types/union.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/types/union.py 2023-07-26 08:26:30.000000000 +0200
@@ -1,9 +1,10 @@
+from typing import TYPE_CHECKING
+
from .base import BaseOptions, BaseType
from .unmountedtype import UnmountedType
-# For static type checking with Mypy
-MYPY = False
-if MYPY:
+# For static type checking with type checker
+if TYPE_CHECKING:
from .objecttype import ObjectType # NOQA
from typing import Iterable, Type # NOQA
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/graphene/validation/depth_limit.py new/graphene-3.3.0/graphene/validation/depth_limit.py
--- old/graphene-3.2.1/graphene/validation/depth_limit.py 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/graphene/validation/depth_limit.py 2023-07-26 08:26:30.000000000 +0200
@@ -30,7 +30,7 @@
except ImportError:
# backwards compatibility for v3.6
from typing import Pattern
-from typing import Callable, Dict, List, Optional, Union
+from typing import Callable, Dict, List, Optional, Union, Tuple
from graphql import GraphQLError
from graphql.validation import ValidationContext, ValidationRule
@@ -82,7 +82,7 @@
def get_fragments(
- definitions: List[DefinitionNode],
+ definitions: Tuple[DefinitionNode, ...],
) -> Dict[str, FragmentDefinitionNode]:
fragments = {}
for definition in definitions:
@@ -94,7 +94,7 @@
# This will actually get both queries and mutations.
# We can basically treat those the same
def get_queries_and_mutations(
- definitions: List[DefinitionNode],
+ definitions: Tuple[DefinitionNode, ...],
) -> Dict[str, OperationDefinitionNode]:
operations = {}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-3.2.1/tox.ini new/graphene-3.3.0/tox.ini
--- old/graphene-3.2.1/tox.ini 2022-12-11 21:05:25.000000000 +0100
+++ new/graphene-3.3.0/tox.ini 2023-07-26 08:26:30.000000000 +0200
@@ -1,5 +1,5 @@
[tox]
-envlist = py3{6,7,8,9,10}, mypy, pre-commit
+envlist = py3{7,8,9,10,11}, mypy, pre-commit
skipsdist = true
[testenv]
@@ -8,7 +8,7 @@
setenv =
PYTHONPATH = .:{envdir}
commands =
- py{36,37,38,39,310}: pytest --cov=graphene graphene --cov-report=term --cov-report=xml examples {posargs}
+ py{37,38,39,310,311}: pytest --cov=graphene graphene --cov-report=term --cov-report=xml examples {posargs}
[testenv:pre-commit]
basepython = python3.10
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-toml-parser for openSUSE:Factory checked in at 2023-12-17 21:33:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-toml-parser (Old)
and /work/SRC/openSUSE:Factory/.ghc-toml-parser.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-toml-parser"
Sun Dec 17 21:33:06 2023 rev:3 rq:1133671 version:1.3.1.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-toml-parser/ghc-toml-parser.changes 2023-12-05 17:04:13.919394105 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-toml-parser.new.25432/ghc-toml-parser.changes 2023-12-17 21:35:18.880102301 +0100
@@ -1,0 +2,8 @@
+Sat Dec 9 19:31:25 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update toml-parser to version 1.3.1.1.
+ ## 1.3.1.1
+
+ * Ensure years are rendered zero-padded
+
+-------------------------------------------------------------------
Old:
----
toml-parser-1.3.1.0.tar.gz
New:
----
toml-parser-1.3.1.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-toml-parser.spec ++++++
--- /var/tmp/diff_new_pack.wHo7jl/_old 2023-12-17 21:35:19.296117417 +0100
+++ /var/tmp/diff_new_pack.wHo7jl/_new 2023-12-17 21:35:19.296117417 +0100
@@ -20,7 +20,7 @@
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 1.3.1.0
+Version: 1.3.1.1
Release: 0
Summary: TOML 1.0.0 parser
License: ISC
++++++ toml-parser-1.3.1.0.tar.gz -> toml-parser-1.3.1.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/toml-parser-1.3.1.0/ChangeLog.md new/toml-parser-1.3.1.1/ChangeLog.md
--- old/toml-parser-1.3.1.0/ChangeLog.md 2001-09-09 03:46:40.000000000 +0200
+++ new/toml-parser-1.3.1.1/ChangeLog.md 2001-09-09 03:46:40.000000000 +0200
@@ -1,5 +1,9 @@
# Revision history for toml-parser
+## 1.3.1.1
+
+* Ensure years are rendered zero-padded
+
## 1.3.1.0
* Added `Toml.Semantics.Ordered` for preserving input TOML orderings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/toml-parser-1.3.1.0/src/Toml/Pretty.hs new/toml-parser-1.3.1.1/src/Toml/Pretty.hs
--- old/toml-parser-1.3.1.0/src/Toml/Pretty.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/toml-parser-1.3.1.1/src/Toml/Pretty.hs 2001-09-09 03:46:40.000000000 +0200
@@ -181,10 +181,10 @@
TimeOfDay tod -> annotate DateClass (fromString (formatTime defaultTimeLocale "%H:%M:%S%Q" tod))
ZonedTime zt
| timeZoneMinutes (zonedTimeZone zt) == 0 ->
- annotate DateClass (fromString (formatTime defaultTimeLocale "%Y-%m-%dT%H:%M:%S%QZ" zt))
- | otherwise -> annotate DateClass (fromString (formatTime defaultTimeLocale "%Y-%m-%dT%H:%M:%S%Q%Ez" zt))
- LocalTime lt -> annotate DateClass (fromString (formatTime defaultTimeLocale "%Y-%m-%dT%H:%M:%S%Q" lt))
- Day d -> annotate DateClass (fromString (formatTime defaultTimeLocale "%Y-%m-%d" d))
+ annotate DateClass (fromString (formatTime defaultTimeLocale "%0Y-%m-%dT%H:%M:%S%QZ" zt))
+ | otherwise -> annotate DateClass (fromString (formatTime defaultTimeLocale "%0Y-%m-%dT%H:%M:%S%Q%Ez" zt))
+ LocalTime lt -> annotate DateClass (fromString (formatTime defaultTimeLocale "%0Y-%m-%dT%H:%M:%S%Q" lt))
+ Day d -> annotate DateClass (fromString (formatTime defaultTimeLocale "%0Y-%m-%d" d))
prettySmartString :: String -> TomlDoc
prettySmartString str
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/toml-parser-1.3.1.0/test/PrettySpec.hs new/toml-parser-1.3.1.1/test/PrettySpec.hs
--- old/toml-parser-1.3.1.0/test/PrettySpec.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/toml-parser-1.3.1.1/test/PrettySpec.hs 2001-09-09 03:46:40.000000000 +0200
@@ -105,14 +105,16 @@
c = 2020-05-07T15:16:17.990
d = 2020-05-07T15:16:17.990Z
e = 2020-05-07T15:16:17-07:00
- f = 2021-09-06T14:15:19+08:00|])
+ f = 2021-09-06T14:15:19+08:00
+ g = 0008-10-11T12:13:14+15:00|])
`shouldBe` Right [quoteStr|
a = 2020-05-07
b = 15:16:17.99
c = 2020-05-07T15:16:17.99
d = 2020-05-07T15:16:17.99Z
e = 2020-05-07T15:16:17-07:00
- f = 2021-09-06T14:15:19+08:00|]
+ f = 2021-09-06T14:15:19+08:00
+ g = 0008-10-11T12:13:14+15:00|]
it "renders quoted keys" $
fmap tomlString (parse "''.'a b'.'\"' = 10")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/toml-parser-1.3.1.0/toml-parser.cabal new/toml-parser-1.3.1.1/toml-parser.cabal
--- old/toml-parser-1.3.1.0/toml-parser.cabal 2001-09-09 03:46:40.000000000 +0200
+++ new/toml-parser-1.3.1.1/toml-parser.cabal 2001-09-09 03:46:40.000000000 +0200
@@ -1,6 +1,6 @@
cabal-version: 3.0
name: toml-parser
-version: 1.3.1.0
+version: 1.3.1.1
synopsis: TOML 1.0.0 parser
description:
TOML parser using generated lexers and parsers with
@@ -13,7 +13,7 @@
copyright: 2023 Eric Mertens
category: Text
build-type: Simple
-tested-with: GHC == {8.10.7, 9.0.2, 9.2.8, 9.4.7, 9.6.3}
+tested-with: GHC == {8.10.7, 9.0.2, 9.2.8, 9.4.8, 9.6.3, 9.8.1}
extra-doc-files:
ChangeLog.md
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-grpc-google-iam-v1 for openSUSE:Factory checked in at 2023-12-17 21:32:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-grpc-google-iam-v1 (Old)
and /work/SRC/openSUSE:Factory/.python-grpc-google-iam-v1.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-grpc-google-iam-v1"
Sun Dec 17 21:32:59 2023 rev:5 rq:1133661 version:0.13.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-grpc-google-iam-v1/python-grpc-google-iam-v1.changes 2023-12-06 23:47:08.188851073 +0100
+++ /work/SRC/openSUSE:Factory/.python-grpc-google-iam-v1.new.25432/python-grpc-google-iam-v1.changes 2023-12-17 21:35:15.819991116 +0100
@@ -1,0 +2,7 @@
+Sat Dec 16 21:28:27 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 0.13.0:
+ * Add support for Python 3.12 (#64)
+ * Introduce compatibility with native namespace packages (#59)
+
+-------------------------------------------------------------------
Old:
----
grpc-google-iam-v1-0.12.7.tar.gz
New:
----
grpc-google-iam-v1-0.13.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-grpc-google-iam-v1.spec ++++++
--- /var/tmp/diff_new_pack.iIVq22/_old 2023-12-17 21:35:16.236006231 +0100
+++ /var/tmp/diff_new_pack.iIVq22/_new 2023-12-17 21:35:16.240006376 +0100
@@ -16,16 +16,17 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
+%{?sle15_python_module_pythons}
Name: python-grpc-google-iam-v1
-Version: 0.12.7
+Version: 0.13.0
Release: 0
Summary: GRPC library for the google-iam-v1 service
License: Apache-2.0
Group: Development/Languages/Python
-URL: https://github.com/googleapis/googleapis
+URL: https://github.com/googleapis/python-grpc-google-iam-v1
Source: https://files.pythonhosted.org/packages/source/g/grpc-google-iam-v1/grpc-go…
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-googleapis-common-protos >= 1.56.0
@@ -44,10 +45,10 @@
%setup -q -n grpc-google-iam-v1-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
# No tests included in source tarball
@@ -55,5 +56,6 @@
%files %{python_files}
%doc README.rst
%license LICENSE
-%{python_sitelib}/*
+%{python_sitelib}/google/iam/
+%{python_sitelib}/grpc_google_iam_v1-%{version}.dist-info
++++++ grpc-google-iam-v1-0.12.7.tar.gz -> grpc-google-iam-v1-0.13.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/PKG-INFO new/grpc-google-iam-v1-0.13.0/PKG-INFO
--- old/grpc-google-iam-v1-0.12.7/PKG-INFO 2023-11-09 22:24:24.674781600 +0100
+++ new/grpc-google-iam-v1-0.13.0/PKG-INFO 2023-12-07 20:18:54.186227300 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: grpc-google-iam-v1
-Version: 0.12.7
+Version: 0.13.0
Summary: IAM API client library
Home-page: https://github.com/googleapis/python-grpc-google-iam-v1
Author: Google LLC
@@ -17,6 +17,7 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
@@ -46,7 +47,7 @@
.. _Product Documentation: https://cloud.google.com/iam
Installation
-~~~~~~~~~~~~
+^^^^^^^^^^^^
Install this library in a `virtualenv`_ using pip. `virtualenv`_ is a tool to
create isolated Python environments. The basic problem it addresses is one of
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/README.rst new/grpc-google-iam-v1-0.13.0/README.rst
--- old/grpc-google-iam-v1-0.12.7/README.rst 2023-11-09 22:21:51.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/README.rst 2023-12-07 20:16:10.000000000 +0100
@@ -19,7 +19,7 @@
.. _Product Documentation: https://cloud.google.com/iam
Installation
-~~~~~~~~~~~~
+^^^^^^^^^^^^
Install this library in a `virtualenv`_ using pip. `virtualenv`_ is a tool to
create isolated Python environments. The basic problem it addresses is one of
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/google/__init__.py new/grpc-google-iam-v1-0.13.0/google/__init__.py
--- old/grpc-google-iam-v1-0.12.7/google/__init__.py 2023-11-09 22:21:51.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/google/__init__.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-# Copyright 2022 Google LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-__import__("pkg_resources").declare_namespace(__name__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/google/iam/__init__.py new/grpc-google-iam-v1-0.13.0/google/iam/__init__.py
--- old/grpc-google-iam-v1-0.12.7/google/iam/__init__.py 2023-11-09 22:21:51.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/google/iam/__init__.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-# Copyright 2022 Google LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-__import__("pkg_resources").declare_namespace(__name__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/grpc_google_iam_v1.egg-info/PKG-INFO new/grpc-google-iam-v1-0.13.0/grpc_google_iam_v1.egg-info/PKG-INFO
--- old/grpc-google-iam-v1-0.12.7/grpc_google_iam_v1.egg-info/PKG-INFO 2023-11-09 22:24:24.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/grpc_google_iam_v1.egg-info/PKG-INFO 2023-12-07 20:18:54.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: grpc-google-iam-v1
-Version: 0.12.7
+Version: 0.13.0
Summary: IAM API client library
Home-page: https://github.com/googleapis/python-grpc-google-iam-v1
Author: Google LLC
@@ -17,6 +17,7 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
@@ -46,7 +47,7 @@
.. _Product Documentation: https://cloud.google.com/iam
Installation
-~~~~~~~~~~~~
+^^^^^^^^^^^^
Install this library in a `virtualenv`_ using pip. `virtualenv`_ is a tool to
create isolated Python environments. The basic problem it addresses is one of
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/grpc_google_iam_v1.egg-info/SOURCES.txt new/grpc-google-iam-v1-0.13.0/grpc_google_iam_v1.egg-info/SOURCES.txt
--- old/grpc-google-iam-v1-0.12.7/grpc_google_iam_v1.egg-info/SOURCES.txt 2023-11-09 22:24:24.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/grpc_google_iam_v1.egg-info/SOURCES.txt 2023-12-07 20:18:54.000000000 +0100
@@ -3,8 +3,6 @@
README.rst
setup.cfg
setup.py
-google/__init__.py
-google/iam/__init__.py
google/iam/v1/__init__.py
google/iam/v1/iam_policy.proto
google/iam/v1/iam_policy_pb2.py
@@ -21,7 +19,8 @@
grpc_google_iam_v1.egg-info/PKG-INFO
grpc_google_iam_v1.egg-info/SOURCES.txt
grpc_google_iam_v1.egg-info/dependency_links.txt
-grpc_google_iam_v1.egg-info/namespace_packages.txt
grpc_google_iam_v1.egg-info/not-zip-safe
grpc_google_iam_v1.egg-info/requires.txt
-grpc_google_iam_v1.egg-info/top_level.txt
\ No newline at end of file
+grpc_google_iam_v1.egg-info/top_level.txt
+tests/unit/test_google_iam.py
+tests/unit/test_packaging.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/grpc_google_iam_v1.egg-info/namespace_packages.txt new/grpc-google-iam-v1-0.13.0/grpc_google_iam_v1.egg-info/namespace_packages.txt
--- old/grpc-google-iam-v1-0.12.7/grpc_google_iam_v1.egg-info/namespace_packages.txt 2023-11-09 22:24:24.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/grpc_google_iam_v1.egg-info/namespace_packages.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-google
-google.iam
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/setup.py new/grpc-google-iam-v1-0.13.0/setup.py
--- old/grpc-google-iam-v1-0.12.7/setup.py 2023-11-09 22:21:51.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/setup.py 2023-12-07 20:16:10.000000000 +0100
@@ -22,7 +22,7 @@
name = "grpc-google-iam-v1"
description = "IAM API client library"
-version = "0.12.7"
+version = "0.13.0"
url = "https://github.com/googleapis/python-grpc-google-iam-v1"
release_status = "Development Status :: 4 - Beta"
dependencies = [
@@ -39,15 +39,10 @@
packages = [
package
- for package in setuptools.PEP420PackageFinder.find()
+ for package in setuptools.find_namespace_packages()
if package.startswith("google")
]
-namespaces = ["google"]
-if "google.iam" in packages:
- namespaces.append("google.iam")
-
-
setuptools.setup(
name=name,
version=version,
@@ -68,13 +63,13 @@
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Topic :: Internet",
],
platforms="Posix; MacOS X; Windows",
packages=packages,
python_requires=">=3.7",
- namespace_packages=namespaces,
install_requires=dependencies,
include_package_data=True,
zip_safe=False,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/tests/unit/test_google_iam.py new/grpc-google-iam-v1-0.13.0/tests/unit/test_google_iam.py
--- old/grpc-google-iam-v1-0.12.7/tests/unit/test_google_iam.py 1970-01-01 01:00:00.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/tests/unit/test_google_iam.py 2023-12-07 20:16:10.000000000 +0100
@@ -0,0 +1,20 @@
+# Copyright 2023 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+from google.iam.v1 import policy_pb2
+
+def test_create_policy():
+ # Check that the import works
+ # and that an Policy instance can be instantiated
+ policy_pb2.Policy()
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/grpc-google-iam-v1-0.12.7/tests/unit/test_packaging.py new/grpc-google-iam-v1-0.13.0/tests/unit/test_packaging.py
--- old/grpc-google-iam-v1-0.12.7/tests/unit/test_packaging.py 1970-01-01 01:00:00.000000000 +0100
+++ new/grpc-google-iam-v1-0.13.0/tests/unit/test_packaging.py 2023-12-07 20:16:10.000000000 +0100
@@ -0,0 +1,37 @@
+# Copyright 2023 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import os
+import subprocess
+import sys
+
+
+def test_namespace_package_compat(tmp_path):
+ # The ``google`` namespace package should not be masked
+ # by the presence of ``grpc-google-iam-v1``.
+ google = tmp_path / "google"
+ google.mkdir()
+ google.joinpath("othermod.py").write_text("")
+ env = dict(os.environ, PYTHONPATH=str(tmp_path))
+ cmd = [sys.executable, "-m", "google.othermod"]
+ subprocess.check_call(cmd, env=env)
+
+ # The ``google.iam`` namespace package should not be masked
+ # by the presence of ``grpc-google-iam-v1``.
+ google_iam = tmp_path / "google" / "iam"
+ google_iam.mkdir()
+ google_iam.joinpath("othermod.py").write_text("")
+ env = dict(os.environ, PYTHONPATH=str(tmp_path))
+ cmd = [sys.executable, "-m", "google.iam.othermod"]
+ subprocess.check_call(cmd, env=env)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-immutabledict for openSUSE:Factory checked in at 2023-12-17 21:33:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-immutabledict (Old)
and /work/SRC/openSUSE:Factory/.python-immutabledict.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-immutabledict"
Sun Dec 17 21:33:01 2023 rev:5 rq:1133665 version:4.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-immutabledict/python-immutabledict.changes 2023-12-08 22:32:39.381330942 +0100
+++ /work/SRC/openSUSE:Factory/.python-immutabledict.new.25432/python-immutabledict.changes 2023-12-17 21:35:16.408012481 +0100
@@ -1,0 +2,6 @@
+Sat Dec 16 21:09:56 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 4.1.0:
+ * Do not store cached hash value when pickling
+
+-------------------------------------------------------------------
Old:
----
immutabledict-4.0.0.tar.gz
New:
----
immutabledict-4.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-immutabledict.spec ++++++
--- /var/tmp/diff_new_pack.YkQosK/_old 2023-12-17 21:35:16.836028032 +0100
+++ /var/tmp/diff_new_pack.YkQosK/_new 2023-12-17 21:35:16.836028032 +0100
@@ -27,7 +27,7 @@
%define short_name immutabledict
%{?sle15_python_module_pythons}
Name: python-%{short_name}%{psuffix}
-Version: 4.0.0
+Version: 4.1.0
Release: 0
Summary: Immutable wrapper around dictionaries (a fork of frozendict)
License: MIT
++++++ immutabledict-4.0.0.tar.gz -> immutabledict-4.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/immutabledict-4.0.0/PKG-INFO new/immutabledict-4.1.0/PKG-INFO
--- old/immutabledict-4.0.0/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
+++ new/immutabledict-4.1.0/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: immutabledict
-Version: 4.0.0
+Version: 4.1.0
Summary: Immutable wrapper around dictionaries (a fork of frozendict)
Home-page: https://github.com/corenting/immutabledict
License: MIT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/immutabledict-4.0.0/immutabledict/__init__.py new/immutabledict-4.1.0/immutabledict/__init__.py
--- old/immutabledict-4.0.0/immutabledict/__init__.py 2023-11-25 13:34:07.496336700 +0100
+++ new/immutabledict-4.1.0/immutabledict/__init__.py 2023-12-16 11:42:09.917736800 +0100
@@ -11,12 +11,13 @@
KeysView,
Mapping,
Optional,
+ Tuple,
Type,
TypeVar,
ValuesView,
)
-__version__ = "4.0.0"
+__version__ = "4.1.0"
_K = TypeVar("_K")
_V = TypeVar("_V", covariant=True)
@@ -45,6 +46,11 @@
setattr(inst, "_hash", None)
return inst
+ def __reduce__(self) -> Tuple[Any, ...]:
+ # Do not store the cached hash value when pickling
+ # as the value might change across Python invocations.
+ return (self.__class__, (self._dict,))
+
def __getitem__(self, key: _K) -> _V:
return self._dict[key]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/immutabledict-4.0.0/pyproject.toml new/immutabledict-4.1.0/pyproject.toml
--- old/immutabledict-4.0.0/pyproject.toml 2023-11-25 13:34:07.496336700 +0100
+++ new/immutabledict-4.1.0/pyproject.toml 2023-12-16 11:42:09.917736800 +0100
@@ -1,6 +1,6 @@
[tool.poetry]
name = "immutabledict"
-version = "4.0.0"
+version = "4.1.0"
description = "Immutable wrapper around dictionaries (a fork of frozendict)"
authors = ["Corentin Garcia <corenting(a)gmail.com>"]
license = "MIT"
@@ -25,9 +25,9 @@
python = "^3.8"
[tool.poetry.dev-dependencies]
-black = "*"
coverage = "*"
mypy = "*"
+myst-parser = { version = "^2.0.0", python = "^3.9" }
pytest = "*"
pytest-cov = "*"
ruff = "*"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/immutabledict-4.0.0/tests/test_immutabledict.py new/immutabledict-4.1.0/tests/test_immutabledict.py
--- old/immutabledict-4.0.0/tests/test_immutabledict.py 2023-11-25 13:34:07.496336700 +0100
+++ new/immutabledict-4.1.0/tests/test_immutabledict.py 2023-12-16 11:42:09.917736800 +0100
@@ -1,3 +1,5 @@
+import pickle
+from io import BytesIO
from typing import Any, Dict, Union
import pytest
@@ -213,7 +215,7 @@
setup="s=0; d = immutabledict({i:i for i in range(1000000)})",
)
- assert time_immutable < 1.2 * time_standard
+ assert time_immutable < 1.4 * time_standard
def test_set_delete_update(self) -> None:
d: immutabledict[str, int] = immutabledict(a=1, b=2)
@@ -237,6 +239,23 @@
immutable_dict: immutabledict[str, int] = immutabledict(a=1, b=2)
assert immutable_dict == {"a": 1, "b": 2} == dict(a=1, b=2)
+ def test_reduce(self) -> None:
+ my_dict: immutabledict[str, int] = immutabledict(a=1, b=2)
+ reduce_cls, reduce_args = my_dict.__reduce__()
+
+ assert reduce_cls == immutabledict
+ assert reduce_args == (my_dict._dict,)
+
+ def test_pickle(self) -> None:
+ my_dict: immutabledict[str, int] = immutabledict(a=1, b=2)
+ bytes_io = BytesIO()
+ pickle.dump(my_dict, bytes_io)
+ bytes_io.seek(0)
+
+ from_pickle_dict = pickle.loads(bytes_io.getvalue()) # noqa: S301
+
+ assert my_dict == from_pickle_dict
+
class TestImmutableOrderedDict:
def test_ordered(self) -> None:
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package Setzer for openSUSE:Factory checked in at 2023-12-17 21:32:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/Setzer (Old)
and /work/SRC/openSUSE:Factory/.Setzer.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "Setzer"
Sun Dec 17 21:32:49 2023 rev:8 rq:1133649 version:65
Changes:
--------
--- /work/SRC/openSUSE:Factory/Setzer/Setzer.changes 2023-12-07 19:12:52.524725908 +0100
+++ /work/SRC/openSUSE:Factory/.Setzer.new.25432/Setzer.changes 2023-12-17 21:35:08.219714968 +0100
@@ -1,0 +2,9 @@
+Fri Dec 15 15:28:19 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 65:
+ * Fix brackets autoclosing, add brackets to selected text
+ (instead of replacing it).
+- Changes from version 64:
+ * Autocompletion preferences.
+
+-------------------------------------------------------------------
Old:
----
Setzer-63.tar.gz
New:
----
Setzer-65.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Setzer.spec ++++++
--- /var/tmp/diff_new_pack.l6wmor/_old 2023-12-17 21:35:08.659730956 +0100
+++ /var/tmp/diff_new_pack.l6wmor/_new 2023-12-17 21:35:08.659730956 +0100
@@ -17,7 +17,7 @@
Name: Setzer
-Version: 63
+Version: 65
Release: 0
Summary: Simple yet full-featured LaTeX editor for GTK/GNOME
License: GPL-3.0-or-later
++++++ Setzer-63.tar.gz -> Setzer-65.tar.gz ++++++
++++ 3605 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-grpcio-tools for openSUSE:Factory checked in at 2023-12-17 21:32:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-grpcio-tools (Old)
and /work/SRC/openSUSE:Factory/.python-grpcio-tools.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-grpcio-tools"
Sun Dec 17 21:32:47 2023 rev:30 rq:1133631 version:1.60.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-grpcio-tools/python-grpcio-tools.changes 2023-10-31 20:26:36.355937071 +0100
+++ /work/SRC/openSUSE:Factory/.python-grpcio-tools.new.25432/python-grpcio-tools.changes 2023-12-17 21:35:06.651657994 +0100
@@ -1,0 +2,6 @@
+Fri Dec 15 15:38:50 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 1.60.0:
+ * No python specific changes.
+
+-------------------------------------------------------------------
Old:
----
grpcio-tools-1.59.2.tar.gz
New:
----
grpcio-tools-1.60.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-grpcio-tools.spec ++++++
--- /var/tmp/diff_new_pack.iCG7hq/_old 2023-12-17 21:35:07.071673255 +0100
+++ /var/tmp/diff_new_pack.iCG7hq/_new 2023-12-17 21:35:07.075673400 +0100
@@ -20,7 +20,7 @@
%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-grpcio-tools
-Version: 1.59.2
+Version: 1.60.0
Release: 0
Summary: Protobuf code generator for gRPC
License: Apache-2.0
++++++ grpcio-tools-1.59.2.tar.gz -> grpcio-tools-1.60.0.tar.gz ++++++
++++ 115701 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-grpcio for openSUSE:Factory checked in at 2023-12-17 21:32:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-grpcio (Old)
and /work/SRC/openSUSE:Factory/.python-grpcio.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-grpcio"
Sun Dec 17 21:32:45 2023 rev:36 rq:1133625 version:1.60.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-grpcio/python-grpcio.changes 2023-11-27 22:45:02.917538038 +0100
+++ /work/SRC/openSUSE:Factory/.python-grpcio.new.25432/python-grpcio.changes 2023-12-17 21:35:05.867629507 +0100
@@ -1,0 +2,6 @@
+Fri Dec 15 14:47:42 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 1.60.0:
+ * No python specfic changes.
+
+-------------------------------------------------------------------
Old:
----
grpcio-1.59.2.tar.gz
New:
----
grpcio-1.60.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-grpcio.spec ++++++
--- /var/tmp/diff_new_pack.XCEoUR/_old 2023-12-17 21:35:06.415649419 +0100
+++ /var/tmp/diff_new_pack.XCEoUR/_new 2023-12-17 21:35:06.419649565 +0100
@@ -21,7 +21,7 @@
%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-grpcio
-Version: 1.59.2
+Version: 1.60.0
Release: 0
Summary: HTTP/2-based Remote Procedure Call implementation
License: Apache-2.0
++++++ grpcio-1.59.2.tar.gz -> grpcio-1.60.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-grpcio/grpcio-1.59.2.tar.gz /work/SRC/openSUSE:Factory/.python-grpcio.new.25432/grpcio-1.60.0.tar.gz differ: char 11, line 1
++++++ python-grpcio-cython3-compat.patch ++++++
--- /var/tmp/diff_new_pack.XCEoUR/_old 2023-12-17 21:35:06.451650727 +0100
+++ /var/tmp/diff_new_pack.XCEoUR/_new 2023-12-17 21:35:06.455650873 +0100
@@ -1,7 +1,7 @@
-Index: grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
+Index: grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
===================================================================
---- grpcio-1.57.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
-+++ grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
+--- grpcio-1.60.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
++++ grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/vtable.pyx.pxi
@@ -13,16 +13,16 @@
# limitations under the License.
@@ -22,11 +22,11 @@
if first_pointer < second_pointer:
return -1
elif first_pointer > second_pointer:
-Index: grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
+Index: grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
===================================================================
---- grpcio-1.57.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
-+++ grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
-@@ -314,7 +314,7 @@ def server_credentials_ssl_dynamic_cert_
+--- grpcio-1.60.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
++++ grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/credentials.pyx.pxi
+@@ -316,7 +316,7 @@ def server_credentials_ssl_dynamic_cert_
return credentials
cdef grpc_ssl_certificate_config_reload_status _server_cert_config_fetcher_wrapper(
@@ -35,10 +35,10 @@
# This is a credentials.ServerCertificateConfig
cdef ServerCertificateConfig cert_config = None
if not user_data:
-Index: grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
+Index: grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
===================================================================
---- grpcio-1.57.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
-+++ grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
+--- grpcio-1.60.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
++++ grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pyx.pxi
@@ -50,7 +50,7 @@ cdef class CallbackWrapper:
@staticmethod
cdef void functor_run(
@@ -48,10 +48,10 @@
cdef CallbackContext *context = <CallbackContext *>functor
cdef object waiter = <object>context.waiter
if not waiter.cancelled():
-Index: grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
+Index: grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
===================================================================
---- grpcio-1.57.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
-+++ grpcio-1.57.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
+--- grpcio-1.60.0.orig/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
++++ grpcio-1.60.0/src/python/grpcio/grpc/_cython/_cygrpc/aio/callback_common.pxd.pxi
@@ -48,7 +48,7 @@ cdef class CallbackWrapper:
@staticmethod
cdef void functor_run(
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rpma for openSUSE:Factory checked in at 2023-12-17 21:32:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rpma (Old)
and /work/SRC/openSUSE:Factory/.rpma.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rpma"
Sun Dec 17 21:32:44 2023 rev:4 rq:1133618 version:1.3.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/rpma/rpma.changes 2023-03-24 15:21:17.587160753 +0100
+++ /work/SRC/openSUSE:Factory/.rpma.new.25432/rpma.changes 2023-12-17 21:35:04.875593463 +0100
@@ -1,0 +2,32 @@
+Sat Dec 16 17:06:03 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 1.3.0:
+ * the native flush support (required support in the kernel and
+ in an RNIC's driver)
+ * missing unit tests for rpma_mr_atomic_write()
+ * a check if librpma uses rdma-core installed from sources
+ * BUILD_FORCE_ODP_NOT_SUPPORTED CMake option to disable On-
+ Demand Paging (ODP) support in libibverbs
+ * BUILD_FORCE_NATIVE_ATOMIC_WRITE_NOT_SUPPORTED CMake option to
+ disable support for native atomic write in libibverbs
+ * BUILD_FORCE_NATIVE_FLUSH_NOT_SUPPORTED CMake option to
+ disable support for the native flush in libibverbs
+ * the "ibv_query_device_ex_mock undeclared" compiler error when
+ both ON_DEMAND_PAGING_SUPPORTED and
+ NATIVE_ATOMIC_WRITE_SUPPORTED are not defined
+ * renamed IBV_WR_ATOMIC_WRITE_SUPPORTED to
+ NATIVE_ATOMIC_WRITE_SUPPORTED
+ * renamed is_ibv_wr_atomic_write_supported() to
+ is_ibv_atomic_write_supported()
+ * updated the install-pmdk.sh script to install PMDK
+ 1.12.1-119-g8074b19b1 with fixes required for Rocky Linux 8
+ and 9 and verify if the installation succeeded
+ * rpma_peer_new() to check the native flush support in kernel
+ * rpma_peer_setup_qp() to enable the native flush if both
+ kernel and libibverbs support it
+ * rpma_peer_usage2access() to return native access flags if
+ both kernel and libibverbs support the native flush
+ * rpma_flush() to use the native flush if the created QP
+ supports it
+
+-------------------------------------------------------------------
Old:
----
1.2.0.tar.gz
New:
----
1.3.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rpma.spec ++++++
--- /var/tmp/diff_new_pack.2mSRBR/_old 2023-12-17 21:35:05.335610177 +0100
+++ /var/tmp/diff_new_pack.2mSRBR/_new 2023-12-17 21:35:05.335610177 +0100
@@ -18,7 +18,7 @@
Name: rpma
%define lname librpma0
-Version: 1.2.0
+Version: 1.3.0
Release: 0
Summary: Remote Persistent Memory Access
License: BSD-3-Clause
++++++ 1.2.0.tar.gz -> 1.3.0.tar.gz ++++++
++++ 3180 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package conan for openSUSE:Factory checked in at 2023-12-17 21:32:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/conan (Old)
and /work/SRC/openSUSE:Factory/.conan.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "conan"
Sun Dec 17 21:32:42 2023 rev:2 rq:1133620 version:2.0.14
Changes:
--------
--- /work/SRC/openSUSE:Factory/conan/conan.changes 2023-10-30 22:11:24.641600830 +0100
+++ /work/SRC/openSUSE:Factory/.conan.new.25432/conan.changes 2023-12-17 21:35:04.131566429 +0100
@@ -1,0 +2,92 @@
+Sat Dec 16 13:41:20 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 2.0.14:
+ * Feature: Added riscv64, riscv32 architectures to default
+ settings.yml and management of them in Meson and Autotools
+ [gh#conan-io/conan#15053].
+ * Feature: Allow only one simultaneous database connection
+ [gh#conan-io/conan#15029].
+ * Feature: Add conan cache backup-upload to upload all the
+ backup sources in the cache, regardless of which references
+ they are from [gh#conan-io/conan#15013].
+ * Feature: New conan list --format=compact for better UX
+ [gh#conan-io/conan#15011].
+ * Feature: Ignore metadata upload by passing --metadata=""
+ [gh#conan-io/conan#15007].
+ * Feature: Better output messages in conan upload
+ [gh#conan-io/conan#14984].
+ * Feature: Add extra flags to CMakeToolchain
+ [gh#conan-io/conan#14966].
+ * Feature: Implement package load/restore from the cache, for CI
+ workflows and moving packages over air-gaps
+ [gh#conan-io/conan#14923].
+ * Feature: Compute version-ranges intersection to avoid graph
+ version conflicts for compatible ranges
+ [gh#conan-io/conan#14912].
+ * Feature: CMake helper can use multiple targets in target
+ argument [gh#conan-io/conan#14883].
+ * Feature: Add CMakeDeps and PkgConfigDeps generators listening
+ to system_package_version property [gh#conan-io/conan#14808].
+ * Feature: Add shorthand syntax in cli to specify host and build
+ in 1 argument [gh#conan-io/conan#14727].
+ * Feature: Implement cache LRU control for cleaning of unused
+ artifacts [gh#conan-io/conan#14054].
+ * Fix: Avoid CMakeToolchain overwriting user CMakePresets.json
+ when no layout nor output-folder is defined
+ [gh#conan-io/conan#15058].
+ * Fix: Add astra, elbrus and altlinux as distribution using apt
+ in SystemPackageManager [gh#conan-io/conan#15051].
+ * Fix: Default to apt-get package manager in Linux Mint
+ [gh#conan-io/conan#15026].
+ * Fix: Make Git() check commits in remote server even for
+ shallow clones [gh#conan-io/conan#15023].
+ * Fix: Fix AutotoolsToolchain extraflags priority
+ [gh#conan-io/conan#15005].
+ * Fix: Remove colors from conan --version output
+ [gh#conan-io/conan#15002].
+ * Fix: Add an error message if the sqlite3 version is
+ unsupported (less than 3.7.11 from 2012)
+ [gh#conan-io/conan#14950].
+ * Fix: Make cache DB always use forward slash for paths, to be
+ uniform across Windows and Linux [gh#conan-io/conan#14940].
+ * Fix: Solve re-build of an existing package revision (like
+ forcing rebuild of a an existing header-only package), while
+ previous folder was still used by other projects
+ [gh#conan-io/conan#14938].
+ * Fix: Avoid a recipe mutating a conf to affect other recipes
+ [gh#conan-io/conan#14932].
+ * Fix: The output of system packages via Apt.install() or
+ PkgConfig.fill_cpp_info, like xorg/system was very noisy to
+ the Conan output, making it more quiet
+ [gh#conan-io/conan#14924].
+ * Fix: Serialize the path information of python_requires,
+ necessary for computing buildinfo [gh#conan-io/conan#14886].
+ * Fix: Define remotes in conan source command in case recipe has
+ python_requires that need to be downloaded from remotes
+ [gh#conan-io/conan#14852].
+ * Fix: Fix min target flag for xros and xros-simulator
+ [gh#conan-io/conan#14776].
+ * Bugfix: --build=missing was doing unnecessary builds of
+ packages that were not needed and could be skipped, in the
+ case of tool_requires having transitive dependencies
+ [gh#conan-io/conan#15082].
+ * BugFix: Add package revision to format=json in 'conan
+ export-pkg' command [gh#conan-io/conan#15042].
+ * Bugfix: tools.build:download_source=True will not fail when
+ there are editable packages [gh#conan-io/conan#15004].
+ * Bugfix: Transitive dependencies were incorrectly added to
+ conandeps.xcconfig [gh#conan-io/conan#14898].
+ * Bugfix: Fix integrity-check (upload --check or cache
+ check-integrity) when the export_source has not been
+ downloaded [gh#conan-io/conan#14850].
+ * Bugfix: Properly lock release candidates of python requires
+ [gh#conan-io/conan#14846].
+ * BugFix: Version ranges ending with - do not automatically
+ activate pre-releases resolution in the full range
+ [gh#conan-io/conan#14814].
+ * BugFix: Fix version ranges so pre-releases are correctly
+ included in the lower bound and excluded in the upper bound
+ [gh#conan-io/conan#14814].
+- New Requires: python-distro.
+
+-------------------------------------------------------------------
Old:
----
conan-2.0.13.tar.gz
New:
----
conan-2.0.14.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ conan.spec ++++++
--- /var/tmp/diff_new_pack.VO2LAa/_old 2023-12-17 21:35:04.627584452 +0100
+++ /var/tmp/diff_new_pack.VO2LAa/_new 2023-12-17 21:35:04.631584597 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package python-conan
+# spec file for package conan
#
# Copyright (c) 2023 SUSE LLC
#
@@ -18,23 +18,24 @@
# Note: We only want to build for the default python3
Name: conan
-Version: 2.0.13
+Version: 2.0.14
Release: 0
Summary: A C/C++ package manager
License: MIT
URL: https://conan.io
Source: https://files.pythonhosted.org/packages/source/c/conan/conan-%{version}.tar…
+BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: python3-pip
BuildRequires: python3-setuptools
BuildRequires: python3-wheel
-BuildRequires: fdupes
+Requires: python3-Jinja2
+Requires: python3-PyYAML >= 6.0
Requires: python3-colorama >= 0.4.3
+Requires: python3-distro
Requires: python3-fasteners >= 0.15
-Requires: python3-Jinja2
Requires: python3-patch-ng >= 1.17.4
Requires: python3-python-dateutil >= 2.8.0
-Requires: python3-PyYAML >= 6.0
Requires: python3-requests >= 2.25
Requires: python3-urllib3 >= 1.26.6
BuildArch: noarch
++++++ conan-2.0.13.tar.gz -> conan-2.0.14.tar.gz ++++++
++++ 5262 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package tinyxml for openSUSE:Factory checked in at 2023-12-17 21:32:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tinyxml (Old)
and /work/SRC/openSUSE:Factory/.tinyxml.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tinyxml"
Sun Dec 17 21:32:39 2023 rev:16 rq:1133617 version:2.6.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/tinyxml/tinyxml.changes 2021-10-27 22:21:36.311210947 +0200
+++ /work/SRC/openSUSE:Factory/.tinyxml.new.25432/tinyxml.changes 2023-12-17 21:35:03.331537362 +0100
@@ -1,0 +2,7 @@
+Fri Dec 15 15:02:44 CET 2023 - aschnell(a)suse.com
+
+- avoid assertion on certain malformed input including null-byte
+ (bsc#1218040)
+- added tinyxml-null-byte-assert.patch
+
+-------------------------------------------------------------------
@@ -118 +124,0 @@
-
New:
----
tinyxml-null-byte-assert.patch
BETA DEBUG BEGIN:
New: (bsc#1218040)
- added tinyxml-null-byte-assert.patch
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tinyxml.spec ++++++
--- /var/tmp/diff_new_pack.lOcMfi/_old 2023-12-17 21:35:03.815554948 +0100
+++ /var/tmp/diff_new_pack.lOcMfi/_new 2023-12-17 21:35:03.819555093 +0100
@@ -1,7 +1,7 @@
#
# spec file for package tinyxml
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -35,6 +35,7 @@
Patch0: tinyxml-c_headers.patch
Patch1: tinyxml-entity.patch
Patch2: tinyxml-2.62-fix-infinite-loop.patch
+Patch3: tinyxml-null-byte-assert.patch
URL: http://sourceforge.net/projects/tinyxml
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: gcc-c++
@@ -87,6 +88,7 @@
%patch0
%patch1
%patch2 -p1
+%patch3 -p1
mkdir -p m4
cp %{S:1} %{S:2} %{S:3} %{S:4} .
cp %{S:5} docs/Makefile.am
++++++ tinyxml-null-byte-assert.patch ++++++
--- a/tinyxmlparser.cpp 2011-05-15 04:24:57.000000000 +0200
+++ b/tinyxmlparser.cpp 2023-12-15 12:06:34.919095166 +0100
@@ -1600,6 +1600,9 @@
}
p = SkipWhiteSpace( p, _encoding );
+ if (!p || !*p)
+ break;
+
if ( StringEqual( p, "version", true, _encoding ) )
{
TiXmlAttribute attrib;
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-h5py for openSUSE:Factory checked in at 2023-12-17 21:32:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-h5py (Old)
and /work/SRC/openSUSE:Factory/.python-h5py.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-h5py"
Sun Dec 17 21:32:37 2023 rev:28 rq:1133632 version:3.10.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-h5py/python-h5py.changes 2023-10-24 20:08:52.929669680 +0200
+++ /work/SRC/openSUSE:Factory/.python-h5py.new.25432/python-h5py.changes 2023-12-17 21:35:01.671477045 +0100
@@ -1,0 +2,21 @@
+Sat Dec 16 19:04:27 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.10.0:
+ * The read-only S3 file driver ('ros3') now accepts an AWS session
+ token as part of the credentials (:pr:`2301`). Pass session_token
+ when opening a :class:`.File` (along with the other S3 parameters).
+ This requires HDF5 1.14.2 or later, with the ROS3 feature built.
+ * Support for the HDF5 1.8 series was dropped, along with early 1.10
+ releases. The minimum required HDF5 version is now 1.10.4.
+ * Exposing HDF5 functions
+ * H5Pget_fapl_ros3_token & H5Pset_fapl_ros3_token
+ * Various nasty bugs when using nested compound and vlen data types
+ have been fixed (:pr:`2134`).
+ * Fixed an OverflowError in some cases when registering a filter
+ with :func:`h5z.register_filter`, especially on 32-bit
+ architectures (:pr:`2318`).
+ * Sequential slicing/indexing operations on a :class:`.VirtualSource`
+ object (e.g. source[:10][::2]) now raise an error, rather than
+ giving incorrect results (:pr:`2280`).
+
+-------------------------------------------------------------------
Old:
----
h5py-3.9.0.tar.gz
New:
----
h5py-3.10.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-h5py.spec ++++++
--- /var/tmp/diff_new_pack.Yiaq1C/_old 2023-12-17 21:35:02.451505386 +0100
+++ /var/tmp/diff_new_pack.Yiaq1C/_new 2023-12-17 21:35:02.455505532 +0100
@@ -48,7 +48,7 @@
%endif
# /SECTION MPI DEFINITIONS
Name: %{pname}%{?my_suffix}
-Version: 3.9.0
+Version: 3.10.0
Release: 0
Summary: Python interface to the Hierarchical Data Format library
License: BSD-3-Clause
++++++ h5py-3.9.0.tar.gz -> h5py-3.10.0.tar.gz ++++++
++++ 3587 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-scikit-hep-testdata for openSUSE:Factory checked in at 2023-12-17 21:32:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-scikit-hep-testdata (Old)
and /work/SRC/openSUSE:Factory/.python-scikit-hep-testdata.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-scikit-hep-testdata"
Sun Dec 17 21:32:30 2023 rev:20 rq:1133627 version:0.4.35
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-scikit-hep-testdata/python-scikit-hep-testdata.changes 2023-10-10 20:59:59.941426987 +0200
+++ /work/SRC/openSUSE:Factory/.python-scikit-hep-testdata.new.25432/python-scikit-hep-testdata.changes 2023-12-17 21:34:53.255171247 +0100
@@ -1,0 +2,13 @@
+Fri Dec 15 15:52:58 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 0.4.35:
+ * feat: for gh#scikit-hep/uproot5#1043.
+
+-------------------------------------------------------------------
+Mon Oct 23 12:56:48 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 0.4.34:
+ * feat: add uproot ntuple 6.29/01 files
+ (gh#scikit-hep/scikit-hep-testdata#131).
+
+-------------------------------------------------------------------
Old:
----
scikit-hep-testdata-0.4.33.tar.gz
New:
----
scikit-hep-testdata-0.4.35.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-scikit-hep-testdata.spec ++++++
--- /var/tmp/diff_new_pack.rxLYl2/_old 2023-12-17 21:35:00.855447395 +0100
+++ /var/tmp/diff_new_pack.rxLYl2/_new 2023-12-17 21:35:00.871447976 +0100
@@ -19,7 +19,7 @@
%define srcname scikit-hep-testdata
%define modname %( echo %{srcname} | tr '-' '_' )
Name: python-scikit-hep-testdata
-Version: 0.4.33
+Version: 0.4.35
Release: 0
Summary: Example HEP files for testing and demonstrating
License: BSD-3-Clause
++++++ scikit-hep-testdata-0.4.33.tar.gz -> scikit-hep-testdata-0.4.35.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-scikit-hep-testdata/scikit-hep-testdata-0.4.33.tar.gz /work/SRC/openSUSE:Factory/.python-scikit-hep-testdata.new.25432/scikit-hep-testdata-0.4.35.tar.gz differ: char 22, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-awkward-cpp for openSUSE:Factory checked in at 2023-12-17 21:32:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-awkward-cpp (Old)
and /work/SRC/openSUSE:Factory/.python-awkward-cpp.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-awkward-cpp"
Sun Dec 17 21:32:28 2023 rev:13 rq:1133622 version:27
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-awkward-cpp/python-awkward-cpp.changes 2023-11-21 21:34:30.344852514 +0100
+++ /work/SRC/openSUSE:Factory/.python-awkward-cpp.new.25432/python-awkward-cpp.changes 2023-12-17 21:34:50.819082735 +0100
@@ -1,0 +2,6 @@
+Fri Dec 15 15:46:14 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 27:
+ * Remove obsolete cuda_kernels (gh#scikit-hep/awkward#2876).
+
+-------------------------------------------------------------------
Old:
----
awkward-cpp-26.tar.gz
New:
----
awkward-cpp-27.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-awkward-cpp.spec ++++++
--- /var/tmp/diff_new_pack.4M60Zo/_old 2023-12-17 21:34:51.275099303 +0100
+++ /var/tmp/diff_new_pack.4M60Zo/_new 2023-12-17 21:34:51.279099449 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-awkward-cpp
-Version: 26
+Version: 27
Release: 0
Summary: CPU kernels and compiled extensions for Awkward Array
License: BSD-3-Clause
++++++ awkward-cpp-26.tar.gz -> awkward-cpp-27.tar.gz ++++++
++++ 8027 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-bokeh for openSUSE:Factory checked in at 2023-12-17 21:32:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-bokeh (Old)
and /work/SRC/openSUSE:Factory/.python-bokeh.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-bokeh"
Sun Dec 17 21:32:25 2023 rev:45 rq:1133619 version:3.3.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-bokeh/python-bokeh.changes 2023-10-13 23:16:37.511269632 +0200
+++ /work/SRC/openSUSE:Factory/.python-bokeh.new.25432/python-bokeh.changes 2023-12-17 21:34:49.791045382 +0100
@@ -1,0 +2,42 @@
+Sat Dec 16 14:10:47 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 3.3.2:
+ * [BUG] BoxAnnotation don't show up if not all lrbt-bounds are
+ set [gh#bokeh/bokeh#13432].
+- Delete a bunch of 0 sized files.
+- Re-create bokeh-sampledata.tar.xz.
+- Disable a couple more tests:
+ * test_vermin: vermin not packaged for openSUSE.
+ * test__use_provided_session_header_autoload: network use.
+
+-------------------------------------------------------------------
+Wed Nov 29 13:09:09 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.3.1:
+ * [BUG] Spinner in float mode with int step will increment to int
+ * [BUG] Incorrectly formatted ticks with %f format when time is
+ older than the Epoch
+ * [BUG] Running the docs' "Specialized Axis Ticking" example
+ fails due to Node compilation error
+ * [component: bokehjs] [BUG] Issue with adding DataTable to a
+ new tab from a callback
+ * [component: docs] Empty bullet points above collapsible blocks
+ in documentation
+ * [component: bokehjs] Updating button icon does
+ not work on the first click[BUG]
+ * [component: bokehjs] p.rect and possible others
+ in combination with factor_cmap no longer handles NaN values
+ * [component: bokehjs] [BUG] HoverTools not
+ correctly located in Notebook
+ * [BUG] daylight_warsaw_2013 emits a warning
+ * 13452 [component: bokehjs] [BUG] ImageStack hover
+ tooltip shows incorrect numbers
+ * [component: bokehjs] RangeTool not working in Jupyter notebook
+ * [component: bokehjs] [BUG] DateRangePicker
+ selects individual dates by default
+ * [component: bokehjs] [BUG] {v,h}strip not
+ showing when values are large and width/height is small on
+ WebGL
+ * Convert value of `BOKEH_DEFAULT_SERVER_PORT` to `int`
+
+-------------------------------------------------------------------
Old:
----
bokeh-3.3.0-gh.tar.gz
bokeh-3.3.0.tar.gz
New:
----
bokeh-3.3.2-gh.tar.gz
bokeh-3.3.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-bokeh.spec ++++++
--- /var/tmp/diff_new_pack.Xp8TCu/_old 2023-12-17 21:34:50.595074596 +0100
+++ /var/tmp/diff_new_pack.Xp8TCu/_new 2023-12-17 21:34:50.595074596 +0100
@@ -1,5 +1,5 @@
#
-# spec file for package python-bokeh
+# spec file
#
# Copyright (c) 2023 SUSE LLC
#
@@ -29,7 +29,7 @@
%bcond_with testexamples
Name: python-bokeh%{psuffix}
-Version: 3.3.0
+Version: 3.3.2
Release: 0
Summary: Statistical interactive HTML plots for Python
License: BSD-3-Clause
@@ -95,6 +95,7 @@
BuildRequires: %{python_module requests-unixsocket}
BuildRequires: %{python_module scikit-learn}
BuildRequires: %{python_module selenium}
+BuildRequires: %{python_module toml}
BuildRequires: %{python_module tornado}
BuildRequires: npm
%endif
@@ -124,7 +125,8 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%python_clone -a %{buildroot}%{_bindir}/bokeh
-# Remove hidden files for git repos
+%python_expand find %{buildroot}%{$python_sitelib}/typings -name __init__.pyi -size 0 -delete
+
%endif
%if %{with test}
@@ -168,6 +170,10 @@
# fails when tested with pytest-xdist
deselectname+=" or (TestModelCls and test_get_class)"
deselectname+=" or test_external_js_and_css_resource_ordering"
+# No vermin pkg for openSUSE
+deselectname+=" or test_vermin"
+# network
+deselectname+=" or test__use_provided_session_header_autoload"
# for finding the sampledata (packaged in Source99)
export HOME=$PWD
export PYTEST_DEBUG_TEMPROOT=$(mktemp -d -p ./)
@@ -187,5 +193,6 @@
%python_alternative %{_bindir}/bokeh
%{python_sitelib}/bokeh/
%{python_sitelib}/bokeh-%{version}*-info
+%{python_sitelib}/typings/
%endif
++++++ bokeh-3.3.0-gh.tar.gz -> bokeh-3.3.2-gh.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-bokeh/bokeh-3.3.0-gh.tar.gz /work/SRC/openSUSE:Factory/.python-bokeh.new.25432/bokeh-3.3.2-gh.tar.gz differ: char 38, line 1
++++++ bokeh-3.3.0-gh.tar.gz -> bokeh-3.3.2.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-bokeh/bokeh-3.3.0-gh.tar.gz /work/SRC/openSUSE:Factory/.python-bokeh.new.25432/bokeh-3.3.2.tar.gz differ: char 4, line 1
++++++ bokeh-sampledata.tar.xz ++++++
/work/SRC/openSUSE:Factory/python-bokeh/bokeh-sampledata.tar.xz /work/SRC/openSUSE:Factory/.python-bokeh.new.25432/bokeh-sampledata.tar.xz differ: char 26, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-api-core for openSUSE:Factory checked in at 2023-12-17 21:32:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-api-core (Old)
and /work/SRC/openSUSE:Factory/.python-google-api-core.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-api-core"
Sun Dec 17 21:32:24 2023 rev:29 rq:1133662 version:2.15.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-api-core/python-google-api-core.changes 2023-12-07 19:13:19.685727905 +0100
+++ /work/SRC/openSUSE:Factory/.python-google-api-core.new.25432/python-google-api-core.changes 2023-12-17 21:34:47.778972276 +0100
@@ -1,0 +2,13 @@
+Sat Dec 16 19:25:47 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.15.0:
+ * Add support for Python 3.12
+ * Add type annotations to wrapped grpc calls
+ * Add universe_domain argument to ClientOptions
+ * Introduce compatibility with native namespace packages
+ * Fix regression in `bidi` causing `Thread-
+ ConsumeBidirectionalStream caught unexpected exception and
+ will exit` (#562)
+ * Replace deprecated `datetime.datetime.utcnow()`
+
+-------------------------------------------------------------------
Old:
----
google-api-core-2.14.0.tar.gz
New:
----
google-api-core-2.15.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-api-core.spec ++++++
--- /var/tmp/diff_new_pack.yW2T3j/_old 2023-12-17 21:34:48.250989426 +0100
+++ /var/tmp/diff_new_pack.yW2T3j/_new 2023-12-17 21:34:48.250989426 +0100
@@ -24,10 +24,9 @@
%define psuffix %{nil}
%bcond_with test
%endif
-%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-google-api-core
-Version: 2.14.0
+Version: 2.15.0
Release: 0
Summary: Google API client core library
License: Apache-2.0
@@ -38,7 +37,6 @@
BuildRequires: %{python_module google-auth >= 2.14.1}
BuildRequires: %{python_module googleapis-common-protos >= 1.53.0}
BuildRequires: %{python_module grpcio >= 1.33.2}
-BuildRequires: %{python_module grpcio-gcp >= 0.2.2}
BuildRequires: %{python_module grpcio-status >= 1.33.2}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module protobuf >= 3.19.5 with %python-protobuf < 5.0.0.dev0}
@@ -64,7 +62,6 @@
Requires: python-requests >= 2.18.0
Requires: python-setuptools >= 40.3.0
Requires: (python-protobuf >= 3.19.5 with python-protobuf < 5.0.0.dev0)
-Suggests: python-grpcio-gcp >= 0.2.2
BuildArch: noarch
%python_subpackages
@@ -95,7 +92,6 @@
%license LICENSE
%doc README.rst
%{python_sitelib}/google/api_core
-%{python_sitelib}/google_api_core-%{version}*-nspkg.pth
%{python_sitelib}/google_api_core-%{version}*-info
%endif
++++++ google-api-core-2.14.0.tar.gz -> google-api-core-2.15.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/PKG-INFO new/google-api-core-2.15.0/PKG-INFO
--- old/google-api-core-2.14.0/PKG-INFO 2023-11-10 00:16:17.662312300 +0100
+++ new/google-api-core-2.15.0/PKG-INFO 2023-12-07 17:38:24.526273500 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: google-api-core
-Version: 2.14.0
+Version: 2.15.0
Summary: Google API client core library
Home-page: https://github.com/googleapis/python-api-core
Author: Google LLC
@@ -17,6 +17,7 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/__init__.py new/google-api-core-2.15.0/google/__init__.py
--- old/google-api-core-2.14.0/google/__init__.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/__init__.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,25 +0,0 @@
-# Copyright 2016 Google LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Google namespace package."""
-
-try:
- import pkg_resources
-
- pkg_resources.declare_namespace(__name__)
-except ImportError:
- import pkgutil
-
- # See: https://github.com/python/mypy/issues/1422
- __path__ = pkgutil.extend_path(__path__, __name__) # type: ignore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/api_core/bidi.py new/google-api-core-2.15.0/google/api_core/bidi.py
--- old/google-api-core-2.14.0/google/api_core/bidi.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/api_core/bidi.py 2023-12-07 17:36:01.000000000 +0100
@@ -91,8 +91,9 @@
def _is_active(self):
# Note: there is a possibility that this starts *before* the call
# property is set. So we have to check if self.call is set before
- # seeing if it's active.
- return self.call is not None and self.call.is_active()
+ # seeing if it's active. We need to return True if self.call is None.
+ # See https://github.com/googleapis/python-api-core/issues/560.
+ return self.call is None or self.call.is_active()
def __iter__(self):
if self._initial_request is not None:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/api_core/client_options.py new/google-api-core-2.15.0/google/api_core/client_options.py
--- old/google-api-core-2.14.0/google/api_core/client_options.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/api_core/client_options.py 2023-12-07 17:36:01.000000000 +0100
@@ -75,6 +75,11 @@
authentication flows. Audience is typically a resource identifier.
If not set, the service endpoint value will be used as a default.
An example of a valid ``api_audience`` is: "https://language.googleapis.com".
+ universe_domain (Optional[str]): The desired universe domain. This must match
+ the one in credentials. If not set, the default universe domain is
+ `googleapis.com`. If both `api_endpoint` and `universe_domain` are set,
+ then `api_endpoint` is used as the service endpoint. If `api_endpoint` is
+ not specified, the format will be `{service}.{universe_domain}`.
Raises:
ValueError: If both ``client_cert_source`` and ``client_encrypted_cert_source``
@@ -91,6 +96,7 @@
scopes=None,
api_key=None,
api_audience=None,
+ universe_domain=None,
):
if client_cert_source and client_encrypted_cert_source:
raise ValueError(
@@ -106,6 +112,7 @@
self.scopes = scopes
self.api_key = api_key
self.api_audience = api_audience
+ self.universe_domain = universe_domain
def __repr__(self):
return "ClientOptions: " + repr(self.__dict__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/api_core/datetime_helpers.py new/google-api-core-2.15.0/google/api_core/datetime_helpers.py
--- old/google-api-core-2.14.0/google/api_core/datetime_helpers.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/api_core/datetime_helpers.py 2023-12-07 17:36:01.000000000 +0100
@@ -42,7 +42,7 @@
def utcnow():
"""A :meth:`datetime.datetime.utcnow()` alias to allow mocking in tests."""
- return datetime.datetime.utcnow()
+ return datetime.datetime.now(tz=datetime.timezone.utc).replace(tzinfo=None)
def to_milliseconds(value):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/api_core/grpc_helpers.py new/google-api-core-2.15.0/google/api_core/grpc_helpers.py
--- old/google-api-core-2.14.0/google/api_core/grpc_helpers.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/api_core/grpc_helpers.py 2023-12-07 17:36:01.000000000 +0100
@@ -13,6 +13,7 @@
# limitations under the License.
"""Helpers for :mod:`grpc`."""
+from typing import Generic, TypeVar, Iterator
import collections
import functools
@@ -54,6 +55,9 @@
_LOGGER = logging.getLogger(__name__)
+# denotes the proto response type for grpc calls
+P = TypeVar("P")
+
def _patch_callable_name(callable_):
"""Fix-up gRPC callable attributes.
@@ -79,7 +83,7 @@
return error_remapped_callable
-class _StreamingResponseIterator(grpc.Call):
+class _StreamingResponseIterator(Generic[P], grpc.Call):
def __init__(self, wrapped, prefetch_first_result=True):
self._wrapped = wrapped
@@ -97,11 +101,11 @@
# ignore stop iteration at this time. This should be handled outside of retry.
pass
- def __iter__(self):
+ def __iter__(self) -> Iterator[P]:
"""This iterator is also an iterable that returns itself."""
return self
- def __next__(self):
+ def __next__(self) -> P:
"""Get the next response from the stream.
Returns:
@@ -144,6 +148,10 @@
return self._wrapped.trailing_metadata()
+# public type alias denoting the return type of streaming gapic calls
+GrpcStream = _StreamingResponseIterator[P]
+
+
def _wrap_stream_errors(callable_):
"""Wrap errors for Unary-Stream and Stream-Stream gRPC callables.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/api_core/grpc_helpers_async.py new/google-api-core-2.15.0/google/api_core/grpc_helpers_async.py
--- old/google-api-core-2.14.0/google/api_core/grpc_helpers_async.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/api_core/grpc_helpers_async.py 2023-12-07 17:36:01.000000000 +0100
@@ -21,11 +21,15 @@
import asyncio
import functools
+from typing import Generic, Iterator, AsyncGenerator, TypeVar
+
import grpc
from grpc import aio
from google.api_core import exceptions, grpc_helpers
+# denotes the proto response type for grpc calls
+P = TypeVar("P")
# NOTE(lidiz) Alternatively, we can hack "__getattribute__" to perform
# automatic patching for us. But that means the overhead of creating an
@@ -75,8 +79,8 @@
raise exceptions.from_grpc_error(rpc_error) from rpc_error
-class _WrappedUnaryResponseMixin(_WrappedCall):
- def __await__(self):
+class _WrappedUnaryResponseMixin(Generic[P], _WrappedCall):
+ def __await__(self) -> Iterator[P]:
try:
response = yield from self._call.__await__()
return response
@@ -84,17 +88,17 @@
raise exceptions.from_grpc_error(rpc_error) from rpc_error
-class _WrappedStreamResponseMixin(_WrappedCall):
+class _WrappedStreamResponseMixin(Generic[P], _WrappedCall):
def __init__(self):
self._wrapped_async_generator = None
- async def read(self):
+ async def read(self) -> P:
try:
return await self._call.read()
except grpc.RpcError as rpc_error:
raise exceptions.from_grpc_error(rpc_error) from rpc_error
- async def _wrapped_aiter(self):
+ async def _wrapped_aiter(self) -> AsyncGenerator[P, None]:
try:
# NOTE(lidiz) coverage doesn't understand the exception raised from
# __anext__ method. It is covered by test case:
@@ -104,7 +108,7 @@
except grpc.RpcError as rpc_error:
raise exceptions.from_grpc_error(rpc_error) from rpc_error
- def __aiter__(self):
+ def __aiter__(self) -> AsyncGenerator[P, None]:
if not self._wrapped_async_generator:
self._wrapped_async_generator = self._wrapped_aiter()
return self._wrapped_async_generator
@@ -127,26 +131,32 @@
# NOTE(lidiz) Implementing each individual class separately, so we don't
# expose any API that should not be seen. E.g., __aiter__ in unary-unary
# RPC, or __await__ in stream-stream RPC.
-class _WrappedUnaryUnaryCall(_WrappedUnaryResponseMixin, aio.UnaryUnaryCall):
+class _WrappedUnaryUnaryCall(_WrappedUnaryResponseMixin[P], aio.UnaryUnaryCall):
"""Wrapped UnaryUnaryCall to map exceptions."""
-class _WrappedUnaryStreamCall(_WrappedStreamResponseMixin, aio.UnaryStreamCall):
+class _WrappedUnaryStreamCall(_WrappedStreamResponseMixin[P], aio.UnaryStreamCall):
"""Wrapped UnaryStreamCall to map exceptions."""
class _WrappedStreamUnaryCall(
- _WrappedUnaryResponseMixin, _WrappedStreamRequestMixin, aio.StreamUnaryCall
+ _WrappedUnaryResponseMixin[P], _WrappedStreamRequestMixin, aio.StreamUnaryCall
):
"""Wrapped StreamUnaryCall to map exceptions."""
class _WrappedStreamStreamCall(
- _WrappedStreamRequestMixin, _WrappedStreamResponseMixin, aio.StreamStreamCall
+ _WrappedStreamRequestMixin, _WrappedStreamResponseMixin[P], aio.StreamStreamCall
):
"""Wrapped StreamStreamCall to map exceptions."""
+# public type alias denoting the return type of async streaming gapic calls
+GrpcAsyncStream = _WrappedStreamResponseMixin[P]
+# public type alias denoting the return type of unary gapic calls
+AwaitableGrpcCall = _WrappedUnaryResponseMixin[P]
+
+
def _wrap_unary_errors(callable_):
"""Map errors for Unary-Unary async callables."""
grpc_helpers._patch_callable_name(callable_)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google/api_core/version.py new/google-api-core-2.15.0/google/api_core/version.py
--- old/google-api-core-2.14.0/google/api_core/version.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/google/api_core/version.py 2023-12-07 17:36:01.000000000 +0100
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "2.14.0"
+__version__ = "2.15.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google_api_core.egg-info/PKG-INFO new/google-api-core-2.15.0/google_api_core.egg-info/PKG-INFO
--- old/google-api-core-2.14.0/google_api_core.egg-info/PKG-INFO 2023-11-10 00:16:17.000000000 +0100
+++ new/google-api-core-2.15.0/google_api_core.egg-info/PKG-INFO 2023-12-07 17:38:24.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: google-api-core
-Version: 2.14.0
+Version: 2.15.0
Summary: Google API client core library
Home-page: https://github.com/googleapis/python-api-core
Author: Google LLC
@@ -17,6 +17,7 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google_api_core.egg-info/SOURCES.txt new/google-api-core-2.15.0/google_api_core.egg-info/SOURCES.txt
--- old/google-api-core-2.14.0/google_api_core.egg-info/SOURCES.txt 2023-11-10 00:16:17.000000000 +0100
+++ new/google-api-core-2.15.0/google_api_core.egg-info/SOURCES.txt 2023-12-07 17:38:24.000000000 +0100
@@ -3,7 +3,6 @@
README.rst
setup.cfg
setup.py
-google/__init__.py
google/api_core/__init__.py
google/api_core/bidi.py
google/api_core/client_info.py
@@ -52,7 +51,6 @@
google_api_core.egg-info/PKG-INFO
google_api_core.egg-info/SOURCES.txt
google_api_core.egg-info/dependency_links.txt
-google_api_core.egg-info/namespace_packages.txt
google_api_core.egg-info/not-zip-safe
google_api_core.egg-info/requires.txt
google_api_core.egg-info/top_level.txt
@@ -79,6 +77,7 @@
tests/unit/test_grpc_helpers.py
tests/unit/test_iam.py
tests/unit/test_operation.py
+tests/unit/test_packaging.py
tests/unit/test_page_iterator.py
tests/unit/test_path_template.py
tests/unit/test_protobuf_helpers.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/google_api_core.egg-info/namespace_packages.txt new/google-api-core-2.15.0/google_api_core.egg-info/namespace_packages.txt
--- old/google-api-core-2.14.0/google_api_core.egg-info/namespace_packages.txt 2023-11-10 00:16:17.000000000 +0100
+++ new/google-api-core-2.15.0/google_api_core.egg-info/namespace_packages.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-google
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/setup.py new/google-api-core-2.15.0/setup.py
--- old/google-api-core-2.14.0/setup.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/setup.py 2023-12-07 17:36:01.000000000 +0100
@@ -63,15 +63,11 @@
# Only include packages under the 'google' namespace. Do not include tests,
# benchmarks, etc.
packages = [
- package for package in setuptools.find_packages() if package.startswith("google")
+ package
+ for package in setuptools.find_namespace_packages()
+ if package.startswith("google")
]
-# Determine which namespaces are needed.
-namespaces = ["google"]
-if "google.cloud" in packages:
- namespaces.append("google.cloud")
-
-
setuptools.setup(
name=name,
version=version,
@@ -92,12 +88,12 @@
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Topic :: Internet",
],
platforms="Posix; MacOS X; Windows",
packages=packages,
- namespace_packages=namespaces,
install_requires=dependencies,
extras_require=extras,
python_requires=">=3.7",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/asyncio/test_grpc_helpers_async.py new/google-api-core-2.15.0/tests/asyncio/test_grpc_helpers_async.py
--- old/google-api-core-2.14.0/tests/asyncio/test_grpc_helpers_async.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/asyncio/test_grpc_helpers_async.py 2023-12-07 17:36:01.000000000 +0100
@@ -266,6 +266,28 @@
wrap_unary_errors.assert_called_once_with(callable_)
+def test_grpc_async_stream():
+ """
+ GrpcAsyncStream type should be both an AsyncIterator and a grpc.aio.Call.
+ """
+ instance = grpc_helpers_async.GrpcAsyncStream[int]()
+ assert isinstance(instance, grpc.aio.Call)
+ # should implement __aiter__ and __anext__
+ assert hasattr(instance, "__aiter__")
+ it = instance.__aiter__()
+ assert hasattr(it, "__anext__")
+
+
+def test_awaitable_grpc_call():
+ """
+ AwaitableGrpcCall type should be an Awaitable and a grpc.aio.Call.
+ """
+ instance = grpc_helpers_async.AwaitableGrpcCall[int]()
+ assert isinstance(instance, grpc.aio.Call)
+ # should implement __await__
+ assert hasattr(instance, "__await__")
+
+
@mock.patch("google.api_core.grpc_helpers_async._wrap_stream_errors")
def test_wrap_errors_streaming(wrap_stream_errors):
callable_ = mock.create_autospec(aio.UnaryStreamMultiCallable)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/asyncio/test_retry_async.py new/google-api-core-2.15.0/tests/asyncio/test_retry_async.py
--- old/google-api-core-2.14.0/tests/asyncio/test_retry_async.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/asyncio/test_retry_async.py 2023-12-07 17:36:01.000000000 +0100
@@ -280,7 +280,6 @@
@mock.patch("asyncio.sleep", autospec=True)
@pytest.mark.asyncio
async def test___call___and_execute_retry(self, sleep, uniform):
-
on_error = mock.Mock(spec=["__call__"], side_effect=[None])
retry_ = retry_async.AsyncRetry(
predicate=retry_async.if_exception_type(ValueError)
@@ -305,7 +304,6 @@
@mock.patch("asyncio.sleep", autospec=True)
@pytest.mark.asyncio
async def test___call___and_execute_retry_hitting_deadline(self, sleep, uniform):
-
on_error = mock.Mock(spec=["__call__"], side_effect=[None] * 10)
retry_ = retry_async.AsyncRetry(
predicate=retry_async.if_exception_type(ValueError),
@@ -315,7 +313,7 @@
deadline=9.9,
)
- utcnow = datetime.datetime.utcnow()
+ utcnow = datetime.datetime.now(tz=datetime.timezone.utc)
utcnow_patcher = mock.patch(
"google.api_core.datetime_helpers.utcnow", return_value=utcnow
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/unit/test_client_options.py new/google-api-core-2.15.0/tests/unit/test_client_options.py
--- old/google-api-core-2.14.0/tests/unit/test_client_options.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/unit/test_client_options.py 2023-12-07 17:36:01.000000000 +0100
@@ -38,6 +38,7 @@
"https://www.googleapis.com/auth/cloud-platform.read-only",
],
api_audience="foo2.googleapis.com",
+ universe_domain="googleapis.com",
)
assert options.api_endpoint == "foo.googleapis.com"
@@ -49,6 +50,7 @@
"https://www.googleapis.com/auth/cloud-platform.read-only",
]
assert options.api_audience == "foo2.googleapis.com"
+ assert options.universe_domain == "googleapis.com"
def test_constructor_with_encrypted_cert_source():
@@ -110,6 +112,7 @@
options = client_options.from_dict(
{
"api_endpoint": "foo.googleapis.com",
+ "universe_domain": "googleapis.com",
"client_cert_source": get_client_cert,
"quota_project_id": "quote-proj",
"credentials_file": "path/to/credentials.json",
@@ -122,6 +125,7 @@
)
assert options.api_endpoint == "foo.googleapis.com"
+ assert options.universe_domain == "googleapis.com"
assert options.client_cert_source() == (b"cert", b"key")
assert options.quota_project_id == "quote-proj"
assert options.credentials_file == "path/to/credentials.json"
@@ -148,6 +152,7 @@
expected_keys = set(
[
"api_endpoint",
+ "universe_domain",
"client_cert_source",
"client_encrypted_cert_source",
"quota_project_id",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/unit/test_grpc_helpers.py new/google-api-core-2.15.0/tests/unit/test_grpc_helpers.py
--- old/google-api-core-2.14.0/tests/unit/test_grpc_helpers.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/unit/test_grpc_helpers.py 2023-12-07 17:36:01.000000000 +0100
@@ -195,6 +195,23 @@
wrapped.trailing_metadata.assert_called_once_with()
+class TestGrpcStream(Test_StreamingResponseIterator):
+ @staticmethod
+ def _make_one(wrapped, **kw):
+ return grpc_helpers.GrpcStream(wrapped, **kw)
+
+ def test_grpc_stream_attributes(self):
+ """
+ Should be both a grpc.Call and an iterable
+ """
+ call = self._make_one(None)
+ assert isinstance(call, grpc.Call)
+ # should implement __iter__
+ assert hasattr(call, "__iter__")
+ it = call.__iter__()
+ assert hasattr(it, "__next__")
+
+
def test_wrap_stream_okay():
expected_responses = [1, 2, 3]
callable_ = mock.Mock(spec=["__call__"], return_value=iter(expected_responses))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/unit/test_iam.py new/google-api-core-2.15.0/tests/unit/test_iam.py
--- old/google-api-core-2.14.0/tests/unit/test_iam.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/unit/test_iam.py 2023-12-07 17:36:01.000000000 +0100
@@ -167,14 +167,15 @@
assert policy.owners == expected
def test_owners_setter(self):
- import warnings
from google.api_core.iam import OWNER_ROLE
MEMBER = "user:phred@example.com"
expected = set([MEMBER])
policy = self._make_one()
- with warnings.catch_warnings(record=True) as warned:
+ with pytest.warns(
+ DeprecationWarning, match="Assigning to 'owners' is deprecated."
+ ) as warned:
policy.owners = [MEMBER]
(warning,) = warned
@@ -191,14 +192,15 @@
assert policy.editors == expected
def test_editors_setter(self):
- import warnings
from google.api_core.iam import EDITOR_ROLE
MEMBER = "user:phred@example.com"
expected = set([MEMBER])
policy = self._make_one()
- with warnings.catch_warnings(record=True) as warned:
+ with pytest.warns(
+ DeprecationWarning, match="Assigning to 'editors' is deprecated."
+ ) as warned:
policy.editors = [MEMBER]
(warning,) = warned
@@ -215,14 +217,15 @@
assert policy.viewers == expected
def test_viewers_setter(self):
- import warnings
from google.api_core.iam import VIEWER_ROLE
MEMBER = "user:phred@example.com"
expected = set([MEMBER])
policy = self._make_one()
- with warnings.catch_warnings(record=True) as warned:
+ with pytest.warns(
+ DeprecationWarning, match="Assigning to 'viewers' is deprecated."
+ ) as warned:
policy.viewers = [MEMBER]
(warning,) = warned
@@ -337,12 +340,13 @@
assert policy.to_api_repr() == {}
def test_to_api_repr_binding_w_duplicates(self):
- import warnings
from google.api_core.iam import OWNER_ROLE
OWNER = "group:cloud-logs@google.com"
policy = self._make_one()
- with warnings.catch_warnings(record=True):
+ with pytest.warns(
+ DeprecationWarning, match="Assigning to 'owners' is deprecated."
+ ):
policy.owners = [OWNER, OWNER]
assert policy.to_api_repr() == {
"bindings": [{"role": OWNER_ROLE, "members": [OWNER]}]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/unit/test_packaging.py new/google-api-core-2.15.0/tests/unit/test_packaging.py
--- old/google-api-core-2.14.0/tests/unit/test_packaging.py 1970-01-01 01:00:00.000000000 +0100
+++ new/google-api-core-2.15.0/tests/unit/test_packaging.py 2023-12-07 17:36:01.000000000 +0100
@@ -0,0 +1,28 @@
+# Copyright 2023 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import os
+import subprocess
+import sys
+
+
+def test_namespace_package_compat(tmp_path):
+ # The ``google`` namespace package should not be masked
+ # by the presence of ``google-api-core``.
+ google = tmp_path / "google"
+ google.mkdir()
+ google.joinpath("othermod.py").write_text("")
+ env = dict(os.environ, PYTHONPATH=str(tmp_path))
+ cmd = [sys.executable, "-m", "google.othermod"]
+ subprocess.check_call(cmd, env=env)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/unit/test_retry.py new/google-api-core-2.15.0/tests/unit/test_retry.py
--- old/google-api-core-2.14.0/tests/unit/test_retry.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/unit/test_retry.py 2023-12-07 17:36:01.000000000 +0100
@@ -361,7 +361,6 @@
@mock.patch("random.uniform", autospec=True, side_effect=lambda m, n: n)
@mock.patch("time.sleep", autospec=True)
def test___call___and_execute_retry(self, sleep, uniform):
-
on_error = mock.Mock(spec=["__call__"], side_effect=[None])
retry_ = retry.Retry(predicate=retry.if_exception_type(ValueError))
@@ -383,7 +382,6 @@
@mock.patch("random.uniform", autospec=True, side_effect=lambda m, n: n)
@mock.patch("time.sleep", autospec=True)
def test___call___and_execute_retry_hitting_deadline(self, sleep, uniform):
-
on_error = mock.Mock(spec=["__call__"], side_effect=[None] * 10)
retry_ = retry.Retry(
predicate=retry.if_exception_type(ValueError),
@@ -393,7 +391,7 @@
deadline=30.9,
)
- utcnow = datetime.datetime.utcnow()
+ utcnow = datetime.datetime.now(tz=datetime.timezone.utc)
utcnow_patcher = mock.patch(
"google.api_core.datetime_helpers.utcnow", return_value=utcnow
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-api-core-2.14.0/tests/unit/test_timeout.py new/google-api-core-2.15.0/tests/unit/test_timeout.py
--- old/google-api-core-2.14.0/tests/unit/test_timeout.py 2023-11-10 00:14:15.000000000 +0100
+++ new/google-api-core-2.15.0/tests/unit/test_timeout.py 2023-12-07 17:36:01.000000000 +0100
@@ -58,10 +58,10 @@
def test_apply(self):
target = mock.Mock(spec=["__call__", "__name__"], __name__="target")
- datetime.datetime.utcnow()
+ datetime.datetime.now(tz=datetime.timezone.utc)
datetime.timedelta(seconds=1)
- now = datetime.datetime.utcnow()
+ now = datetime.datetime.now(tz=datetime.timezone.utc)
times = [
now,
@@ -92,10 +92,10 @@
def test_apply_no_timeout(self):
target = mock.Mock(spec=["__call__", "__name__"], __name__="target")
- datetime.datetime.utcnow()
+ datetime.datetime.now(tz=datetime.timezone.utc)
datetime.timedelta(seconds=1)
- now = datetime.datetime.utcnow()
+ now = datetime.datetime.now(tz=datetime.timezone.utc)
times = [
now,
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-cloud-translate for openSUSE:Factory checked in at 2023-12-17 21:32:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-cloud-translate (Old)
and /work/SRC/openSUSE:Factory/.python-google-cloud-translate.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-cloud-translate"
Sun Dec 17 21:32:24 2023 rev:12 rq:1133647 version:3.13.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-cloud-translate/python-google-cloud-translate.changes 2023-12-07 19:13:00.197008945 +0100
+++ /work/SRC/openSUSE:Factory/.python-google-cloud-translate.new.25432/python-google-cloud-translate.changes 2023-12-17 21:34:47.174950329 +0100
@@ -1,0 +2,9 @@
+Sat Dec 16 20:28:46 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 3.13.0:
+ * Add support for python 3.12
+ * Introduce compatibility with native namespace packages
+ * Require proto-plus >= 1.22.3
+ * Use retry_async instead of retry in async client
+
+-------------------------------------------------------------------
Old:
----
google-cloud-translate-3.12.1.tar.gz
New:
----
google-cloud-translate-3.13.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-cloud-translate.spec ++++++
--- /var/tmp/diff_new_pack.ljcW6O/_old 2023-12-17 21:34:47.578965009 +0100
+++ /var/tmp/diff_new_pack.ljcW6O/_new 2023-12-17 21:34:47.578965009 +0100
@@ -16,20 +16,20 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%define skip_python2 1
+%{?sle15_python_module_pythons}
Name: python-google-cloud-translate
-Version: 3.12.1
+Version: 3.13.0
Release: 0
Summary: Google Cloud Translation API client library
License: Apache-2.0
-URL: https://github.com/googleapis/python-translate
+URL: https://github.com/googleapis/google-cloud-python
Source: https://files.pythonhosted.org/packages/source/g/google-cloud-translate/goo…
BuildRequires: %{python_module google-api-core >= 1.34.0}
BuildRequires: %{python_module google-cloud-core >= 1.4.4}
-BuildRequires: %{python_module proto-plus >= 1.22.2}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module proto-plus >= 1.22.3}
BuildRequires: %{python_module protobuf >= 3.19.5}
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module wheel}
# START TESTING SECTION
BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module pytest}
@@ -38,7 +38,7 @@
BuildRequires: python-rpm-macros
Requires: python-google-api-core >= 1.34.0
Requires: python-google-cloud-core >= 1.4.4
-Requires: python-proto-plus >= 1.22.2
+Requires: python-proto-plus >= 1.22.3
Requires: python-protobuf >= 3.19.5
BuildArch: noarch
%python_subpackages
@@ -52,10 +52,10 @@
%autosetup -p1 -n google-cloud-translate-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@@ -64,5 +64,6 @@
%files %{python_files}
%doc README.rst
%license LICENSE
-%{python_sitelib}/*
+%{python_sitelib}/google/cloud/translate*
+%{python_sitelib}/google_cloud_translate-%{version}.dist-info
++++++ google-cloud-translate-3.12.1.tar.gz -> google-cloud-translate-3.13.0.tar.gz ++++++
++++ 2805 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-api-python-client for openSUSE:Factory checked in at 2023-12-17 21:32:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-api-python-client (Old)
and /work/SRC/openSUSE:Factory/.python-google-api-python-client.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-api-python-client"
Sun Dec 17 21:32:22 2023 rev:39 rq:1133646 version:2.111.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-api-python-client/python-google-api-python-client.changes 2023-11-23 21:43:29.829787476 +0100
+++ /work/SRC/openSUSE:Factory/.python-google-api-python-client.new.25432/python-google-api-python-client.changes 2023-12-17 21:34:46.386921697 +0100
@@ -1,0 +2,32 @@
+Sat Dec 16 20:23:55 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.111.0:
+ * Add support for Python 3.12 (#2288)
+ * **aiplatform:** Update the api
+ * **alloydb:** Update the api
+ * **androidpublisher:** Update the api
+ * **baremetalsolution:** Update the api
+ * **batch:** Update the api
+ * **bigquery:** Update the api
+ * **cloudbilling:** Update the api
+ * **clouddeploy:** Update the api
+ * **connectors:** Update the api
+ * **container:** Update the api
+ * **datacatalog:** Update the api
+ * **dataflow:** Update the api
+ * **dns:** Update the api
+ * **gkehub:** Update the api
+ * **gkeonprem:** Update the api
+ * **metastore:** Update the api
+ * **monitoring:** Update the api
+ * **networkmanagement:** Update the api
+ * **networksecurity:** Update the api
+ * **networkservices:** Update the api
+ * **playdeveloperreporting:** Update the api
+ * **pubsub:** Update the api
+ * **script:** Update the api
+ * **securitycenter:** Update the api
+ * **vpcaccess:** Update the api
+ * Replace deprecated utcnow, utcfromtimestamp (#2286)
+
+-------------------------------------------------------------------
Old:
----
google-api-python-client-2.103.0.tar.gz
New:
----
google-api-python-client-2.111.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-api-python-client.spec ++++++
--- /var/tmp/diff_new_pack.enQK6S/_old 2023-12-17 21:34:46.998943934 +0100
+++ /var/tmp/diff_new_pack.enQK6S/_new 2023-12-17 21:34:47.002944080 +0100
@@ -16,10 +16,9 @@
#
-%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-google-api-python-client
-Version: 2.103.0
+Version: 2.111.0
Release: 0
Summary: Google APIs Python Client
License: Apache-2.0
@@ -30,9 +29,10 @@
BuildRequires: %{python_module google-auth-httplib2 >= 0.1.0}
BuildRequires: %{python_module httplib2 >= 0.15.0}
BuildRequires: %{python_module parameterized}
+BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
-BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module uritemplate >= 3.0.1}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-google-api-core >= 1.31.5
@@ -54,10 +54,10 @@
%autosetup -p1 -n google-api-python-client-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@@ -73,5 +73,5 @@
%license LICENSE
%{python_sitelib}/apiclient
%{python_sitelib}/googleapiclient
-%{python_sitelib}/google_api_python_client-%{version}*-info
+%{python_sitelib}/google_api_python_client-%{version}.dist-info
++++++ google-api-python-client-2.103.0.tar.gz -> google-api-python-client-2.111.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-google-api-python-client/google-api-python-client-2.103.0.tar.gz /work/SRC/openSUSE:Factory/.python-google-api-python-client.new.25432/google-api-python-client-2.111.0.tar.gz differ: char 5, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-auth-httplib2 for openSUSE:Factory checked in at 2023-12-17 21:32:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-auth-httplib2 (Old)
and /work/SRC/openSUSE:Factory/.python-google-auth-httplib2.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-auth-httplib2"
Sun Dec 17 21:32:21 2023 rev:6 rq:1133644 version:0.2.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-auth-httplib2/python-google-auth-httplib2.changes 2023-09-20 13:28:54.138027841 +0200
+++ /work/SRC/openSUSE:Factory/.python-google-auth-httplib2.new.25432/python-google-auth-httplib2.changes 2023-12-17 21:34:44.950869520 +0100
@@ -1,0 +2,8 @@
+Sat Dec 16 20:16:51 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 0.2.0:
+ * Add support for Python 3.12 (#126)
+ * Remove third-party mock library (#124)
+- drop python-google-auth-httplib2-no-mock.patch (upstream)
+
+-------------------------------------------------------------------
Old:
----
google-auth-httplib2-0.1.1.tar.gz
python-google-auth-httplib2-no-mock.patch
New:
----
google-auth-httplib2-0.2.0.tar.gz
BETA DEBUG BEGIN:
Old: * Remove third-party mock library (#124)
- drop python-google-auth-httplib2-no-mock.patch (upstream)
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-auth-httplib2.spec ++++++
--- /var/tmp/diff_new_pack.sONTgC/_old 2023-12-17 21:34:45.394885652 +0100
+++ /var/tmp/diff_new_pack.sONTgC/_new 2023-12-17 21:34:45.398885798 +0100
@@ -18,21 +18,20 @@
%{?sle15_python_module_pythons}
Name: python-google-auth-httplib2
-Version: 0.1.1
+Version: 0.2.0
Release: 0
Summary: Google Authentication Library: httplib2 transport
License: Apache-2.0
Group: Development/Languages/Python
URL: https://github.com/GoogleCloudPlatform/google-auth-library-python-httplib2
Source: https://files.pythonhosted.org/packages/source/g/google-auth-httplib2/googl…
-# https://github.com/googleapis/google-auth-library-python-httplib2/issues/68
-Patch0: python-google-auth-httplib2-no-mock.patch
BuildRequires: %{python_module Flask}
BuildRequires: %{python_module google-auth}
BuildRequires: %{python_module httplib2 >= 0.15.0}
+BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest-localserver}
BuildRequires: %{python_module pytest}
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-google-auth
@@ -47,10 +46,10 @@
%autosetup -p1 -n google-auth-httplib2-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@@ -59,6 +58,7 @@
%files %{python_files}
%license LICENSE
%doc README.rst
-%{python_sitelib}/__pycache__
-%{python_sitelib}/google_auth_httplib2*
+%{python_sitelib}/google_auth_httplib2.py
+%pycache_only %{python_sitelib}/__pycache__/google_auth_httplib*
+%{python_sitelib}/google_auth_httplib2-%{version}.dist-info
++++++ google-auth-httplib2-0.1.1.tar.gz -> google-auth-httplib2-0.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-auth-httplib2-0.1.1/PKG-INFO new/google-auth-httplib2-0.2.0/PKG-INFO
--- old/google-auth-httplib2-0.1.1/PKG-INFO 2023-09-11 21:16:43.542072800 +0200
+++ new/google-auth-httplib2-0.2.0/PKG-INFO 2023-12-12 18:40:11.814321300 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: google-auth-httplib2
-Version: 0.1.1
+Version: 0.2.0
Summary: Google Authentication Library: httplib2 transport
Home-page: https://github.com/GoogleCloudPlatform/google-auth-library-python-httplib2
Author: Google Cloud Platform
@@ -14,6 +14,7 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
@@ -23,6 +24,8 @@
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet :: WWW/HTTP
License-File: LICENSE
+Requires-Dist: google-auth
+Requires-Dist: httplib2>=0.19.0
``httplib2`` Transport for Google Auth
======================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-auth-httplib2-0.1.1/google_auth_httplib2.egg-info/PKG-INFO new/google-auth-httplib2-0.2.0/google_auth_httplib2.egg-info/PKG-INFO
--- old/google-auth-httplib2-0.1.1/google_auth_httplib2.egg-info/PKG-INFO 2023-09-11 21:16:43.000000000 +0200
+++ new/google-auth-httplib2-0.2.0/google_auth_httplib2.egg-info/PKG-INFO 2023-12-12 18:40:11.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: google-auth-httplib2
-Version: 0.1.1
+Version: 0.2.0
Summary: Google Authentication Library: httplib2 transport
Home-page: https://github.com/GoogleCloudPlatform/google-auth-library-python-httplib2
Author: Google Cloud Platform
@@ -14,6 +14,7 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
@@ -23,6 +24,8 @@
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet :: WWW/HTTP
License-File: LICENSE
+Requires-Dist: google-auth
+Requires-Dist: httplib2>=0.19.0
``httplib2`` Transport for Google Auth
======================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-auth-httplib2-0.1.1/setup.py new/google-auth-httplib2-0.2.0/setup.py
--- old/google-auth-httplib2-0.1.1/setup.py 2023-09-11 21:14:11.000000000 +0200
+++ new/google-auth-httplib2-0.2.0/setup.py 2023-12-12 18:37:08.000000000 +0100
@@ -16,7 +16,7 @@
from setuptools import setup
-version = "0.1.1"
+version = "0.2.0"
DEPENDENCIES = ["google-auth", "httplib2 >= 0.19.0"]
@@ -45,6 +45,7 @@
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-auth-httplib2-0.1.1/tests/test_google_auth_httplib2.py new/google-auth-httplib2-0.2.0/tests/test_google_auth_httplib2.py
--- old/google-auth-httplib2-0.1.1/tests/test_google_auth_httplib2.py 2023-09-11 21:14:11.000000000 +0200
+++ new/google-auth-httplib2-0.2.0/tests/test_google_auth_httplib2.py 2023-12-12 18:37:08.000000000 +0100
@@ -14,9 +14,9 @@
import http.client
import io
+from unittest import mock
import httplib2
-import mock
import google_auth_httplib2
from tests import compliance
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-cloud-speech for openSUSE:Factory checked in at 2023-12-17 21:32:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-cloud-speech (Old)
and /work/SRC/openSUSE:Factory/.python-google-cloud-speech.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-cloud-speech"
Sun Dec 17 21:32:20 2023 rev:15 rq:1133642 version:2.23.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-cloud-speech/python-google-cloud-speech.changes 2023-12-06 23:49:54.054933752 +0100
+++ /work/SRC/openSUSE:Factory/.python-google-cloud-speech.new.25432/python-google-cloud-speech.changes 2023-12-17 21:34:44.318846556 +0100
@@ -1,0 +2,9 @@
+Sat Dec 16 20:10:06 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.23.0:
+ * Add support for python 3.12
+ * Introduce compatibility with native namespace packages
+ * Require proto-plus >= 1.22.3 (e9655df)
+ * Use retry_async instead of retry in async client
+
+-------------------------------------------------------------------
Old:
----
google-cloud-speech-2.22.0.tar.gz
New:
----
google-cloud-speech-2.23.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-cloud-speech.spec ++++++
--- /var/tmp/diff_new_pack.XC4JO7/_old 2023-12-17 21:34:44.726861381 +0100
+++ /var/tmp/diff_new_pack.XC4JO7/_new 2023-12-17 21:34:44.726861381 +0100
@@ -16,9 +16,9 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
+%{?sle15_python_module_pythons}
Name: python-google-cloud-speech
-Version: 2.22.0
+Version: 2.23.0
Release: 0
Summary: Google Cloud Speech API client library
License: Apache-2.0
@@ -26,15 +26,16 @@
URL: https://github.com/googleapis/python-speech
Source: https://files.pythonhosted.org/packages/source/g/google-cloud-speech/google…
BuildRequires: %{python_module google-api-core >= 1.34.0}
-BuildRequires: %{python_module proto-plus >= 1.22.2}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module proto-plus >= 1.22.3}
BuildRequires: %{python_module protobuf >= 3.19.05}
BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module pytest}
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-google-api-core >= 1.34.0
-Requires: python-proto-plus >= 1.22.2
+Requires: python-proto-plus >= 1.22.3
Requires: python-protobuf >= 3.19.5
BuildArch: noarch
%python_subpackages
@@ -49,10 +50,10 @@
#rm tests/system/gapic/v1p1beta1/test_system_speech_v1p1beta1.py
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@@ -62,5 +63,8 @@
%exclude %{_bindir}/*.py
%license LICENSE
%doc README.rst
-%{python_sitelib}/*
+%{python_sitelib}/google/cloud/speech
+%{python_sitelib}/google/cloud/speech_v1*
+%{python_sitelib}/google/cloud/speech_v2
+%{python_sitelib}/google_cloud_speech-%{version}.dist-info
++++++ google-cloud-speech-2.22.0.tar.gz -> google-cloud-speech-2.23.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/PKG-INFO new/google-cloud-speech-2.23.0/PKG-INFO
--- old/google-cloud-speech-2.22.0/PKG-INFO 2023-11-02 12:20:26.785315000 +0100
+++ new/google-cloud-speech-2.23.0/PKG-INFO 2023-12-07 21:15:55.576730300 +0100
@@ -1,8 +1,8 @@
Metadata-Version: 2.1
Name: google-cloud-speech
-Version: 2.22.0
+Version: 2.23.0
Summary: Google Cloud Speech API client library
-Home-page: https://github.com/googleapis/google-cloud-python
+Home-page: https://github.com/googleapis/google-cloud-python/tree/main/packages/google…
Author: Google LLC
Author-email: googleapis-packages(a)google.com
License: Apache 2.0
@@ -17,10 +17,14 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
License-File: LICENSE
+Requires-Dist: google-api-core[grpc]!=2.0.*,!=2.1.*,!=2.10.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,<3.0.0dev,>=1.34.0
+Requires-Dist: proto-plus<2.0.0dev,>=1.22.3
+Requires-Dist: protobuf!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.19.5
Python Client for Cloud Speech
==============================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech/gapic_version.py new/google-cloud-speech-2.23.0/google/cloud/speech/gapic_version.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech/gapic_version.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech/gapic_version.py 2023-12-07 21:02:28.000000000 +0100
@@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-__version__ = "2.22.0" # {x-release-please-version}
+__version__ = "2.23.0" # {x-release-please-version}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v1/gapic_version.py new/google-cloud-speech-2.23.0/google/cloud/speech_v1/gapic_version.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v1/gapic_version.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v1/gapic_version.py 2023-12-07 21:02:28.000000000 +0100
@@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-__version__ = "2.22.0" # {x-release-please-version}
+__version__ = "2.23.0" # {x-release-please-version}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v1/services/adaptation/async_client.py new/google-cloud-speech-2.23.0/google/cloud/speech_v1/services/adaptation/async_client.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v1/services/adaptation/async_client.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v1/services/adaptation/async_client.py 2023-12-07 21:02:28.000000000 +0100
@@ -30,7 +30,7 @@
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
-from google.api_core import retry as retries
+from google.api_core import retry_async as retries
from google.api_core.client_options import ClientOptions
from google.auth import credentials as ga_credentials # type: ignore
from google.oauth2 import service_account # type: ignore
@@ -38,9 +38,9 @@
from google.cloud.speech_v1 import gapic_version as package_version
try:
- OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault]
+ OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault]
except AttributeError: # pragma: NO COVER
- OptionalRetry = Union[retries.Retry, object] # type: ignore
+ OptionalRetry = Union[retries.AsyncRetry, object] # type: ignore
from google.longrunning import operations_pb2 # type: ignore
from google.protobuf import field_mask_pb2 # type: ignore
@@ -298,7 +298,7 @@
This corresponds to the ``phrase_set_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -417,7 +417,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -533,7 +533,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -666,7 +666,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -773,7 +773,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -900,7 +900,7 @@
This corresponds to the ``custom_class_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1015,7 +1015,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1135,7 +1135,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1268,7 +1268,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1388,7 +1388,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1447,7 +1447,7 @@
request (:class:`~.operations_pb2.ListOperationsRequest`):
The request object. Request message for
`ListOperations` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1464,7 +1464,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.list_operations,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -1501,7 +1501,7 @@
request (:class:`~.operations_pb2.GetOperationRequest`):
The request object. Request message for
`GetOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1518,7 +1518,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.get_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v1/services/speech/async_client.py new/google-cloud-speech-2.23.0/google/cloud/speech_v1/services/speech/async_client.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v1/services/speech/async_client.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v1/services/speech/async_client.py 2023-12-07 21:02:28.000000000 +0100
@@ -33,7 +33,7 @@
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
-from google.api_core import retry as retries
+from google.api_core import retry_async as retries
from google.api_core.client_options import ClientOptions
from google.auth import credentials as ga_credentials # type: ignore
from google.oauth2 import service_account # type: ignore
@@ -41,9 +41,9 @@
from google.cloud.speech_v1 import gapic_version as package_version
try:
- OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault]
+ OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault]
except AttributeError: # pragma: NO COVER
- OptionalRetry = Union[retries.Retry, object] # type: ignore
+ OptionalRetry = Union[retries.AsyncRetry, object] # type: ignore
from google.api_core import operation # type: ignore
from google.api_core import operation_async # type: ignore
@@ -279,7 +279,7 @@
This corresponds to the ``audio`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -315,7 +315,7 @@
# and friendly error handling.
rpc = gapic_v1.method_async.wrap_method(
self._client._transport.recognize,
- default_retry=retries.Retry(
+ default_retry=retries.AsyncRetry(
initial=0.1,
maximum=60.0,
multiplier=1.3,
@@ -413,7 +413,7 @@
This corresponds to the ``audio`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -540,7 +540,7 @@
message and must not contain ``audio_content``. All
subsequent messages must contain ``audio_content`` and
must not contain a ``streaming_config`` message.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -615,7 +615,7 @@
# and friendly error handling.
rpc = gapic_v1.method_async.wrap_method(
self._client._transport.streaming_recognize,
- default_retry=retries.Retry(
+ default_retry=retries.AsyncRetry(
initial=0.1,
maximum=60.0,
multiplier=1.3,
@@ -654,7 +654,7 @@
request (:class:`~.operations_pb2.ListOperationsRequest`):
The request object. Request message for
`ListOperations` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -671,7 +671,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.list_operations,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -708,7 +708,7 @@
request (:class:`~.operations_pb2.GetOperationRequest`):
The request object. Request message for
`GetOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -725,7 +725,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.get_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v1p1beta1/gapic_version.py new/google-cloud-speech-2.23.0/google/cloud/speech_v1p1beta1/gapic_version.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v1p1beta1/gapic_version.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v1p1beta1/gapic_version.py 2023-12-07 21:02:28.000000000 +0100
@@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-__version__ = "2.22.0" # {x-release-please-version}
+__version__ = "2.23.0" # {x-release-please-version}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v1p1beta1/services/adaptation/async_client.py new/google-cloud-speech-2.23.0/google/cloud/speech_v1p1beta1/services/adaptation/async_client.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v1p1beta1/services/adaptation/async_client.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v1p1beta1/services/adaptation/async_client.py 2023-12-07 21:02:28.000000000 +0100
@@ -30,7 +30,7 @@
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
-from google.api_core import retry as retries
+from google.api_core import retry_async as retries
from google.api_core.client_options import ClientOptions
from google.auth import credentials as ga_credentials # type: ignore
from google.oauth2 import service_account # type: ignore
@@ -38,9 +38,9 @@
from google.cloud.speech_v1p1beta1 import gapic_version as package_version
try:
- OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault]
+ OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault]
except AttributeError: # pragma: NO COVER
- OptionalRetry = Union[retries.Retry, object] # type: ignore
+ OptionalRetry = Union[retries.AsyncRetry, object] # type: ignore
from google.longrunning import operations_pb2 # type: ignore
from google.protobuf import field_mask_pb2 # type: ignore
@@ -298,7 +298,7 @@
This corresponds to the ``phrase_set_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -417,7 +417,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -533,7 +533,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -666,7 +666,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -773,7 +773,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -900,7 +900,7 @@
This corresponds to the ``custom_class_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1015,7 +1015,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1135,7 +1135,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1268,7 +1268,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1388,7 +1388,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1447,7 +1447,7 @@
request (:class:`~.operations_pb2.ListOperationsRequest`):
The request object. Request message for
`ListOperations` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1464,7 +1464,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.list_operations,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -1501,7 +1501,7 @@
request (:class:`~.operations_pb2.GetOperationRequest`):
The request object. Request message for
`GetOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1518,7 +1518,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.get_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v1p1beta1/services/speech/async_client.py new/google-cloud-speech-2.23.0/google/cloud/speech_v1p1beta1/services/speech/async_client.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v1p1beta1/services/speech/async_client.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v1p1beta1/services/speech/async_client.py 2023-12-07 21:02:28.000000000 +0100
@@ -33,7 +33,7 @@
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
-from google.api_core import retry as retries
+from google.api_core import retry_async as retries
from google.api_core.client_options import ClientOptions
from google.auth import credentials as ga_credentials # type: ignore
from google.oauth2 import service_account # type: ignore
@@ -41,9 +41,9 @@
from google.cloud.speech_v1p1beta1 import gapic_version as package_version
try:
- OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault]
+ OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault]
except AttributeError: # pragma: NO COVER
- OptionalRetry = Union[retries.Retry, object] # type: ignore
+ OptionalRetry = Union[retries.AsyncRetry, object] # type: ignore
from google.api_core import operation # type: ignore
from google.api_core import operation_async # type: ignore
@@ -279,7 +279,7 @@
This corresponds to the ``audio`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -315,7 +315,7 @@
# and friendly error handling.
rpc = gapic_v1.method_async.wrap_method(
self._client._transport.recognize,
- default_retry=retries.Retry(
+ default_retry=retries.AsyncRetry(
initial=0.1,
maximum=60.0,
multiplier=1.3,
@@ -413,7 +413,7 @@
This corresponds to the ``audio`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -540,7 +540,7 @@
message and must not contain ``audio_content``. All
subsequent messages must contain ``audio_content`` and
must not contain a ``streaming_config`` message.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -615,7 +615,7 @@
# and friendly error handling.
rpc = gapic_v1.method_async.wrap_method(
self._client._transport.streaming_recognize,
- default_retry=retries.Retry(
+ default_retry=retries.AsyncRetry(
initial=0.1,
maximum=60.0,
multiplier=1.3,
@@ -654,7 +654,7 @@
request (:class:`~.operations_pb2.ListOperationsRequest`):
The request object. Request message for
`ListOperations` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -671,7 +671,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.list_operations,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -708,7 +708,7 @@
request (:class:`~.operations_pb2.GetOperationRequest`):
The request object. Request message for
`GetOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -725,7 +725,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.get_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v2/gapic_version.py new/google-cloud-speech-2.23.0/google/cloud/speech_v2/gapic_version.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v2/gapic_version.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v2/gapic_version.py 2023-12-07 21:02:28.000000000 +0100
@@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-__version__ = "2.22.0" # {x-release-please-version}
+__version__ = "2.23.0" # {x-release-please-version}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google/cloud/speech_v2/services/speech/async_client.py new/google-cloud-speech-2.23.0/google/cloud/speech_v2/services/speech/async_client.py
--- old/google-cloud-speech-2.22.0/google/cloud/speech_v2/services/speech/async_client.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google/cloud/speech_v2/services/speech/async_client.py 2023-12-07 21:02:28.000000000 +0100
@@ -33,7 +33,7 @@
from google.api_core import exceptions as core_exceptions
from google.api_core import gapic_v1
-from google.api_core import retry as retries
+from google.api_core import retry_async as retries
from google.api_core.client_options import ClientOptions
from google.auth import credentials as ga_credentials # type: ignore
from google.oauth2 import service_account # type: ignore
@@ -41,9 +41,9 @@
from google.cloud.speech_v2 import gapic_version as package_version
try:
- OptionalRetry = Union[retries.Retry, gapic_v1.method._MethodDefault]
+ OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault]
except AttributeError: # pragma: NO COVER
- OptionalRetry = Union[retries.Retry, object] # type: ignore
+ OptionalRetry = Union[retries.AsyncRetry, object] # type: ignore
from google.api_core import operation # type: ignore
from google.api_core import operation_async # type: ignore
@@ -298,7 +298,7 @@
This corresponds to the ``recognizer_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -419,7 +419,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -539,7 +539,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -657,7 +657,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -780,7 +780,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -900,7 +900,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1085,7 +1085,7 @@
This corresponds to the ``uri`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1227,7 +1227,7 @@
All subsequent messages must only have
[audio][google.cloud.speech.v2.StreamingRecognizeRequest.audio]
set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1418,7 +1418,7 @@
This corresponds to the ``files`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1543,7 +1543,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1656,7 +1656,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1787,7 +1787,7 @@
This corresponds to the ``custom_class_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -1908,7 +1908,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2026,7 +2026,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2148,7 +2148,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2271,7 +2271,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2391,7 +2391,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2528,7 +2528,7 @@
This corresponds to the ``phrase_set_id`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2648,7 +2648,7 @@
This corresponds to the ``parent`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2766,7 +2766,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -2887,7 +2887,7 @@
This corresponds to the ``update_mask`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3009,7 +3009,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3127,7 +3127,7 @@
This corresponds to the ``name`` field
on the ``request`` instance; if ``request`` is provided, this
should not be set.
- retry (google.api_core.retry.Retry): Designation of what errors, if any,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3206,7 +3206,7 @@
request (:class:`~.operations_pb2.ListOperationsRequest`):
The request object. Request message for
`ListOperations` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3223,7 +3223,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.list_operations,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -3260,7 +3260,7 @@
request (:class:`~.operations_pb2.GetOperationRequest`):
The request object. Request message for
`GetOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3277,7 +3277,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.get_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -3319,7 +3319,7 @@
request (:class:`~.operations_pb2.DeleteOperationRequest`):
The request object. Request message for
`DeleteOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3335,7 +3335,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.delete_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -3373,7 +3373,7 @@
request (:class:`~.operations_pb2.CancelOperationRequest`):
The request object. Request message for
`CancelOperation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3389,7 +3389,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.cancel_operation,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -3423,7 +3423,7 @@
request (:class:`~.location_pb2.GetLocationRequest`):
The request object. Request message for
`GetLocation` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3440,7 +3440,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.get_location,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
@@ -3477,7 +3477,7 @@
request (:class:`~.location_pb2.ListLocationsRequest`):
The request object. Request message for
`ListLocations` method.
- retry (google.api_core.retry.Retry): Designation of what errors,
+ retry (google.api_core.retry_async.AsyncRetry): Designation of what errors,
if any, should be retried.
timeout (float): The timeout for this request.
metadata (Sequence[Tuple[str, str]]): Strings which should be
@@ -3494,7 +3494,7 @@
# Wrap the RPC method; this adds retry and timeout information,
# and friendly error handling.
- rpc = gapic_v1.method.wrap_method(
+ rpc = gapic_v1.method_async.wrap_method(
self._client._transport.list_locations,
default_timeout=None,
client_info=DEFAULT_CLIENT_INFO,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/PKG-INFO new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/PKG-INFO
--- old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/PKG-INFO 2023-11-02 12:20:26.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/PKG-INFO 2023-12-07 21:15:55.000000000 +0100
@@ -1,8 +1,8 @@
Metadata-Version: 2.1
Name: google-cloud-speech
-Version: 2.22.0
+Version: 2.23.0
Summary: Google Cloud Speech API client library
-Home-page: https://github.com/googleapis/google-cloud-python
+Home-page: https://github.com/googleapis/google-cloud-python/tree/main/packages/google…
Author: Google LLC
Author-email: googleapis-packages(a)google.com
License: Apache 2.0
@@ -17,10 +17,14 @@
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
License-File: LICENSE
+Requires-Dist: google-api-core[grpc]!=2.0.*,!=2.1.*,!=2.10.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,<3.0.0dev,>=1.34.0
+Requires-Dist: proto-plus<2.0.0dev,>=1.22.3
+Requires-Dist: protobuf!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.19.5
Python Client for Cloud Speech
==============================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/SOURCES.txt new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/SOURCES.txt
--- old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/SOURCES.txt 2023-11-02 12:20:26.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/SOURCES.txt 2023-12-07 21:15:55.000000000 +0100
@@ -78,7 +78,6 @@
google_cloud_speech.egg-info/PKG-INFO
google_cloud_speech.egg-info/SOURCES.txt
google_cloud_speech.egg-info/dependency_links.txt
-google_cloud_speech.egg-info/namespace_packages.txt
google_cloud_speech.egg-info/not-zip-safe
google_cloud_speech.egg-info/requires.txt
google_cloud_speech.egg-info/top_level.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/namespace_packages.txt new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/namespace_packages.txt
--- old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/namespace_packages.txt 2023-11-02 12:20:26.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/namespace_packages.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-google
-google.cloud
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/requires.txt new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/requires.txt
--- old/google-cloud-speech-2.22.0/google_cloud_speech.egg-info/requires.txt 2023-11-02 12:20:26.000000000 +0100
+++ new/google-cloud-speech-2.23.0/google_cloud_speech.egg-info/requires.txt 2023-12-07 21:15:55.000000000 +0100
@@ -1,6 +1,3 @@
google-api-core[grpc]!=2.0.*,!=2.1.*,!=2.10.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,<3.0.0dev,>=1.34.0
-proto-plus<2.0.0dev,>=1.22.0
+proto-plus<2.0.0dev,>=1.22.3
protobuf!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.19.5
-
-[:python_version >= "3.11"]
-proto-plus<2.0.0dev,>=1.22.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/setup.py new/google-cloud-speech-2.23.0/setup.py
--- old/google-cloud-speech-2.22.0/setup.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/setup.py 2023-12-07 21:02:28.000000000 +0100
@@ -15,6 +15,7 @@
#
import io
import os
+import re
import setuptools # type: ignore
@@ -25,10 +26,12 @@
description = "Google Cloud Speech API client library"
-version = {}
+version = None
+
with open(os.path.join(package_root, "google/cloud/speech/gapic_version.py")) as fp:
- exec(fp.read(), version)
-version = version["__version__"]
+ version_candidates = re.findall(r"(?<=\")\d+.\d+.\d+(?=\")", fp.read())
+ assert len(version_candidates) == 1
+ version = version_candidates[0]
if version[0] == "0":
release_status = "Development Status :: 4 - Beta"
@@ -37,11 +40,10 @@
dependencies = [
"google-api-core[grpc] >= 1.34.0, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.*,!=2.4.*,!=2.5.*,!=2.6.*,!=2.7.*,!=2.8.*,!=2.9.*,!=2.10.*",
- "proto-plus >= 1.22.0, <2.0.0dev",
- "proto-plus >= 1.22.2, <2.0.0dev; python_version>='3.11'",
+ "proto-plus >= 1.22.3, <2.0.0dev",
"protobuf>=3.19.5,<5.0.0dev,!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5",
]
-url = "https://github.com/googleapis/google-cloud-python"
+url = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google…"
package_root = os.path.abspath(os.path.dirname(__file__))
@@ -51,12 +53,10 @@
packages = [
package
- for package in setuptools.PEP420PackageFinder.find()
+ for package in setuptools.find_namespace_packages()
if package.startswith("google")
]
-namespaces = ["google", "google.cloud"]
-
setuptools.setup(
name=name,
version=version,
@@ -77,13 +77,13 @@
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Topic :: Internet",
],
platforms="Posix; MacOS X; Windows",
packages=packages,
python_requires=">=3.7",
- namespace_packages=namespaces,
install_requires=dependencies,
include_package_data=True,
zip_safe=False,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1/test_adaptation.py new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1/test_adaptation.py
--- old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1/test_adaptation.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1/test_adaptation.py 2023-12-07 21:02:28.000000000 +0100
@@ -7475,7 +7475,7 @@
@pytest.mark.asyncio
-async def test_get_operation_async(transport: str = "grpc"):
+async def test_get_operation_async(transport: str = "grpc_asyncio"):
client = AdaptationAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -7620,7 +7620,7 @@
@pytest.mark.asyncio
-async def test_list_operations_async(transport: str = "grpc"):
+async def test_list_operations_async(transport: str = "grpc_asyncio"):
client = AdaptationAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1/test_speech.py new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1/test_speech.py
--- old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1/test_speech.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1/test_speech.py 2023-12-07 21:02:28.000000000 +0100
@@ -2618,7 +2618,7 @@
@pytest.mark.asyncio
-async def test_get_operation_async(transport: str = "grpc"):
+async def test_get_operation_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -2763,7 +2763,7 @@
@pytest.mark.asyncio
-async def test_list_operations_async(transport: str = "grpc"):
+async def test_list_operations_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py
--- old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1p1beta1/test_adaptation.py 2023-12-07 21:02:28.000000000 +0100
@@ -7479,7 +7479,7 @@
@pytest.mark.asyncio
-async def test_get_operation_async(transport: str = "grpc"):
+async def test_get_operation_async(transport: str = "grpc_asyncio"):
client = AdaptationAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -7624,7 +7624,7 @@
@pytest.mark.asyncio
-async def test_list_operations_async(transport: str = "grpc"):
+async def test_list_operations_async(transport: str = "grpc_asyncio"):
client = AdaptationAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1p1beta1/test_speech.py new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1p1beta1/test_speech.py
--- old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v1p1beta1/test_speech.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v1p1beta1/test_speech.py 2023-12-07 21:02:28.000000000 +0100
@@ -2618,7 +2618,7 @@
@pytest.mark.asyncio
-async def test_get_operation_async(transport: str = "grpc"):
+async def test_get_operation_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -2763,7 +2763,7 @@
@pytest.mark.asyncio
-async def test_list_operations_async(transport: str = "grpc"):
+async def test_list_operations_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v2/test_speech.py new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v2/test_speech.py
--- old/google-cloud-speech-2.22.0/tests/unit/gapic/speech_v2/test_speech.py 2023-11-02 12:15:57.000000000 +0100
+++ new/google-cloud-speech-2.23.0/tests/unit/gapic/speech_v2/test_speech.py 2023-12-07 21:02:28.000000000 +0100
@@ -15190,7 +15190,7 @@
@pytest.mark.asyncio
-async def test_delete_operation_async(transport: str = "grpc"):
+async def test_delete_operation_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -15329,7 +15329,7 @@
@pytest.mark.asyncio
-async def test_cancel_operation_async(transport: str = "grpc"):
+async def test_cancel_operation_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -15468,7 +15468,7 @@
@pytest.mark.asyncio
-async def test_get_operation_async(transport: str = "grpc"):
+async def test_get_operation_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -15613,7 +15613,7 @@
@pytest.mark.asyncio
-async def test_list_operations_async(transport: str = "grpc"):
+async def test_list_operations_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
@@ -15758,7 +15758,7 @@
@pytest.mark.asyncio
-async def test_list_locations_async(transport: str = "grpc"):
+async def test_list_locations_async(transport: str = "grpc_asyncio"):
client = SpeechAsyncClient(
credentials=ga_credentials.AnonymousCredentials(),
transport=transport,
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-google-cloud-core for openSUSE:Factory checked in at 2023-12-17 21:32:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-google-cloud-core (Old)
and /work/SRC/openSUSE:Factory/.python-google-cloud-core.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-cloud-core"
Sun Dec 17 21:32:16 2023 rev:14 rq:1133638 version:2.4.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-google-cloud-core/python-google-cloud-core.changes 2023-07-18 22:09:29.387446999 +0200
+++ /work/SRC/openSUSE:Factory/.python-google-cloud-core.new.25432/python-google-cloud-core.changes 2023-12-17 21:34:42.414777374 +0100
@@ -1,0 +2,9 @@
+Sat Dec 16 19:44:57 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.4.1:
+ * Fix regression with `google.cloud._helpers._NOW` (#266)
+ * Add support for Python 3.12 (#256)
+ * Introduce compatibility with native namespace packages (#260)
+- switch to new python stack for SLE15
+
+-------------------------------------------------------------------
Old:
----
google-cloud-core-2.3.3.tar.gz
New:
----
google-cloud-core-2.4.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-google-cloud-core.spec ++++++
--- /var/tmp/diff_new_pack.o7mknU/_old 2023-12-17 21:34:42.858793507 +0100
+++ /var/tmp/diff_new_pack.o7mknU/_new 2023-12-17 21:34:42.858793507 +0100
@@ -16,33 +16,27 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%bcond_without python2
+%{?sle15_python_module_pythons}
Name: python-google-cloud-core
-Version: 2.3.3
+Version: 2.4.1
Release: 0
Summary: Google Cloud API client core library
License: Apache-2.0
URL: https://github.com/googleapis/python-cloud-core
Source: https://files.pythonhosted.org/packages/source/g/google-cloud-core/google-c…
+BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module google-api-core >= 1.31.6}
BuildRequires: %{python_module google-auth >= 1.25.0}
BuildRequires: %{python_module grpcio >= 1.38.0}
+BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-google-api-core >= 1.31.6
Requires: python-google-auth >= 1.25.0
-Requires: python-six >= 1.12.0
Recommends: python-grpcio >= 1.38.0
BuildArch: noarch
-%if %{with python2}
-BuildRequires: python-futures
-%endif
-%ifpython2
-Requires: python-futures >= 3.2.0
-%endif
%python_subpackages
%description
@@ -55,10 +49,10 @@
%setup -q -n google-cloud-core-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@@ -68,5 +62,6 @@
%files %{python_files}
%license LICENSE
%doc README.rst
-%{python_sitelib}/*
+%{python_sitelib}/google/cloud
+%{python_sitelib}/google_cloud_core-%{version}.dist-info
++++++ google-cloud-core-2.3.3.tar.gz -> google-cloud-core-2.4.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/MANIFEST.in new/google-cloud-core-2.4.1/MANIFEST.in
--- old/google-cloud-core-2.3.3/MANIFEST.in 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/MANIFEST.in 2023-12-07 22:09:35.000000000 +0100
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2020 Google LLC
+# Copyright 2023 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/PKG-INFO new/google-cloud-core-2.4.1/PKG-INFO
--- old/google-cloud-core-2.3.3/PKG-INFO 2023-07-05 21:44:31.220204400 +0200
+++ new/google-cloud-core-2.4.1/PKG-INFO 2023-12-07 22:12:28.777151300 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: google-cloud-core
-Version: 2.3.3
+Version: 2.4.1
Summary: Google Cloud API client core library
Home-page: https://github.com/googleapis/python-cloud-core
Author: Google LLC
@@ -16,11 +16,18 @@
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
-Provides-Extra: grpc
License-File: LICENSE
+Requires-Dist: google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.6
+Requires-Dist: google-auth<3.0dev,>=1.25.0
+Requires-Dist: importlib-metadata>1.0.0; python_version < "3.8"
+Provides-Extra: grpc
+Requires-Dist: grpcio<2.0dev,>=1.38.0; extra == "grpc"
+Requires-Dist: grpcio-status<2.0.dev0,>=1.38.0; extra == "grpc"
Core Helpers for Google Cloud Python Client Library
===================================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google/__init__.py new/google-cloud-core-2.4.1/google/__init__.py
--- old/google-cloud-core-2.3.3/google/__init__.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/google/__init__.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,24 +0,0 @@
-# Copyright 2016 Google LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Google namespace package."""
-
-try:
- import pkg_resources
-
- pkg_resources.declare_namespace(__name__)
-except ImportError:
- import pkgutil
-
- __path__ = pkgutil.extend_path(__path__, __name__) # type: ignore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google/cloud/__init__.py new/google-cloud-core-2.4.1/google/cloud/__init__.py
--- old/google-cloud-core-2.3.3/google/cloud/__init__.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/google/cloud/__init__.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,24 +0,0 @@
-# Copyright 2016 Google LLC
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""Google Cloud namespace package."""
-
-try:
- import pkg_resources
-
- pkg_resources.declare_namespace(__name__)
-except ImportError:
- import pkgutil
-
- __path__ = pkgutil.extend_path(__path__, __name__) # type: ignore
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google/cloud/_helpers/__init__.py new/google-cloud-core-2.4.1/google/cloud/_helpers/__init__.py
--- old/google-cloud-core-2.3.3/google/cloud/_helpers/__init__.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/google/cloud/_helpers/__init__.py 2023-12-07 22:09:35.000000000 +0100
@@ -38,8 +38,8 @@
except ImportError: # pragma: NO COVER
grpc = None
-
-_NOW = datetime.datetime.utcnow # To be replaced by tests.
+# `google.cloud._helpers._NOW` is deprecated
+_NOW = datetime.datetime.utcnow
UTC = datetime.timezone.utc # Singleton instance to be used throughout.
_EPOCH = datetime.datetime(1970, 1, 1, tzinfo=datetime.timezone.utc)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google/cloud/_testing/__init__.py new/google-cloud-core-2.4.1/google/cloud/_testing/__init__.py
--- old/google-cloud-core-2.3.3/google/cloud/_testing/__init__.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/google/cloud/_testing/__init__.py 2023-12-07 22:09:35.000000000 +0100
@@ -76,7 +76,6 @@
class _GAXBaseAPI(object):
-
_random_gax_error = False
def __init__(self, **kw):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google/cloud/obsolete/__init__.py new/google-cloud-core-2.4.1/google/cloud/obsolete/__init__.py
--- old/google-cloud-core-2.3.3/google/cloud/obsolete/__init__.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/google/cloud/obsolete/__init__.py 2023-12-07 22:09:35.000000000 +0100
@@ -14,9 +14,14 @@
"""Helpers for deprecated code and modules."""
+import sys
import warnings
-import pkg_resources
+
+if sys.version_info < (3, 8):
+ import importlib_metadata as metadata
+else:
+ import importlib.metadata as metadata
def complain(distribution_name):
@@ -29,7 +34,7 @@
distribution_name (str): The name of the obsolete distribution.
"""
try:
- pkg_resources.get_distribution(distribution_name)
+ metadata.distribution(distribution_name)
warnings.warn(
"The {pkg} distribution is now obsolete. "
"Please `pip uninstall {pkg}`. "
@@ -38,5 +43,5 @@
),
DeprecationWarning,
)
- except pkg_resources.DistributionNotFound:
+ except metadata.PackageNotFoundError:
pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google/cloud/version.py new/google-cloud-core-2.4.1/google/cloud/version.py
--- old/google-cloud-core-2.3.3/google/cloud/version.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/google/cloud/version.py 2023-12-07 22:09:35.000000000 +0100
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "2.3.3"
+__version__ = "2.4.1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google_cloud_core.egg-info/PKG-INFO new/google-cloud-core-2.4.1/google_cloud_core.egg-info/PKG-INFO
--- old/google-cloud-core-2.3.3/google_cloud_core.egg-info/PKG-INFO 2023-07-05 21:44:31.000000000 +0200
+++ new/google-cloud-core-2.4.1/google_cloud_core.egg-info/PKG-INFO 2023-12-07 22:12:28.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: google-cloud-core
-Version: 2.3.3
+Version: 2.4.1
Summary: Google Cloud API client core library
Home-page: https://github.com/googleapis/python-cloud-core
Author: Google LLC
@@ -16,11 +16,18 @@
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Internet
Requires-Python: >=3.7
-Provides-Extra: grpc
License-File: LICENSE
+Requires-Dist: google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.6
+Requires-Dist: google-auth<3.0dev,>=1.25.0
+Requires-Dist: importlib-metadata>1.0.0; python_version < "3.8"
+Provides-Extra: grpc
+Requires-Dist: grpcio<2.0dev,>=1.38.0; extra == "grpc"
+Requires-Dist: grpcio-status<2.0.dev0,>=1.38.0; extra == "grpc"
Core Helpers for Google Cloud Python Client Library
===================================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google_cloud_core.egg-info/SOURCES.txt new/google-cloud-core-2.4.1/google_cloud_core.egg-info/SOURCES.txt
--- old/google-cloud-core-2.3.3/google_cloud_core.egg-info/SOURCES.txt 2023-07-05 21:44:31.000000000 +0200
+++ new/google-cloud-core-2.4.1/google_cloud_core.egg-info/SOURCES.txt 2023-12-07 22:12:28.000000000 +0100
@@ -3,8 +3,6 @@
README.rst
setup.cfg
setup.py
-google/__init__.py
-google/cloud/__init__.py
google/cloud/version.py
google/cloud/_helpers/__init__.py
google/cloud/_helpers/py.typed
@@ -25,7 +23,6 @@
google_cloud_core.egg-info/PKG-INFO
google_cloud_core.egg-info/SOURCES.txt
google_cloud_core.egg-info/dependency_links.txt
-google_cloud_core.egg-info/namespace_packages.txt
google_cloud_core.egg-info/not-zip-safe
google_cloud_core.egg-info/requires.txt
google_cloud_core.egg-info/top_level.txt
@@ -35,4 +32,5 @@
tests/unit/test__http.py
tests/unit/test_client.py
tests/unit/test_obsolete.py
-tests/unit/test_operation.py
\ No newline at end of file
+tests/unit/test_operation.py
+tests/unit/test_packaging.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google_cloud_core.egg-info/namespace_packages.txt new/google-cloud-core-2.4.1/google_cloud_core.egg-info/namespace_packages.txt
--- old/google-cloud-core-2.3.3/google_cloud_core.egg-info/namespace_packages.txt 2023-07-05 21:44:31.000000000 +0200
+++ new/google-cloud-core-2.4.1/google_cloud_core.egg-info/namespace_packages.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-google
-google.cloud
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/google_cloud_core.egg-info/requires.txt new/google-cloud-core-2.4.1/google_cloud_core.egg-info/requires.txt
--- old/google-cloud-core-2.3.3/google_cloud_core.egg-info/requires.txt 2023-07-05 21:44:31.000000000 +0200
+++ new/google-cloud-core-2.4.1/google_cloud_core.egg-info/requires.txt 2023-12-07 22:12:28.000000000 +0100
@@ -1,5 +1,9 @@
google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.6
google-auth<3.0dev,>=1.25.0
+[:python_version < "3.8"]
+importlib-metadata>1.0.0
+
[grpc]
grpcio<2.0dev,>=1.38.0
+grpcio-status<2.0.dev0,>=1.38.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/setup.py new/google-cloud-core-2.4.1/setup.py
--- old/google-cloud-core-2.3.3/setup.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/setup.py 2023-12-07 22:09:35.000000000 +0100
@@ -30,9 +30,14 @@
dependencies = [
"google-api-core >= 1.31.6, <3.0.0dev,!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0",
"google-auth >= 1.25.0, < 3.0dev",
+ "importlib-metadata > 1.0.0; python_version<'3.8'",
]
-extras = {"grpc": "grpcio >= 1.38.0, < 2.0dev"}
-
+extras = {
+ "grpc": [
+ "grpcio >= 1.38.0, < 2.0dev",
+ "grpcio-status >= 1.38.0, < 2.0.dev0",
+ ],
+}
# Setup boilerplate below this line.
@@ -50,15 +55,11 @@
# Only include packages under the 'google' namespace. Do not include tests,
# benchmarks, etc.
packages = [
- package for package in setuptools.find_packages() if package.startswith("google")
+ package
+ for package in setuptools.find_namespace_packages()
+ if package.startswith("google")
]
-# Determine which namespaces are needed.
-namespaces = ["google"]
-if "google.cloud" in packages:
- namespaces.append("google.cloud")
-
-
setuptools.setup(
name=name,
version=version,
@@ -78,12 +79,13 @@
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Topic :: Internet",
],
platforms="Posix; MacOS X; Windows",
packages=packages,
- namespace_packages=namespaces,
install_requires=dependencies,
extras_require=extras,
python_requires=">=3.7",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/tests/unit/test__helpers.py new/google-cloud-core-2.4.1/tests/unit/test__helpers.py
--- old/google-cloud-core-2.3.3/tests/unit/test__helpers.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/tests/unit/test__helpers.py 2023-12-07 22:09:35.000000000 +0100
@@ -138,7 +138,7 @@
from google.cloud._helpers import UTC
from google.cloud._helpers import _microseconds_from_datetime
- NOW = datetime.datetime.utcnow().replace(tzinfo=UTC)
+ NOW = datetime.datetime.now().replace(tzinfo=UTC)
NOW_MICROS = _microseconds_from_datetime(NOW)
MILLIS = NOW_MICROS // 1000
result = self._call_fut(NOW)
@@ -163,7 +163,7 @@
from google.cloud._helpers import UTC
from google.cloud._helpers import _microseconds_from_datetime
- NOW = datetime.datetime.utcnow()
+ NOW = datetime.datetime.now(datetime.timezone.utc).replace(tzinfo=None)
UTC_NOW = NOW.replace(tzinfo=UTC)
UTC_NOW_MICROS = _microseconds_from_datetime(UTC_NOW)
MILLIS = UTC_NOW_MICROS // 1000
@@ -672,7 +672,6 @@
class Test__name_from_project_path(unittest.TestCase):
-
PROJECT = "PROJECT"
THING_NAME = "THING_NAME"
TEMPLATE = r"projects/(?P<project>\w+)/things/(?P<name>\w+)"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/tests/unit/test_operation.py new/google-cloud-core-2.4.1/tests/unit/test_operation.py
--- old/google-cloud-core-2.3.3/tests/unit/test_operation.py 2023-07-05 21:41:57.000000000 +0200
+++ new/google-cloud-core-2.4.1/tests/unit/test_operation.py 2023-12-07 22:09:35.000000000 +0100
@@ -103,7 +103,6 @@
class TestOperation(unittest.TestCase):
-
OPERATION_NAME = "operations/projects/foo/instances/bar/operations/123"
@staticmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google-cloud-core-2.3.3/tests/unit/test_packaging.py new/google-cloud-core-2.4.1/tests/unit/test_packaging.py
--- old/google-cloud-core-2.3.3/tests/unit/test_packaging.py 1970-01-01 01:00:00.000000000 +0100
+++ new/google-cloud-core-2.4.1/tests/unit/test_packaging.py 2023-12-07 22:09:35.000000000 +0100
@@ -0,0 +1,37 @@
+# Copyright 2023 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import os
+import subprocess
+import sys
+
+
+def test_namespace_package_compat(tmp_path):
+ # The ``google`` namespace package should not be masked
+ # by the presence of ``google-cloud-core``.
+ google = tmp_path / "google"
+ google.mkdir()
+ google.joinpath("othermod.py").write_text("")
+ env = dict(os.environ, PYTHONPATH=str(tmp_path))
+ cmd = [sys.executable, "-m", "google.othermod"]
+ subprocess.check_call(cmd, env=env)
+
+ # The ``google.cloud`` namespace package should not be masked
+ # by the presence of ``google-cloud-core``.
+ google_cloud = tmp_path / "google" / "cloud"
+ google_cloud.mkdir()
+ google_cloud.joinpath("othermod.py").write_text("")
+ env = dict(os.environ, PYTHONPATH=str(tmp_path))
+ cmd = [sys.executable, "-m", "google.cloud.othermod"]
+ subprocess.check_call(cmd, env=env)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package virtme for openSUSE:Factory checked in at 2023-12-17 21:32:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virtme (Old)
and /work/SRC/openSUSE:Factory/.virtme.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "virtme"
Sun Dec 17 21:32:13 2023 rev:8 rq:1133629 version:1.18
Changes:
--------
--- /work/SRC/openSUSE:Factory/virtme/virtme.changes 2023-11-30 22:05:15.297934151 +0100
+++ /work/SRC/openSUSE:Factory/.virtme.new.25432/virtme.changes 2023-12-17 21:34:40.974725051 +0100
@@ -1,0 +2,5 @@
+Wed Dec 13 09:36:30 UTC 2023 - Robert Frohl <rfrohl(a)suse.com>
+
+- Require qemu-tools instead virtiofsd for older SLE/Leap versions
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ virtme.spec ++++++
--- /var/tmp/diff_new_pack.0LVgwN/_old 2023-12-17 21:34:41.470743074 +0100
+++ /var/tmp/diff_new_pack.0LVgwN/_new 2023-12-17 21:34:41.470743074 +0100
@@ -33,7 +33,11 @@
BuildRequires: python-rpm-macros
Requires: busybox-static
Requires: qemu
+%if 0%{?suse_version} == 1500 && 0%{?sle_version} <= 150500
+Requires: qemu-tools
+%else
Requires: virtiofsd
+%endif
BuildArch: noarch
%description
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-imageio for openSUSE:Factory checked in at 2023-12-17 21:32:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-imageio (Old)
and /work/SRC/openSUSE:Factory/.python-imageio.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-imageio"
Sun Dec 17 21:32:09 2023 rev:16 rq:1133613 version:2.33.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-imageio/python-imageio.changes 2023-11-27 22:45:27.834456874 +0100
+++ /work/SRC/openSUSE:Factory/.python-imageio.new.25432/python-imageio.changes 2023-12-17 21:34:39.590674763 +0100
@@ -1,0 +2,7 @@
+Sat Dec 16 18:59:15 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.33.1:
+ * Replace mktemp with mkstemp when caching to disk for legacy
+ plugins
+
+-------------------------------------------------------------------
Old:
----
imageio-2.33.0.tar.gz
New:
----
imageio-2.33.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-imageio.spec ++++++
--- /var/tmp/diff_new_pack.5znmB8/_old 2023-12-17 21:34:40.034690896 +0100
+++ /var/tmp/diff_new_pack.5znmB8/_new 2023-12-17 21:34:40.034690896 +0100
@@ -19,7 +19,7 @@
%bcond_with test_extras
%{?sle15_python_module_pythons}
Name: python-imageio
-Version: 2.33.0
+Version: 2.33.1
Release: 0
Summary: Python library for reading and writing image, video, and related formats
License: BSD-2-Clause
++++++ imageio-2.33.0.tar.gz -> imageio-2.33.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/imageio-2.33.0/PKG-INFO new/imageio-2.33.1/PKG-INFO
--- old/imageio-2.33.0/PKG-INFO 2023-11-20 03:26:13.583969000 +0100
+++ new/imageio-2.33.1/PKG-INFO 2023-12-11 03:26:42.100135000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: imageio
-Version: 2.33.0
+Version: 2.33.1
Summary: Library for reading and writing a wide range of image, video, scientific, and volumetric data formats.
Home-page: https://github.com/imageio/imageio
Download-URL: http://pypi.python.org/pypi/imageio
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/imageio-2.33.0/imageio/__init__.py new/imageio-2.33.1/imageio/__init__.py
--- old/imageio-2.33.0/imageio/__init__.py 2023-11-20 03:26:07.000000000 +0100
+++ new/imageio-2.33.1/imageio/__init__.py 2023-12-11 03:26:35.000000000 +0100
@@ -16,7 +16,7 @@
# flake8: noqa
-__version__ = "2.33.0"
+__version__ = "2.33.1"
import warnings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/imageio-2.33.0/imageio/core/request.py new/imageio-2.33.1/imageio/core/request.py
--- old/imageio-2.33.0/imageio/core/request.py 2023-11-20 03:26:06.000000000 +0100
+++ new/imageio-2.33.1/imageio/core/request.py 2023-12-11 03:26:34.000000000 +0100
@@ -529,7 +529,8 @@
ext = self.extension
else:
ext = os.path.splitext(self._filename)[1]
- self._filename_local = tempfile.mktemp(ext, "imageio_")
+ fd, self._filename_local = tempfile.mkstemp(ext, "imageio_")
+ os.close(fd)
# Write stuff to it?
if self.mode.io_mode == IOMode.read:
with open(self._filename_local, "wb") as file:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/imageio-2.33.0/imageio/plugins/pillowmulti.py new/imageio-2.33.1/imageio/plugins/pillowmulti.py
--- old/imageio-2.33.0/imageio/plugins/pillowmulti.py 2023-11-20 03:26:06.000000000 +0100
+++ new/imageio-2.33.1/imageio/plugins/pillowmulti.py 2023-12-11 03:26:34.000000000 +0100
@@ -42,8 +42,8 @@
if major == 10 and minor >= 1:
raise ImportError(
f"Pillow v{pillow_version} is not supported by ImageIO's legacy "
- "pillow plugin when writing GIF. Consider using to the new "
- "plugin or downgrade to `pillow<10.1.0`."
+ "pillow plugin when writing GIFs. Consider switching to the new "
+ "plugin or downgrading to `pillow<10.1.0`."
)
# Check palettesize
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/imageio-2.33.0/imageio.egg-info/PKG-INFO new/imageio-2.33.1/imageio.egg-info/PKG-INFO
--- old/imageio-2.33.0/imageio.egg-info/PKG-INFO 2023-11-20 03:26:13.000000000 +0100
+++ new/imageio-2.33.1/imageio.egg-info/PKG-INFO 2023-12-11 03:26:42.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: imageio
-Version: 2.33.0
+Version: 2.33.1
Summary: Library for reading and writing a wide range of image, video, scientific, and volumetric data formats.
Home-page: https://github.com/imageio/imageio
Download-URL: http://pypi.python.org/pypi/imageio
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cheat for openSUSE:Factory checked in at 2023-12-17 21:32:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cheat (Old)
and /work/SRC/openSUSE:Factory/.cheat.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cheat"
Sun Dec 17 21:32:07 2023 rev:3 rq:1133591 version:4.4.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/cheat/cheat.changes 2023-12-15 21:47:38.698952201 +0100
+++ /work/SRC/openSUSE:Factory/.cheat.new.25432/cheat.changes 2023-12-17 21:34:37.498598750 +0100
@@ -1,0 +2,8 @@
+Sat Dec 16 11:27:40 UTC 2023 - Michael Vetter <mvetter(a)suse.com>
+
+- Update to 4.4.2:
+ * Bump chroma to newest version
+ * Remove plan9 support due to build failure
+ * Upgrade to yaml.v3
+
+-------------------------------------------------------------------
Old:
----
cheat-4.4.1.tar.gz
New:
----
cheat-4.4.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cheat.spec ++++++
--- /var/tmp/diff_new_pack.pMDs1q/_old 2023-12-17 21:34:38.350629707 +0100
+++ /var/tmp/diff_new_pack.pMDs1q/_new 2023-12-17 21:34:38.350629707 +0100
@@ -17,7 +17,7 @@
Name: cheat
-Version: 4.4.1
+Version: 4.4.2
Release: 0
Summary: Allows you to create and view interactive cheatsheets on the command-line
License: MIT
++++++ _service ++++++
--- /var/tmp/diff_new_pack.pMDs1q/_old 2023-12-17 21:34:38.378630725 +0100
+++ /var/tmp/diff_new_pack.pMDs1q/_new 2023-12-17 21:34:38.382630870 +0100
@@ -3,7 +3,7 @@
<param name="url">https://github.com/cheat/cheat</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="revision">4.4.1</param>
+ <param name="revision">4.4.2</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
</service>
++++++ cheat-4.4.1.tar.gz -> cheat-4.4.2.tar.gz ++++++
++++ 99139 lines of diff (skipped)
++++++ vendor.tar.gz ++++++
++++ 98984 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package river for openSUSE:Factory checked in at 2023-12-17 21:32:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/river (Old)
and /work/SRC/openSUSE:Factory/.river.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "river"
Sun Dec 17 21:32:04 2023 rev:18 rq:1133593 version:0.2.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/river/river.changes 2023-11-26 19:37:37.590874112 +0100
+++ /work/SRC/openSUSE:Factory/.river.new.25432/river.changes 2023-12-17 21:34:35.626530730 +0100
@@ -1,0 +2,5 @@
+Sat Dec 16 12:05:17 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice(a)uncomfyhalomacro.pl>
+
+- Set minimum wlroots version to 0.16.0. Add build conflicts if it is 0.17.0
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ river.spec ++++++
--- /var/tmp/diff_new_pack.HG3AVz/_old 2023-12-17 21:34:36.074547008 +0100
+++ /var/tmp/diff_new_pack.HG3AVz/_new 2023-12-17 21:34:36.078547154 +0100
@@ -52,7 +52,8 @@
BuildRequires: pkgconfig(wayland-egl)
BuildRequires: pkgconfig(wayland-protocols) >= 1.24
BuildRequires: pkgconfig(wayland-server) >= 1.20.0
-BuildRequires: pkgconfig(wlroots) >= 0.15.0
+BuildRequires: pkgconfig(wlroots) >= 0.16.0
+BuildConflicts: pkgconfig(wlroots) >= 0.17.0
BuildRequires: pkgconfig(xkbcommon)
Recommends: xorg-x11-server-wayland
# To make Qt apps work somewhat okay on Wayland and auto use it
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-nbconvert for openSUSE:Factory checked in at 2023-12-17 21:32:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-nbconvert (Old)
and /work/SRC/openSUSE:Factory/.python-nbconvert.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-nbconvert"
Sun Dec 17 21:32:06 2023 rev:29 rq:1133611 version:7.12.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-nbconvert/python-nbconvert.changes 2023-10-10 21:01:39.209026709 +0200
+++ /work/SRC/openSUSE:Factory/.python-nbconvert.new.25432/python-nbconvert.changes 2023-12-17 21:34:36.326556165 +0100
@@ -1,0 +2,16 @@
+Sat Dec 16 12:53:12 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 7.12.0:
+ * Allow to load config from env.
+ * Use ruff on notebooks and update typings
+ * update Python version support in docs
+ * Support es modules in js includes
+ * Clean up lint handling and list generics
+ * Remove not needed pytest-dependency test requirement
+ * Update to mermaid 10.6.0, docs keyboard navigation
+ * Fix typing for traitlets 5.13
+ * Adopt ruff format
+ * Update typings and remove dead link
+ * Update to mermaid 10.6.0, docs keyboard navigation
+
+-------------------------------------------------------------------
Old:
----
nbconvert-7.9.2.tar.gz
New:
----
nbconvert-7.12.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-nbconvert.spec ++++++
--- /var/tmp/diff_new_pack.5tB7an/_old 2023-12-17 21:34:36.766572152 +0100
+++ /var/tmp/diff_new_pack.5tB7an/_new 2023-12-17 21:34:36.766572152 +0100
@@ -30,9 +30,9 @@
%bcond_with libalternatives
%endif
# X.X.0 gets abbreviated by pythondistdeps
-%define shortversion 7.9.2
+%define shortversion 7.12
Name: python-nbconvert%{psuffix}
-Version: 7.9.2
+Version: 7.12.0
Release: 0
Summary: Conversion of Jupyter Notebooks
License: BSD-3-Clause AND MIT
@@ -82,7 +82,7 @@
BuildRequires: %{python_module ipykernel}
BuildRequires: %{python_module ipywidgets >= 7}
BuildRequires: %{python_module nbconvert = %{version}}
-BuildRequires: %{python_module pytest-dependency}
+BuildRequires: %{python_module pytest}
%endif
%python_subpackages
++++++ nbconvert-7.9.2.tar.gz -> nbconvert-7.12.0.tar.gz ++++++
++++ 1868 lines of diff (skipped)
1
0