Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-eventlet for openSUSE:Factory
checked in at 2022-06-06 11:10:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-eventlet (Old)
and /work/SRC/openSUSE:Factory/.python-eventlet.new.1548 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-eventlet"
Mon Jun 6 11:10:33 2022 rev:41 rq:980778 version:0.33.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-eventlet/python-eventlet.changes
2021-12-30 15:55:17.120648288 +0100
+++
/work/SRC/openSUSE:Factory/.python-eventlet.new.1548/python-eventlet.changes
2022-06-06 11:10:42.131323225 +0200
@@ -1,0 +2,6 @@
+Sat Jun 4 15:20:56 UTC 2022 - Dirk M??ller <[email protected]>
+
+- update to 0.33.1:
+ * Prevent deadlock on logging._lock
+
+-------------------------------------------------------------------
Old:
----
eventlet-0.33.0.tar.gz
New:
----
eventlet-0.33.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-eventlet.spec ++++++
--- /var/tmp/diff_new_pack.ACGj5u/_old 2022-06-06 11:10:42.775324158 +0200
+++ /var/tmp/diff_new_pack.ACGj5u/_new 2022-06-06 11:10:42.779324163 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-eventlet
#
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%bcond_without python2
Name: python-eventlet
-Version: 0.33.0
+Version: 0.33.1
Release: 0
Summary: Concurrent networking library for Python
License: MIT
++++++ eventlet-0.33.0.tar.gz -> eventlet-0.33.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eventlet-0.33.0/NEWS new/eventlet-0.33.1/NEWS
--- old/eventlet-0.33.0/NEWS 2021-11-16 20:59:32.000000000 +0100
+++ new/eventlet-0.33.1/NEWS 2022-05-13 00:10:20.000000000 +0200
@@ -1,3 +1,7 @@
+0.33.1
+======
+* Prevent deadlock on logging._lock
https://github.com/eventlet/eventlet/issues/742
+
0.33.0
======
* green.thread: unlocked Lock().release() should raise exception, returned
True https://github.com/eventlet/eventlet/issues/697
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eventlet-0.33.0/PKG-INFO new/eventlet-0.33.1/PKG-INFO
--- old/eventlet-0.33.0/PKG-INFO 2021-11-16 21:00:11.708561400 +0100
+++ new/eventlet-0.33.1/PKG-INFO 2022-05-13 00:27:29.611452800 +0200
@@ -1,93 +1,11 @@
Metadata-Version: 2.1
Name: eventlet
-Version: 0.33.0
+Version: 0.33.1
Summary: Highly concurrent networking library
Home-page: http://eventlet.net
Author: Linden Lab
Author-email: [email protected]
-License: UNKNOWN
-Description: Eventlet is a concurrent networking library for Python that
allows you to change how you run your code, not how you write it.
-
- It uses epoll or libevent for highly scalable non-blocking I/O.
Coroutines ensure that the developer uses a blocking style of programming that
is similar to threading, but provide the benefits of non-blocking I/O. The
event dispatch is implicit, which means you can easily use Eventlet from the
Python interpreter, or as a small part of a larger application.
-
- It's easy to get started using Eventlet, and easy to convert existing
- applications to use it. Start off by looking at the `examples`_,
- `common design patterns`_, and the list of `basic API primitives`_.
-
- .. _examples: http://eventlet.net/doc/examples.html
- .. _common design patterns:
http://eventlet.net/doc/design_patterns.html
- .. _basic API primitives: http://eventlet.net/doc/basic_usage.html
-
-
- Quick Example
- ===============
-
- Here's something you can try right on the command line::
-
- % python3
- >>> import eventlet
- >>> from eventlet.green.urllib.request import urlopen
- >>> gt = eventlet.spawn(urlopen, 'http://eventlet.net')
- >>> gt2 = eventlet.spawn(urlopen, 'http://secondlife.com')
- >>> gt2.wait()
- >>> gt.wait()
-
-
- Getting Eventlet
- ==================
-
- The easiest way to get Eventlet is to use pip::
-
- pip install -U eventlet
-
- To install latest development version once::
-
- pip install -U
https://github.com/eventlet/eventlet/archive/master.zip
-
-
- Building the Docs Locally
- =========================
-
- To build a complete set of HTML documentation, you must have Sphinx,
which can be found at http://sphinx.pocoo.org/ (or installed with `pip install
Sphinx`)::
-
- cd doc
- make html
-
- The built html files can be found in doc/_build/html afterward.
-
-
- Twisted
- =======
-
- Eventlet had Twisted hub in the past, but community interest to this
integration has dropped over time,
- now it is not supported, so with apologies for any inconvenience we
discontinue Twisted integration.
-
- If you have a project that uses Eventlet with Twisted, your options
are:
-
- * use last working release eventlet==0.14
- * start a new project with only Twisted hub code, identify and fix
problems. As of eventlet 0.13, `EVENTLET_HUB` environment variable can point to
external modules.
- * fork Eventlet, revert Twisted removal, identify and fix problems.
This work may be merged back into main project.
-
- Apologies for any inconvenience.
-
- Supported Python versions
- =========================
-
- Currently CPython 2.7 and 3.4+ are supported, but **2.7 and 3.4
support is deprecated and will be removed in the future**, only CPython 3.5+
support will remain.
-
- Flair
- =====
-
- .. image:: https://img.shields.io/pypi/v/eventlet
- :target: https://pypi.org/project/eventlet/
-
- .. image::
https://img.shields.io/github/workflow/status/eventlet/eventlet/test/master
- :target:
https://github.com/eventlet/eventlet/actions?query=workflow%3Atest+branch%3Amaster
-
- .. image::
https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/eventlet/eventlet
-
-Platform: UNKNOWN
+Project-URL: Source, https://github.com/eventlet/eventlet
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
@@ -105,3 +23,86 @@
Classifier: Programming Language :: Python
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
+License-File: LICENSE
+License-File: AUTHORS
+
+Eventlet is a concurrent networking library for Python that allows you to
change how you run your code, not how you write it.
+
+It uses epoll or libevent for highly scalable non-blocking I/O. Coroutines
ensure that the developer uses a blocking style of programming that is similar
to threading, but provide the benefits of non-blocking I/O. The event dispatch
is implicit, which means you can easily use Eventlet from the Python
interpreter, or as a small part of a larger application.
+
+It's easy to get started using Eventlet, and easy to convert existing
+applications to use it. Start off by looking at the `examples`_,
+`common design patterns`_, and the list of `basic API primitives`_.
+
+.. _examples: http://eventlet.net/doc/examples.html
+.. _common design patterns: http://eventlet.net/doc/design_patterns.html
+.. _basic API primitives: http://eventlet.net/doc/basic_usage.html
+
+
+Quick Example
+===============
+
+Here's something you can try right on the command line::
+
+ % python3
+ >>> import eventlet
+ >>> from eventlet.green.urllib.request import urlopen
+ >>> gt = eventlet.spawn(urlopen, 'http://eventlet.net')
+ >>> gt2 = eventlet.spawn(urlopen, 'http://secondlife.com')
+ >>> gt2.wait()
+ >>> gt.wait()
+
+
+Getting Eventlet
+==================
+
+The easiest way to get Eventlet is to use pip::
+
+ pip install -U eventlet
+
+To install latest development version once::
+
+ pip install -U https://github.com/eventlet/eventlet/archive/master.zip
+
+
+Building the Docs Locally
+=========================
+
+To build a complete set of HTML documentation, you must have Sphinx, which can
be found at http://sphinx.pocoo.org/ (or installed with `pip install Sphinx`)::
+
+ cd doc
+ make html
+
+The built html files can be found in doc/_build/html afterward.
+
+
+Twisted
+=======
+
+Eventlet had Twisted hub in the past, but community interest to this
integration has dropped over time,
+now it is not supported, so with apologies for any inconvenience we
discontinue Twisted integration.
+
+If you have a project that uses Eventlet with Twisted, your options are:
+
+* use last working release eventlet==0.14
+* start a new project with only Twisted hub code, identify and fix problems.
As of eventlet 0.13, `EVENTLET_HUB` environment variable can point to external
modules.
+* fork Eventlet, revert Twisted removal, identify and fix problems. This work
may be merged back into main project.
+
+Apologies for any inconvenience.
+
+Supported Python versions
+=========================
+
+Currently CPython 2.7 and 3.4+ are supported, but **2.7 and 3.4 support is
deprecated and will be removed in the future**, only CPython 3.5+ support will
remain.
+
+Flair
+=====
+
+.. image:: https://img.shields.io/pypi/v/eventlet
+ :target: https://pypi.org/project/eventlet/
+
+.. image::
https://img.shields.io/github/workflow/status/eventlet/eventlet/test/master
+ :target:
https://github.com/eventlet/eventlet/actions?query=workflow%3Atest+branch%3Amaster
+
+.. image::
https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/eventlet/eventlet
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eventlet-0.33.0/eventlet/__init__.py
new/eventlet-0.33.1/eventlet/__init__.py
--- old/eventlet-0.33.0/eventlet/__init__.py 2021-11-16 20:59:32.000000000
+0100
+++ new/eventlet-0.33.1/eventlet/__init__.py 2022-05-13 00:08:37.000000000
+0200
@@ -8,7 +8,7 @@
DeprecationWarning,
)
-version_info = (0, 33, 0)
+version_info = (0, 33, 1)
__version__ = '.'.join(map(str, version_info))
# This is to make Debian packaging easier, it ignores import
# errors of greenlet so that the packager can still at least
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eventlet-0.33.0/eventlet/lock.py
new/eventlet-0.33.1/eventlet/lock.py
--- old/eventlet-0.33.0/eventlet/lock.py 2021-11-16 20:59:32.000000000
+0100
+++ new/eventlet-0.33.1/eventlet/lock.py 2022-02-04 20:33:38.000000000
+0100
@@ -1,3 +1,4 @@
+from eventlet import hubs
from eventlet.semaphore import Semaphore
@@ -21,7 +22,15 @@
if self.counter > 0:
raise RuntimeError("release unlocked lock")
- return super(Lock, self).release(blocking=blocking)
+ # Consciously *do not* call super().release(), but instead inline
+ # Semaphore.release() here. We've seen issues with logging._lock
+ # deadlocking because garbage collection happened to run mid-release
+ # and eliminating the extra stack frame should help prevent that.
+ # See https://github.com/eventlet/eventlet/issues/742
+ self.counter += 1
+ if self._waiters:
+ hubs.get_hub().schedule_call_global(0, self._do_acquire)
+ return True
def _at_fork_reinit(self):
self.counter = 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eventlet-0.33.0/eventlet.egg-info/PKG-INFO
new/eventlet-0.33.1/eventlet.egg-info/PKG-INFO
--- old/eventlet-0.33.0/eventlet.egg-info/PKG-INFO 2021-11-16
21:00:11.000000000 +0100
+++ new/eventlet-0.33.1/eventlet.egg-info/PKG-INFO 2022-05-13
00:27:29.000000000 +0200
@@ -1,93 +1,11 @@
Metadata-Version: 2.1
Name: eventlet
-Version: 0.33.0
+Version: 0.33.1
Summary: Highly concurrent networking library
Home-page: http://eventlet.net
Author: Linden Lab
Author-email: [email protected]
-License: UNKNOWN
-Description: Eventlet is a concurrent networking library for Python that
allows you to change how you run your code, not how you write it.
-
- It uses epoll or libevent for highly scalable non-blocking I/O.
Coroutines ensure that the developer uses a blocking style of programming that
is similar to threading, but provide the benefits of non-blocking I/O. The
event dispatch is implicit, which means you can easily use Eventlet from the
Python interpreter, or as a small part of a larger application.
-
- It's easy to get started using Eventlet, and easy to convert existing
- applications to use it. Start off by looking at the `examples`_,
- `common design patterns`_, and the list of `basic API primitives`_.
-
- .. _examples: http://eventlet.net/doc/examples.html
- .. _common design patterns:
http://eventlet.net/doc/design_patterns.html
- .. _basic API primitives: http://eventlet.net/doc/basic_usage.html
-
-
- Quick Example
- ===============
-
- Here's something you can try right on the command line::
-
- % python3
- >>> import eventlet
- >>> from eventlet.green.urllib.request import urlopen
- >>> gt = eventlet.spawn(urlopen, 'http://eventlet.net')
- >>> gt2 = eventlet.spawn(urlopen, 'http://secondlife.com')
- >>> gt2.wait()
- >>> gt.wait()
-
-
- Getting Eventlet
- ==================
-
- The easiest way to get Eventlet is to use pip::
-
- pip install -U eventlet
-
- To install latest development version once::
-
- pip install -U
https://github.com/eventlet/eventlet/archive/master.zip
-
-
- Building the Docs Locally
- =========================
-
- To build a complete set of HTML documentation, you must have Sphinx,
which can be found at http://sphinx.pocoo.org/ (or installed with `pip install
Sphinx`)::
-
- cd doc
- make html
-
- The built html files can be found in doc/_build/html afterward.
-
-
- Twisted
- =======
-
- Eventlet had Twisted hub in the past, but community interest to this
integration has dropped over time,
- now it is not supported, so with apologies for any inconvenience we
discontinue Twisted integration.
-
- If you have a project that uses Eventlet with Twisted, your options
are:
-
- * use last working release eventlet==0.14
- * start a new project with only Twisted hub code, identify and fix
problems. As of eventlet 0.13, `EVENTLET_HUB` environment variable can point to
external modules.
- * fork Eventlet, revert Twisted removal, identify and fix problems.
This work may be merged back into main project.
-
- Apologies for any inconvenience.
-
- Supported Python versions
- =========================
-
- Currently CPython 2.7 and 3.4+ are supported, but **2.7 and 3.4
support is deprecated and will be removed in the future**, only CPython 3.5+
support will remain.
-
- Flair
- =====
-
- .. image:: https://img.shields.io/pypi/v/eventlet
- :target: https://pypi.org/project/eventlet/
-
- .. image::
https://img.shields.io/github/workflow/status/eventlet/eventlet/test/master
- :target:
https://github.com/eventlet/eventlet/actions?query=workflow%3Atest+branch%3Amaster
-
- .. image::
https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg
- :target: https://codecov.io/gh/eventlet/eventlet
-
-Platform: UNKNOWN
+Project-URL: Source, https://github.com/eventlet/eventlet
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
@@ -105,3 +23,86 @@
Classifier: Programming Language :: Python
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
+License-File: LICENSE
+License-File: AUTHORS
+
+Eventlet is a concurrent networking library for Python that allows you to
change how you run your code, not how you write it.
+
+It uses epoll or libevent for highly scalable non-blocking I/O. Coroutines
ensure that the developer uses a blocking style of programming that is similar
to threading, but provide the benefits of non-blocking I/O. The event dispatch
is implicit, which means you can easily use Eventlet from the Python
interpreter, or as a small part of a larger application.
+
+It's easy to get started using Eventlet, and easy to convert existing
+applications to use it. Start off by looking at the `examples`_,
+`common design patterns`_, and the list of `basic API primitives`_.
+
+.. _examples: http://eventlet.net/doc/examples.html
+.. _common design patterns: http://eventlet.net/doc/design_patterns.html
+.. _basic API primitives: http://eventlet.net/doc/basic_usage.html
+
+
+Quick Example
+===============
+
+Here's something you can try right on the command line::
+
+ % python3
+ >>> import eventlet
+ >>> from eventlet.green.urllib.request import urlopen
+ >>> gt = eventlet.spawn(urlopen, 'http://eventlet.net')
+ >>> gt2 = eventlet.spawn(urlopen, 'http://secondlife.com')
+ >>> gt2.wait()
+ >>> gt.wait()
+
+
+Getting Eventlet
+==================
+
+The easiest way to get Eventlet is to use pip::
+
+ pip install -U eventlet
+
+To install latest development version once::
+
+ pip install -U https://github.com/eventlet/eventlet/archive/master.zip
+
+
+Building the Docs Locally
+=========================
+
+To build a complete set of HTML documentation, you must have Sphinx, which can
be found at http://sphinx.pocoo.org/ (or installed with `pip install Sphinx`)::
+
+ cd doc
+ make html
+
+The built html files can be found in doc/_build/html afterward.
+
+
+Twisted
+=======
+
+Eventlet had Twisted hub in the past, but community interest to this
integration has dropped over time,
+now it is not supported, so with apologies for any inconvenience we
discontinue Twisted integration.
+
+If you have a project that uses Eventlet with Twisted, your options are:
+
+* use last working release eventlet==0.14
+* start a new project with only Twisted hub code, identify and fix problems.
As of eventlet 0.13, `EVENTLET_HUB` environment variable can point to external
modules.
+* fork Eventlet, revert Twisted removal, identify and fix problems. This work
may be merged back into main project.
+
+Apologies for any inconvenience.
+
+Supported Python versions
+=========================
+
+Currently CPython 2.7 and 3.4+ are supported, but **2.7 and 3.4 support is
deprecated and will be removed in the future**, only CPython 3.5+ support will
remain.
+
+Flair
+=====
+
+.. image:: https://img.shields.io/pypi/v/eventlet
+ :target: https://pypi.org/project/eventlet/
+
+.. image::
https://img.shields.io/github/workflow/status/eventlet/eventlet/test/master
+ :target:
https://github.com/eventlet/eventlet/actions?query=workflow%3Atest+branch%3Amaster
+
+.. image::
https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/eventlet/eventlet
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/eventlet-0.33.0/setup.py new/eventlet-0.33.1/setup.py
--- old/eventlet-0.33.0/setup.py 2021-11-16 20:59:32.000000000 +0100
+++ new/eventlet-0.33.1/setup.py 2022-03-02 11:13:27.000000000 +0100
@@ -13,6 +13,9 @@
author='Linden Lab',
author_email='[email protected]',
url='http://eventlet.net',
+ project_urls={
+ 'Source': 'https://github.com/eventlet/eventlet',
+ },
packages=setuptools.find_packages(exclude=['benchmarks', 'tests',
'tests.*']),
install_requires=(
'dnspython >= 1.15.0',