Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-Twisted for openSUSE:Factory checked in at 2025-09-30 17:34:36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-Twisted (Old) and /work/SRC/openSUSE:Factory/.python-Twisted.new.11973 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-Twisted" Tue Sep 30 17:34:36 2025 rev:75 rq:1307729 version:25.5.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-Twisted/python-Twisted.changes 2025-08-13 16:24:04.164369791 +0200 +++ /work/SRC/openSUSE:Factory/.python-Twisted.new.11973/python-Twisted.changes 2025-09-30 17:34:46.922076960 +0200 @@ -1,0 +2,17 @@ +Fri Sep 26 09:06:02 UTC 2025 - Markéta Machová <[email protected]> + +- Update to 25.5.0 + * twisted.internet.interfaces.IReactorMulticast now accept IPv6 + literals and allow for IPv6 multicast. + * TCP throughput when sending data is slightly faster. + * twisted.trial.unittest.TestCase.defer* methods were removed and + converted to private methods. + * Deprecations and removals in twisted.internet.defer + * twisted.conch.client.direct.SSHClientTransport.verifyHostKey no + longer crashes with an encoding error while attempting to verify + the peer's IP address. + * The twisted.web.websockets module has been added, adding a + websockets server and client based on the wsproto library. +- Add py314.patch to fix or skip tests failing with Python 3.14 + +------------------------------------------------------------------- Old: ---- twisted-24.10.0.tar.gz New: ---- py314.patch twisted-25.5.0.tar.gz ----------(New B)---------- New: websockets server and client based on the wsproto library. - Add py314.patch to fix or skip tests failing with Python 3.14 ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-Twisted.spec ++++++ --- /var/tmp/diff_new_pack.JUTXi5/_old 2025-09-30 17:34:50.234212741 +0200 +++ /var/tmp/diff_new_pack.JUTXi5/_new 2025-09-30 17:34:50.234212741 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-Twisted # -# Copyright (c) 2025 SUSE LLC +# Copyright (c) 2025 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -31,7 +31,7 @@ %endif %{?sle15_python_module_pythons} Name: python-Twisted%{psuffix} -Version: 24.10.0 +Version: 25.5.0 Release: 0 Summary: An asynchronous networking framework written in Python License: MIT @@ -49,6 +49,8 @@ Patch5: no-cython_test_exception_raiser.patch # PATCH-FIX-OPENSUSE remove-dependency-version-upper-bounds.patch boo#1190036 -- run with h2 >= 4.0.0 and priority >= 2.0 Patch6: remove-dependency-version-upper-bounds.patch +# PATCH-FIX-UPSTREAM https://github.com/twisted/twisted/issues/12430 Add support for Python 3.14 +Patch7: py314.patch BuildRequires: %{python_module hatch-fancy-pypi-readme} BuildRequires: %{python_module hatchling} BuildRequires: %{python_module incremental >= 24.7.0} ++++++ py314.patch ++++++ Index: twisted-25.5.0/src/twisted/internet/asyncioreactor.py =================================================================== --- twisted-25.5.0.orig/src/twisted/internet/asyncioreactor.py +++ twisted-25.5.0/src/twisted/internet/asyncioreactor.py @@ -9,7 +9,7 @@ asyncio-based reactor implementation. import errno import sys -from asyncio import AbstractEventLoop, get_event_loop +from asyncio import AbstractEventLoop, get_running_loop, new_event_loop, set_event_loop from typing import Dict, Optional, Type from zope.interface import implementer @@ -47,7 +47,11 @@ class AsyncioSelectorReactor(PosixReacto def __init__(self, eventloop: Optional[AbstractEventLoop] = None): if eventloop is None: - _eventloop: AbstractEventLoop = get_event_loop() + try: + _eventloop: AbstractEventLoop = get_running_loop() + except RuntimeError: + _eventloop: AbstractEventLoop = new_event_loop() + set_event_loop(_eventloop) else: _eventloop = eventloop Index: twisted-25.5.0/src/twisted/web/test/test_webclient.py =================================================================== --- twisted-25.5.0.orig/src/twisted/web/test/test_webclient.py +++ twisted-25.5.0/src/twisted/web/test/test_webclient.py @@ -5,7 +5,8 @@ Tests L{twisted.web.client} helper APIs """ - +import sys +from unittest import SkipTest from urllib.parse import urlparse from twisted.trial import unittest @@ -23,6 +24,9 @@ class URLJoinTests(unittest.TestCase): resulting URL if neither the base nor the new path include a fragment identifier. """ + if sys.version_info[1] == 14: + raise SkipTest("https://github.com/twisted/twisted/issues/12427") + self.assertEqual( client._urljoin(b"http://foo.com/bar", b"/quux"), b"http://foo.com/quux" ) ++++++ remove-dependency-version-upper-bounds.patch ++++++ --- /var/tmp/diff_new_pack.JUTXi5/_old 2025-09-30 17:34:50.338217129 +0200 +++ /var/tmp/diff_new_pack.JUTXi5/_new 2025-09-30 17:34:50.342217298 +0200 @@ -1,7 +1,7 @@ -Index: twisted-24.10.0/pyproject.toml +Index: twisted-25.5.0/pyproject.toml =================================================================== ---- twisted-24.10.0.orig/pyproject.toml -+++ twisted-24.10.0/pyproject.toml +--- twisted-25.5.0.orig/pyproject.toml ++++ twisted-25.5.0/pyproject.toml @@ -97,8 +97,8 @@ serial = [ ] @@ -12,5 +12,5 @@ + "priority >= 1.1.0", ] - all-non-platform = [ + websocket = [ ++++++ skip_MultiCast.patch ++++++ --- /var/tmp/diff_new_pack.JUTXi5/_old 2025-09-30 17:34:50.362218142 +0200 +++ /var/tmp/diff_new_pack.JUTXi5/_new 2025-09-30 17:34:50.366218311 +0200 @@ -2,21 +2,21 @@ src/twisted/test/test_udp.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -Index: twisted-24.3.0/src/twisted/test/test_udp.py +Index: twisted-25.5.0/src/twisted/test/test_udp.py =================================================================== ---- twisted-24.3.0.orig/src/twisted/test/test_udp.py -+++ twisted-24.3.0/src/twisted/test/test_udp.py -@@ -8,7 +8,7 @@ Tests for implementations of L{IReactorU - - - import os +--- twisted-25.5.0.orig/src/twisted/test/test_udp.py ++++ twisted-25.5.0/src/twisted/test/test_udp.py +@@ -22,7 +22,7 @@ from socket import ( + inet_pton, + socket, + ) -from unittest import skipIf +from unittest import skipIf, SkipTest from twisted.internet import defer, error, interfaces, protocol, reactor, udp - from twisted.internet.defer import Deferred, gatherResults, maybeDeferred -@@ -578,6 +578,7 @@ class MulticastTests(TestCase): - skip = "This reactor does not support multicast" + from twisted.internet.address import IPv4Address, IPv6Address +@@ -638,6 +638,7 @@ class MulticastTests(TestCase): + wrongAddressFamily: str = "::1" def setUp(self): + raise SkipTest("Multicast networking doesn't work with OBS") ++++++ twisted-24.10.0.tar.gz -> twisted-25.5.0.tar.gz ++++++ ++++ 12840 lines of diff (skipped)
