winloop 0.7.2__tar.gz → 0.8.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. winloop-0.8.1/PKG-INFO +161 -0
  2. winloop-0.8.1/README.md +115 -0
  3. {winloop-0.7.2 → winloop-0.8.1}/pyproject.toml +2 -2
  4. {winloop-0.7.2 → winloop-0.8.1}/setup.py +3 -2
  5. {winloop-0.7.2 → winloop-0.8.1}/tests/test_process.py +47 -0
  6. winloop-0.8.1/vendor/libuv/.clang-tidy +47 -0
  7. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/workflows/CI-docs.yml +4 -2
  8. winloop-0.8.1/vendor/libuv/.github/workflows/CI-freebsd.yml +44 -0
  9. winloop-0.8.1/vendor/libuv/.github/workflows/CI-netbsd.yml +42 -0
  10. winloop-0.8.1/vendor/libuv/.github/workflows/CI-openbsd.yml +41 -0
  11. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/workflows/CI-sample.yml +3 -1
  12. winloop-0.8.1/vendor/libuv/.github/workflows/CI-solaris.yml +46 -0
  13. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/workflows/CI-unix.yml +29 -8
  14. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/workflows/CI-win.yml +22 -7
  15. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/workflows/sanitizer.yml +7 -5
  16. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.mailmap +7 -0
  17. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/AUTHORS +63 -0
  18. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/CMakeLists.txt +99 -4
  19. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/ChangeLog +512 -0
  20. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/LINKS.md +0 -1
  21. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/Makefile.am +14 -1
  22. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/Makefile.in +279 -74
  23. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/README.md +1 -1
  24. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/SECURITY.md +3 -3
  25. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/SUPPORTED_PLATFORMS.md +0 -1
  26. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/output.0 +93 -91
  27. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/output.1 +93 -91
  28. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/output.2 +93 -91
  29. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/requests +265 -265
  30. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/traces.0 +49 -52
  31. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/traces.1 +4 -5
  32. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autom4te.cache/traces.2 +4 -5
  33. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/configure +90 -88
  34. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/configure.ac +3 -3
  35. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/errno.h +10 -1
  36. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/unix.h +14 -11
  37. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/version.h +1 -1
  38. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/win.h +19 -7
  39. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv.h +25 -7
  40. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/libuv-check-flags.m4 +21 -21
  41. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/fs-poll.c +13 -5
  42. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/idna.c +5 -3
  43. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/inet.c +12 -12
  44. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/random.c +1 -1
  45. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/threadpool.c +19 -1
  46. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/aix.c +27 -54
  47. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/async.c +45 -94
  48. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/bsd-proctitle.c +2 -1
  49. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/core.c +123 -13
  50. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/cygwin.c +1 -1
  51. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/darwin-proctitle.c +71 -19
  52. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/darwin.c +18 -7
  53. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/freebsd.c +9 -3
  54. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/fs.c +96 -76
  55. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/fsevents.c +7 -10
  56. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/getaddrinfo.c +9 -4
  57. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/haiku.c +1 -1
  58. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/hurd.c +1 -1
  59. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/ibmi.c +9 -2
  60. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/internal.h +65 -6
  61. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/kqueue.c +34 -36
  62. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/linux.c +107 -56
  63. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/loop.c +2 -3
  64. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/netbsd.c +4 -2
  65. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/openbsd.c +31 -42
  66. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/os390.c +20 -24
  67. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/pipe.c +35 -20
  68. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/poll.c +15 -2
  69. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/posix-poll.c +4 -26
  70. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/process.c +221 -108
  71. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/proctitle.c +2 -1
  72. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/qnx.c +1 -1
  73. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/signal.c +2 -5
  74. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/stream.c +119 -56
  75. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/sunos.c +16 -28
  76. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/tcp.c +1 -1
  77. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/thread.c +0 -2
  78. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/tty.c +14 -6
  79. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/udp.c +165 -53
  80. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/uv-common.c +168 -8
  81. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/uv-common.h +26 -13
  82. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/async.c +33 -37
  83. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/core.c +10 -12
  84. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/fs-event.c +172 -62
  85. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/fs-fd-hash-inl.h +3 -4
  86. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/fs.c +96 -71
  87. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/getaddrinfo.c +12 -7
  88. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/internal.h +2 -0
  89. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/pipe.c +422 -208
  90. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/poll.c +15 -52
  91. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/process-stdio.c +6 -5
  92. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/process.c +199 -118
  93. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/req-inl.h +3 -0
  94. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/stream.c +86 -6
  95. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/tcp.c +55 -45
  96. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/thread.c +6 -1
  97. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/tty.c +24 -7
  98. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/udp.c +35 -13
  99. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/util.c +10 -19
  100. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/winapi.c +8 -0
  101. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/winapi.h +45 -0
  102. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/winsock.c +9 -49
  103. winloop-0.8.1/vendor/libuv/test/appcontainer.c +610 -0
  104. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/run-tests.c +15 -18
  105. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/runner-win.c +62 -4
  106. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/runner.c +4 -2
  107. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/runner.h +17 -0
  108. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/task.h +52 -22
  109. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fork.c +18 -0
  110. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs-copyfile.c +8 -3
  111. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs-event.c +294 -25
  112. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs-fd-hash.c +8 -0
  113. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs-poll.c +103 -0
  114. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs-readdir.c +7 -5
  115. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs.c +253 -82
  116. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-get-currentexe.c +0 -3
  117. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-getaddrinfo.c +40 -4
  118. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-idna.c +89 -0
  119. winloop-0.8.1/vendor/libuv/test/test-io-64-safe.c +182 -0
  120. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-list.h +258 -146
  121. winloop-0.8.1/vendor/libuv/test/test-loop-oom.c +181 -0
  122. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-metrics.c +4 -0
  123. winloop-0.8.1/vendor/libuv/test/test-osx-resident-set-memory.c +64 -0
  124. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-osx-select.c +48 -0
  125. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-bind-error.c +28 -0
  126. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-close-stdout-read-stdin.c +2 -0
  127. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-connect-multiple.c +2 -0
  128. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-getsockname.c +52 -0
  129. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-sendmsg.c +5 -1
  130. winloop-0.8.1/vendor/libuv/test/test-pipe-write.c +152 -0
  131. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-platform-output.c +5 -3
  132. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-poll-close.c +13 -0
  133. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-poll-multiple-handles.c +7 -0
  134. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-poll-oob.c +5 -2
  135. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-poll.c +2 -2
  136. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-process-title.c +112 -0
  137. winloop-0.8.1/vendor/libuv/test/test-sizeof.c +912 -0
  138. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-spawn.c +294 -19
  139. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-connect-error-after-write.c +12 -6
  140. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-reuseport.c +12 -1
  141. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-rst.c +9 -11
  142. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-try-write.c +103 -0
  143. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-write-fail.c +17 -0
  144. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-write-in-a-row.c +4 -4
  145. winloop-0.8.1/vendor/libuv/test/test-tcp-write-in-read-cb-backend-timeout.c +138 -0
  146. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-thread-affinity.c +0 -5
  147. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-thread-name.c +0 -10
  148. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-thread-priority.c +1 -9
  149. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-threadpool-cancel.c +152 -2
  150. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tty.c +197 -9
  151. winloop-0.8.1/vendor/libuv/test/test-udp-mmsg.c +396 -0
  152. winloop-0.8.1/vendor/libuv/test/test-udp-recv-cb-close-pollerr.c +112 -0
  153. winloop-0.8.1/vendor/libuv/test/test-udp-recvmsg-unreachable-error.c +132 -0
  154. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-reuseport.c +11 -0
  155. winloop-0.8.1/vendor/libuv/test/test-udp-send-fail.c +70 -0
  156. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-send-unreachable.c +4 -1
  157. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-try-send.c +19 -34
  158. winloop-0.8.1/vendor/libuv/test/test-write-cancel.c +539 -0
  159. {winloop-0.7.2 → winloop-0.8.1}/winloop/__init__.py +38 -48
  160. {winloop-0.7.2 → winloop-0.8.1}/winloop/_version.py +1 -1
  161. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/process.pxd +5 -3
  162. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/process.pyx +35 -5
  163. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/stdlib.pxi +8 -1
  164. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/uv.pxd +2 -1
  165. {winloop-0.7.2 → winloop-0.8.1}/winloop/loop.c +37768 -19262
  166. {winloop-0.7.2 → winloop-0.8.1}/winloop/loop.pxd +5 -1
  167. {winloop-0.7.2 → winloop-0.8.1}/winloop/loop.pyi +94 -88
  168. {winloop-0.7.2 → winloop-0.8.1}/winloop/loop.pyx +4 -4
  169. winloop-0.8.1/winloop/weakref_set.pxd +28 -0
  170. winloop-0.8.1/winloop/weakref_set.pyx +271 -0
  171. winloop-0.8.1/winloop.egg-info/PKG-INFO +161 -0
  172. {winloop-0.7.2 → winloop-0.8.1}/winloop.egg-info/SOURCES.txt +17 -0
  173. {winloop-0.7.2 → winloop-0.8.1}/winloop.egg-info/requires.txt +1 -1
  174. winloop-0.7.2/PKG-INFO +0 -328
  175. winloop-0.7.2/README.md +0 -282
  176. winloop-0.7.2/vendor/libuv/test/test-loop-oom.c +0 -62
  177. winloop-0.7.2/vendor/libuv/test/test-udp-mmsg.c +0 -150
  178. winloop-0.7.2/winloop.egg-info/PKG-INFO +0 -328
  179. {winloop-0.7.2 → winloop-0.8.1}/.flake8 +0 -0
  180. {winloop-0.7.2 → winloop-0.8.1}/LICENSE-APACHE +0 -0
  181. {winloop-0.7.2 → winloop-0.8.1}/LICENSE-MIT +0 -0
  182. {winloop-0.7.2 → winloop-0.8.1}/MANIFEST.in +0 -0
  183. {winloop-0.7.2 → winloop-0.8.1}/Makefile +0 -0
  184. {winloop-0.7.2 → winloop-0.8.1}/examples/bench/echoclient.py +0 -0
  185. {winloop-0.7.2 → winloop-0.8.1}/examples/bench/echoserver.py +0 -0
  186. {winloop-0.7.2 → winloop-0.8.1}/examples/bench/rlserver.py +0 -0
  187. {winloop-0.7.2 → winloop-0.8.1}/mypy.ini +0 -0
  188. {winloop-0.7.2 → winloop-0.8.1}/setup.cfg +0 -0
  189. {winloop-0.7.2 → winloop-0.8.1}/tests/__init__.py +0 -0
  190. {winloop-0.7.2 → winloop-0.8.1}/tests/__main__.py +0 -0
  191. {winloop-0.7.2 → winloop-0.8.1}/tests/certs/ssl_cert.pem +0 -0
  192. {winloop-0.7.2 → winloop-0.8.1}/tests/certs/ssl_key.pem +0 -0
  193. {winloop-0.7.2 → winloop-0.8.1}/tests/conftest.py +0 -0
  194. {winloop-0.7.2 → winloop-0.8.1}/tests/test_aiodns.py +0 -0
  195. {winloop-0.7.2 → winloop-0.8.1}/tests/test_aiohttp.py +0 -0
  196. {winloop-0.7.2 → winloop-0.8.1}/tests/test_aiomultiprocess.py +0 -0
  197. {winloop-0.7.2 → winloop-0.8.1}/tests/test_base.py +0 -0
  198. {winloop-0.7.2 → winloop-0.8.1}/tests/test_context.py +0 -0
  199. {winloop-0.7.2 → winloop-0.8.1}/tests/test_cython.py +0 -0
  200. {winloop-0.7.2 → winloop-0.8.1}/tests/test_dealloc.py +0 -0
  201. {winloop-0.7.2 → winloop-0.8.1}/tests/test_dns.py +0 -0
  202. {winloop-0.7.2 → winloop-0.8.1}/tests/test_executors.py +0 -0
  203. {winloop-0.7.2 → winloop-0.8.1}/tests/test_fs_event.py +0 -0
  204. {winloop-0.7.2 → winloop-0.8.1}/tests/test_libuv_api.py +0 -0
  205. {winloop-0.7.2 → winloop-0.8.1}/tests/test_pipes.py +0 -0
  206. {winloop-0.7.2 → winloop-0.8.1}/tests/test_playwright.py +0 -0
  207. {winloop-0.7.2 → winloop-0.8.1}/tests/test_process_spawning.py +0 -0
  208. {winloop-0.7.2 → winloop-0.8.1}/tests/test_regr1.py +0 -0
  209. {winloop-0.7.2 → winloop-0.8.1}/tests/test_runner.py +0 -0
  210. {winloop-0.7.2 → winloop-0.8.1}/tests/test_signals.py +0 -0
  211. {winloop-0.7.2 → winloop-0.8.1}/tests/test_sockets.py +0 -0
  212. {winloop-0.7.2 → winloop-0.8.1}/tests/test_sourcecode.py +0 -0
  213. {winloop-0.7.2 → winloop-0.8.1}/tests/test_tcp.py +0 -0
  214. {winloop-0.7.2 → winloop-0.8.1}/tests/test_testbase.py +0 -0
  215. {winloop-0.7.2 → winloop-0.8.1}/tests/test_udp.py +0 -0
  216. {winloop-0.7.2 → winloop-0.8.1}/tests/test_unix.py +0 -0
  217. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.git +0 -0
  218. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.gitattributes +0 -0
  219. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/ISSUE_TEMPLATE.md +0 -0
  220. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.github/dependabot.yml +0 -0
  221. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.gitignore +0 -0
  222. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/.readthedocs.yaml +0 -0
  223. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/CONTRIBUTING.md +0 -0
  224. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/LICENSE +0 -0
  225. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/LICENSE-docs +0 -0
  226. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/LICENSE-extra +0 -0
  227. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/MAINTAINERS.md +0 -0
  228. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/aclocal.m4 +0 -0
  229. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/ar-lib +0 -0
  230. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/autogen.sh +0 -0
  231. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/cmake-toolchains/cross-mingw32.cmake +0 -0
  232. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/compile +0 -0
  233. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/config.guess +0 -0
  234. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/config.sub +0 -0
  235. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/depcomp +0 -0
  236. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/aix.h +0 -0
  237. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/bsd.h +0 -0
  238. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/darwin.h +0 -0
  239. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/linux.h +0 -0
  240. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/os390.h +0 -0
  241. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/posix.h +0 -0
  242. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/sunos.h +0 -0
  243. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/threadpool.h +0 -0
  244. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/include/uv/tree.h +0 -0
  245. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/install-sh +0 -0
  246. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/libuv-static.pc.in +0 -0
  247. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/libuv.pc.in +0 -0
  248. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/ltmain.sh +0 -0
  249. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/.gitignore +0 -0
  250. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/as_case.m4 +0 -0
  251. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/ax_pthread.m4 +0 -0
  252. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/libtool.m4 +0 -0
  253. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/libuv-check-versions.m4 +0 -0
  254. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/libuv-extra-automake-flags.m4 +0 -0
  255. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/ltoptions.m4 +0 -0
  256. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/ltsugar.m4 +0 -0
  257. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/ltversion.m4 +0 -0
  258. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/m4/lt~obsolete.m4 +0 -0
  259. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/missing +0 -0
  260. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/heap-inl.h +0 -0
  261. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/idna.h +0 -0
  262. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/queue.h +0 -0
  263. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/strscpy.c +0 -0
  264. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/strscpy.h +0 -0
  265. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/strtok.c +0 -0
  266. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/strtok.h +0 -0
  267. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/thread-common.c +0 -0
  268. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/timer.c +0 -0
  269. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/aix-common.c +0 -0
  270. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/bsd-ifaddrs.c +0 -0
  271. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/darwin-stub.h +0 -0
  272. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/darwin-syscalls.h +0 -0
  273. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/dl.c +0 -0
  274. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/getnameinfo.c +0 -0
  275. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/loop-watcher.c +0 -0
  276. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/no-fsevents.c +0 -0
  277. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/no-proctitle.c +0 -0
  278. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/os390-proctitle.c +0 -0
  279. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/os390-syscalls.c +0 -0
  280. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/os390-syscalls.h +0 -0
  281. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/posix-hrtime.c +0 -0
  282. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/procfs-exepath.c +0 -0
  283. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/random-devurandom.c +0 -0
  284. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/random-getentropy.c +0 -0
  285. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/random-getrandom.c +0 -0
  286. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/random-sysctl-linux.c +0 -0
  287. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/sysinfo-loadavg.c +0 -0
  288. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/unix/sysinfo-memory.c +0 -0
  289. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/uv-data-getter-setters.c +0 -0
  290. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/version.c +0 -0
  291. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/detect-wakeup.c +0 -0
  292. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/dl.c +0 -0
  293. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/error.c +0 -0
  294. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/getnameinfo.c +0 -0
  295. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/handle-inl.h +0 -0
  296. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/handle.c +0 -0
  297. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/loop-watcher.c +0 -0
  298. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/signal.c +0 -0
  299. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/snprintf.c +0 -0
  300. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/stream-inl.h +0 -0
  301. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/src/win/winsock.h +0 -0
  302. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-async-pummel.c +0 -0
  303. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-async.c +0 -0
  304. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-fs-stat.c +0 -0
  305. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-getaddrinfo.c +0 -0
  306. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-list.h +0 -0
  307. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-loop-count.c +0 -0
  308. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-million-async.c +0 -0
  309. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-million-timers.c +0 -0
  310. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-multi-accept.c +0 -0
  311. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-ping-pongs.c +0 -0
  312. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-ping-udp.c +0 -0
  313. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-pound.c +0 -0
  314. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-pump.c +0 -0
  315. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-queue-work.c +0 -0
  316. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-sizes.c +0 -0
  317. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-spawn.c +0 -0
  318. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-tcp-write-batch.c +0 -0
  319. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-thread.c +0 -0
  320. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/benchmark-udp-pummel.c +0 -0
  321. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/blackhole-server.c +0 -0
  322. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/echo-server.c +0 -0
  323. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/fixtures/empty_file +0 -0
  324. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/fixtures/load_error.node +0 -0
  325. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/fixtures/lorem_ipsum.txt +0 -0
  326. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/fixtures/one_file/one_file +0 -0
  327. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/run-benchmarks.c +0 -0
  328. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/runner-unix.c +0 -0
  329. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/runner-unix.h +0 -0
  330. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/runner-win.h +0 -0
  331. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-active.c +0 -0
  332. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-async-null-cb.c +0 -0
  333. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-async.c +0 -0
  334. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-barrier.c +0 -0
  335. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-callback-stack.c +0 -0
  336. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-close-fd.c +0 -0
  337. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-close-order.c +0 -0
  338. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-condvar.c +0 -0
  339. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-connect-unspecified.c +0 -0
  340. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-connection-fail.c +0 -0
  341. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-cwd-and-chdir.c +0 -0
  342. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-default-loop-close.c +0 -0
  343. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-delayed-accept.c +0 -0
  344. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-dlerror.c +0 -0
  345. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-eintr-handling.c +0 -0
  346. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-embed.c +0 -0
  347. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-emfile.c +0 -0
  348. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-env-vars.c +0 -0
  349. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-error.c +0 -0
  350. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fail-always.c +0 -0
  351. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-fs-open-flags.c +0 -0
  352. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-get-loadavg.c +0 -0
  353. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-get-memory.c +0 -0
  354. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-get-passwd.c +0 -0
  355. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-gethostname.c +0 -0
  356. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-getnameinfo.c +0 -0
  357. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-getsockname.c +0 -0
  358. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-getters-setters.c +0 -0
  359. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-gettimeofday.c +0 -0
  360. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-handle-fileno.c +0 -0
  361. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-homedir.c +0 -0
  362. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-hrtime.c +0 -0
  363. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-idle.c +0 -0
  364. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-iouring-pollhup.c +0 -0
  365. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ip-name.c +0 -0
  366. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ip4-addr.c +0 -0
  367. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ip6-addr.c +0 -0
  368. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ipc-heavy-traffic-deadlock-bug.c +0 -0
  369. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ipc-send-recv.c +0 -0
  370. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ipc.c +0 -0
  371. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-loop-alive.c +0 -0
  372. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-loop-close.c +0 -0
  373. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-loop-configure.c +0 -0
  374. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-loop-handles.c +0 -0
  375. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-loop-stop.c +0 -0
  376. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-loop-time.c +0 -0
  377. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-multiple-listen.c +0 -0
  378. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-mutexes.c +0 -0
  379. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-not-readable-nor-writable-on-read-error.c +0 -0
  380. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-not-writable-after-shutdown.c +0 -0
  381. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pass-always.c +0 -0
  382. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ping-pong.c +0 -0
  383. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-connect-error.c +0 -0
  384. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-connect-prepare.c +0 -0
  385. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-pending-instances.c +0 -0
  386. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-server-close.c +0 -0
  387. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-set-fchmod.c +0 -0
  388. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-pipe-set-non-blocking.c +0 -0
  389. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-poll-close-doesnt-corrupt-stack.c +0 -0
  390. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-poll-closesocket.c +0 -0
  391. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-process-priority.c +0 -0
  392. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-process-title-threadsafe.c +0 -0
  393. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-queue-foreach-delete.c +0 -0
  394. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-random.c +0 -0
  395. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-readable-on-eof.c +0 -0
  396. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-ref.c +0 -0
  397. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-run-nowait.c +0 -0
  398. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-run-once.c +0 -0
  399. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-semaphore.c +0 -0
  400. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-shutdown-close.c +0 -0
  401. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-shutdown-eof.c +0 -0
  402. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-shutdown-simultaneous.c +0 -0
  403. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-shutdown-twice.c +0 -0
  404. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-signal-multiple-loops.c +0 -0
  405. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-signal-pending-on-close.c +0 -0
  406. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-signal.c +0 -0
  407. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-socket-buffer-size.c +0 -0
  408. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-stdio-over-pipes.c +0 -0
  409. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-strscpy.c +0 -0
  410. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-strtok.c +0 -0
  411. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-alloc-cb-fail.c +0 -0
  412. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-bind-error.c +0 -0
  413. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-bind6-error.c +0 -0
  414. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-close-accept.c +0 -0
  415. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-close-after-read-timeout.c +0 -0
  416. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-close-reset.c +0 -0
  417. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-close-while-connecting.c +0 -0
  418. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-close.c +0 -0
  419. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-connect-error.c +0 -0
  420. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-connect-timeout.c +0 -0
  421. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-connect6-error.c +0 -0
  422. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-create-socket-early.c +0 -0
  423. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-flags.c +0 -0
  424. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-oob.c +0 -0
  425. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-open.c +0 -0
  426. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-read-stop-start.c +0 -0
  427. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-read-stop.c +0 -0
  428. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-shutdown-after-write.c +0 -0
  429. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-try-write-error.c +0 -0
  430. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-unexpected-read.c +0 -0
  431. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-write-after-connect.c +0 -0
  432. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-write-queue-order.c +0 -0
  433. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-write-to-half-open-connection.c +0 -0
  434. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tcp-writealot.c +0 -0
  435. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-test-macros.c +0 -0
  436. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-thread-equal.c +0 -0
  437. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-thread.c +0 -0
  438. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-threadpool.c +0 -0
  439. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-timer-again.c +0 -0
  440. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-timer-from-check.c +0 -0
  441. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-timer.c +0 -0
  442. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tmpdir.c +0 -0
  443. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tty-duplicate-key.c +0 -0
  444. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-tty-escape-sequence-processing.c +0 -0
  445. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-alloc-cb-fail.c +0 -0
  446. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-bind.c +0 -0
  447. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-connect.c +0 -0
  448. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-connect6.c +0 -0
  449. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-create-socket-early.c +0 -0
  450. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-dgram-too-big.c +0 -0
  451. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-ipv6.c +0 -0
  452. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-multicast-interface.c +0 -0
  453. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-multicast-interface6.c +0 -0
  454. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-multicast-join.c +0 -0
  455. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-multicast-join6.c +0 -0
  456. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-multicast-ttl.c +0 -0
  457. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-open.c +0 -0
  458. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-options.c +0 -0
  459. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-recv-in-a-row.c +0 -0
  460. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-send-and-recv.c +0 -0
  461. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-send-hang-loop.c +0 -0
  462. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-send-immediate.c +0 -0
  463. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-udp-sendmmsg-error.c +0 -0
  464. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-uname.c +0 -0
  465. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-walk-handles.c +0 -0
  466. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/test/test-watcher-cross-stop.c +0 -0
  467. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/tools/make_dist_html.py +0 -0
  468. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/tools/vswhere_usability_wrapper.cmd +0 -0
  469. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/tsansupp.txt +0 -0
  470. {winloop-0.7.2 → winloop-0.8.1}/vendor/libuv/uv_win_longpath.manifest +0 -0
  471. {winloop-0.7.2 → winloop-0.8.1}/winloop/__pyinstaller/__init__.py +0 -0
  472. {winloop-0.7.2 → winloop-0.8.1}/winloop/__pyinstaller/hook-winloop.py +0 -0
  473. {winloop-0.7.2 → winloop-0.8.1}/winloop/_noop.py +0 -0
  474. {winloop-0.7.2 → winloop-0.8.1}/winloop/_testbase.py +0 -0
  475. {winloop-0.7.2 → winloop-0.8.1}/winloop/cbhandles.pxd +0 -0
  476. {winloop-0.7.2 → winloop-0.8.1}/winloop/cbhandles.pyx +0 -0
  477. {winloop-0.7.2 → winloop-0.8.1}/winloop/dns.pyx +0 -0
  478. {winloop-0.7.2 → winloop-0.8.1}/winloop/errors.pyx +0 -0
  479. {winloop-0.7.2 → winloop-0.8.1}/winloop/future.pxd +0 -0
  480. {winloop-0.7.2 → winloop-0.8.1}/winloop/future.pyx +0 -0
  481. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/async_.pxd +0 -0
  482. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/async_.pyx +0 -0
  483. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/basetransport.pxd +0 -0
  484. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/basetransport.pyx +0 -0
  485. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/check.pxd +0 -0
  486. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/check.pyx +0 -0
  487. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/fsevent.pxd +0 -0
  488. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/fsevent.pyx +0 -0
  489. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/handle.pxd +0 -0
  490. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/handle.pyx +0 -0
  491. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/idle.pxd +0 -0
  492. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/idle.pyx +0 -0
  493. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/pipe.pxd +0 -0
  494. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/pipe.pyx +0 -0
  495. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/poll.pxd +0 -0
  496. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/poll.pyx +0 -0
  497. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/stream.pxd +0 -0
  498. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/stream.pyx +0 -0
  499. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/streamserver.pxd +0 -0
  500. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/streamserver.pyx +0 -0
  501. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/tcp.pxd +0 -0
  502. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/tcp.pyx +0 -0
  503. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/timer.pxd +0 -0
  504. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/timer.pyx +0 -0
  505. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/udp.pxd +0 -0
  506. {winloop-0.7.2 → winloop-0.8.1}/winloop/handles/udp.pyx +0 -0
  507. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/__init__.py +0 -0
  508. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/compat.h +0 -0
  509. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/consts.pxi +0 -0
  510. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/debug.h +0 -0
  511. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/debug.pxd +0 -0
  512. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/flowcontrol.pxd +0 -0
  513. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/fork_handler.h +0 -0
  514. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/python.pxd +0 -0
  515. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/pythoncapi_compat.h +0 -0
  516. {winloop-0.7.2 → winloop-0.8.1}/winloop/includes/system.pxd +0 -0
  517. {winloop-0.7.2 → winloop-0.8.1}/winloop/lru.pyx +0 -0
  518. {winloop-0.7.2 → winloop-0.8.1}/winloop/pseudosock.pyx +0 -0
  519. {winloop-0.7.2 → winloop-0.8.1}/winloop/py.typed +0 -0
  520. {winloop-0.7.2 → winloop-0.8.1}/winloop/request.pxd +0 -0
  521. {winloop-0.7.2 → winloop-0.8.1}/winloop/request.pyx +0 -0
  522. {winloop-0.7.2 → winloop-0.8.1}/winloop/server.pxd +0 -0
  523. {winloop-0.7.2 → winloop-0.8.1}/winloop/server.pyx +0 -0
  524. {winloop-0.7.2 → winloop-0.8.1}/winloop/sslproto.pxd +0 -0
  525. {winloop-0.7.2 → winloop-0.8.1}/winloop/sslproto.pyx +0 -0
  526. {winloop-0.7.2 → winloop-0.8.1}/winloop.egg-info/dependency_links.txt +0 -0
  527. {winloop-0.7.2 → winloop-0.8.1}/winloop.egg-info/entry_points.txt +0 -0
  528. {winloop-0.7.2 → winloop-0.8.1}/winloop.egg-info/not-zip-safe +0 -0
  529. {winloop-0.7.2 → winloop-0.8.1}/winloop.egg-info/top_level.txt +0 -0
  530. {winloop-0.7.2 → winloop-0.8.1}/winloop.png +0 -0
winloop-0.8.1/PKG-INFO ADDED
@@ -0,0 +1,161 @@
1
+ Metadata-Version: 2.4
2
+ Name: winloop
3
+ Version: 0.8.1
4
+ Summary: Windows version of uvloop
5
+ Author-email: Vizonex <VizonexBusiness@gmail.com>
6
+ License: MIT License
7
+ Project-URL: github, https://github.com/Vizonex/Winloop
8
+ Keywords: asyncio,networking
9
+ Classifier: Development Status :: 5 - Production/Stable
10
+ Classifier: Framework :: AsyncIO
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: License :: OSI Approved :: Apache Software License
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: POSIX
15
+ Classifier: Operating System :: MacOS :: MacOS X
16
+ Classifier: Operating System :: Microsoft :: Windows
17
+ Classifier: Programming Language :: Python :: 3 :: Only
18
+ Classifier: Programming Language :: Python :: 3.8
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: Implementation :: CPython
25
+ Classifier: Topic :: System :: Networking
26
+ Requires-Python: >=3.9.0
27
+ Description-Content-Type: text/markdown
28
+ License-File: LICENSE-APACHE
29
+ License-File: LICENSE-MIT
30
+ Provides-Extra: test
31
+ Requires-Dist: aiohttp>=3.10.5; extra == "test"
32
+ Requires-Dist: flake8<8,>=5; extra == "test"
33
+ Requires-Dist: psutil; extra == "test"
34
+ Requires-Dist: pycodestyle<2.16,>=2.9; extra == "test"
35
+ Requires-Dist: pyOpenSSL<26.5,>=23.0; extra == "test"
36
+ Requires-Dist: mypy>=0.800; extra == "test"
37
+ Provides-Extra: dev
38
+ Requires-Dist: packaging; extra == "dev"
39
+ Requires-Dist: setuptools>=60; extra == "dev"
40
+ Requires-Dist: Cython==3.3.0; extra == "dev"
41
+ Provides-Extra: docs
42
+ Requires-Dist: Sphinx<9.2.0,>=4.1.2; extra == "docs"
43
+ Requires-Dist: sphinxcontrib-asyncio~=0.3.0; extra == "docs"
44
+ Requires-Dist: sphinx_rtd_theme<3.2.0,>=0.5.2; extra == "docs"
45
+ Dynamic: license-file
46
+
47
+ <img src="https://raw.githubusercontent.com/Vizonex/Winloop/main/winloop.png" width="200px"/>
48
+
49
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
50
+ [![IDIM](https://raw.githubusercontent.com/Vizonex/IDIM-Badge/master/badge.svg)](https://github.com/Vizonex/IDIM-Badge)
51
+
52
+
53
+
54
+ # Winloop
55
+ [![PyPI version](https://badge.fury.io/py/winloop.svg)](https://badge.fury.io/py/winloop)
56
+ ![PyPI - Downloads](https://img.shields.io/pypi/dm/winloop)
57
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
58
+ [![License: Apache-2.0](https://img.shields.io/badge/License-Apache-yellow.svg)](https://opensource.org/licenses/Apache-2-0)
59
+
60
+ An alternative library for uvloop compatibility with Windows because let's face it. Windows' Python asyncio standard library is garbage, especially when Windows Defender decides to eat half of your RAM.
61
+ I never really liked the fact that I couldn't make anything run faster especially when you have fiber internet connections in place and you've done all the optimizations you could possibly think of. It always felt disappointing when `libuv` is available for Windows [but Windows was never compatible with uvloop.](https://github.com/MagicStack/uvloop/issues/14#issuecomment-575826367])
62
+
63
+ Since nobody was willing to step in after so many years of waiting, I went ahead and downloaded the source code for uvloop and started modifying the source code to be Windows compatible by carefully removing and changing parts that were not made for Windows. Many hours of research went into making this library.
64
+
65
+ The differences with __uvloop__ is that forking has been fully disabled and some smaller API calls had to be changed, error handling has been carefully modified and subprocesses release the GIL instead of forking out...
66
+
67
+ There is a performance increase of about 5 times with Winloop compared to using the `WindowsSelectorEventLoopPolicy` and `WindowsProactorEventLoopPolicy` which have been known to trigger SSL problems in `Python 3.9`. Winloop is a very good replacement for solving those SSL problems as well. This library also has comparable performance to its brother uvloop.
68
+
69
+
70
+
71
+ ## How to install Winloop on your Windows Operating System
72
+
73
+ ```
74
+ pip install winloop
75
+ ```
76
+
77
+ You can also clone the repository and build the extension yourself by running the command below if you wish to use or build this library locally. Note that you will need Cython and The Visual C++ extensions
78
+ to compile this library on your own.
79
+
80
+ ```
81
+ python setup.py build_ext --inplace
82
+ ```
83
+
84
+ ## Testing with UV
85
+ The __uv__ package manager is the preferred method for testing __winloop__ and it's author uses `ruff` and `uv` by default.
86
+
87
+ ```
88
+ uv venv
89
+ ```
90
+
91
+ ```shell
92
+ uv pip install winloop
93
+ ```
94
+ If your bilding and testing it from your own fork the following should work.
95
+ ```shell
96
+ uv pip install -e .
97
+ ```
98
+ If your planning to setup.py build_ext commands
99
+ you will need to install setuptools and cython
100
+ ```shell
101
+ uv pip install cython setuptools
102
+ ```
103
+
104
+
105
+ ## Reporting issues
106
+
107
+ If you find any bugs with this library be sure to open up an issue in the [issuetracker](https://github.com/Vizonex/Winloop/issues). The Winloop Contributors and the Owner when available will be happy try to help you figure out and diagnose your problems.
108
+
109
+
110
+ ## How To Use Winloop When Uvloop is not available
111
+
112
+ ```python
113
+ # Here's A small Example of using winloop when uvloop is not available to us
114
+ import sys
115
+ import aiohttp
116
+
117
+ async def main():
118
+ async with aiohttp.ClientSession("https://httpbin.org") as client:
119
+ async with client.get("/ip") as resp:
120
+ print(await resp.json())
121
+
122
+ if __name__ == "__main__":
123
+ if sys.platform in ('win32', 'cygwin', 'cli'):
124
+ from winloop import run
125
+ else:
126
+ # if we're on apple or linux do this instead
127
+ from uvloop import run
128
+ run(main())
129
+ ```
130
+
131
+ Alternatively, There's another way to do this involving a smaller resource called `winuvloop` which combines both uvloop and winloop together.
132
+
133
+ ```python
134
+ import aiohttp
135
+ import winuvloop
136
+
137
+ async def main():
138
+ async with aiohttp.ClientSession("https://httpbin.org") as client:
139
+ async with client.get("/ip") as resp:
140
+ print(await resp.json())
141
+
142
+ if __name__ == "__main__":
143
+ winuvloop.run(main())
144
+ ```
145
+
146
+
147
+ ## Videos
148
+ - By me: https://www.youtube.com/watch?v=tz9RYJ6aBZ8 (I might make a tutorial on how to use and install winloop it for those who have reading problems)
149
+
150
+ - My Presentation and Virtual Confrence Because I'm too busy to go to python conventions: https://www.youtube.com/watch?v=Cbb6trkKWXY
151
+
152
+
153
+ ## Contributing
154
+ I put my heart and soul into this library ever since it began and any help is appreciated and means a lot to me, I have other things I wish to explore so every little bit helps. No matter what I go through in life, my heart is always here.
155
+
156
+ ### How Can I contribute?
157
+ - Forking the library.
158
+ - Mirroring Winloop's improvements on uvloop's side.
159
+ - Reviewing pull requests.
160
+ - Fixing or editing workflows.
161
+ - Finding and editing spelling mistakes.
@@ -0,0 +1,115 @@
1
+ <img src="https://raw.githubusercontent.com/Vizonex/Winloop/main/winloop.png" width="200px"/>
2
+
3
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
4
+ [![IDIM](https://raw.githubusercontent.com/Vizonex/IDIM-Badge/master/badge.svg)](https://github.com/Vizonex/IDIM-Badge)
5
+
6
+
7
+
8
+ # Winloop
9
+ [![PyPI version](https://badge.fury.io/py/winloop.svg)](https://badge.fury.io/py/winloop)
10
+ ![PyPI - Downloads](https://img.shields.io/pypi/dm/winloop)
11
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
12
+ [![License: Apache-2.0](https://img.shields.io/badge/License-Apache-yellow.svg)](https://opensource.org/licenses/Apache-2-0)
13
+
14
+ An alternative library for uvloop compatibility with Windows because let's face it. Windows' Python asyncio standard library is garbage, especially when Windows Defender decides to eat half of your RAM.
15
+ I never really liked the fact that I couldn't make anything run faster especially when you have fiber internet connections in place and you've done all the optimizations you could possibly think of. It always felt disappointing when `libuv` is available for Windows [but Windows was never compatible with uvloop.](https://github.com/MagicStack/uvloop/issues/14#issuecomment-575826367])
16
+
17
+ Since nobody was willing to step in after so many years of waiting, I went ahead and downloaded the source code for uvloop and started modifying the source code to be Windows compatible by carefully removing and changing parts that were not made for Windows. Many hours of research went into making this library.
18
+
19
+ The differences with __uvloop__ is that forking has been fully disabled and some smaller API calls had to be changed, error handling has been carefully modified and subprocesses release the GIL instead of forking out...
20
+
21
+ There is a performance increase of about 5 times with Winloop compared to using the `WindowsSelectorEventLoopPolicy` and `WindowsProactorEventLoopPolicy` which have been known to trigger SSL problems in `Python 3.9`. Winloop is a very good replacement for solving those SSL problems as well. This library also has comparable performance to its brother uvloop.
22
+
23
+
24
+
25
+ ## How to install Winloop on your Windows Operating System
26
+
27
+ ```
28
+ pip install winloop
29
+ ```
30
+
31
+ You can also clone the repository and build the extension yourself by running the command below if you wish to use or build this library locally. Note that you will need Cython and The Visual C++ extensions
32
+ to compile this library on your own.
33
+
34
+ ```
35
+ python setup.py build_ext --inplace
36
+ ```
37
+
38
+ ## Testing with UV
39
+ The __uv__ package manager is the preferred method for testing __winloop__ and it's author uses `ruff` and `uv` by default.
40
+
41
+ ```
42
+ uv venv
43
+ ```
44
+
45
+ ```shell
46
+ uv pip install winloop
47
+ ```
48
+ If your bilding and testing it from your own fork the following should work.
49
+ ```shell
50
+ uv pip install -e .
51
+ ```
52
+ If your planning to setup.py build_ext commands
53
+ you will need to install setuptools and cython
54
+ ```shell
55
+ uv pip install cython setuptools
56
+ ```
57
+
58
+
59
+ ## Reporting issues
60
+
61
+ If you find any bugs with this library be sure to open up an issue in the [issuetracker](https://github.com/Vizonex/Winloop/issues). The Winloop Contributors and the Owner when available will be happy try to help you figure out and diagnose your problems.
62
+
63
+
64
+ ## How To Use Winloop When Uvloop is not available
65
+
66
+ ```python
67
+ # Here's A small Example of using winloop when uvloop is not available to us
68
+ import sys
69
+ import aiohttp
70
+
71
+ async def main():
72
+ async with aiohttp.ClientSession("https://httpbin.org") as client:
73
+ async with client.get("/ip") as resp:
74
+ print(await resp.json())
75
+
76
+ if __name__ == "__main__":
77
+ if sys.platform in ('win32', 'cygwin', 'cli'):
78
+ from winloop import run
79
+ else:
80
+ # if we're on apple or linux do this instead
81
+ from uvloop import run
82
+ run(main())
83
+ ```
84
+
85
+ Alternatively, There's another way to do this involving a smaller resource called `winuvloop` which combines both uvloop and winloop together.
86
+
87
+ ```python
88
+ import aiohttp
89
+ import winuvloop
90
+
91
+ async def main():
92
+ async with aiohttp.ClientSession("https://httpbin.org") as client:
93
+ async with client.get("/ip") as resp:
94
+ print(await resp.json())
95
+
96
+ if __name__ == "__main__":
97
+ winuvloop.run(main())
98
+ ```
99
+
100
+
101
+ ## Videos
102
+ - By me: https://www.youtube.com/watch?v=tz9RYJ6aBZ8 (I might make a tutorial on how to use and install winloop it for those who have reading problems)
103
+
104
+ - My Presentation and Virtual Confrence Because I'm too busy to go to python conventions: https://www.youtube.com/watch?v=Cbb6trkKWXY
105
+
106
+
107
+ ## Contributing
108
+ I put my heart and soul into this library ever since it began and any help is appreciated and means a lot to me, I have other things I wish to explore so every little bit helps. No matter what I go through in life, my heart is always here.
109
+
110
+ ### How Can I contribute?
111
+ - Forking the library.
112
+ - Mirroring Winloop's improvements on uvloop's side.
113
+ - Reviewing pull requests.
114
+ - Fixing or editing workflows.
115
+ - Finding and editing spelling mistakes.
@@ -2,7 +2,7 @@
2
2
  name = "winloop"
3
3
  description = "Windows version of uvloop"
4
4
  authors = [{name = "Vizonex", email="VizonexBusiness@gmail.com"}]
5
- requires-python = '>=3.8.0'
5
+ requires-python = '>=3.9.0'
6
6
  readme = "README.md"
7
7
  license = {text = "MIT License"}
8
8
  dynamic = ["version"]
@@ -43,7 +43,7 @@ test = [
43
43
  'aiohttp>=3.10.5',
44
44
  'flake8>=5,<8',
45
45
  'psutil',
46
- 'pycodestyle>=2.9,<2.15',
46
+ 'pycodestyle>=2.9,<2.16',
47
47
  'pyOpenSSL>=23.0,<26.5',
48
48
  'mypy>=0.800'
49
49
  ]
@@ -1,8 +1,8 @@
1
1
  import sys
2
2
 
3
3
  vi = sys.version_info
4
- if vi < (3, 8):
5
- raise RuntimeError("winloop requires Python 3.8 or greater")
4
+ if vi < (3, 9):
5
+ raise RuntimeError("winloop requires Python 3.9 or greater")
6
6
 
7
7
  # Winloop comment: winloop now supports both Windows and non-Windows.
8
8
  # Below uvloop's setup.py is merged with winloop's previous setup.py.
@@ -288,6 +288,7 @@ if sys.platform == "win32":
288
288
  "User32",
289
289
  "Dbghelp",
290
290
  "Ole32",
291
+ "Synchronization" # v1.53.0 needs it.
291
292
  )
292
293
  ],
293
294
  define_macros=[("WIN32_LEAN_AND_MEAN", 1), ("_WIN32_WINNT", "0x0602")],
@@ -38,6 +38,30 @@ class _RedirectFD(contextlib.AbstractContextManager):
38
38
 
39
39
 
40
40
  class _TestProcess:
41
+ @unittest.skipUnless(sys.platform == "win32", "Windows startupinfo")
42
+ def test_process_startupinfo(self):
43
+ async def test():
44
+ startupinfo = subprocess.STARTUPINFO()
45
+ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
46
+ startupinfo.wShowWindow = subprocess.SW_HIDE
47
+
48
+ proc = await asyncio.create_subprocess_exec(
49
+ sys.executable,
50
+ "-c",
51
+ "import sys; sys.stdout.write(sys.stdin.read())",
52
+ stdin=subprocess.PIPE,
53
+ stdout=subprocess.PIPE,
54
+ stderr=subprocess.PIPE,
55
+ startupinfo=startupinfo,
56
+ )
57
+
58
+ out, err = await proc.communicate(b"startupinfo")
59
+ self.assertEqual(out, b"startupinfo")
60
+ self.assertEqual(err, b"")
61
+ self.assertEqual(proc.returncode, 0)
62
+
63
+ self.loop.run_until_complete(test())
64
+
41
65
  def get_num_fds(self):
42
66
  # Winloop comment: use num_handles() as a meaningful
43
67
  # substitute for num_fds() on Windows.
@@ -940,6 +964,29 @@ print(n)"""
940
964
 
941
965
 
942
966
  class Test_UV_Process(_TestProcess, tb.UVTestCase):
967
+ @unittest.skipUnless(sys.platform == "win32", "Windows startupinfo")
968
+ def test_process_startupinfo_unsupported_flags(self):
969
+ async def test():
970
+ startupinfo = subprocess.STARTUPINFO()
971
+ startupinfo.dwFlags |= subprocess.STARTF_USESTDHANDLES
972
+
973
+ with self.assertRaisesRegex(ValueError, "startupinfo.dwFlags"):
974
+ await asyncio.create_subprocess_exec(
975
+ sys.executable, "-c", "pass", startupinfo=startupinfo,
976
+ )
977
+
978
+ self.loop.run_until_complete(test())
979
+
980
+ @unittest.skipIf(sys.platform == "win32", "POSIX startupinfo validation")
981
+ def test_process_startupinfo_posix(self):
982
+ async def test():
983
+ with self.assertRaisesRegex(ValueError, "startupinfo"):
984
+ await asyncio.create_subprocess_exec(
985
+ sys.executable, "-c", "pass", startupinfo=object(),
986
+ )
987
+
988
+ self.loop.run_until_complete(test())
989
+
943
990
  @unittest.skipIf(sys.platform != "win32", "problem is windows related only")
944
991
  def test_windows_issue_153(self):
945
992
  """Winloop issue 153 is related to bringing back the shlex parser
@@ -0,0 +1,47 @@
1
+ ---
2
+ # Configuration file for clang-tidy
3
+ # This configuration is tailored for the libuv C library project
4
+
5
+ # Use default checks with minimal necessary disables
6
+ Checks:
7
+ # don't suggest reordering struct definitions
8
+ - -clang-analyzer-optin.performance.Padding
9
+ # allow memcpy (instead of memcpy_s)
10
+ - -clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling
11
+ # allow strcpy
12
+ - -clang-analyzer-security.insecureAPI.strcpy
13
+ # allow TBAA
14
+ - -clang-analyzer-unix.MallocSizeof
15
+ # always allow `if () statement;` instead of `if () { statement; }`
16
+ - -readability-braces-around-statements
17
+ # allow any use of case and _ conventions in names
18
+ - -readability-identifier-naming
19
+ # allow defining a function prototype without naming all arguments
20
+ - -readability-named-parameter
21
+ # allow 1u instead of 1U constants
22
+ - -readability-uppercase-literal-suffix
23
+
24
+ # Configure specific check options
25
+ CheckOptions:
26
+ - key: performance-unnecessary-value-param.AllowedTypes
27
+ value: 'uv_.*_t'
28
+ - key: readability-braces-around-statements.ShortStatementLines
29
+ value: '2'
30
+ - key: readability-function-size.LineThreshold
31
+ value: '150'
32
+ - key: readability-function-size.StatementThreshold
33
+ value: '80'
34
+ - key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
35
+ value: 'true'
36
+
37
+ # Header filter - only analyze project files, not system headers
38
+ HeaderFilterRegex: '^.*/(src|include|test)/.*\.(h|c)$'
39
+
40
+ # Format style for fix suggestions
41
+ FormatStyle: file
42
+
43
+ # Treat warnings as errors
44
+ WarningsAsErrors: false
45
+
46
+ # Use color, even when run through a program like ninja
47
+ UseColor: true
@@ -7,12 +7,14 @@ on:
7
7
  - '!docs/code/**'
8
8
  - '.github/workflows/CI-docs.yml'
9
9
 
10
+ permissions: read-all
11
+
10
12
  jobs:
11
13
  docs-src:
12
14
  runs-on: ubuntu-latest
13
15
  steps:
14
- - uses: actions/checkout@v4
15
- - uses: actions/setup-python@v5
16
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
17
+ - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
16
18
  with:
17
19
  python-version: '3.9'
18
20
  cache: 'pip' # caching pip dependencies
@@ -0,0 +1,44 @@
1
+ name: CI-freebsd
2
+
3
+ on:
4
+ pull_request:
5
+ paths:
6
+ - '**'
7
+ - '!docs/**'
8
+ - '!src/win/**'
9
+ - '!.**'
10
+ - '.github/workflows/CI-freebsd.yml'
11
+ push:
12
+ branches:
13
+ - v[0-9].*
14
+ - master
15
+ workflow_dispatch:
16
+
17
+ permissions: read-all
18
+
19
+ jobs:
20
+ build-freebsd:
21
+ runs-on: ubuntu-24.04
22
+ name: Build on FreeBSD ${{ matrix.release }}
23
+ strategy:
24
+ fail-fast: false
25
+ matrix:
26
+ # The two supported branches. Only the leading part is given, so
27
+ # the newest release of each is picked up without an edit here.
28
+ release: ['14', '15']
29
+ steps:
30
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
31
+ - name: Build
32
+ uses: vmactions/freebsd-vm@a2f9a41fa97f6848b8c3b791087dfcdaa5b473ff # v1.5.8
33
+ with:
34
+ release: ${{ matrix.release }}
35
+ copyback: false
36
+ cache-after-prepare: true
37
+ prepare: pkg install -y autoconf automake libtool gmake
38
+ run: |
39
+ set -e -u -x
40
+ ./autogen.sh
41
+ mkdir build
42
+ cd build
43
+ ../configure
44
+ gmake -j2
@@ -0,0 +1,42 @@
1
+ name: CI-netbsd
2
+
3
+ on:
4
+ pull_request:
5
+ paths:
6
+ - '**'
7
+ - '!docs/**'
8
+ - '!src/win/**'
9
+ - '!.**'
10
+ - '.github/workflows/CI-netbsd.yml'
11
+ push:
12
+ branches:
13
+ - v[0-9].*
14
+ - master
15
+ workflow_dispatch:
16
+
17
+ permissions: read-all
18
+
19
+ jobs:
20
+ build-netbsd:
21
+ runs-on: ubuntu-24.04
22
+ name: Build on NetBSD
23
+ steps:
24
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
25
+ - name: Build
26
+ uses: vmactions/netbsd-vm@c8a0d7ddb84619a7a8cc4e652efa7950b3fd9f92 # v1.5.2
27
+ with:
28
+ copyback: false
29
+ cache-after-prepare: true
30
+ prepare: |
31
+ # netbsd-vm v1.4.8 probes the package mirrors at VM start and
32
+ # points pkg_add at the live ones, so no PKG_PATH juggling is
33
+ # needed here.
34
+ pkg_add autoconf automake libtool gmake
35
+ for t in autoconf automake libtool gmake; do command -v "$t"; done
36
+ run: |
37
+ set -e -u -x
38
+ ./autogen.sh
39
+ mkdir build
40
+ cd build
41
+ ../configure
42
+ gmake -j2
@@ -0,0 +1,41 @@
1
+ name: CI-openbsd
2
+
3
+ on:
4
+ pull_request:
5
+ paths:
6
+ - '**'
7
+ - '!docs/**'
8
+ - '!src/win/**'
9
+ - '!.**'
10
+ - '.github/workflows/CI-openbsd.yml'
11
+ push:
12
+ branches:
13
+ - v[0-9].*
14
+ - master
15
+ workflow_dispatch:
16
+
17
+ permissions: read-all
18
+
19
+ jobs:
20
+ build-openbsd:
21
+ runs-on: ubuntu-24.04
22
+ name: Build on OpenBSD
23
+ steps:
24
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
25
+ - name: Build
26
+ uses: vmactions/openbsd-vm@5f7b2c933b8846a138361d6843c52af4bef5d945 # v1.4.8
27
+ with:
28
+ copyback: false
29
+ cache-after-prepare: true
30
+ # A bare "pkg_add autoconf" prints an "Ambiguous: ..." list and
31
+ # still exits 0 without installing anything, so pin the branches.
32
+ prepare: pkg_add -I autoconf%2.72 automake%1.18 libtool gmake
33
+ run: |
34
+ set -e -u -x
35
+ export AUTOCONF_VERSION=2.72
36
+ export AUTOMAKE_VERSION=1.18
37
+ ./autogen.sh
38
+ mkdir build
39
+ cd build
40
+ ../configure
41
+ gmake -j2
@@ -13,6 +13,8 @@ on:
13
13
  - v[0-9].*
14
14
  - master
15
15
 
16
+ permissions: read-all
17
+
16
18
  jobs:
17
19
  build:
18
20
  strategy:
@@ -21,7 +23,7 @@ jobs:
21
23
  os: [macos-latest, ubuntu-latest, windows-latest]
22
24
  runs-on: ${{matrix.os}}
23
25
  steps:
24
- - uses: actions/checkout@v4
26
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
25
27
  - name: setup
26
28
  run: cmake -E make_directory ${{runner.workspace}}/libuv/docs/code/build
27
29
  - name: configure
@@ -0,0 +1,46 @@
1
+ name: CI-solaris
2
+
3
+ on:
4
+ pull_request:
5
+ paths:
6
+ - '**'
7
+ - '!docs/**'
8
+ - '!src/win/**'
9
+ - '!.**'
10
+ - '.github/workflows/CI-solaris.yml'
11
+ push:
12
+ branches:
13
+ - v[0-9].*
14
+ - master
15
+ workflow_dispatch:
16
+
17
+ permissions: read-all
18
+
19
+ jobs:
20
+ build-solaris:
21
+ runs-on: ubuntu-24.04
22
+ name: Build and test on Solaris
23
+ steps:
24
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
25
+ - name: Build and test
26
+ uses: vmactions/solaris-vm@87d3c436511cef802cd1637f86f73b1a97715c8c # v1.4.1
27
+ with:
28
+ release: '11.4-gcc'
29
+ usesh: true
30
+ copyback: false
31
+ prepare: uname -a
32
+ run: |
33
+ set -e -u -x
34
+ export LANG=C
35
+ export LC_ALL=C
36
+
37
+ ./autogen.sh
38
+ mkdir build
39
+ cd build
40
+ ../configure
41
+ gmake -j2
42
+ useradd -m -s /usr/bin/sh libuvci
43
+ # Keep source and destination ownership consistent for fs_copyfile.
44
+ ci_group=$(id -gn libuvci)
45
+ chown -R "libuvci:$ci_group" "$GITHUB_WORKSPACE"
46
+ su - libuvci -c "cd '$GITHUB_WORKSPACE/build' && gmake check"