openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
February 2023
- 1 participants
- 2021 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package radvd for openSUSE:Factory checked in at 2023-02-28 12:48:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/radvd (Old)
and /work/SRC/openSUSE:Factory/.radvd.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "radvd"
Tue Feb 28 12:48:44 2023 rev:39 rq:1068014 version:2.19
Changes:
--------
--- /work/SRC/openSUSE:Factory/radvd/radvd.changes 2021-08-04 22:28:35.901823087 +0200
+++ /work/SRC/openSUSE:Factory/.radvd.new.31432/radvd.changes 2023-02-28 12:49:05.632656517 +0100
@@ -1,0 +2,6 @@
+Tue Jan 10 07:49:22 UTC 2023 - Fabian Vogt <fvogt(a)suse.com>
+
+- /run/radvd/ is owned by the radvd group, not daemon
+- Drop redundant directory creation in %post
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ radvd.spec ++++++
--- /var/tmp/diff_new_pack.cUnYyF/_old 2023-02-28 12:49:06.344661143 +0100
+++ /var/tmp/diff_new_pack.cUnYyF/_new 2023-02-28 12:49:06.348661168 +0100
@@ -1,7 +1,7 @@
#
# spec file for package radvd
#
-# 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
@@ -124,8 +124,6 @@
EOF
echo "created %{_sysconfdir}/radvd.conf with ULA prefix $prefix"
fi
-#
-install -d -m 755 -o radvd /run/radvd
%tmpfiles_create %{_tmpfilesdir}/%name.conf
%service_add_post %{name}.service
@@ -137,8 +135,7 @@
%service_del_preun %{name}.service
%files
-%defattr(-,root,root)
-%ghost %dir %attr(0755,radvd,daemon) /run/radvd/
+%ghost %dir %attr(0755,radvd,radvd) /run/radvd/
%ghost %config(noreplace) %{_sysconfdir}/radvd.conf
%{_fillupdir}/sysconfig.radvd
%{_sbindir}/radvd
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package resolv_wrapper for openSUSE:Factory checked in at 2023-02-28 12:48:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/resolv_wrapper (Old)
and /work/SRC/openSUSE:Factory/.resolv_wrapper.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "resolv_wrapper"
Tue Feb 28 12:48:42 2023 rev:8 rq:1068004 version:1.1.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/resolv_wrapper/resolv_wrapper.changes 2022-12-20 20:22:01.226382430 +0100
+++ /work/SRC/openSUSE:Factory/.resolv_wrapper.new.31432/resolv_wrapper.changes 2023-02-28 12:49:03.536642900 +0100
@@ -1,0 +2,6 @@
+Mon Feb 27 11:37:56 UTC 2023 - Andreas Schneider <asn(a)cryptomilk.org>
+
+- Fix building with cmocka >= 1.1.6
+ * Added resolv_wrapper-fix-cmocka-1.1.6+-support.patch
+
+-------------------------------------------------------------------
New:
----
resolv_wrapper-fix-cmocka-1.1.6+-support.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ resolv_wrapper.spec ++++++
--- /var/tmp/diff_new_pack.57HQl3/_old 2023-02-28 12:49:05.464655425 +0100
+++ /var/tmp/diff_new_pack.57HQl3/_new 2023-02-28 12:49:05.472655477 +0100
@@ -1,7 +1,7 @@
#
# spec file for package resolv_wrapper
#
-# 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
@@ -37,6 +37,8 @@
Source2: resolv_wrapper.keyring
Source3: %{name}-rpmlintrc
+Patch0: resolv_wrapper-fix-cmocka-1.1.6+-support.patch
+
BuildRequires: cmake
BuildRequires: glibc-devel
BuildRequires: libcmocka-devel
++++++ resolv_wrapper-fix-cmocka-1.1.6+-support.patch ++++++
From dcbc2d4c8f0648b0c1b78b2b43c3a28640dc3576 Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn(a)samba.org>
Date: Fri, 17 Feb 2023 18:01:57 +0100
Subject: [PATCH 1/2] tests: Fix pointer type for assert_string_equal()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
error: pointer targets in passing argument 1 of ���_assert_string_equal���
differ in signedness [-Werror=pointer-sign]
Signed-off-by: Andreas Schneider <asn(a)samba.org>
Reviewed-by: Pavel Filipensk�� <pfilipensky(a)samba.org>
---
tests/test_dns_fake.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/tests/test_dns_fake.c b/tests/test_dns_fake.c
index c057ebe..4f19f12 100644
--- a/tests/test_dns_fake.c
+++ b/tests/test_dns_fake.c
@@ -392,7 +392,7 @@ static void test_res_fake_uri_query(void **state)
assert_int_equal(prio, 2);
assert_int_equal(weight, 5);
- assert_string_equal(rrdata, "https://vpn.cwrap.org/VPN");
+ assert_string_equal((const char *)rrdata, "https://vpn.cwrap.org/VPN");
assert_int_equal(ns_parserr(&handle, ns_s_an, 1, &rr), 0);
assert_int_equal(ns_rr_type(rr), ns_t_uri);
@@ -402,7 +402,7 @@ static void test_res_fake_uri_query(void **state)
assert_int_equal(prio, 2);
assert_int_equal(weight, 10);
- assert_string_equal(rrdata, "https://vpn2.cwrap.org/VPN");
+ assert_string_equal((const char *)rrdata, "https://vpn2.cwrap.org/VPN");
assert_int_equal(ns_parserr(&handle, ns_s_an, 2, &rr), 0);
assert_int_equal(ns_rr_type(rr), ns_t_uri);
@@ -412,7 +412,7 @@ static void test_res_fake_uri_query(void **state)
assert_int_equal(prio, 2);
assert_int_equal(weight, 20);
- assert_string_equal(rrdata, "https://vpn3.cwrap.org/VPN");
+ assert_string_equal((const char *)rrdata, "https://vpn3.cwrap.org/VPN");
}
@@ -461,7 +461,7 @@ static void test_res_fake_uri_query_minimal(void **state)
assert_int_equal(prio, 1);
assert_int_equal(weight, 100);
- assert_string_equal(rrdata, "ftp://ftp.cwrap.org/public");
+ assert_string_equal((const char *)rrdata, "ftp://ftp.cwrap.org/public");
}
static void test_res_fake_soa_query(void **state)
@@ -746,7 +746,7 @@ static void test_res_fake_txt_query(void **state)
assert_int_equal(ns_rr_type(rr), ns_t_txt);
rrdata = ns_rr_rdata(rr);
- assert_string_equal(rrdata, "v=spf1 mx");
+ assert_string_equal((const char *)rrdata, "v=spf1 mx");
}
static void test_res_fake_uri_nsearch(void **state)
@@ -787,7 +787,7 @@ static void test_res_fake_uri_nsearch(void **state)
NS_GET16(weight, rrdata);
assert_int_equal(prio, 2);
assert_int_equal(weight, 5);
- assert_string_equal(rrdata, "https://vpn.cwrap.org/VPN");
+ assert_string_equal((const char *)rrdata, "https://vpn.cwrap.org/VPN");
assert_int_equal(ns_parserr(&handle, ns_s_an, 1, &rr), 0);
assert_int_equal(ns_rr_type(rr), ns_t_uri);
@@ -796,7 +796,7 @@ static void test_res_fake_uri_nsearch(void **state)
NS_GET16(weight, rrdata);
assert_int_equal(prio, 2);
assert_int_equal(weight, 10);
- assert_string_equal(rrdata, "https://vpn2.cwrap.org/VPN");
+ assert_string_equal((const char *)rrdata, "https://vpn2.cwrap.org/VPN");
assert_int_equal(ns_parserr(&handle, ns_s_an, 2, &rr), 0);
assert_int_equal(ns_rr_type(rr), ns_t_uri);
@@ -805,7 +805,7 @@ static void test_res_fake_uri_nsearch(void **state)
NS_GET16(weight, rrdata);
assert_int_equal(prio, 2);
assert_int_equal(weight, 20);
- assert_string_equal(rrdata, "https://vpn3.cwrap.org/VPN");
+ assert_string_equal((const char *)rrdata, "https://vpn3.cwrap.org/VPN");
}
int main(void)
--
2.39.2
From f2e7f58025ecb4cf399494166abea01813b1d0f0 Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn(a)samba.org>
Date: Fri, 17 Feb 2023 17:51:27 +0100
Subject: [PATCH 2/2] cmake: Fix cmocka >= 1.1.6 find_package() in CONFIG mode
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Schneider <asn(a)samba.org>
Reviewed-by: Pavel Filipensk�� <pfilipensky(a)samba.org>
---
tests/CMakeLists.txt | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 1262bed..7f2f4ee 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,5 +1,9 @@
project(tests C)
+if (TARGET cmocka::cmocka)
+ set(CMOCKA_LIBRARY cmocka::cmocka)
+endif()
+
set(TORTURE_LIBRARY torture)
# A simple DNS server for testing
--
2.39.2
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-python-mpv for openSUSE:Factory checked in at 2023-02-28 12:48:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-python-mpv (Old)
and /work/SRC/openSUSE:Factory/.python-python-mpv.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-python-mpv"
Tue Feb 28 12:48:41 2023 rev:19 rq:1068003 version:1.0.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-python-mpv/python-python-mpv.changes 2023-02-27 12:55:22.047422153 +0100
+++ /work/SRC/openSUSE:Factory/.python-python-mpv.new.31432/python-python-mpv.changes 2023-02-28 12:49:02.588636741 +0100
@@ -1,0 +2,6 @@
+Mon Feb 27 11:45:28 UTC 2023 - Luigi Baldoni <aloisio(a)gmx.com>
+
+- Update to version 1.0.3
+ * Move to new old pypi project name
+
+-------------------------------------------------------------------
Old:
----
python-mpv-1.0.2.tar.gz
New:
----
python-mpv-1.0.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-python-mpv.spec ++++++
--- /var/tmp/diff_new_pack.Tl3XLE/_old 2023-02-28 12:49:03.172640536 +0100
+++ /var/tmp/diff_new_pack.Tl3XLE/_new 2023-02-28 12:49:03.180640588 +0100
@@ -17,7 +17,7 @@
Name: python-python-mpv
-Version: 1.0.2
+Version: 1.0.3
Release: 0
Summary: Python interface to the mpv media player
License: GPL-2.0-or-later OR LGPL-2.1-or-later
++++++ python-mpv-1.0.2.tar.gz -> python-mpv-1.0.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-mpv-1.0.2/PKG-INFO new/python-mpv-1.0.3/PKG-INFO
--- old/python-mpv-1.0.2/PKG-INFO 2023-02-26 15:12:58.527600800 +0100
+++ new/python-mpv-1.0.3/PKG-INFO 2023-02-27 10:31:30.520204800 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: python-mpv
-Version: 1.0.2
+Version: 1.0.3
Summary: A python interface to the mpv media player
Author-email: jaseg <mpv(a)jaseg.de>
License: GPLv2+ or LGPLv2.1+
@@ -40,7 +40,7 @@
.. code:: bash
- pip install python-mpv
+ pip install mpv
...though you can also realistically just copy `mpv.py`_ into your project as it's all nicely contained in one file.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-mpv-1.0.2/README.rst new/python-mpv-1.0.3/README.rst
--- old/python-mpv-1.0.2/README.rst 2023-02-26 13:13:42.000000000 +0100
+++ new/python-mpv-1.0.3/README.rst 2023-02-27 10:26:59.000000000 +0100
@@ -11,7 +11,7 @@
.. code:: bash
- pip install python-mpv
+ pip install mpv
...though you can also realistically just copy `mpv.py`_ into your project as it's all nicely contained in one file.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-mpv-1.0.2/mpv.py new/python-mpv-1.0.3/mpv.py
--- old/python-mpv-1.0.2/mpv.py 2023-02-26 13:13:42.000000000 +0100
+++ new/python-mpv-1.0.3/mpv.py 2023-02-27 10:26:59.000000000 +0100
@@ -20,6 +20,7 @@
from ctypes import *
import ctypes.util
import threading
+import queue
import os
import sys
from warnings import warn
@@ -880,6 +881,7 @@
self.register_stream_protocol('python', self._python_stream_open)
self._python_streams = {}
self._python_stream_catchall = None
+ self._exception_futures = set()
self.overlay_ids = set()
self.overlays = {}
if loglevel is not None or log_handler is not None:
@@ -891,6 +893,20 @@
else:
self._event_thread = None
+ @contextmanager
+ def _enqueue_exceptions(self):
+ try:
+ yield
+ except Exception as e:
+ for fut in self._exception_futures:
+ try:
+ fut.set_exception(e)
+ break
+ except InvalidStateError:
+ pass
+ else:
+ warn(f'Unhandled exception on python-mpv event loop: {e}\n{traceback.format_exc()}', RuntimeWarning)
+
def _loop(self):
for event in _event_generator(self._event_handle):
try:
@@ -901,45 +917,51 @@
self._core_shutdown = True
for callback in self._event_callbacks:
- callback(event)
+ with self._enqueue_exceptions():
+ callback(event)
if eid == MpvEventID.PROPERTY_CHANGE:
pc = event.data
name, value, _fmt = pc.name, pc.value, pc.format
for handler in self._property_handlers[name]:
- handler(name, value)
+ with self._enqueue_exceptions():
+ handler(name, value)
if eid == MpvEventID.LOG_MESSAGE and self._log_handler is not None:
ev = event.data
- self._log_handler(ev.level, ev.prefix, ev.text)
+ with self._enqueue_exceptions():
+ self._log_handler(ev.level, ev.prefix, ev.text)
if eid == MpvEventID.CLIENT_MESSAGE:
# {'event': {'args': ['key-binding', 'foo', 'u-', 'g']}, 'reply_userdata': 0, 'error': 0, 'event_id': 16}
target, *args = event.data.args
target = target.decode("utf-8")
if target in self._message_handlers:
- self._message_handlers[target](*args)
+ with self._enqueue_exceptions():
+ self._message_handlers[target](*args)
if eid == MpvEventID.COMMAND_REPLY:
key = event.reply_userdata
callback = self._command_reply_callbacks.pop(key, None)
if callback:
- callback(ErrorCode.exception_for_ec(event.error), event.data)
+ with self._enqueue_exceptions():
+ callback(ErrorCode.exception_for_ec(event.error), event.data)
if eid == MpvEventID.QUEUE_OVERFLOW:
# cache list, since error handlers will unregister themselves
for cb in list(self._command_reply_callbacks.values()):
- cb(EventOverflowError('libmpv event queue has flown over because events have not been processed fast enough'), None)
+ with self._enqueue_exceptions():
+ cb(EventOverflowError('libmpv event queue has flown over because events have not been processed fast enough'), None)
if eid == MpvEventID.SHUTDOWN:
_mpv_destroy(self._event_handle)
for cb in list(self._command_reply_callbacks.values()):
- cb(ShutdownError('libmpv core has been shutdown'), None)
+ with self._enqueue_exceptions():
+ cb(ShutdownError('libmpv core has been shutdown'), None)
return
except Exception as e:
- print('Exception inside python-mpv event loop:', file=sys.stderr)
- traceback.print_exc()
+ warn(f'Unhandled {e} inside python-mpv event loop!\n{traceback.format_exc()}', RuntimeWarning)
@property
def core_shutdown(self):
@@ -953,35 +975,35 @@
if self._core_shutdown:
raise ShutdownError('libmpv core has been shutdown')
- def wait_until_paused(self, timeout=None):
+ def wait_until_paused(self, timeout=None, catch_errors=True):
"""Waits until playback of the current title is paused or done. Raises a ShutdownError if the core is shutdown while
waiting."""
- self.wait_for_property('core-idle', timeout=timeout)
+ self.wait_for_property('core-idle', timeout=timeout, catch_errors=catch_errors)
- def wait_for_playback(self, timeout=None):
+ def wait_for_playback(self, timeout=None, catch_errors=True):
"""Waits until playback of the current title is finished. Raises a ShutdownError if the core is shutdown while
waiting.
"""
- self.wait_for_event('end_file', timeout=timeout)
+ self.wait_for_event('end_file', timeout=timeout, catch_errors=catch_errors)
- def wait_until_playing(self, timeout=None):
+ def wait_until_playing(self, timeout=None, catch_errors=True):
"""Waits until playback of the current title has started. Raises a ShutdownError if the core is shutdown while
waiting."""
- self.wait_for_property('core-idle', lambda idle: not idle, timeout=timeout)
+ self.wait_for_property('core-idle', lambda idle: not idle, timeout=timeout, catch_errors=catch_errors)
- def wait_for_property(self, name, cond=lambda val: val, level_sensitive=True, timeout=None):
+ def wait_for_property(self, name, cond=lambda val: val, level_sensitive=True, timeout=None, catch_errors=True):
"""Waits until ``cond`` evaluates to a truthy value on the named property. This can be used to wait for
properties such as ``idle_active`` indicating the player is done with regular playback and just idling around.
Raises a ShutdownError when the core is shutdown while waiting.
"""
- with self.prepare_and_wait_for_property(name, cond, level_sensitive, timeout=timeout) as result:
+ with self.prepare_and_wait_for_property(name, cond, level_sensitive, timeout=timeout, catch_errors=catch_errors) as result:
pass
return result.result()
- def wait_for_shutdown(self, timeout=None):
+ def wait_for_shutdown(self, timeout=None, catch_errors=True):
'''Wait for core to shutdown (e.g. through quit() or terminate()).'''
try:
- self.wait_for_event(None, timeout=timeout)
+ self.wait_for_event(None, timeout=timeout, catch_errors=catch_errors)
except ShutdownError:
return
@@ -999,7 +1021,7 @@
return shutdown_handler.unregister_mpv_events
@contextmanager
- def prepare_and_wait_for_property(self, name, cond=lambda val: val, level_sensitive=True, timeout=None):
+ def prepare_and_wait_for_property(self, name, cond=lambda val: val, level_sensitive=True, timeout=None, catch_errors=True):
"""Context manager that waits until ``cond`` evaluates to a truthy value on the named property. See
prepare_and_wait_for_event for usage.
Raises a ShutdownError when the core is shutdown while waiting. Re-raises any errors inside ``cond``.
@@ -1023,6 +1045,9 @@
try:
result.set_running_or_notify_cancel()
+ if catch_errors:
+ self._exception_futures.add(result)
+
yield result
rv = cond(getattr(self, name.replace('-', '_')))
@@ -1035,18 +1060,19 @@
finally:
err_unregister()
self.unobserve_property(name, observer)
+ self._exception_futures.discard(result)
- def wait_for_event(self, *event_types, cond=lambda evt: True, timeout=None):
+ def wait_for_event(self, *event_types, cond=lambda evt: True, timeout=None, catch_errors=True):
"""Waits for the indicated event(s). If cond is given, waits until cond(event) is true. Raises a ShutdownError
if the core is shutdown while waiting. This also happens when 'shutdown' is in event_types. Re-raises any error
inside ``cond``.
"""
- with self.prepare_and_wait_for_event(*event_types, cond=cond, timeout=timeout) as result:
+ with self.prepare_and_wait_for_event(*event_types, cond=cond, timeout=timeout, catch_errors=catch_errors) as result:
pass
return result.result()
@contextmanager
- def prepare_and_wait_for_event(self, *event_types, cond=lambda evt: True, timeout=None):
+ def prepare_and_wait_for_event(self, *event_types, cond=lambda evt: True, timeout=None, catch_errors=True):
"""Context manager that waits for the indicated event(s) like wait_for_event after running. If cond is given,
waits until cond(event) is true. Raises a ShutdownError if the core is shutdown while waiting. This also happens
when 'shutdown' is in event_types. Re-raises any error inside ``cond``.
@@ -1064,7 +1090,6 @@
@self.event_callback(*event_types)
def target_handler(evt):
-
try:
rv = cond(evt)
if rv:
@@ -1081,13 +1106,18 @@
try:
result.set_running_or_notify_cancel()
+ if catch_errors:
+ self._exception_futures.add(result)
+
yield result
+
self.check_core_alive()
result.result(timeout)
finally:
err_unregister()
target_handler.unregister_mpv_events()
+ self._exception_futures.discard(result)
def __del__(self):
if self.handle:
@@ -1772,32 +1802,68 @@
frontend = open_fn(uri.decode('utf-8'))
except ValueError:
return ErrorCode.LOADING_FAILED
+ except Exception as e:
+ for fut in self._exception_futures:
+ try:
+ fut.set_exception(e)
+ break
+ except InvalidStateError:
+ pass
+ else:
+ warnings.warn(f'Unhandled exception {e} inside stream open callback for URI {uri}\n{traceback.format_exc()}')
+
- def read_backend(_userdata, buf, bufsize):
- data = frontend.read(bufsize)
- for i in range(len(data)):
- buf[i] = data[i]
- return len(data)
+
+ return ErrorCode.LOADING_FAILED
cb_info.contents.cookie = None
+
+ def read_backend(_userdata, buf, bufsize):
+ with self._enqueue_exceptions():
+ data = frontend.read(bufsize)
+ for i in range(len(data)):
+ buf[i] = data[i]
+ return len(data)
+ return -1
read = cb_info.contents.read = StreamReadFn(read_backend)
- close = cb_info.contents.close = StreamCloseFn(lambda _userdata: frontend.close())
+
+ def close_backend(_userdata):
+ with self._enqueue_exceptions():
+ del self._stream_protocol_frontends[proto][uri]
+ if hasattr(frontend, 'close'):
+ frontend.close()
+ close = cb_info.contents.close = StreamCloseFn(close_backend)
seek, size, cancel = None, None, None
+
if hasattr(frontend, 'seek'):
- seek = cb_info.contents.seek = StreamSeekFn(lambda _userdata, offx: frontend.seek(offx))
+ def seek_backend(_userdata, offx):
+ with self._enqueue_exceptions():
+ return frontend.seek(offx)
+ return ErrorCode.GENERIC
+ seek = cb_info.contents.seek = StreamSeekFn(seek_backend)
+
if hasattr(frontend, 'size') and frontend.size is not None:
- size = cb_info.contents.size = StreamSizeFn(lambda _userdata: frontend.size)
+ def size_backend(_userdata):
+ with self._enqueue_exceptions():
+ return frontend.size
+ return 0
+ size = cb_info.contents.size = StreamSizeFn(size_backend)
+
if hasattr(frontend, 'cancel'):
- cancel = cb_info.contents.cancel = StreamCancelFn(lambda _userdata: frontend.cancel())
+ def cancel_backend(_userdata):
+ with self._enqueue_exceptions():
+ frontend.cancel()
+ cancel = cb_info.contents.cancel = StreamCancelFn(cancel_backend)
- # keep frontend and callbacks in memory forever (TODO)
+ # keep frontend and callbacks in memory until closed
frontend._registered_callbacks = [read, close, seek, size, cancel]
self._stream_protocol_frontends[proto][uri] = frontend
return 0
if proto in self._stream_protocol_cbs:
raise KeyError('Stream protocol already registered')
+ # keep backend in memory forever
self._stream_protocol_cbs[proto] = [open_backend]
_mpv_stream_cb_add_ro(self.handle, proto.encode('utf-8'), c_void_p(), open_backend)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-mpv-1.0.2/pyproject.toml new/python-mpv-1.0.3/pyproject.toml
--- old/python-mpv-1.0.2/pyproject.toml 2023-02-26 14:06:41.000000000 +0100
+++ new/python-mpv-1.0.3/pyproject.toml 2023-02-27 10:31:22.000000000 +0100
@@ -7,7 +7,7 @@
[project]
name = "python-mpv"
-version = "v1.0.2"
+version = "v1.0.3"
description = "A python interface to the mpv media player"
readme = "README.rst"
authors = [{name = "jaseg", email = "mpv(a)jaseg.de"}]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-mpv-1.0.2/python_mpv.egg-info/PKG-INFO new/python-mpv-1.0.3/python_mpv.egg-info/PKG-INFO
--- old/python-mpv-1.0.2/python_mpv.egg-info/PKG-INFO 2023-02-26 15:12:58.000000000 +0100
+++ new/python-mpv-1.0.3/python_mpv.egg-info/PKG-INFO 2023-02-27 10:31:30.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: python-mpv
-Version: 1.0.2
+Version: 1.0.3
Summary: A python interface to the mpv media player
Author-email: jaseg <mpv(a)jaseg.de>
License: GPLv2+ or LGPLv2.1+
@@ -40,7 +40,7 @@
.. code:: bash
- pip install python-mpv
+ pip install mpv
...though you can also realistically just copy `mpv.py`_ into your project as it's all nicely contained in one file.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-mpv-1.0.2/tests/test_mpv.py new/python-mpv-1.0.3/tests/test_mpv.py
--- old/python-mpv-1.0.2/tests/test_mpv.py 2023-02-26 13:13:42.000000000 +0100
+++ new/python-mpv-1.0.3/tests/test_mpv.py 2023-02-27 10:26:59.000000000 +0100
@@ -535,6 +535,115 @@
m.terminate()
disp.stop()
+ def test_stream_open_exception(self):
+ disp = Xvfb()
+ disp.start()
+ m = mpv.MPV(vo=testvo, video=False)
+
+ @m.register_stream_protocol('raiseerror')
+ def open_fn(uri):
+ raise SystemError()
+
+ waiting = threading.Semaphore()
+ result = Future()
+ def run():
+ result.set_running_or_notify_cancel()
+ try:
+ waiting.release()
+ m.wait_for_playback()
+ result.set_result(False)
+ except SystemError:
+ result.set_result(True)
+ except Exception:
+ result.set_result(False)
+
+ t = threading.Thread(target=run, daemon=True)
+ t.start()
+
+ with waiting:
+ time.sleep(0.2)
+ m.play('raiseerror://foo')
+
+ m.wait_for_playback(catch_errors=False)
+ try:
+ assert result.result()
+ finally:
+ m.terminate()
+ disp.stop()
+
+ def test_python_stream_exception(self):
+ disp = Xvfb()
+ disp.start()
+ m = mpv.MPV(vo=testvo)
+
+ @m.python_stream('foo')
+ def foo_gen():
+ with open(TESTVID, 'rb') as f:
+ yield f.read(100)
+ raise SystemError()
+
+ waiting = threading.Semaphore()
+ result = Future()
+ def run():
+ result.set_running_or_notify_cancel()
+ try:
+ waiting.release()
+ m.wait_for_playback()
+ result.set_result(False)
+ except SystemError:
+ result.set_result(True)
+ except Exception:
+ result.set_result(False)
+
+ t = threading.Thread(target=run, daemon=True)
+ t.start()
+
+ with waiting:
+ time.sleep(0.2)
+ m.play('python://foo')
+
+ m.wait_for_playback(catch_errors=False)
+ try:
+ assert result.result()
+ finally:
+ m.terminate()
+ disp.stop()
+
+ def test_stream_open_forward(self):
+ disp = Xvfb()
+ disp.start()
+ m = mpv.MPV(vo=testvo, video=False)
+
+ @m.register_stream_protocol('raiseerror')
+ def open_fn(uri):
+ raise ValueError()
+
+ waiting = threading.Semaphore()
+ result = Future()
+ def run():
+ result.set_running_or_notify_cancel()
+ try:
+ waiting.release()
+ m.wait_for_playback()
+ result.set_result(True)
+ except Exception:
+ result.set_result(False)
+
+ t = threading.Thread(target=run, daemon=True)
+ t.start()
+
+ with waiting:
+ time.sleep(0.2)
+ m.play('raiseerror://foo')
+
+ m.wait_for_playback(catch_errors=False)
+ try:
+ assert result.result()
+ finally:
+ m.terminate()
+ disp.stop()
+
+
class TestLifecycle(unittest.TestCase):
def test_create_destroy(self):
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package cosign for openSUSE:Factory checked in at 2023-02-28 12:48:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cosign (Old)
and /work/SRC/openSUSE:Factory/.cosign.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cosign"
Tue Feb 28 12:48:39 2023 rev:13 rq:1067999 version:2.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/cosign/cosign.changes 2022-10-19 13:18:18.593300802 +0200
+++ /work/SRC/openSUSE:Factory/.cosign.new.31432/cosign.changes 2023-02-28 12:49:01.192627673 +0100
@@ -1,0 +2,66 @@
+Mon Feb 27 12:31:33 UTC 2023 - Marcus Meissner <meissner(a)suse.com>
+
+- update to 2.0.0 (jsc#SLE-23879)
+ Breaking Changes:
+
+ * insecure-skip-tlog-verify: rename and adapt the cert expiration check (#2620)
+ * Deprecate --certificate-email flag. Make --certificate-identity and -��� (#2411)
+
+ Enhancements:
+
+ * Change go module name to github.com/sigstore/cosign/v2 for Cosign 2.0 (#2544)
+ * Allow users to pass in a path for the --identity-token flag (#2538)
+ * Breaking change: Respect tlog-upload=false, default to true (#2505)
+ * Support outputing a certificate without uploading to the tlog (#2506)
+ * Attestation/Blob signing and verification using a RFC3161 time-stamping server (#2464)
+ * respect tlog-upload flag with TSA (#2474)
+ * Better feedback if specifying incompatible argument on cosign sign --attachment (#2449)
+ * Support TSA and Rekor verifications (#2463)
+ * add support for tsa signing and verification of images (#2460)
+ * cosign policy sign: remove experimental flag and make keyless signing default (#2459)
+ * Remove experimental mode from cosign attest and verify-attestation (#2458)
+ * Remove experimental mode from sign-blob and verify-blob (#2457)
+ * Add --offline flag to force offline verification (#2427)
+ * Air gap support (#2299)
+ * Breaking change: Change SCT verification behavior to default to enforcement (#2400)
+ * Breaking change: remove --force flag from sign and attest and rely on --yes flag to skip confirmation (#2399)
+ * Breaking change: replace --no-tlog-upload flag with --tlog-upload flag (#2397)
+ * Remove experimental flag from cosign sign and cosign verify (#2387)
+ * verify: remove SIGSTORE_TRUST_REKOR_API_PUBLIC_KEY test env var for using a key from rekor's API (#2362)
+ * Add warning to use digest instead of tags to other cosign commands (#2650)
+ * Fix up UI messages (#2629)
+ * Remove hardcoded Fulcio from output (#2621)
+ * Fix missing privacy statement, print in multiple locations (#2622)
+ * feat: allows custom key names for import-key-pair (#2587)
+ * feat: support keyless verification for verify-blob-attestation (#2525)
+ * attest-blob: add functionality for keyless signing (#2515)
+ * Rego: add support for custom error/warning messages when evaluating rego rules (#2577)
+ * feat: add debug information to cert validation error (#2579)
+ * Support non-Sigstore TSA requests (#2708)
+ * Add COSIGN_OCI_EXPERIMENTAL, push .sig/.sbom using OCI 1.1+ digest tag (#2684)
+ * Output certificate in bundle when entry is not uploaded to Rekor (#2715)
+ * attach signature and attach sbom must use STDIN to upload raw string (#2637)
+ * add generate-key-pair GitHub Enterprise server support (#2676)
+ * add in format string for warning (#2699)
+ * Support for fetching Fulcio certs with self-managed key (#2532)
+ * 2476 predicate type download (#2484)
+
+ Bug Fixes:
+
+ * Fix the file existence check. (#2552)
+ * Fix timestamp verification, add verify-blob tests (#2527)
+ * Fix(verify): Consolidate certificate expiry logic (#2504)
+ * Updates to Timestamp signing and verification (#2499)
+ * Fix: removes attestation payload from attest-blob's output & no base64 encoding (#2498)
+ * Fix path for e2e-tests badge (#2490)
+ * Fix spdx json media type (#2479)
+ * Fix sct verificaction (#2426)
+ * Fix: panic with unsigned local image (#2656)
+ * Make sure a cert passed in via --cert matches the bundle cert (#2652)
+ * Fix: fix github oidc post submit test (#2594)
+ * Fix: add enhanced error messages for failing verification with TUF targets (#2589)
+ * Fix: Add missing schemes to cosign predicate types. (#2717)
+ * Fix: Drop the CosignPredicate wrapper around SBOM attestations. (#2718)
+ * Fix prompts with Windows line endings (#2674)
+
+-------------------------------------------------------------------
Old:
----
cosign-1.13.1.tar.gz
New:
----
cosign-2.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cosign.spec ++++++
--- /var/tmp/diff_new_pack.VQzZeA/_old 2023-02-28 12:49:02.076633416 +0100
+++ /var/tmp/diff_new_pack.VQzZeA/_new 2023-02-28 12:49:02.080633441 +0100
@@ -1,7 +1,7 @@
#
# spec file for package cosign
#
-# 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,9 +17,9 @@
Name: cosign
-Version: 1.13.1
+Version: 2.0.0
Release: 0
-%define revision d1c6336475b4be26bb7fb52d97f56ea0a1767f9f
+%define revision 69c9b37f2a021326c67b2aa9552c790e12ae5fb8
Summary: Container Signing, Verification and Storage in an OCI registry
License: Apache-2.0
URL: https://github.com/sigstore/cosign
++++++ cosign-1.13.1.tar.gz -> cosign-2.0.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/cosign/cosign-1.13.1.tar.gz /work/SRC/openSUSE:Factory/.cosign.new.31432/cosign-2.0.0.tar.gz differ: char 13, line 1
++++++ vendor.tar.zst ++++++
Binary files /var/tmp/diff_new_pack.VQzZeA/_old and /var/tmp/diff_new_pack.VQzZeA/_new differ
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-sunpy for openSUSE:Factory checked in at 2023-02-28 12:48:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-sunpy (Old)
and /work/SRC/openSUSE:Factory/.python-sunpy.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-sunpy"
Tue Feb 28 12:48:38 2023 rev:20 rq:1068001 version:4.1.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-sunpy/python-sunpy.changes 2022-12-24 19:40:45.904996316 +0100
+++ /work/SRC/openSUSE:Factory/.python-sunpy.new.31432/python-sunpy.changes 2023-02-28 12:48:59.764618395 +0100
@@ -1,0 +2,51 @@
+Mon Feb 27 12:48:29 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Remove patch sunpy-pr6662-np1.24.patch
+- Add patch python-311.patch to support python 3.11, gh#sunpy/sunpy#6512
+- Update to v4.1.3
+ * Backport PR #6740 on branch 4.1 (Exclude scipy==1.10.0 in deps) by
+ @meeseeksmachine in #6746
+ * Backport PR #6749 on branch 4.1 (Unpin and update database for
+ SQLA 2.0) by @meeseeksmachine in #6750
+ * Backport PR #6731 on branch 4.1 (fig-devdeps : Have to add a unit
+ to lon.coord_wrap) by @meeseeksmachine in #6753
+ * Backport PR #6711 on branch 4.1 (Raise error if downloader for
+ cache fails) by @meeseeksmachine in #6755
+ * Backport PR #6725 on branch 4.1 (add unit detection for XRT data)
+ by @meeseeksmachine in #6761
+ * Backport PR #6737 on branch 4.1 (Updating the GOES-XRS baseurl
+ following change on noaa side) by @meeseeksmachine in #6762
+ * Backport PR #6710 on branch 4.1 (Fix init issue for JP2 HMI images
+ from helioveiwer) by @meeseeksmachine in #6765
+ * Backport PR #6648 on branch 4.1 (Fix draw_quadrangle() so that it
+ accepts frames with data) by @meeseeksmachine in #6777
+- v4.1.2
+ * Backport PR #6694 on branch 4.1 (pin sqlalchemy<2.0 and ignore
+ warning for now) by @meeseeksmachine in #6697
+ * Backport PR #6693 on branch 4.1 (detect gzipped-FITS files by
+ magic-bytes) by @meeseeksmachine in #6700
+ * Backport PR #6702 on branch 4.1 (fix the extremely minor issue in
+ Fido docs) by @meeseeksmachine in #6704
+ * Backport PR #6712 on branch 4.1 (Add changelog entry for
+ sqlalchemy pin) by @meeseeksmachine in #6714
+ * Backport PR #6728 on branch 4.1 (Fix HISTORY key in test maps
+ created from header files) by @meeseeksmachine in #6730
+- v4.1.1
+ * Added three tutorials which replicate ~sunpy.map.CompositeMap
+ functionality
+ (sphx_glr_generated_gallery_plotting_AIA_HMI_composite.py,
+ sphx_glr_generated_gallery_plotting_masked_composite_plot.py,
+ sphx_glr_generated_gallery_plotting_three_map_composite.py). A
+ fourth tutorial
+ (sphx_glr_generated_gallery_plotting_rgb_composite.py)
+ demonstrates how to create an RGB image with three different maps.
+ (#6459)
+ * Fixed the incorrect calculation in
+ ~sunpy.map.header_helper.make_fitswcs_header of the rotation
+ matrix from a rotation angle when the pixels are non-square.
+ (#6597)
+ * Fixed an issue with loading old EIT fits files with sunpy.map.Map
+ where the date could not be parsed. (#6605)
+ * Added sunpy.map.PixelPair to the reference documentation. (#6620)
+
+-------------------------------------------------------------------
Old:
----
sunpy-4.1.0.tar.gz
sunpy-pr6662-np1.24.patch
New:
----
python-311.patch
sunpy-4.1.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-sunpy.spec ++++++
--- /var/tmp/diff_new_pack.cwdDio/_old 2023-02-28 12:49:00.524623333 +0100
+++ /var/tmp/diff_new_pack.cwdDio/_new 2023-02-28 12:49:00.536623410 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-sunpy
#
-# 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: python-sunpy
-Version: 4.1.0
+Version: 4.1.3
Release: 0
Summary: SunPy core package: Python for Solar Physics
License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT
@@ -26,8 +26,8 @@
Source100: python-sunpy-rpmlintrc
# PATCH-FIX-OPENSUSE use custom hypothesis profile for slow OBS executions
Patch1: sunpy-obs-profile.patch
-# PATCH-FIX-UPSTREAM sunpy-pr6662-np1.24.patch gh#sunpy/sunpy#6662
-Patch2: sunpy-pr6662-np1.24.patch
+# PATCH-FIX-UPSTREAM python-311.patch gh#sunpy/sunpy#6512
+Patch2: python-311.patch
BuildRequires: %{python_module aioftp}
BuildRequires: %{python_module astropy >= 4.2.1}
BuildRequires: %{python_module base => 3.8}
++++++ python-311.patch ++++++
Index: sunpy-4.1.3/changelog/6512.bugfix.rst
===================================================================
--- /dev/null
+++ sunpy-4.1.3/changelog/6512.bugfix.rst
@@ -0,0 +1,4 @@
+Add support for Python 3.11.
+
+The deprecated `cgi.parse_header` is now available as
+`sunpy.util.net.parse_header`.
Index: sunpy-4.1.3/setup.cfg
===================================================================
--- sunpy-4.1.3.orig/setup.cfg
+++ sunpy-4.1.3/setup.cfg
@@ -166,6 +166,7 @@ filterwarnings =
ignore:unable to download valid IERS file, using local IERS-B
ignore:.*will attempt to set the values inplace instead of always setting a new array:FutureWarning
ignore:'cgi' is deprecated and slated for removal in Python 3.13:DeprecationWarning:zeep.utils
+ ignore::DeprecationWarning
ignore:.*np.bool8.*is a deprecated alias.*:DeprecationWarning
ignore:Deprecated API features detected.*SQLAlchemy 2
++++++ sunpy-4.1.0.tar.gz -> sunpy-4.1.3.tar.gz ++++++
++++ 1953 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-pyScss for openSUSE:Factory checked in at 2023-02-28 12:48:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pyScss (Old)
and /work/SRC/openSUSE:Factory/.python-pyScss.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pyScss"
Tue Feb 28 12:48:37 2023 rev:6 rq:1068000 version:1.4.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pyScss/python-pyScss.changes 2022-10-03 13:47:01.861648918 +0200
+++ /work/SRC/openSUSE:Factory/.python-pyScss.new.31432/python-pyScss.changes 2023-02-28 12:48:58.432609742 +0100
@@ -1,0 +2,6 @@
+Tue Feb 21 11:40:08 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Add python-311.patch to support python 3.11
+ gh#Kronuz/pyScss#426
+
+-------------------------------------------------------------------
New:
----
python-311.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pyScss.spec ++++++
--- /var/tmp/diff_new_pack.UxRTSR/_old 2023-02-28 12:48:59.056613795 +0100
+++ /var/tmp/diff_new_pack.UxRTSR/_new 2023-02-28 12:48:59.060613822 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-pyScss
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2014 LISA GmbH, Bingen, Germany.
#
# All modifications and additions to the file contributed by third parties
@@ -17,7 +17,6 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
Name: python-pyScss
Version: 1.4.0
@@ -27,6 +26,8 @@
Group: Development/Languages/Python
URL: https://github.com/Kronuz/pyScss
Source: https://github.com/Kronuz/pyScss/archive/refs/tags/v%{version}.tar.gz#/pySc…
+# PATCH-FIX-UPSTREAM python-311.patch gh#Kronuz/pyScss#426
+Patch0: python-311.patch
BuildRequires: %{python_module devel}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
@@ -55,7 +56,7 @@
http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html
%prep
-%setup -q -n pyScss-%{version}
+%autosetup -p1 -n pyScss-%{version}
%build
export CFLAGS="%{optflags}"
@@ -81,7 +82,8 @@
%files %{python_files}
%license LICENSE
%doc README.rst
-%{python_sitearch}/*
+%{python_sitearch}/scss
+%{python_sitearch}/pyScss-%{version}*-info
%python_alternative %{_bindir}/pyscss
%python_alternative %{_bindir}/less2scss
++++++ python-311.patch ++++++
From 60414f5d573315a8458b5fbcdf69e5c648c44a9a Mon Sep 17 00:00:00 2001
From: tst <timo.stueber(a)contact-software.com>
Date: Thu, 3 Nov 2022 14:50:05 +0100
Subject: [PATCH] fix error: global flags not at the start of the expression at
position 1
---
scss/grammar/expression.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: pyScss-1.4.0/scss/grammar/expression.py
===================================================================
--- pyScss-1.4.0.orig/scss/grammar/expression.py
+++ pyScss-1.4.0/scss/grammar/expression.py
@@ -86,7 +86,7 @@ class SassExpressionScanner(Scanner):
('VAR', '\\$[-a-zA-Z0-9_]+'),
('LITERAL_FUNCTION', '(-moz-calc|-webkit-calc|calc|expression|progid:[\\w.]+)(?=[(])'),
('ALPHA_FUNCTION', 'alpha(?=[(])'),
- ('OPACITY', '((?i)opacity)'),
+ ('OPACITY', '(?i)(opacity)'),
('URL_FUNCTION', 'url(?=[(])'),
('IF_FUNCTION', 'if(?=[(])'),
('FNCT', '[-a-zA-Z_][-a-zA-Z0-9_]*(?=\\()'),
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-python-crfsuite for openSUSE:Factory checked in at 2023-02-28 12:48:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-python-crfsuite (Old)
and /work/SRC/openSUSE:Factory/.python-python-crfsuite.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-python-crfsuite"
Tue Feb 28 12:48:36 2023 rev:4 rq:1067998 version:0.9.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-python-crfsuite/python-python-crfsuite.changes 2022-02-21 17:47:44.839614516 +0100
+++ /work/SRC/openSUSE:Factory/.python-python-crfsuite.new.31432/python-python-crfsuite.changes 2023-02-28 12:48:57.180601608 +0100
@@ -1,0 +2,9 @@
+Tue Feb 21 10:27:13 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Delete rebuild-extension.patch
+- Update to 0.9.9
+ * Support for CPython 3.11
+- 0.9.8
+ * Support for 3.10 added
+
+-------------------------------------------------------------------
Old:
----
python-crfsuite-0.9.7.tar.gz
rebuild-extension.patch
New:
----
python-crfsuite-0.9.9.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-python-crfsuite.spec ++++++
--- /var/tmp/diff_new_pack.0akHRy/_old 2023-02-28 12:48:58.020607066 +0100
+++ /var/tmp/diff_new_pack.0akHRy/_new 2023-02-28 12:48:58.024607091 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-python-crfsuite
#
-# 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,17 +16,14 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-python-crfsuite
-Version: 0.9.7
+Version: 0.9.9
Release: 0
Summary: Python binding for CRFsuite
License: MIT
Group: Development/Languages/Python
URL: https://github.com/scrapinghub/python-crfsuite
Source: https://files.pythonhosted.org/packages/source/p/python-crfsuite/python-crf…
-# PATCH-FIX-UPSTREAM gh#scrapinghub/python-crfsuite#c4c8b879fdf0cea493aedcc494321e35746417d1
-Patch0: rebuild-extension.patch
BuildRequires: %{python_module devel}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
@@ -57,6 +54,7 @@
%files %{python_files}
%license LICENSE.txt
%doc CHANGES.rst README.rst
-%{python_sitearch}/*
+%{python_sitearch}/pycrfsuite
+%{python_sitearch}/python_crfsuite-%{version}*-info
%changelog
++++++ python-crfsuite-0.9.7.tar.gz -> python-crfsuite-0.9.9.tar.gz ++++++
++++ 3107 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-python-engineio for openSUSE:Factory checked in at 2023-02-28 12:48:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-python-engineio (Old)
and /work/SRC/openSUSE:Factory/.python-python-engineio.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-python-engineio"
Tue Feb 28 12:48:35 2023 rev:5 rq:1067992 version:4.3.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-python-engineio/python-python-engineio.changes 2022-10-08 01:25:52.170318348 +0200
+++ /work/SRC/openSUSE:Factory/.python-python-engineio.new.31432/python-python-engineio.changes 2023-02-28 12:48:56.240595502 +0100
@@ -1,0 +2,6 @@
+Tue Feb 21 10:05:49 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Add python-311.patch to support python 3.11,
+ gh#miguelgrinberg/python-engineio@ac3911356fbe
+
+-------------------------------------------------------------------
New:
----
python-311.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-python-engineio.spec ++++++
--- /var/tmp/diff_new_pack.AIYcGz/_old 2023-02-28 12:48:56.876599634 +0100
+++ /var/tmp/diff_new_pack.AIYcGz/_new 2023-02-28 12:48:56.888599711 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-python-engineio
#
-# 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,7 +16,6 @@
#
-%{?!python_module:%define python_module() python3-%{**}}
%define skip_python2 1
Name: python-python-engineio
Version: 4.3.4
@@ -25,6 +24,8 @@
License: MIT
URL: http://github.com/miguelgrinberg/python-engineio/
Source: https://github.com/miguelgrinberg/python-engineio/archive/v%{version}.tar.g…
+# PATCH-FIX-UPSTREAM python-311.patch gh#miguelgrinberg/python-engineio@ac3911356fbe
+Patch0: python-311.patch
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -47,7 +48,7 @@
Python implementation of the Engine.IO realtime server.
%prep
-%setup -q -n python-engineio-%{version}
+%autosetup -p1 -n python-engineio-%{version}
%build
%python_build
++++++ python-311.patch ++++++
diff --git a/tests/asyncio/test_asyncio_server.py b/tests/asyncio/test_asyncio_server.py
index 47b3e6e..a55e1e0 100644
--- a/tests/asyncio/test_asyncio_server.py
+++ b/tests/asyncio/test_asyncio_server.py
@@ -278,9 +278,9 @@ def test_connect_custom_ping_times(self, import_module):
assert packets[0].data['pingTimeout'] == 123000
assert packets[0].data['pingInterval'] == 456000
- @mock.patch('engineio.asyncio_socket.AsyncSocket')
@mock.patch('importlib.import_module')
- def test_connect_bad_poll(self, import_module, AsyncSocket):
+ @mock.patch('engineio.asyncio_server.asyncio_socket.AsyncSocket')
+ def test_connect_bad_poll(self, AsyncSocket, import_module):
a = self.get_async_mock()
import_module.side_effect = [a]
AsyncSocket.return_value = self._get_mock_socket()
@@ -290,9 +290,9 @@ def test_connect_bad_poll(self, import_module, AsyncSocket):
assert a._async['make_response'].call_count == 1
assert a._async['make_response'].call_args[0][0] == '400 BAD REQUEST'
- @mock.patch('engineio.asyncio_socket.AsyncSocket')
@mock.patch('importlib.import_module')
- def test_connect_transport_websocket(self, import_module, AsyncSocket):
+ @mock.patch('engineio.asyncio_server.asyncio_socket.AsyncSocket')
+ def test_connect_transport_websocket(self, AsyncSocket, import_module):
a = self.get_async_mock(
{
'REQUEST_METHOD': 'GET',
@@ -312,9 +312,9 @@ def test_connect_transport_websocket(self, import_module, AsyncSocket):
== packet.OPEN
)
- @mock.patch('engineio.asyncio_socket.AsyncSocket')
@mock.patch('importlib.import_module')
- def test_http_upgrade_case_insensitive(self, import_module, AsyncSocket):
+ @mock.patch('engineio.asyncio_server.asyncio_socket.AsyncSocket')
+ def test_http_upgrade_case_insensitive(self, AsyncSocket, import_module):
a = self.get_async_mock(
{
'REQUEST_METHOD': 'GET',
@@ -334,11 +334,10 @@ def test_http_upgrade_case_insensitive(self, import_module, AsyncSocket):
== packet.OPEN
)
- @mock.patch('engineio.asyncio_socket.AsyncSocket')
@mock.patch('importlib.import_module')
+ @mock.patch('engineio.asyncio_server.asyncio_socket.AsyncSocket')
def test_connect_transport_websocket_closed(
- self, import_module, AsyncSocket
- ):
+ self, AsyncSocket, import_module):
a = self.get_async_mock(
{
'REQUEST_METHOD': 'GET',
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-rollbar for openSUSE:Factory checked in at 2023-02-28 12:48:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-rollbar (Old)
and /work/SRC/openSUSE:Factory/.python-rollbar.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-rollbar"
Tue Feb 28 12:48:33 2023 rev:9 rq:1067989 version:0.16.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-rollbar/python-rollbar.changes 2022-01-24 23:10:12.926667163 +0100
+++ /work/SRC/openSUSE:Factory/.python-rollbar.new.31432/python-rollbar.changes 2023-02-28 12:48:54.156581963 +0100
@@ -1,0 +2,11 @@
+Mon Feb 20 12:16:51 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- Update to 0.16.3:
+ * Pinned Python 2 CI tests to legacy version of dependencies. See #408
+ * Add PyPI badge for supported Python versions. See #408
+ * Add Django 4.0+ compatibility. See #408
+ * Update PR template. See #408
+ * SC-95272: Remove support for Python 3.3. See #408
+- Disable broken tests in python 3.11, test_encode_empty_tuple
+
+-------------------------------------------------------------------
Old:
----
v0.16.2.tar.gz
New:
----
v0.16.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-rollbar.spec ++++++
--- /var/tmp/diff_new_pack.1jEIMs/_old 2023-02-28 12:48:54.928586978 +0100
+++ /var/tmp/diff_new_pack.1jEIMs/_new 2023-02-28 12:48:54.936587030 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-rollbar
#
-# 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,10 +16,9 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%bcond_without python2
Name: python-rollbar
-Version: 0.16.2
+Version: 0.16.3
Release: 0
Summary: Report exceptions, errors, and log messages to Rollbar
License: MIT
@@ -64,7 +63,7 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-%pytest -k 'not test_shorten_array'
+%pytest -k 'not (test_shorten_array or test_encode_empty_tuple)'
%post
%python_install_alternative rollbar
@@ -76,6 +75,7 @@
%doc README.md
%license LICENSE
%python_alternative %{_bindir}/rollbar
-%{python_sitelib}/*
+%{python_sitelib}/rollbar
+%{python_sitelib}/rollbar-%{version}*-info
%changelog
++++++ python-rollbar-no-unittest2.patch ++++++
--- /var/tmp/diff_new_pack.1jEIMs/_old 2023-02-28 12:48:54.964587212 +0100
+++ /var/tmp/diff_new_pack.1jEIMs/_new 2023-02-28 12:48:54.968587238 +0100
@@ -1,7 +1,7 @@
-Index: pyrollbar-0.16.2/rollbar/test/__init__.py
+Index: pyrollbar-0.16.3/rollbar/test/__init__.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/__init__.py
-+++ pyrollbar-0.16.2/rollbar/test/__init__.py
+--- pyrollbar-0.16.3.orig/rollbar/test/__init__.py
++++ pyrollbar-0.16.3/rollbar/test/__init__.py
@@ -1,13 +1,13 @@
-import unittest2
+import unittest
@@ -19,10 +19,10 @@
def discover():
- return unittest2.defaultTestLoader.discover(__name__)
+ return unittest.defaultTestLoader.discover(__name__)
-Index: pyrollbar-0.16.2/rollbar/test/test_lib.py
+Index: pyrollbar-0.16.3/rollbar/test/test_lib.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/test_lib.py
-+++ pyrollbar-0.16.2/rollbar/test/test_lib.py
+--- pyrollbar-0.16.3.orig/rollbar/test/test_lib.py
++++ pyrollbar-0.16.3/rollbar/test/test_lib.py
@@ -2,6 +2,8 @@ from rollbar.lib import dict_merge
from rollbar.test import BaseTest
@@ -38,10 +38,10 @@
self.assertIn('y', result['a'])
- self.assertRegex(result['a']['y'], r'Uncopyable obj')
+ six.assertRegex(self, result['a']['y'], r'Uncopyable obj')
-Index: pyrollbar-0.16.2/rollbar/test/test_rollbar.py
+Index: pyrollbar-0.16.3/rollbar/test/test_rollbar.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/test_rollbar.py
-+++ pyrollbar-0.16.2/rollbar/test/test_rollbar.py
+--- pyrollbar-0.16.3.orig/rollbar/test/test_rollbar.py
++++ pyrollbar-0.16.3/rollbar/test/test_rollbar.py
@@ -17,6 +17,7 @@ except ImportError:
import mock
@@ -116,10 +116,10 @@
def test_filter_ip_no_user_ip(self):
request_data = {'something': 'but no ip'}
-Index: pyrollbar-0.16.2/rollbar/test/test_scruburl_transform.py
+Index: pyrollbar-0.16.3/rollbar/test/test_scruburl_transform.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/test_scruburl_transform.py
-+++ pyrollbar-0.16.2/rollbar/test/test_scruburl_transform.py
+--- pyrollbar-0.16.3.orig/rollbar/test/test_scruburl_transform.py
++++ pyrollbar-0.16.3/rollbar/test/test_scruburl_transform.py
@@ -1,4 +1,5 @@
import copy
+import six
@@ -134,10 +134,10 @@
- self.assertNotRegex(result['link'][0]['url'], r'^-+$')
+ six.assertNotRegex(self, result['url'][0]['link'], r'^-+$')
+ six.assertNotRegex(self, result['link'][0]['url'], r'^-+$')
-Index: pyrollbar-0.16.2/rollbar/test/test_serializable_transform.py
+Index: pyrollbar-0.16.3/rollbar/test/test_serializable_transform.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/test_serializable_transform.py
-+++ pyrollbar-0.16.2/rollbar/test/test_serializable_transform.py
+--- pyrollbar-0.16.3.orig/rollbar/test/test_serializable_transform.py
++++ pyrollbar-0.16.3/rollbar/test/test_serializable_transform.py
@@ -10,6 +10,8 @@ except ImportError:
# Python 2.7
from collections import Mapping
@@ -180,10 +180,10 @@
result = transforms.transform(start, serializable)
- self.assertRegex(result['custom'], "<UnStringableException.*Exception.*str.*>")
+ six.assertRegex(self, result['custom'], "<UnStringableException.*Exception.*str.*>")
-Index: pyrollbar-0.16.2/setup.py
+Index: pyrollbar-0.16.3/setup.py
===================================================================
---- pyrollbar-0.16.2.orig/setup.py
-+++ pyrollbar-0.16.2/setup.py
+--- pyrollbar-0.16.3.orig/setup.py
++++ pyrollbar-0.16.3/setup.py
@@ -19,7 +19,6 @@ with open(INIT_PATH) as fd:
tests_require = [
'webob',
@@ -192,19 +192,19 @@
'mock<=3.0.5; python_version < "3.3"',
'enum34; python_version < "3.4"',
'httpx; python_version >= "3.6"',
-@@ -90,7 +89,7 @@ setup(
- 'requests<1.2,>=0.12.1; python_version == "3.2"',
- 'requests<1.2,>=0.12.1; python_version == "3.1"',
- 'requests<1.2,>=0.12.1; python_version == "3.0"',
+@@ -85,7 +84,7 @@ setup(
+ 'requests>=0.12.1; python_version >= "3.6"',
+ 'requests<2.26,>=0.12.1; python_version == "3.5"',
+ 'requests<2.22,>=0.12.1; python_version == "3.4"',
- 'six>=1.9.0'
+ 'six>=1.14.0'
],
tests_require=tests_require,
)
-Index: pyrollbar-0.16.2/shell.nix
+Index: pyrollbar-0.16.3/shell.nix
===================================================================
---- pyrollbar-0.16.2.orig/shell.nix
-+++ pyrollbar-0.16.2/shell.nix
+--- pyrollbar-0.16.3.orig/shell.nix
++++ pyrollbar-0.16.3/shell.nix
@@ -20,7 +20,7 @@ python = let
};
in python36.override { inherit packageOverrides; };
@@ -214,10 +214,10 @@
in
-Index: pyrollbar-0.16.2/rollbar/test/starlette_tests/__init__.py
+Index: pyrollbar-0.16.3/rollbar/test/starlette_tests/__init__.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/starlette_tests/__init__.py
-+++ pyrollbar-0.16.2/rollbar/test/starlette_tests/__init__.py
+--- pyrollbar-0.16.3.orig/rollbar/test/starlette_tests/__init__.py
++++ pyrollbar-0.16.3/rollbar/test/starlette_tests/__init__.py
@@ -1,9 +1,9 @@
import sys
-import unittest2
@@ -230,10 +230,10 @@
if sys.version_info < (3, 6):
-Index: pyrollbar-0.16.2/rollbar/test/starlette_tests/test_middleware.py
+Index: pyrollbar-0.16.3/rollbar/test/starlette_tests/test_middleware.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/starlette_tests/test_middleware.py
-+++ pyrollbar-0.16.2/rollbar/test/starlette_tests/test_middleware.py
+--- pyrollbar-0.16.3.orig/rollbar/test/starlette_tests/test_middleware.py
++++ pyrollbar-0.16.3/rollbar/test/starlette_tests/test_middleware.py
@@ -14,7 +14,7 @@ try:
except ImportError:
STARLETTE_INSTALLED = False
@@ -270,10 +270,10 @@
sys.version_info >= (3, 6), 'Global request access is supported in Python 3.6+'
)
def test_should_return_current_request(self):
-Index: pyrollbar-0.16.2/rollbar/test/starlette_tests/test_requests.py
+Index: pyrollbar-0.16.3/rollbar/test/starlette_tests/test_requests.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/starlette_tests/test_requests.py
-+++ pyrollbar-0.16.2/rollbar/test/starlette_tests/test_requests.py
+--- pyrollbar-0.16.3.orig/rollbar/test/starlette_tests/test_requests.py
++++ pyrollbar-0.16.3/rollbar/test/starlette_tests/test_requests.py
@@ -7,14 +7,14 @@ try:
except ImportError:
STARLETTE_INSTALLED = False
@@ -291,10 +291,10 @@
STARLETTE_INSTALLED and ALLOWED_PYTHON_VERSION,
'Global request access requires Python3.6+',
)
-Index: pyrollbar-0.16.2/rollbar/test/starlette_tests/test_logger.py
+Index: pyrollbar-0.16.3/rollbar/test/starlette_tests/test_logger.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/starlette_tests/test_logger.py
-+++ pyrollbar-0.16.2/rollbar/test/starlette_tests/test_logger.py
+--- pyrollbar-0.16.3.orig/rollbar/test/starlette_tests/test_logger.py
++++ pyrollbar-0.16.3/rollbar/test/starlette_tests/test_logger.py
@@ -13,7 +13,7 @@ try:
except ImportError:
STARLETTE_INSTALLED = False
@@ -313,10 +313,10 @@
STARLETTE_INSTALLED and ALLOWED_PYTHON_VERSION,
'Starlette LoggerMiddleware requires Python3.6+',
)
-Index: pyrollbar-0.16.2/rollbar/test/fastapi_tests/__init__.py
+Index: pyrollbar-0.16.3/rollbar/test/fastapi_tests/__init__.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/fastapi_tests/__init__.py
-+++ pyrollbar-0.16.2/rollbar/test/fastapi_tests/__init__.py
+--- pyrollbar-0.16.3.orig/rollbar/test/fastapi_tests/__init__.py
++++ pyrollbar-0.16.3/rollbar/test/fastapi_tests/__init__.py
@@ -1,9 +1,9 @@
import sys
-import unittest2
@@ -329,10 +329,10 @@
if sys.version_info < (3, 6):
-Index: pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_logger.py
+Index: pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_logger.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/fastapi_tests/test_logger.py
-+++ pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_logger.py
+--- pyrollbar-0.16.3.orig/rollbar/test/fastapi_tests/test_logger.py
++++ pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_logger.py
@@ -13,7 +13,7 @@ try:
except ImportError:
FASTAPI_INSTALLED = False
@@ -351,10 +351,10 @@
FASTAPI_INSTALLED and ALLOWED_PYTHON_VERSION,
'FastAPI LoggerMiddleware requires Python3.6+',
)
-Index: pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_middleware.py
+Index: pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_middleware.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/fastapi_tests/test_middleware.py
-+++ pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_middleware.py
+--- pyrollbar-0.16.3.orig/rollbar/test/fastapi_tests/test_middleware.py
++++ pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_middleware.py
@@ -14,7 +14,7 @@ try:
except ImportError:
FASTAPI_INSTALLED = False
@@ -391,10 +391,10 @@
sys.version_info >= (3, 6), 'Global request access is supported in Python 3.6+'
)
def test_should_return_current_request(self):
-Index: pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_routing.py
+Index: pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_routing.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/fastapi_tests/test_routing.py
-+++ pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_routing.py
+--- pyrollbar-0.16.3.orig/rollbar/test/fastapi_tests/test_routing.py
++++ pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_routing.py
@@ -17,7 +17,7 @@ except ImportError:
FASTAPI_INSTALLED = False
ALLOWED_FASTAPI_VERSION = False
@@ -444,10 +444,10 @@
sys.version_info >= (3, 6), 'Global request access is supported in Python 3.6+'
)
def test_should_return_current_request(self):
-Index: pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_utils.py
+Index: pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_utils.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/fastapi_tests/test_utils.py
-+++ pyrollbar-0.16.2/rollbar/test/fastapi_tests/test_utils.py
+--- pyrollbar-0.16.3.orig/rollbar/test/fastapi_tests/test_utils.py
++++ pyrollbar-0.16.3/rollbar/test/fastapi_tests/test_utils.py
@@ -7,14 +7,14 @@ try:
except ImportError:
FASTAPI_INSTALLED = False
@@ -474,10 +474,10 @@
FASTAPI_INSTALLED and ALLOWED_PYTHON_VERSION, 'FastAPI requires Python3.6+'
)
class UtilsBareRoutingTest(BaseTest):
-Index: pyrollbar-0.16.2/rollbar/test/asgi_tests/__init__.py
+Index: pyrollbar-0.16.3/rollbar/test/asgi_tests/__init__.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/asgi_tests/__init__.py
-+++ pyrollbar-0.16.2/rollbar/test/asgi_tests/__init__.py
+--- pyrollbar-0.16.3.orig/rollbar/test/asgi_tests/__init__.py
++++ pyrollbar-0.16.3/rollbar/test/asgi_tests/__init__.py
@@ -1,9 +1,9 @@
import sys
-import unittest2
@@ -490,10 +490,10 @@
if sys.version_info < (3, 5):
-Index: pyrollbar-0.16.2/rollbar/test/asgi_tests/test_middleware.py
+Index: pyrollbar-0.16.3/rollbar/test/asgi_tests/test_middleware.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/asgi_tests/test_middleware.py
-+++ pyrollbar-0.16.2/rollbar/test/asgi_tests/test_middleware.py
+--- pyrollbar-0.16.3.orig/rollbar/test/asgi_tests/test_middleware.py
++++ pyrollbar-0.16.3/rollbar/test/asgi_tests/test_middleware.py
@@ -7,7 +7,7 @@ try:
except ImportError:
import mock
@@ -539,10 +539,10 @@
@mock.patch('logging.Logger.warning')
@mock.patch('rollbar.lib._async.report_exc_info', new_callable=AsyncMock)
@mock.patch('rollbar.report_exc_info')
-Index: pyrollbar-0.16.2/rollbar/test/asgi_tests/test_spec.py
+Index: pyrollbar-0.16.3/rollbar/test/asgi_tests/test_spec.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/asgi_tests/test_spec.py
-+++ pyrollbar-0.16.2/rollbar/test/asgi_tests/test_spec.py
+--- pyrollbar-0.16.3.orig/rollbar/test/asgi_tests/test_spec.py
++++ pyrollbar-0.16.3/rollbar/test/asgi_tests/test_spec.py
@@ -1,14 +1,14 @@
import inspect
import sys
@@ -560,10 +560,10 @@
class ASGISpecTest(BaseTest):
def test_asgi_v3_middleware_is_single_callable_coroutine(self):
from rollbar.contrib.asgi import ReporterMiddleware
-Index: pyrollbar-0.16.2/rollbar/test/async_tests/__init__.py
+Index: pyrollbar-0.16.3/rollbar/test/async_tests/__init__.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/async_tests/__init__.py
-+++ pyrollbar-0.16.2/rollbar/test/async_tests/__init__.py
+--- pyrollbar-0.16.3.orig/rollbar/test/async_tests/__init__.py
++++ pyrollbar-0.16.3/rollbar/test/async_tests/__init__.py
@@ -1,9 +1,9 @@
import sys
-import unittest2
@@ -576,10 +576,10 @@
if sys.version_info < (3, 6):
-Index: pyrollbar-0.16.2/rollbar/test/async_tests/test_async.py
+Index: pyrollbar-0.16.3/rollbar/test/async_tests/test_async.py
===================================================================
---- pyrollbar-0.16.2.orig/rollbar/test/async_tests/test_async.py
-+++ pyrollbar-0.16.2/rollbar/test/async_tests/test_async.py
+--- pyrollbar-0.16.3.orig/rollbar/test/async_tests/test_async.py
++++ pyrollbar-0.16.3/rollbar/test/async_tests/test_async.py
@@ -6,7 +6,7 @@ try:
except ImportError:
import mock
++++++ v0.16.2.tar.gz -> v0.16.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/.github/pull_request_template.md new/pyrollbar-0.16.3/.github/pull_request_template.md
--- old/pyrollbar-0.16.2/.github/pull_request_template.md 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/.github/pull_request_template.md 2022-06-08 12:09:29.000000000 +0200
@@ -1,14 +1,23 @@
## Description of the change
-> Description here
+> Please include a summary of the change and which issues are fixed.
+> Please also include relevant motivation and context.
+
## Type of change
+
- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
+- [ ] Maintenance
+- [ ] New release
## Related issues
-> Fix [#1]()
+> Shortcut stories and GitHub issues (delete irrelevant)
+
+- Fix [SC-]
+- Fix #1
+
## Checklists
### Development
@@ -17,9 +26,9 @@
- [ ] The code changed/added as part of this pull request has been covered with tests
- [ ] All tests related to the changed code pass in development
-### Code review
+### Code review
-- [ ] This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
-- [ ] "Ready for review" label attached to the PR and reviewers mentioned in a comment
+- [ ] This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
+- [ ] "Ready for review" label attached to the PR and reviewers assigned
+- [ ] Issue from task tracker has a link to this pull request
- [ ] Changes have been reviewed by at least one other engineer
-- [ ] Issue from task tracker has a link to this pull request
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/.github/workflows/ci.yml new/pyrollbar-0.16.3/.github/workflows/ci.yml
--- old/pyrollbar-0.16.2/.github/workflows/ci.yml 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/.github/workflows/ci.yml 2022-06-08 12:09:29.000000000 +0200
@@ -26,10 +26,14 @@
- TWISTED_VERSION=16.5.0 treq==16.12.0 zope.interface==4.5.0
- TWISTED_VERSION=16.6.0 treq==16.12.0 zope.interface==4.5.0
- TWISTED_VERSION=17.1.0 treq==16.12.0 zope.interface==4.5.0
- - DJANGO_VERSION=1.11.20
+ - DJANGO_VERSION=1.11.29
- DJANGO_VERSION=2.0.13
- - DJANGO_VERSION=2.1.7
- DJANGO_VERSION=2.1.15
+ - DJANGO_VERSION=2.2.26
+ - DJANGO_VERSION=3.0.14
+ - DJANGO_VERSION=3.1.14
+ - DJANGO_VERSION=3.2.11
+ - DJANGO_VERSION=4.0.1
- PYRAMID_VERSION=1.9.2
- PYRAMID_VERSION=1.10.4
- STARLETTE_VERSION=0.12.12 httpx==0.18.1 python-multipart==0.0.5
@@ -42,18 +46,46 @@
- python-version: 2.7
framework: DJANGO_VERSION=2.0.13
- python-version: 2.7
- framework: DJANGO_VERSION=2.1.7
+ framework: DJANGO_VERSION=2.1.15
+ - python-version: 2.7
+ framework: DJANGO_VERSION=2.2.26
+ - python-version: 2.7
+ framework: DJANGO_VERSION=3.0.14
- python-version: 2.7
+ framework: DJANGO_VERSION=3.1.14
+ - python-version: 2.7
+ framework: DJANGO_VERSION=3.2.11
+ - python-version: 2.7
+ framework: DJANGO_VERSION=4.0.1
+ - python-version: 3.4
framework: DJANGO_VERSION=2.1.15
- python-version: 3.4
- framework: DJANGO_VERSION=2.1.7
+ framework: DJANGO_VERSION=2.2.26
- python-version: 3.4
- framework: DJANGO_VERSION=2.1.15
+ framework: DJANGO_VERSION=3.0.14
+ - python-version: 3.4
+ framework: DJANGO_VERSION=3.1.14
+ - python-version: 3.4
+ framework: DJANGO_VERSION=3.2.11
+ - python-version: 3.4
+ framework: DJANGO_VERSION=4.0.1
- python-version: 3.5
- framework: DJANGO_VERSION=2.1.15
+ framework: DJANGO_VERSION=3.0.14
+ - python-version: 3.5
+ framework: DJANGO_VERSION=3.1.14
+ - python-version: 3.5
+ framework: DJANGO_VERSION=3.2.11
+ - python-version: 3.5
+ framework: DJANGO_VERSION=4.0.1
- python-version: 3.6
- framework: DJANGO_VERSION=2.1.15
+ framework: DJANGO_VERSION=4.0.1
- python-version: 3.7
+ framework: DJANGO_VERSION=4.0.1
+ - python-version: 3.8
+ framework: DJANGO_VERSION=1.11.29
+ - python-version: 3.8
+ framework: DJANGO_VERSION=2.0.13
+ - python-version: 3.8
framework: DJANGO_VERSION=2.1.15
# twisted/treq setup.py allows:
@@ -134,18 +166,6 @@
include:
- python-version: 2.7
framework: FLASK_VERSION=0.9
- - python-version: 3.3
- framework: FLASK_VERSION=0.10.1
- - python-version: 3.3
- framework: FLASK_VERSION=0.11.1
- - python-version: 3.3
- framework: FLASK_VERSION=0.12.4
- - python-version: 3.3
- framework: FLASK_VERSION=1.0.2
- - python-version: 3.3
- framework: DJANGO_VERSION=1.6.11
- - python-version: 3.3
- framework: DJANGO_VERSION=1.8.19
- python-version: 3.4
framework: DJANGO_VERSION=1.7.11
- python-version: 3.4
@@ -185,11 +205,6 @@
- name: Install dependencies
run: pip install setuptools==39.2.0 --force-reinstall
- - name: Python 3.3 dependencies
- if: ${{ matrix.python-version == '3.3' }}
- run: pip install --force-reinstall \
- Werkzeug==0.14.1 six>=1.9.0 requests>=0.12.1 enum34 unittest2 blinker webob
-
- name: Set the framework
run: echo ${{ matrix.framework }} >> $GITHUB_ENV
@@ -217,5 +232,27 @@
if: ${{ contains(matrix.framework, 'FASTAPI_VERSION') }}
run: pip install fastapi==$FASTAPI_VERSION
+ - name: Install Python 2 dependencies
+ if: ${{ contains(matrix.python-version, '2.7') }}
+ # certifi dropped support for Python 2 in 2020.4.5.2 but only started
+ # using Python 3 syntax in 2022.5.18. 2021.10.8 is the last release with
+ # Python 2 support.
+ run: pip install certifi==2021.10.8
+
+ - name: Install Python 3.4 dependencies
+ if: ${{ contains(matrix.python-version, '3.4') }}
+ # certifi uses the 'typing' from Python 3.5 module starting in 2022.5.18
+ run: pip install certifi==2021.10.8 "typing-extensions<4"
+
+ - name: Install Python 3.5 dependencies
+ if: ${{ contains(matrix.python-version, '3.5') }}
+ # typing-extensions dropped support for Python 3.5 in version 4
+ run: pip install "typing-extensions<4"
+
+ - name: Install Python 3.6 dependencies
+ if: ${{ contains(matrix.python-version, '3.6') }}
+ # typing-extensions dropped support for Python 3.6 in version 4.2
+ run: pip install "typing-extensions<4.2"
+
- name: Run tests
run: python setup.py test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/CHANGELOG.md new/pyrollbar-0.16.3/CHANGELOG.md
--- old/pyrollbar-0.16.2/CHANGELOG.md 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/CHANGELOG.md 2022-06-08 12:09:29.000000000 +0200
@@ -2,6 +2,14 @@
The change log is also available on the [GitHub Releases Page](https://github.com/rollbar/pyrollbar/releases).
+**0.16.3**
+
+- Pinned Python 2 CI tests to legacy version of dependencies. See [#408](https://github.com/rollbar/pyrollbar/pull/408)
+- Add PyPI badge for supported Python versions. See [#408](https://github.com/rollbar/pyrollbar/pull/401)
+- Add Django 4.0+ compatibility. See [#408](https://github.com/rollbar/pyrollbar/pull/400)
+- Update PR template. See [#408](https://github.com/rollbar/pyrollbar/pull/395)
+- SC-95272: Remove support for Python 3.3. See [#408](https://github.com/rollbar/pyrollbar/pull/394)
+
**0.16.2**
- Fix building person data in Django. See [#385](https://github.com/rollbar/pyrollbar/pull/385)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/README.md new/pyrollbar-0.16.3/README.md
--- old/pyrollbar-0.16.2/README.md 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/README.md 2022-06-08 12:09:29.000000000 +0200
@@ -1,5 +1,7 @@
# Pyrollbar
+
![Build Status](https://github.com/rollbar/pyrollbar/workflows/Pyrollbar%20CI/badge…
+![PyPI - Python Version](https://img.shields.io/pypi/pyversions/rollbar)
Python notifier for reporting exceptions, errors, and log messages to [Rollbar](https://rollbar.com).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/rollbar/__init__.py new/pyrollbar-0.16.3/rollbar/__init__.py
--- old/pyrollbar-0.16.2/rollbar/__init__.py 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/rollbar/__init__.py 2022-06-08 12:09:29.000000000 +0200
@@ -23,7 +23,7 @@
from rollbar.lib import events, filters, dict_merge, parse_qs, text, transport, urljoin, iteritems, defaultJSONEncode
-__version__ = '0.16.2'
+__version__ = '0.16.3'
__log_name__ = 'rollbar'
log = logging.getLogger(__log_name__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/rollbar/contrib/django/middleware.py new/pyrollbar-0.16.3/rollbar/contrib/django/middleware.py
--- old/pyrollbar-0.16.2/rollbar/contrib/django/middleware.py 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/rollbar/contrib/django/middleware.py 2022-06-08 12:09:29.000000000 +0200
@@ -134,7 +134,7 @@
if new_data in debug.TECHNICAL_500_TEMPLATE:
return
debug.TECHNICAL_500_TEMPLATE = debug.TECHNICAL_500_TEMPLATE.replace(insert_before, replacement, 1)
- else:
+ elif hasattr(debug, 'CURRENT_DIR'):
# patch ExceptionReporter.get_traceback_html if this version of Django is using
# the file system templates rather than the ones in code
# This code comes from:
@@ -152,6 +152,14 @@
c = Context(exception_reporter.get_traceback_data(), use_l10n=False)
return t.render(c)
debug.ExceptionReporter.get_traceback_html = new_get_traceback_html
+ else:
+ # patch ExceptionReporter.get_traceback_html for Django versions 4.0+
+ def new_get_traceback_html(self):
+ """Return HTML version of debug 500 HTTP error page."""
+ with self.html_template_path.open(encoding='utf-8') as fh:
+ t = debug.DEBUG_ENGINE.from_string(fh.read())
+ c = Context(self.get_traceback_data(), use_l10n=False)
+ return t.render(c)
if hasattr(debug.ExceptionReporter, '__rollbar__patched'):
return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyrollbar-0.16.2/setup.py new/pyrollbar-0.16.3/setup.py
--- old/pyrollbar-0.16.2/setup.py 2021-09-22 19:25:23.000000000 +0200
+++ new/pyrollbar-0.16.3/setup.py 2022-06-08 12:09:29.000000000 +0200
@@ -50,7 +50,6 @@
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
- "Programming Language :: Python :: 3.3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
@@ -86,10 +85,6 @@
'requests>=0.12.1; python_version >= "3.6"',
'requests<2.26,>=0.12.1; python_version == "3.5"',
'requests<2.22,>=0.12.1; python_version == "3.4"',
- 'requests<2.19,>=0.12.1; python_version == "3.3"',
- 'requests<1.2,>=0.12.1; python_version == "3.2"',
- 'requests<1.2,>=0.12.1; python_version == "3.1"',
- 'requests<1.2,>=0.12.1; python_version == "3.0"',
'six>=1.9.0'
],
tests_require=tests_require,
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-pytools for openSUSE:Factory checked in at 2023-02-28 12:48:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pytools (Old)
and /work/SRC/openSUSE:Factory/.python-pytools.new.31432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytools"
Tue Feb 28 12:48:34 2023 rev:15 rq:1067990 version:2022.1.14
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pytools/python-pytools.changes 2022-02-15 23:57:47.312296722 +0100
+++ /work/SRC/openSUSE:Factory/.python-pytools.new.31432/python-pytools.changes 2023-02-28 12:48:55.184588642 +0100
@@ -1,0 +2,65 @@
+Tue Feb 21 09:32:17 UTC 2023 - Daniel Garcia <daniel.garcia(a)suse.com>
+
+- update to 2022.1.14:
+ * add get_graph_dot_code and show_dot (#151)
+ * Make GraphT a parametric type alias
+ * graph: create GraphT (#166)
+ * graph: add is_connected (#163)
+ * graph-doc: change CycleError to autoexception
+ * add pytest_raises_on_rank (#162)
+- v2022.1.13
+ * Move Py compat target to 3.8 (closes gh-160)
+ * graph: more mypy annotations
+ * graph: small fixes
+ * convergence: small mypy fixes (#157)
+ * Add validate_graph (#155)
+ * Add reverse_graph
+ * Stop using Self type for the moment
+ * add strtobool() (#150)
+ * Bump versions of various github actions components
+ * UniqueNameGenerator: add documentation (#102)
+- v2022.1.12
+ * Fix type annotation of Record-ish.__slots__; it's a ClassVar
+ * pdict: When building dataclass hash, include type
+- v2022.1.11
+ * pdict: Test support for enums and dataclasses
+ * pdict: Support dataclasses
+ * pdict: allow caching key on frozen instances
+ * persistent_dict: simplify logic using getattr()
+- v2022.1.10
+ * Support Enum values in PersistentDict
+ * use ParamSpec to annotate memoization decorators
+ * Install numpy for pylint runs after hard numpy dep drop
+- v2022.1.9
+ * Drop deprecated memoize_method_with_uncached, fix test
+ * Remove deprecated use of Taggable.copy in test_tag
+ * Make numpy dependency optional
+ * Fix deprecated reference to np.float
+ * Include CITATION.cff in releases
+ * Fix CITATION.cff, add validation CI
+- v2022.1.8
+ * add IgnoredForEqualityTag (#134)
+ * Complete author list in CITATION.cff
+ * Add Zenodo badge, citation info
+- v2022.1.7
+ * UniqueNameGenerator.add_name(s?): new argument `existing_ok`
+- v2022.1.6
+ * Record.__eq__: early exit for identical instances
+- v2022.1.5
+ * Tighten typing_extensions version requirement
+ * ImmutableRecordWithoutPickling.__hash__: tolerate _cached_hash attr disappearing
+- v2022.1.4
+ * Fix type annotation of Taggable.tags_of_type
+ * use math.perm and math.comb if available
+- v2022.1.3
+ * Fix type names in pytools.tag
+ * Placate flake8-bugbear B020
+ * Drop curl insecure (-k) flags from CI, switch ci-support URLs
+ * Downstream CI: use ci-support, add Gitlab
+- v2022.1.2
+ * PersistentDict: add generic KeyBuilder.update_for_type
+- v2022.1.1
+ * Taggable: Do not force copy for tag setting
+ * restrucurte lock file timeout
+
+-------------------------------------------------------------------
Old:
----
pytools-2022.1.tar.gz
New:
----
pytools-2022.1.14.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pytools.spec ++++++
--- /var/tmp/diff_new_pack.HprDwC/_old 2023-02-28 12:48:55.824592799 +0100
+++ /var/tmp/diff_new_pack.HprDwC/_new 2023-02-28 12:48:55.828592825 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-pytools
#
-# 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,11 +16,10 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
%define skip_python36 1
Name: python-pytools
-Version: 2022.1
+Version: 2022.1.14
Release: 0
Summary: A collection of tools for Python
License: MIT
@@ -31,14 +30,13 @@
BuildRequires: %{python_module platformdirs >= 2.2.0}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module typing_extensions if %python-base < 3.11}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-BuildRequires: ( python3-dataclasses >= 0.7 if python3-base <= 3.6 )
-BuildRequires: ( python36-dataclasses >= 0.7 if python36-base )
Requires: python-numpy >= 1.6.0
Requires: python-platformdirs
-%if %{python_version_nodots} <= 36
-Requires: python-dataclasses >= 0.7
+%if %{python_version_nodots} < 311
+Requires: python-typing_extensions
%endif
BuildArch: noarch
%python_subpackages
@@ -72,6 +70,7 @@
%files %{python_files}
%license LICENSE
%doc README.rst
-%{python_sitelib}/*
+%{python_sitelib}/pytools
+%{python_sitelib}/pytools-%{version}*-info
%changelog
++++++ pytools-2022.1.tar.gz -> pytools-2022.1.14.tar.gz ++++++
++++ 2317 lines of diff (skipped)
1
0