Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-jeepney for openSUSE:Factory checked in at 2021-09-09 23:07:17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-jeepney (Old) and /work/SRC/openSUSE:Factory/.python-jeepney.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-jeepney" Thu Sep 9 23:07:17 2021 rev:8 rq:917207 version:0.7.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-jeepney/python-jeepney.changes 2021-07-21 19:05:43.975224022 +0200 +++ /work/SRC/openSUSE:Factory/.python-jeepney.new.1899/python-jeepney.changes 2021-09-09 23:07:19.420815602 +0200 @@ -1,0 +2,9 @@ +Tue Sep 7 06:51:44 UTC 2021 - Dirk M??ller <dmuel...@suse.com> + +- update to 0.7.1: + * Add ``async with`` support to :class:`~.asyncio.DBusConnection` in the + asyncio integration. + * Fix calling :meth:`~.asyncio.DBusConnection.receive` immediately after opening + a connection in the asyncio integration. + +------------------------------------------------------------------- Old: ---- jeepney-0.7.0.tar.gz New: ---- jeepney-0.7.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-jeepney.spec ++++++ --- /var/tmp/diff_new_pack.qF8Y1b/_old 2021-09-09 23:07:19.968816238 +0200 +++ /var/tmp/diff_new_pack.qF8Y1b/_new 2021-09-09 23:07:19.968816238 +0200 @@ -19,7 +19,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-jeepney -Version: 0.7.0 +Version: 0.7.1 Release: 0 Summary: Low-level, pure Python DBus protocol wrapper License: MIT ++++++ jeepney-0.7.0.tar.gz -> jeepney-0.7.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/PKG-INFO new/jeepney-0.7.1/PKG-INFO --- old/jeepney-0.7.0/PKG-INFO 1970-01-01 01:00:00.000000000 +0100 +++ new/jeepney-0.7.1/PKG-INFO 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +1,36 @@ -Metadata-Version: 1.1 +Metadata-Version: 2.1 Name: jeepney -Version: 0.7.0 +Version: 0.7.1 Summary: Low-level, pure Python DBus protocol wrapper. Home-page: https://gitlab.com/takluyver/jeepney Author: Thomas Kluyver Author-email: tho...@kluyver.me.uk +Requires-Python: >=3.6 +Description-Content-Type: text/x-rst +Classifier: License :: OSI Approved :: MIT License +Classifier: Programming Language :: Python :: 3 +Classifier: Topic :: Desktop Environment +Requires-Dist: pytest ; extra == "test" +Requires-Dist: pytest-trio ; extra == "test" +Requires-Dist: pytest-asyncio ; extra == "test" +Requires-Dist: testpath ; extra == "test" +Requires-Dist: trio ; extra == "test" +Requires-Dist: async-timeout ; extra == "test" +Requires-Dist: trio ; extra == "trio" +Requires-Dist: async_generator ; extra == "trio" and ( python_version == '3.6') +Project-URL: Documentation, https://jeepney.readthedocs.io/en/latest/ +Provides-Extra: test +Provides-Extra: trio + +Jeepney is a pure Python implementation of D-Bus messaging. It has an `I/O-free +<https://sans-io.readthedocs.io/>`__ core, and integration modules for different +event loops. + +D-Bus is an inter-process communication system, mainly used in Linux. + +To install Jeepney:: + + pip install jeepney + +`Jeepney docs on Readthedocs <https://jeepney.readthedocs.io/en/latest/>`__ + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/docs/release-notes.rst new/jeepney-0.7.1/docs/release-notes.rst --- old/jeepney-0.7.0/docs/release-notes.rst 2021-07-10 17:33:24.430999300 +0200 +++ new/jeepney-0.7.1/docs/release-notes.rst 2021-07-28 20:11:30.162086700 +0200 @@ -1,6 +1,16 @@ Release notes ============= +0.7.1 +----- + +* Add ``async with`` support to :class:`~.asyncio.DBusConnection` in the + asyncio integration. +* Fix calling :meth:`~.asyncio.DBusConnection.receive` immediately after opening + a connection in the asyncio integration. + +Thanks to Aleksandr Mezin for these changes. + 0.7 --- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/jeepney/__init__.py new/jeepney-0.7.1/jeepney/__init__.py --- old/jeepney-0.7.0/jeepney/__init__.py 2021-07-10 17:34:38.100478200 +0200 +++ new/jeepney-0.7.1/jeepney/__init__.py 2021-07-28 20:14:49.446394400 +0200 @@ -10,4 +10,4 @@ from .fds import FileDescriptor, NoFDError from .wrappers import * -__version__ = '0.7.0' +__version__ = '0.7.1' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/jeepney/io/asyncio.py new/jeepney-0.7.1/jeepney/io/asyncio.py --- old/jeepney-0.7.0/jeepney/io/asyncio.py 2021-07-10 17:19:49.191029500 +0200 +++ new/jeepney-0.7.1/jeepney/io/asyncio.py 2021-07-28 20:01:50.141005500 +0200 @@ -1,4 +1,5 @@ import asyncio +import contextlib from itertools import count from typing import Optional @@ -53,6 +54,12 @@ self.writer.close() await self.writer.wait_closed() + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc_val, exc_tb): + await self.close() + async def open_dbus_connection(bus='SESSION'): """Open a plain D-Bus connection @@ -145,7 +152,10 @@ async def __aexit__(self, exc_type, exc_val, exc_tb): if self._rcv_task.done(): self._rcv_task.result() # Throw exception if receive task failed - self._rcv_task.cancel() + else: + self._rcv_task.cancel() + with contextlib.suppress(asyncio.CancelledError): + await self._rcv_task return False # Code to run in receiver task ------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/jeepney/io/tests/test_asyncio.py new/jeepney-0.7.1/jeepney/io/tests/test_asyncio.py --- old/jeepney-0.7.0/jeepney/io/tests/test_asyncio.py 2021-07-10 17:19:49.192029500 +0200 +++ new/jeepney-0.7.1/jeepney/io/tests/test_asyncio.py 2021-07-28 20:01:50.141005500 +0200 @@ -1,5 +1,6 @@ import asyncio +import async_timeout import pytest from jeepney import DBusAddress, new_method_call @@ -25,9 +26,8 @@ @pytest.fixture() async def connection(): - conn = await open_dbus_connection(bus='SESSION') - yield conn - await conn.close() + async with (await open_dbus_connection(bus='SESSION')) as conn: + yield conn async def test_connect(connection): assert connection.unique_name.startswith(':') @@ -75,3 +75,16 @@ signal_msg = await asyncio.wait_for(queue.get(), timeout=2.0) assert signal_msg.body == (name, '', router.unique_name) + +async def test_recv_after_connect(): + # Can't use here: + # 1. 'connection' fixture + # 2. asyncio.wait_for() + # If (1) and/or (2) is used, the error won't be triggered. + conn = await open_dbus_connection(bus='SESSION') + try: + with pytest.raises(asyncio.TimeoutError): + async with async_timeout.timeout(0): + await conn.receive() + finally: + await conn.close() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/pyproject.toml new/jeepney-0.7.1/pyproject.toml --- old/jeepney-0.7.0/pyproject.toml 2021-07-10 17:19:49.194029600 +0200 +++ new/jeepney-0.7.1/pyproject.toml 2021-07-28 20:01:50.141005500 +0200 @@ -22,6 +22,7 @@ "pytest-asyncio", "testpath", "trio", + "async-timeout", ] trio = [ "trio", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jeepney-0.7.0/setup.py new/jeepney-0.7.1/setup.py --- old/jeepney-0.7.0/setup.py 1970-01-01 01:00:00.000000000 +0100 +++ new/jeepney-0.7.1/setup.py 1970-01-01 01:00:00.000000000 +0100 @@ -15,12 +15,17 @@ {'': ['*']} extras_require = \ -{'test': ['pytest', 'pytest-trio', 'pytest-asyncio', 'testpath', 'trio'], +{'test': ['pytest', + 'pytest-trio', + 'pytest-asyncio', + 'testpath', + 'trio', + 'async-timeout'], 'trio': ['trio'], "trio:python_version == '3.6'": ['async_generator']} setup(name='jeepney', - version='0.7.0', + version='0.7.1', description='Low-level, pure Python DBus protocol wrapper.', author='Thomas Kluyver', author_email='tho...@kluyver.me.uk',