Uvloop Versions Save

Ultra fast asyncio event loop.

v0.19.0

6 months ago

Changes

  • Drop support of Python 3.7 and update CI (#578) (by @fantix in ee5ad26a for #578)

Fixes

  • Restore uvloop.new_event_loop and other missing uvloop members to typing (#573) (by @graingert in 5c500ee2 for #573)

  • Fix docstring of loop.shutdown_default_executor (#535) (by @Gelbpunkt in 919da567 for #535)

  • Fix CI status badge (#522) (by @shuuji3 in 0e9ff6cd for #522)

v0.18.0

6 months ago

Fixes

  • CI fixes (#520, #553) (by @altendky in 7783f1c5, @dulmandakh in 1dd40f17)

  • Make extract_stack resilient to lacking frames. (#563) (by @jhance in 06876434 for #563)

  • Port uvloop to Python 3.12 (#570) (by @1st1, @fantix in 9f82bd74 for #569)

v0.17.0

1 year ago

This release adds Python 3.11 support, updates bundled libuv to 1.43.0 and fixes a handful of issues.

Changes

  • Expose uv_loop_t pointer for integration with other C-extensions (#310) (by @pranavtbhat in b332eb85 for #310)

  • Support python 3.11+ (#473) (by @zeroday0619 in 8e42921d for #473)

  • Expose libuv uv_fs_event functionality (#474) (by @jensbjorgensen @fantix in 74d381e8 for #474)

  • Activate debug mode when -X dev is used (by @jack1142 in 637a77a3)

  • Expose uv_version() for libuv API compatibility (#491) (by @fantix in 089f6cbf for #491)

  • Fix loop.getaddrinfo() and tests (#495) (by @fantix in 598b16fd for #495)

  • Bump to libuv 1.43.0 (by @fantix in 94e5e535)

Fixes

  • _TransProtPair is no longer defined in asyncio.events (by @jensbjorgensen in fae5f7fb)

  • use a TypeVar for asyncio.BaseProtocol (#478) (by @graingert in 3aacb352 for #478)

  • Fix segfault in TimerHandle.when() after cleared (by @jensbjorgensen in c39afff8 for #469)

  • Avoid self._errpipe_write double close (#466) (by @graingert in 72140d7e for #466)

  • Fix typo in test (#456) (by @kianmeng in 033d52d0 for #456)

  • Fix potential infinite loop (#446) (by @kfur in ada43c06 for #446)

  • use a stack of self._fds_to_close to prevent double closes (#481) (by @graingert in 3214cf68 for #481)

  • Fix incorrect main thread id value forking from a thread (#453) (by @horpto @fantix in e7934c88 for #453)

  • create_subprocess_exec should treat env={} as empty environment (#439) (#454) (by @byllyfish in e04637e0 for #439)

  • Queue write only after processing all buffers (#445) (by @jakirkham @fantix in 9c6ecb62 for #445)

  • Drop Python 3.6 support for thread ident (by @fantix in 9c37930e)

  • bugfix: write to another transport in resume_writing() fails (#498) (by @fantix in d2deffef for #498)

Build

  • Upgrade GitHub Actions (#477) (#480) (by @cclauss in fcbf422d for #477, 10086942 for #480)

  • typo same as same (by @YoSTEALTH in fedba80a)

  • setup.py: allow to override extra_compile_args (#443) (by @giuliobenetti in a130375f for #443)

  • Drop hack in setup.py in finalize_options (492) (by @fantix in 2f1bc83c for #492)

  • Fix tests invocation on release CI worklow (#489) (by @ben9923 in d6a2b597 for #489)

Documentation

  • use asyncio.Runner loop_factory on 3.11+ (#472) (by @graingert in 31ba48ca for #472)

  • Fix CI badge in docs, remove remaining Travis CI references from docs (by @Nothing4You in c6901a74)

  • Fix typo in README (by @monosans in 73d7253b)

v0.16.0

2 years ago

This release adds Python 3.10 support, updates bundled libuv to 1.42.0 and fixes a handful of issues.

Changes

  • Python 3.10 support (#432) (by @elprans in 2519e2df for #432)

  • Bump vendored libuv to 1.42.0 (#433) (by @elprans in a62f7818 for #433)

  • Use cibuildwheel to build wheels (#435) (by @elprans in 20febe0b for #435)

  • Add support for <timer handle>.when() (by Jens Jorgensen in 62b2af9c)

Fixes

  • Fix ref issue when protocol is in Cython (by @fantix in 70cafc82 for #2222)

  • Set python_requires in setup.py (by @graingert in c808a663)

  • SSL: schedule first data after waiter wakeup (by @fantix in 2081db89)

  • Fix a possible race condition in sslproto test (by @fantix in b0526cd5 for #412)

  • Fix call_soon_threadsafe thread safety (by @fantix in 4b803b15)

v0.15.3

2 years ago

Bug Fixes

  • SSL: schedule first data after waiter wakeup (by @fantix in 0df12282)

  • Fix a possible race condition in sslproto test (by @fantix in 2e71c4c2 for #412)

  • Fix call_soon_threadsafe thread safety (by @fantix and @hehaha in 6387a4e4 for #408)

v0.15.2

3 years ago

Bug Fixes

  • Add python_requires in setup.py to fix dependency resolution issues (by @graingert in c808a663)

v0.15.1

3 years ago

Bug Fixes

  • Fix a segfault issue when a Cython protocol is de-referencing itself from Context.run() callbacks (by @fantix in 70cafc82)

v0.15.0

3 years ago

New Features

  • Add name keyword argument to loop.create_task() (by @fantix in d51ce367 for #309)

  • Add typing support (by @bryanforbes in 9426e2b1, for #358)

Bug Fixes

  • SSL: many improvements (by @fantix in 6476aad6, 8beacd26, 98e113ee, ae44ec2d, @asvetlov in 9bc4a204)

  • Fix KeyboardInterrupt handling logic (by @1st1 in c32c7039 for #295, @jack1142 in 8c471f82 for #337)

  • Python 3.8/3.9 compatibility fixes, drop support for 3.5/3.6 (by @jack1142 in 28702195 for #314, @achimnol in 0d14ec64 for #328, @aeros in 6ef69a79 for #349, @shadchin in 1fd90665, @fantix in 465717fd, 200e1404, afc3ee8f, cdd2218f, b7048b94)

  • UDP: multiple bug fixes (by @fantix in 1d9267af for #319, 9e017e6e for #304, 506a2aa1)

  • Pipe: a critical crash fix that affects subprocess, pipe and socketpair (by @fantix in 5d41af80 and @tardyp in c3929720 for #311 #312 #317)

  • Restore context on protocol callbacks (by @versusvoid in 7b202ccf for #305, @fantix in f691212b)

  • Subprocess: stdio bug fixes (by @fantix in 8cdb3002 for #136, @lovasoa in 68db1a23 for #363)

  • Sock: fix issue in sock_connect() for large concurrency (by @fantix in fe3d0281 for #378)

  • Misc fixes about docs URL, test typo, and CI compatibility (by @asfaltboy in 38105305, @felixonmars in fcb37350, @fantix in 6596685a)

Build

  • Check Cython version semantically (by @YoSTEALTH in 5dc299b7)

  • Add .flake8 to distribution tarball (by @jlaine in e8eb5026 for #330)

  • Switch to Github actions (by @elprans in 3be8967e, e21ceea0, @fantix in 311997ed)

  • Bump libuv to v1.40.0 (by @fantix in 998c19ec)

v0.14.0

4 years ago

New Features

  • Add support for Python 3.8. (by @1st1 in 5f48dab8, 51636f7b)

Bug Fixes

  • Multiple fixes in the SSL/TLS layer. (by @fantix in 82104fb6 for #263, 7fcbfed1 for #255, e6fd6377)

  • Restore signal.wakeup_fd after the event loop is closed. (by @vladima in 48d376d3, @1st1 in d76d9827)

  • Handle large timeouts in loop.call_later(). (by @1st1 in 1a0d6578 for #259)

  • Fix possible feezing of uvloop on os.fork. (by @grungy-ado in fde5d14f)

  • Better handle Unix sockets for datagram transports. (by @mosquito and @1st1 in dd4cb7ac for #269)

  • Avoid double connecting to remote_addr for datagram transports. (by @1st1 in bed926c5 for #276)

Build

  • Bump Cython to 0.29.13. (by @1st1 in 65c1a045)

  • Bump libuv to v1.33.1. (by @1st1 in 34fd827e)

v0.14.0rc2

4 years ago

This is the second release candidate.

See the full list of updates in 0.14.0rc1 release notes.

RC2 Bug Fixes

  • Fix libuv not waking up on SIGINT. (by @1st1 in c32c703 for #295)

  • Fix SSL proto to better handle EOF. (by @fantix in 6476aad)