Revisions of python-anyio

Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1217080 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 23)
- update to 4.6.2:
  * Fixed regression caused by (\#807) that prevented the use
    of parametrized async fixtures
- update to 4.6.1:
  * Fixed TaskGroup and CancelScope producing cyclic references
    in tracebacks when raising exceptions (\#806) (PR by
    @graingert)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 1193842 from Daniel Garcia's avatar Daniel Garcia (dgarcia) (revision 21)
- update to 4.4.0:
  * Added the BlockingPortalProvider class to aid with
    constructing synchronous counterparts to asynchronous
    interfaces that would otherwise require multiple blocking
    portals
  * Added __slots__ to AsyncResource so that child classes can
    use __slots__
  * Added the TaskInfo.has_pending_cancellation() method
  * Fixed erroneous RuntimeError: called 'started' twice on the
    same task status when cancelling a task in a TaskGroup
    created with the start() method before the first checkpoint
    is reached after calling task_status.started()
  * Fixed two bugs with TaskGroup.start() on asyncio: Fixed
    erroneous RuntimeError: called 'started' twice on the same
    task status when cancelling a task in a TaskGroup created
    with the start() method before the first checkpoint is
    reached after calling task_status.started() (#706; PR by
    Dominik Schwabe) Fixed the entire task group being cancelled
    if a TaskGroup.start() call gets cancelled (#685, #710)
  * Fixed erroneous RuntimeError: called 'started' twice on the
    same task status when cancelling a task in a TaskGroup
    created with the start() method before the first checkpoint
    is reached after calling task_status.started()
  * Fixed the entire task group being cancelled if a
    TaskGroup.start() call gets cancelled
  * Fixed a race condition that caused crashes when multiple
    event loops of the same backend were running in separate
    threads and simultaneously attempted to use AnyIO for their
    first time
  * Fixed cancellation delivery on asyncio incrementing the wrong
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1157062 from Steve Kowalik's avatar Steve Kowalik (StevenK) (revision 20)
- Update to 4.3.0:
  * Added support for the Python 3.12 ``walk_up`` keyword argument in
    ``anyio.Path.relative_to()``
  * Fixed passing ``total_tokens`` to ``anyio.CapacityLimiter()`` as a
    keyword argument not working on the ``trio`` backend
  * Fixed ``Process.aclose()`` not performing the minimum level of
    necessary cleanup when cancelled
  * Fixed ``Process.stdin.aclose()``, ``Process.stdout.aclose()``, and
    ``Process.stderr.aclose()``
- Add exceptiongroup to {Build,}Requires.
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1136274 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 19)
- update to 4.2.0:
  * Add support for byte-based paths in connect_unix,
    create_unix_listeners, create_unix_datagram_socket, and
    create_connected_unix_datagram_socket. (PR by Lura Skye)
  * Enabled the Event and CapacityLimiter classes to be
    instantiated outside an event loop thread
  * Broadly improved/fixed the type annotations. Among other
    things, many functions and methods that take variadic
    positional arguments now make use of PEP 646 TypeVarTuple to
    allow the positional arguments to be validated by static type
    checkers. These changes affected numerous methods and
    functions, including: * anyio.run() * TaskGroup.start_soon()
    * anyio.from_thread.run() * anyio.from_thread.run_sync() *
    anyio.to_thread.run_sync() * anyio.to_process.run_sync() *
    BlockingPortal.call() * BlockingPortal.start_task_soon() *
    BlockingPortal.start_task() (also resolves #560)
  * Fixed various type annotations of anyio.Path to match
    Typeshed: * anyio.Path.__lt__() * anyio.Path.__le__() *
    anyio.Path.__gt__() * anyio.Path.__ge__() *
    anyio.Path.__truediv__() * anyio.Path.__rtruediv__() *
    anyio.Path.hardlink_to() * anyio.Path.samefile() *
    anyio.Path.symlink_to() * anyio.Path.with_segments() (PR by
    Ganden Schaffner)
  * Fixed adjusting the total number of tokens in a
    CapacityLimiter on asyncio failing to wake up tasks waiting
    to acquire the limiter in certain edge cases (fixed with help
    from Egor Blagov)
  * Fixed loop_factory and use_uvloop options not being used on
    the asyncio backend
  * Fixed cancellation propagating on asyncio from a task group
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1126958 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 18)
- update to 3.7.1:
  * Fixed sending large buffers via UNIX stream sockets on
    asyncio
  * Fixed several minor documentation issues (broken links to
    classes, missing classes or attributes)
  * Dropped support for Python 3.6
  * Improved type annotations:
  * Several functions and methods that were previously annotated
    as accepting ``Coroutine[Any, Any, Any]`` as the return type
    of the callable have been amended to accept ``Awaitable[Any]``
    instead, to allow a slightly broader set of coroutine-like
    inputs, like ``async_generator_asend`` objects returned from
    the ``asend()`` method of async generators, and to match
    the ``trio`` annotations:
    * ``anyio.run()``
    * ``anyio.from_thread.run()``
    * ``TaskGroup.start_soon()``
    * ``TaskGroup.start()``
    * ``BlockingPortal.call()``
    * ``BlockingPortal.start_task_soon()``
    * ``BlockingPortal.start_task()``
  * Changed ``TLSAttribute.shared_ciphers`` to match the
    documented semantics of ``SSLSocket.shared_ciphers``
    of always returning ``None`` for client-side streams
  * Fixed ``CapacityLimiter`` on the asyncio backend to order
    waiting tasks in the FIFO order (instead of LIFO)
  * Fixed ``CancelScope.cancel()`` not working on asyncio if
    called before entering the scope
  * Fixed ``open_signal_receiver()`` inconsistently yielding
    integers instead of ``signal.Signals`` instances on the
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1109337 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 16)
- Add patch support-trio-0.22.patch:
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 1084544 from Steve Kowalik's avatar Steve Kowalik (StevenK) (revision 15)
- Add patch fix-failing-tls-tests.patch:
  * Fix test failures with Python TLS changes.
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 1082169 from Matej Cepl's avatar Matej Cepl (mcepl) (revision 14)
Forwarded request #1081325 from dirkmueller

SR for python stack proposal
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 1069824 from Steve Kowalik's avatar Steve Kowalik (StevenK) (revision 13)
- Add patc support-trio-0.22.patch:
  * Support trio >= 0.22 just enough for asyncclick.
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 1037186 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 11)
- update to 3.6.2:
  - Pinned Trio to < 0.22 to avoid incompatibility with AnyIO's ``ExceptionGroup`` class
    causing ``AttributeError: 'NonBaseMultiError' object has no attribute '_exceptions'``
    (AnyIO 4 is unaffected)
  - Fixed exception handler in the asyncio test runner not properly handling a context
    that does not contain the ``exception`` key
  - Fixed ``TypeError`` in ``get_current_task()`` on asyncio when using a custom ``Task`` factory
  - Updated type annotations on ``run_process()`` and ``open_process()``:
    * ``command`` now accepts accepts bytes and sequences of bytes
    * ``stdin``, ``stdout`` and ``stderr`` now accept file-like objects
  - Changed the pytest plugin to run both the setup and teardown phases of asynchronous
    generator fixtures within a single task to enable use cases such as cancel scopes and
    task groups where a context manager straddles the ``yield``
- drop anyio-pytest7.patch (upstream)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 955059 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 9)
- skip some tests for older distros (lack of TLSv1.3 support)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 946668 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 8)
- update to 3.5.0:
  - Added ``start_new_session`` keyword argument to ``run_process()`` and ``open_process()``
  - Fixed deadlock in synchronization primitives on asyncio which can happen if a task acquiring a
    primitive is hit with a native (not AnyIO) cancellation with just the right timing, leaving the
    next acquiring task waiting forever
  - Added workaround for bpo-46313_ to enable compatibility with OpenSSL 3.0
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 934534 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 7)
- update to 3.4.0:
  * Added context propagation to/from worker threads in ``to_thread.run_sync()``,
  ``from_thread.run()`` and ``from_thread.run_sync()``
  * Fixed race condition in ``Lock`` and ``Semaphore`` classes when a task waiting on ``acquire()``
  is cancelled while another task is waiting to acquire the same primitive
  * Fixed async context manager's ``__aexit__()`` method not being called in
  ``BlockingPortal.wrap_async_context_manager()`` if the host task is cancelled
  * Fixed worker threads being marked as being event loop threads in sniffio
  * Fixed task parent ID not getting set to the correct value on asyncio
  * Enabled the test suite to run without IPv6 support, trio or pytest plugin autoloading
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 927591 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 6)
- update to 3.3.4:
  * Fixed ``BrokenResourceError`` instead of ``EndOfStream`` being raised in
   ``TLSStream`` when the peer abruptly closes the connection while
   ``TLSStream`` is receiving data with ``standard_compatible=False`` set
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 925754 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 5)
- update to 3.3.3:
  * Fixed UNIX socket listener not setting accepted sockets to non-blocking
    mode on asyncio
  * Changed unconnected UDP sockets to be always bound to a local port (on
    "any" interface) to avoid errors on asyncio + Windows
  * Fixed cancellation problem on asyncio where level-triggered cancellation
    for **all** parent cancel scopes would not resume after exiting a 
    shielded nested scope
Displaying revisions 1 - 20 of 23
openSUSE Build Service is sponsored by