Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-thespian for openSUSE:Factory
checked in at 2023-12-08 22:33:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-thespian (Old)
and /work/SRC/openSUSE:Factory/.python-thespian.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-thespian"
Fri Dec 8 22:33:25 2023 rev:5 rq:1132082 version:3.10.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-thespian/python-thespian.changes
2022-10-12 18:25:56.945852985 +0200
+++
/work/SRC/openSUSE:Factory/.python-thespian.new.25432/python-thespian.changes
2023-12-08 22:34:20.561053813 +0100
@@ -1,0 +2,6 @@
+Fri Dec 8 12:23:36 UTC 2023 - Dirk Müller <[email protected]>
+
+- update to 3.10.7:
+ * Fix Issue #70: setting TCP_NODELAY on MacOS sometimes fails
+
+-------------------------------------------------------------------
Old:
----
thespian-3.10.6.zip
New:
----
thespian-3.10.7.zip
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-thespian.spec ++++++
--- /var/tmp/diff_new_pack.mkV7bN/_old 2023-12-08 22:34:21.193077068 +0100
+++ /var/tmp/diff_new_pack.mkV7bN/_new 2023-12-08 22:34:21.193077068 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-thespian
#
-# 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-thespian
-Version: 3.10.6
+Version: 3.10.7
Release: 0
Summary: Python Actor concurrency library
License: MIT
++++++ thespian-3.10.6.zip -> thespian-3.10.7.zip ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/thespian-3.10.6/PKG-INFO new/thespian-3.10.7/PKG-INFO
--- old/thespian-3.10.6/PKG-INFO 2022-01-09 21:01:04.000000000 +0100
+++ new/thespian-3.10.7/PKG-INFO 2023-01-15 23:07:50.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: thespian
-Version: 3.10.6
+Version: 3.10.7
Summary: Python Actor concurrency library
Home-page: http://thespianpy.com
Author: Kevin Quick
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/thespian-3.10.6/doc/releases.org
new/thespian-3.10.7/doc/releases.org
--- old/thespian-3.10.6/doc/releases.org 2022-01-09 16:02:06.000000000
+0100
+++ new/thespian-3.10.7/doc/releases.org 2023-01-15 22:57:12.000000000
+0100
@@ -10,7 +10,7 @@
#+LATEX_HEADER: \product{Thespian}
#+LATEX_HEADER: \component{Python Actor System}
#+LATEX_HEADER: \doctype{Release Notes}
-#+LATEX_HEADER: \docrev{3.10.6}{2022 Jan 09}
+#+LATEX_HEADER: \docrev{3.10.7}{2023 Jan 15}
#+LATEX_HEADER: \docid{TheDoc-06}
#+OPTIONS: ^:nil num:nil
@@ -20,6 +20,15 @@
do not change the API.
* Summary
+
+** 2023
+
+ | Release | Date | Significant Bugfixes
| Significant Features |
+
|---------+------------+---------------------------------------------------------------+----------------------|
+ | 3.10.7 | 2023-01-15 | Fix
[[https://github.com/thespianpy/Thespian/issues/70][Issue #70]]: setting
~TCP_NODELAY~ on MacOS sometimes fails | |
+ | | |
| |
+
+
** 2022
| Release | Date | Significant Bugfixes | Significant Features
|
@@ -186,6 +195,12 @@
** 3.10
+*** 3.10.7 <2023-01-15 Sun>
+
+ * Fixes issue 70 where spurious connections would not allow setting
+ ~TCP_NODELAY~ on the incoming socket (probably due to non-TCP connection
+ attempt or Ipv6 alternate headers).
+
*** 3.10.6 <2022-01-09 Sun>
* Adds Beta support for convention fault tolerance by allowing the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/thespian-3.10.6/setup.py new/thespian-3.10.7/setup.py
--- old/thespian-3.10.6/setup.py 2022-01-09 16:02:06.000000000 +0100
+++ new/thespian-3.10.7/setup.py 2023-01-15 22:57:30.000000000 +0100
@@ -2,7 +2,7 @@
setup(
name = 'thespian',
- version = '3.10.6',
+ version = '3.10.7',
description = 'Python Actor concurrency library',
author = 'Kevin Quick',
author_email = '[email protected]',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/thespian-3.10.6/thespian/system/transport/TCPTransport.py
new/thespian-3.10.7/thespian/system/transport/TCPTransport.py
--- old/thespian-3.10.6/thespian/system/transport/TCPTransport.py
2022-01-09 15:59:26.000000000 +0100
+++ new/thespian-3.10.7/thespian/system/transport/TCPTransport.py
2023-01-15 22:45:44.000000000 +0100
@@ -856,8 +856,14 @@
intent.socket.setblocking(0)
# Disable Nagle to transmit headers and acks asap; our sends
# are usually small
- intent.socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
-
+ try:
+ intent.socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
+ except OSError as e:
+ if e.errno == errno.EINVAL:
+ # See note elsewhere regarding Issue#70.
+ pass
+ else:
+ raise
try:
intent.socket.connect(*intent.targetAddr
.addressDetails.connectArgs)
@@ -1344,6 +1350,12 @@
accepted = False
try:
lsock, rmtTxAddr = self.new_socket(self.socket.accept)
+ if (lsock.proto != socket.IPPROTO_TCP
+ or lsock.family != socket.AF_INET
+ or lsock.type != socket.SOCK_STREAM):
+ # Spurious connection attempt: ignore
+ lsock.close()
+ return
accepted = True
except (OSError, socket.error) as ex:
thesplog('Error accepting incoming: %s', ex)
@@ -1354,7 +1366,21 @@
return
lsock.setblocking(0)
# Disable Nagle to transmit headers and acks asap
- lsock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
+ try:
+ lsock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
+ except OSError as e:
+ if e.errno == errno.EINVAL:
+ # Issue#70: Some system socket code (e.g. MacOS) does not allow
+ # this socket option to be set if the socket is not fully setup
+ # or is being torn down. Not applying this setting can degrade
+ # performance due to Nagle-algorithm delays since Thespian
+ # operation usually consists of small packets exchanged in
+ # handshake manner rather than longer streams of larger data.
See
+ # https://github.com/envoy/proxy/envoy/issues/1446 for
additional
+ # information.
+ pass
+ else:
+ raise
# Note that the TCPIncoming is initially None.
# Due to the way sockets work, the transmit comes from a
# system-selected port that is different from the port that
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/thespian-3.10.6/thespian.egg-info/PKG-INFO
new/thespian-3.10.7/thespian.egg-info/PKG-INFO
--- old/thespian-3.10.6/thespian.egg-info/PKG-INFO 2022-01-09
21:01:04.000000000 +0100
+++ new/thespian-3.10.7/thespian.egg-info/PKG-INFO 2023-01-15
23:07:50.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: thespian
-Version: 3.10.6
+Version: 3.10.7
Summary: Python Actor concurrency library
Home-page: http://thespianpy.com
Author: Kevin Quick