polyphony 0.98 → 0.99.1

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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -1
  3. data/.rubocop.yml +3 -3
  4. data/.yardopts +30 -0
  5. data/CHANGELOG.md +11 -0
  6. data/LICENSE +1 -1
  7. data/README.md +63 -29
  8. data/Rakefile +1 -5
  9. data/TODO.md +0 -4
  10. data/docs/{main-concepts/concurrency.md → concurrency.md} +2 -9
  11. data/docs/{main-concepts/design-principles.md → design-principles.md} +3 -9
  12. data/docs/{main-concepts/exception-handling.md → exception-handling.md} +2 -9
  13. data/docs/{main-concepts/extending.md → extending.md} +2 -9
  14. data/docs/faq.md +3 -16
  15. data/docs/{main-concepts/fiber-scheduling.md → fiber-scheduling.md} +1 -9
  16. data/docs/link_rewriter.rb +16 -0
  17. data/docs/{getting-started/overview.md → overview.md} +1 -30
  18. data/docs/{getting-started/tutorial.md → tutorial.md} +3 -28
  19. data/docs/{_posts/2020-07-26-polyphony-0.44.md → whats-new.md} +3 -1
  20. data/examples/adapters/redis_client.rb +3 -2
  21. data/examples/io/echo_server.rb +1 -1
  22. data/examples/io/echo_server_plain_ruby.rb +26 -0
  23. data/examples/io/https_server_sni_2.rb +14 -8
  24. data/ext/polyphony/backend_io_uring.c +154 -9
  25. data/ext/polyphony/backend_io_uring_context.c +21 -12
  26. data/ext/polyphony/backend_io_uring_context.h +12 -7
  27. data/ext/polyphony/backend_libev.c +1 -1
  28. data/ext/polyphony/extconf.rb +25 -8
  29. data/ext/polyphony/fiber.c +79 -2
  30. data/ext/polyphony/io_extensions.c +53 -0
  31. data/ext/polyphony/libev.h +0 -2
  32. data/ext/polyphony/pipe.c +42 -2
  33. data/ext/polyphony/polyphony.c +345 -31
  34. data/ext/polyphony/polyphony.h +9 -2
  35. data/ext/polyphony/queue.c +181 -0
  36. data/ext/polyphony/ring_buffer.c +0 -1
  37. data/ext/polyphony/runqueue.c +8 -1
  38. data/ext/polyphony/runqueue_ring_buffer.c +13 -0
  39. data/ext/polyphony/runqueue_ring_buffer.h +2 -1
  40. data/ext/polyphony/socket_extensions.c +6 -0
  41. data/ext/polyphony/thread.c +34 -2
  42. data/lib/polyphony/adapters/process.rb +11 -1
  43. data/lib/polyphony/adapters/sequel.rb +1 -1
  44. data/lib/polyphony/core/channel.rb +2 -0
  45. data/lib/polyphony/core/debug.rb +1 -1
  46. data/lib/polyphony/core/global_api.rb +25 -24
  47. data/lib/polyphony/core/resource_pool.rb +7 -6
  48. data/lib/polyphony/core/sync.rb +55 -2
  49. data/lib/polyphony/core/thread_pool.rb +3 -3
  50. data/lib/polyphony/core/timer.rb +8 -8
  51. data/lib/polyphony/extensions/exception.rb +2 -0
  52. data/lib/polyphony/extensions/fiber.rb +15 -13
  53. data/lib/polyphony/extensions/io.rb +161 -16
  54. data/lib/polyphony/extensions/kernel.rb +20 -2
  55. data/lib/polyphony/extensions/openssl.rb +101 -12
  56. data/lib/polyphony/extensions/pipe.rb +103 -7
  57. data/lib/polyphony/extensions/process.rb +13 -1
  58. data/lib/polyphony/extensions/socket.rb +93 -27
  59. data/lib/polyphony/extensions/thread.rb +9 -1
  60. data/lib/polyphony/extensions/timeout.rb +1 -1
  61. data/lib/polyphony/version.rb +2 -1
  62. data/lib/polyphony.rb +27 -7
  63. data/polyphony.gemspec +1 -8
  64. data/test/stress.rb +1 -1
  65. data/test/test_global_api.rb +45 -7
  66. data/test/test_io.rb +6 -7
  67. data/test/test_socket.rb +157 -0
  68. data/test/test_sync.rb +42 -1
  69. data/test/test_timer.rb +5 -5
  70. data/vendor/liburing/.github/workflows/build.yml +7 -16
  71. data/vendor/liburing/.gitignore +5 -0
  72. data/vendor/liburing/CHANGELOG +23 -1
  73. data/vendor/liburing/Makefile +4 -3
  74. data/vendor/liburing/Makefile.common +1 -0
  75. data/vendor/liburing/README +48 -0
  76. data/vendor/liburing/configure +76 -6
  77. data/vendor/liburing/debian/changelog +11 -0
  78. data/vendor/liburing/debian/control +7 -16
  79. data/vendor/liburing/debian/liburing-dev.manpages +3 -6
  80. data/vendor/liburing/debian/liburing2.install +1 -0
  81. data/vendor/liburing/debian/liburing2.symbols +56 -0
  82. data/vendor/liburing/debian/rules +15 -68
  83. data/vendor/liburing/examples/Makefile +4 -0
  84. data/vendor/liburing/examples/io_uring-close-test.c +123 -0
  85. data/vendor/liburing/examples/io_uring-udp.c +1 -1
  86. data/vendor/liburing/examples/send-zerocopy.c +315 -56
  87. data/vendor/liburing/examples/ucontext-cp.c +2 -17
  88. data/vendor/liburing/liburing-ffi.pc.in +12 -0
  89. data/vendor/liburing/liburing.pc.in +1 -1
  90. data/vendor/liburing/liburing.spec +1 -1
  91. data/vendor/liburing/make-debs.sh +3 -3
  92. data/vendor/liburing/man/IO_URING_CHECK_VERSION.3 +1 -0
  93. data/vendor/liburing/man/IO_URING_VERSION_MAJOR.3 +1 -0
  94. data/vendor/liburing/man/IO_URING_VERSION_MINOR.3 +1 -0
  95. data/vendor/liburing/man/io_uring_buf_ring_add.3 +6 -6
  96. data/vendor/liburing/man/io_uring_check_version.3 +72 -0
  97. data/vendor/liburing/man/io_uring_close_ring_fd.3 +43 -0
  98. data/vendor/liburing/man/io_uring_major_version.3 +1 -0
  99. data/vendor/liburing/man/io_uring_minor_version.3 +1 -0
  100. data/vendor/liburing/man/io_uring_prep_accept.3 +1 -1
  101. data/vendor/liburing/man/io_uring_prep_fgetxattr.3 +1 -0
  102. data/vendor/liburing/man/io_uring_prep_fsetxattr.3 +1 -0
  103. data/vendor/liburing/man/io_uring_prep_getxattr.3 +61 -0
  104. data/vendor/liburing/man/io_uring_prep_link_timeout.3 +94 -0
  105. data/vendor/liburing/man/io_uring_prep_msg_ring.3 +22 -2
  106. data/vendor/liburing/man/io_uring_prep_msg_ring_cqe_flags.3 +1 -0
  107. data/vendor/liburing/man/io_uring_prep_poll_add.3 +1 -1
  108. data/vendor/liburing/man/io_uring_prep_provide_buffers.3 +18 -9
  109. data/vendor/liburing/man/io_uring_prep_readv.3 +3 -3
  110. data/vendor/liburing/man/io_uring_prep_readv2.3 +3 -3
  111. data/vendor/liburing/man/io_uring_prep_recv.3 +5 -5
  112. data/vendor/liburing/man/io_uring_prep_recvmsg.3 +4 -4
  113. data/vendor/liburing/man/io_uring_prep_send.3 +9 -0
  114. data/vendor/liburing/man/io_uring_prep_send_set_addr.3 +38 -0
  115. data/vendor/liburing/man/io_uring_prep_send_zc.3 +39 -7
  116. data/vendor/liburing/man/io_uring_prep_send_zc_fixed.3 +1 -0
  117. data/vendor/liburing/man/io_uring_prep_sendmsg.3 +20 -0
  118. data/vendor/liburing/man/io_uring_prep_sendmsg_zc.3 +1 -0
  119. data/vendor/liburing/man/io_uring_prep_setxattr.3 +64 -0
  120. data/vendor/liburing/man/io_uring_prep_splice.3 +40 -0
  121. data/vendor/liburing/man/io_uring_prep_writev.3 +2 -2
  122. data/vendor/liburing/man/io_uring_prep_writev2.3 +2 -2
  123. data/vendor/liburing/man/io_uring_recvmsg_out.3 +13 -9
  124. data/vendor/liburing/man/io_uring_register.2 +15 -9
  125. data/vendor/liburing/man/io_uring_register_buf_ring.3 +4 -4
  126. data/vendor/liburing/man/io_uring_register_buffers.3 +49 -6
  127. data/vendor/liburing/man/io_uring_register_buffers_sparse.3 +1 -0
  128. data/vendor/liburing/man/io_uring_register_buffers_tags.3 +1 -0
  129. data/vendor/liburing/man/io_uring_register_buffers_update_tag.3 +1 -0
  130. data/vendor/liburing/man/io_uring_register_files.3 +60 -5
  131. data/vendor/liburing/man/io_uring_register_files_tags.3 +1 -0
  132. data/vendor/liburing/man/io_uring_register_files_update.3 +1 -0
  133. data/vendor/liburing/man/io_uring_register_files_update_tag.3 +1 -0
  134. data/vendor/liburing/man/io_uring_setup.2 +31 -2
  135. data/vendor/liburing/man/io_uring_wait_cqe_timeout.3 +1 -1
  136. data/vendor/liburing/src/Makefile +25 -3
  137. data/vendor/liburing/src/ffi.c +15 -0
  138. data/vendor/liburing/src/include/liburing/io_uring.h +30 -7
  139. data/vendor/liburing/src/include/liburing.h +190 -148
  140. data/vendor/liburing/src/int_flags.h +1 -0
  141. data/vendor/liburing/src/lib.h +5 -16
  142. data/vendor/liburing/src/liburing-ffi.map +172 -0
  143. data/vendor/liburing/src/liburing.map +11 -0
  144. data/vendor/liburing/src/nolibc.c +9 -2
  145. data/vendor/liburing/src/queue.c +2 -2
  146. data/vendor/liburing/src/register.c +66 -96
  147. data/vendor/liburing/src/setup.c +5 -4
  148. data/vendor/liburing/src/version.c +21 -0
  149. data/vendor/liburing/test/232c93d07b74.c +3 -3
  150. data/vendor/liburing/test/35fa71a030ca.c +3 -3
  151. data/vendor/liburing/test/500f9fbadef8.c +2 -0
  152. data/vendor/liburing/test/917257daa0fe.c +1 -1
  153. data/vendor/liburing/test/Makefile +27 -7
  154. data/vendor/liburing/test/a0908ae19763.c +2 -2
  155. data/vendor/liburing/test/a4c0b3decb33.c +2 -2
  156. data/vendor/liburing/test/accept-link.c +4 -4
  157. data/vendor/liburing/test/accept-reuse.c +5 -7
  158. data/vendor/liburing/test/accept.c +34 -31
  159. data/vendor/liburing/test/b19062a56726.c +1 -1
  160. data/vendor/liburing/test/buf-ring.c +58 -4
  161. data/vendor/liburing/test/ce593a6c480a.c +2 -2
  162. data/vendor/liburing/test/close-opath.c +2 -1
  163. data/vendor/liburing/test/connect.c +8 -0
  164. data/vendor/liburing/test/cq-overflow.c +14 -8
  165. data/vendor/liburing/test/d4ae271dfaae.c +1 -1
  166. data/vendor/liburing/test/defer-taskrun.c +64 -9
  167. data/vendor/liburing/test/defer.c +1 -1
  168. data/vendor/liburing/test/double-poll-crash.c +3 -3
  169. data/vendor/liburing/test/eeed8b54e0df.c +8 -3
  170. data/vendor/liburing/test/eploop.c +74 -0
  171. data/vendor/liburing/test/eventfd-ring.c +1 -1
  172. data/vendor/liburing/test/eventfd.c +1 -1
  173. data/vendor/liburing/test/evloop.c +73 -0
  174. data/vendor/liburing/test/exit-no-cleanup.c +1 -1
  175. data/vendor/liburing/test/fadvise.c +1 -1
  176. data/vendor/liburing/test/fc2a85cb02ef.c +3 -3
  177. data/vendor/liburing/test/fd-pass.c +35 -16
  178. data/vendor/liburing/test/file-register.c +61 -0
  179. data/vendor/liburing/test/file-verify.c +2 -2
  180. data/vendor/liburing/test/files-exit-hang-timeout.c +2 -2
  181. data/vendor/liburing/test/fixed-link.c +1 -1
  182. data/vendor/liburing/test/fsnotify.c +118 -0
  183. data/vendor/liburing/test/hardlink.c +1 -1
  184. data/vendor/liburing/test/helpers.c +54 -2
  185. data/vendor/liburing/test/helpers.h +4 -0
  186. data/vendor/liburing/test/io-cancel.c +3 -1
  187. data/vendor/liburing/test/io_uring_passthrough.c +39 -8
  188. data/vendor/liburing/test/io_uring_setup.c +3 -80
  189. data/vendor/liburing/test/iopoll-overflow.c +118 -0
  190. data/vendor/liburing/test/iopoll.c +90 -4
  191. data/vendor/liburing/test/lfs-openat-write.c +7 -9
  192. data/vendor/liburing/test/lfs-openat.c +6 -8
  193. data/vendor/liburing/test/link_drain.c +31 -5
  194. data/vendor/liburing/test/madvise.c +1 -1
  195. data/vendor/liburing/test/msg-ring-flags.c +192 -0
  196. data/vendor/liburing/test/msg-ring-overflow.c +159 -0
  197. data/vendor/liburing/test/msg-ring.c +173 -13
  198. data/vendor/liburing/test/multicqes_drain.c +22 -19
  199. data/vendor/liburing/test/nvme.h +4 -3
  200. data/vendor/liburing/test/pipe-bug.c +95 -0
  201. data/vendor/liburing/test/poll-link.c +3 -3
  202. data/vendor/liburing/test/poll-many.c +41 -19
  203. data/vendor/liburing/test/poll-mshot-overflow.c +105 -2
  204. data/vendor/liburing/test/poll-race-mshot.c +292 -0
  205. data/vendor/liburing/test/poll-race.c +105 -0
  206. data/vendor/liburing/test/poll.c +244 -26
  207. data/vendor/liburing/test/pollfree.c +5 -5
  208. data/vendor/liburing/test/read-before-exit.c +20 -3
  209. data/vendor/liburing/test/read-write.c +2 -0
  210. data/vendor/liburing/test/recv-multishot.c +96 -3
  211. data/vendor/liburing/test/reg-reg-ring.c +90 -0
  212. data/vendor/liburing/test/rename.c +1 -1
  213. data/vendor/liburing/test/ring-leak.c +0 -1
  214. data/vendor/liburing/test/ring-leak2.c +1 -1
  215. data/vendor/liburing/test/ringbuf-read.c +10 -6
  216. data/vendor/liburing/test/send-zerocopy.c +273 -103
  217. data/vendor/liburing/test/send_recv.c +7 -4
  218. data/vendor/liburing/test/sendmsg_fs_cve.c +2 -2
  219. data/vendor/liburing/test/single-issuer.c +7 -9
  220. data/vendor/liburing/test/skip-cqe.c +3 -4
  221. data/vendor/liburing/test/socket.c +0 -1
  222. data/vendor/liburing/test/sq-poll-dup.c +10 -3
  223. data/vendor/liburing/test/sq-poll-kthread.c +1 -1
  224. data/vendor/liburing/test/sq-poll-share.c +3 -2
  225. data/vendor/liburing/test/sqpoll-cancel-hang.c +17 -6
  226. data/vendor/liburing/test/sqpoll-disable-exit.c +4 -4
  227. data/vendor/liburing/test/symlink.c +2 -1
  228. data/vendor/liburing/test/test.h +2 -1
  229. data/vendor/liburing/test/timeout-new.c +11 -7
  230. data/vendor/liburing/test/timeout.c +1 -2
  231. data/vendor/liburing/test/unlink.c +1 -1
  232. data/vendor/liburing/test/version.c +25 -0
  233. data/vendor/liburing/test/wakeup-hang.c +1 -1
  234. data/vendor/liburing/test/xattr.c +8 -4
  235. metadata +57 -44
  236. data/docs/_config.yml +0 -64
  237. data/docs/_includes/head.html +0 -40
  238. data/docs/_includes/title.html +0 -1
  239. data/docs/_sass/custom/custom.scss +0 -10
  240. data/docs/_sass/overrides.scss +0 -0
  241. data/docs/api-reference/exception.md +0 -31
  242. data/docs/api-reference/fiber.md +0 -425
  243. data/docs/api-reference/index.md +0 -9
  244. data/docs/api-reference/io.md +0 -36
  245. data/docs/api-reference/object.md +0 -99
  246. data/docs/api-reference/polyphony-baseexception.md +0 -33
  247. data/docs/api-reference/polyphony-cancel.md +0 -26
  248. data/docs/api-reference/polyphony-moveon.md +0 -24
  249. data/docs/api-reference/polyphony-net.md +0 -20
  250. data/docs/api-reference/polyphony-process.md +0 -28
  251. data/docs/api-reference/polyphony-resourcepool.md +0 -59
  252. data/docs/api-reference/polyphony-restart.md +0 -18
  253. data/docs/api-reference/polyphony-terminate.md +0 -18
  254. data/docs/api-reference/polyphony-threadpool.md +0 -67
  255. data/docs/api-reference/polyphony-throttler.md +0 -77
  256. data/docs/api-reference/polyphony.md +0 -36
  257. data/docs/api-reference/thread.md +0 -88
  258. data/docs/favicon.ico +0 -0
  259. data/docs/getting-started/index.md +0 -10
  260. data/docs/getting-started/installing.md +0 -34
  261. data/vendor/liburing/debian/compat +0 -1
  262. data/vendor/liburing/debian/liburing1-udeb.install +0 -1
  263. data/vendor/liburing/debian/liburing1.install +0 -1
  264. data/vendor/liburing/debian/liburing1.symbols +0 -32
  265. /data/{docs/assets/img → assets}/echo-fibers.svg +0 -0
  266. /data/{docs → assets}/polyphony-logo.png +0 -0
  267. /data/{docs/assets/img → assets}/sleeping-fiber.svg +0 -0
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: polyphony
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.98'
4
+ version: 0.99.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sharon Rosner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-08 00:00:00.000000000 Z
11
+ date: 2023-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake-compiler
@@ -137,58 +137,35 @@ files:
137
137
  - ".gitmodules"
138
138
  - ".rubocop.yml"
139
139
  - ".vscode/launch.json"
140
+ - ".yardopts"
140
141
  - CHANGELOG.md
141
142
  - Gemfile
142
143
  - LICENSE
143
144
  - README.md
144
145
  - Rakefile
145
146
  - TODO.md
147
+ - assets/echo-fibers.svg
148
+ - assets/polyphony-logo.png
149
+ - assets/sleeping-fiber.svg
146
150
  - bin/pdbg
147
151
  - bin/polyphony-debug
148
152
  - bin/stress.rb
149
153
  - bin/test
150
- - docs/_config.yml
151
- - docs/_includes/head.html
152
- - docs/_includes/title.html
153
- - docs/_posts/2020-07-26-polyphony-0.44.md
154
- - docs/_sass/custom/custom.scss
155
- - docs/_sass/overrides.scss
156
154
  - docs/_user-guide/all-about-timers.md
157
155
  - docs/_user-guide/index.md
158
156
  - docs/_user-guide/web-server.md
159
- - docs/api-reference/exception.md
160
- - docs/api-reference/fiber.md
161
- - docs/api-reference/index.md
162
- - docs/api-reference/io.md
163
- - docs/api-reference/object.md
164
- - docs/api-reference/polyphony-baseexception.md
165
- - docs/api-reference/polyphony-cancel.md
166
- - docs/api-reference/polyphony-moveon.md
167
- - docs/api-reference/polyphony-net.md
168
- - docs/api-reference/polyphony-process.md
169
- - docs/api-reference/polyphony-resourcepool.md
170
- - docs/api-reference/polyphony-restart.md
171
- - docs/api-reference/polyphony-terminate.md
172
- - docs/api-reference/polyphony-threadpool.md
173
- - docs/api-reference/polyphony-throttler.md
174
- - docs/api-reference/polyphony.md
175
- - docs/api-reference/thread.md
176
- - docs/assets/img/echo-fibers.svg
177
- - docs/assets/img/sleeping-fiber.svg
157
+ - docs/concurrency.md
158
+ - docs/design-principles.md
159
+ - docs/exception-handling.md
160
+ - docs/extending.md
178
161
  - docs/faq.md
179
- - docs/favicon.ico
180
- - docs/getting-started/index.md
181
- - docs/getting-started/installing.md
182
- - docs/getting-started/overview.md
183
- - docs/getting-started/tutorial.md
162
+ - docs/fiber-scheduling.md
184
163
  - docs/index.md
185
- - docs/main-concepts/concurrency.md
186
- - docs/main-concepts/design-principles.md
187
- - docs/main-concepts/exception-handling.md
188
- - docs/main-concepts/extending.md
189
- - docs/main-concepts/fiber-scheduling.md
164
+ - docs/link_rewriter.rb
190
165
  - docs/main-concepts/index.md
191
- - docs/polyphony-logo.png
166
+ - docs/overview.md
167
+ - docs/tutorial.md
168
+ - docs/whats-new.md
192
169
  - examples/adapters/pg_client.rb
193
170
  - examples/adapters/pg_notify.rb
194
171
  - examples/adapters/pg_pool.rb
@@ -243,6 +220,7 @@ files:
243
220
  - examples/io/echo_client_from_stdin.rb
244
221
  - examples/io/echo_pipe.rb
245
222
  - examples/io/echo_server.rb
223
+ - examples/io/echo_server_plain_ruby.rb
246
224
  - examples/io/echo_server_with_timeout.rb
247
225
  - examples/io/echo_stdin.rb
248
226
  - examples/io/gzip.rb
@@ -424,14 +402,12 @@ files:
424
402
  - vendor/liburing/configure
425
403
  - vendor/liburing/debian/README.Debian
426
404
  - vendor/liburing/debian/changelog
427
- - vendor/liburing/debian/compat
428
405
  - vendor/liburing/debian/control
429
406
  - vendor/liburing/debian/copyright
430
407
  - vendor/liburing/debian/liburing-dev.install
431
408
  - vendor/liburing/debian/liburing-dev.manpages
432
- - vendor/liburing/debian/liburing1-udeb.install
433
- - vendor/liburing/debian/liburing1.install
434
- - vendor/liburing/debian/liburing1.symbols
409
+ - vendor/liburing/debian/liburing2.install
410
+ - vendor/liburing/debian/liburing2.symbols
435
411
  - vendor/liburing/debian/patches/series
436
412
  - vendor/liburing/debian/rules
437
413
  - vendor/liburing/debian/source/format
@@ -439,6 +415,7 @@ files:
439
415
  - vendor/liburing/debian/source/options
440
416
  - vendor/liburing/debian/watch
441
417
  - vendor/liburing/examples/Makefile
418
+ - vendor/liburing/examples/io_uring-close-test.c
442
419
  - vendor/liburing/examples/io_uring-cp.c
443
420
  - vendor/liburing/examples/io_uring-test.c
444
421
  - vendor/liburing/examples/io_uring-udp.c
@@ -446,15 +423,21 @@ files:
446
423
  - vendor/liburing/examples/poll-bench.c
447
424
  - vendor/liburing/examples/send-zerocopy.c
448
425
  - vendor/liburing/examples/ucontext-cp.c
426
+ - vendor/liburing/liburing-ffi.pc.in
449
427
  - vendor/liburing/liburing.pc.in
450
428
  - vendor/liburing/liburing.spec
451
429
  - vendor/liburing/make-debs.sh
430
+ - vendor/liburing/man/IO_URING_CHECK_VERSION.3
431
+ - vendor/liburing/man/IO_URING_VERSION_MAJOR.3
432
+ - vendor/liburing/man/IO_URING_VERSION_MINOR.3
452
433
  - vendor/liburing/man/io_uring.7
453
434
  - vendor/liburing/man/io_uring_buf_ring_add.3
454
435
  - vendor/liburing/man/io_uring_buf_ring_advance.3
455
436
  - vendor/liburing/man/io_uring_buf_ring_cq_advance.3
456
437
  - vendor/liburing/man/io_uring_buf_ring_init.3
457
438
  - vendor/liburing/man/io_uring_buf_ring_mask.3
439
+ - vendor/liburing/man/io_uring_check_version.3
440
+ - vendor/liburing/man/io_uring_close_ring_fd.3
458
441
  - vendor/liburing/man/io_uring_cq_advance.3
459
442
  - vendor/liburing/man/io_uring_cq_has_overflow.3
460
443
  - vendor/liburing/man/io_uring_cq_ready.3
@@ -467,6 +450,8 @@ files:
467
450
  - vendor/liburing/man/io_uring_get_events.3
468
451
  - vendor/liburing/man/io_uring_get_probe.3
469
452
  - vendor/liburing/man/io_uring_get_sqe.3
453
+ - vendor/liburing/man/io_uring_major_version.3
454
+ - vendor/liburing/man/io_uring_minor_version.3
470
455
  - vendor/liburing/man/io_uring_opcode_supported.3
471
456
  - vendor/liburing/man/io_uring_peek_cqe.3
472
457
  - vendor/liburing/man/io_uring_prep_accept.3
@@ -478,14 +463,19 @@ files:
478
463
  - vendor/liburing/man/io_uring_prep_connect.3
479
464
  - vendor/liburing/man/io_uring_prep_fadvise.3
480
465
  - vendor/liburing/man/io_uring_prep_fallocate.3
466
+ - vendor/liburing/man/io_uring_prep_fgetxattr.3
481
467
  - vendor/liburing/man/io_uring_prep_files_update.3
468
+ - vendor/liburing/man/io_uring_prep_fsetxattr.3
482
469
  - vendor/liburing/man/io_uring_prep_fsync.3
470
+ - vendor/liburing/man/io_uring_prep_getxattr.3
483
471
  - vendor/liburing/man/io_uring_prep_link.3
472
+ - vendor/liburing/man/io_uring_prep_link_timeout.3
484
473
  - vendor/liburing/man/io_uring_prep_linkat.3
485
474
  - vendor/liburing/man/io_uring_prep_madvise.3
486
475
  - vendor/liburing/man/io_uring_prep_mkdir.3
487
476
  - vendor/liburing/man/io_uring_prep_mkdirat.3
488
477
  - vendor/liburing/man/io_uring_prep_msg_ring.3
478
+ - vendor/liburing/man/io_uring_prep_msg_ring_cqe_flags.3
489
479
  - vendor/liburing/man/io_uring_prep_multishot_accept.3
490
480
  - vendor/liburing/man/io_uring_prep_multishot_accept_direct.3
491
481
  - vendor/liburing/man/io_uring_prep_nop.3
@@ -510,8 +500,12 @@ files:
510
500
  - vendor/liburing/man/io_uring_prep_rename.3
511
501
  - vendor/liburing/man/io_uring_prep_renameat.3
512
502
  - vendor/liburing/man/io_uring_prep_send.3
503
+ - vendor/liburing/man/io_uring_prep_send_set_addr.3
513
504
  - vendor/liburing/man/io_uring_prep_send_zc.3
505
+ - vendor/liburing/man/io_uring_prep_send_zc_fixed.3
514
506
  - vendor/liburing/man/io_uring_prep_sendmsg.3
507
+ - vendor/liburing/man/io_uring_prep_sendmsg_zc.3
508
+ - vendor/liburing/man/io_uring_prep_setxattr.3
515
509
  - vendor/liburing/man/io_uring_prep_shutdown.3
516
510
  - vendor/liburing/man/io_uring_prep_socket.3
517
511
  - vendor/liburing/man/io_uring_prep_socket_direct.3
@@ -544,11 +538,17 @@ files:
544
538
  - vendor/liburing/man/io_uring_register.2
545
539
  - vendor/liburing/man/io_uring_register_buf_ring.3
546
540
  - vendor/liburing/man/io_uring_register_buffers.3
541
+ - vendor/liburing/man/io_uring_register_buffers_sparse.3
542
+ - vendor/liburing/man/io_uring_register_buffers_tags.3
543
+ - vendor/liburing/man/io_uring_register_buffers_update_tag.3
547
544
  - vendor/liburing/man/io_uring_register_eventfd.3
548
545
  - vendor/liburing/man/io_uring_register_eventfd_async.3
549
546
  - vendor/liburing/man/io_uring_register_file_alloc_range.3
550
547
  - vendor/liburing/man/io_uring_register_files.3
551
548
  - vendor/liburing/man/io_uring_register_files_sparse.3
549
+ - vendor/liburing/man/io_uring_register_files_tags.3
550
+ - vendor/liburing/man/io_uring_register_files_update.3
551
+ - vendor/liburing/man/io_uring_register_files_update_tag.3
552
552
  - vendor/liburing/man/io_uring_register_iowq_aff.3
553
553
  - vendor/liburing/man/io_uring_register_iowq_max_workers.3
554
554
  - vendor/liburing/man/io_uring_register_ring_fd.3
@@ -582,11 +582,13 @@ files:
582
582
  - vendor/liburing/src/arch/syscall-defs.h
583
583
  - vendor/liburing/src/arch/x86/lib.h
584
584
  - vendor/liburing/src/arch/x86/syscall.h
585
+ - vendor/liburing/src/ffi.c
585
586
  - vendor/liburing/src/include/liburing.h
586
587
  - vendor/liburing/src/include/liburing/barrier.h
587
588
  - vendor/liburing/src/include/liburing/io_uring.h
588
589
  - vendor/liburing/src/int_flags.h
589
590
  - vendor/liburing/src/lib.h
591
+ - vendor/liburing/src/liburing-ffi.map
590
592
  - vendor/liburing/src/liburing.map
591
593
  - vendor/liburing/src/nolibc.c
592
594
  - vendor/liburing/src/queue.c
@@ -594,6 +596,7 @@ files:
594
596
  - vendor/liburing/src/setup.c
595
597
  - vendor/liburing/src/syscall.c
596
598
  - vendor/liburing/src/syscall.h
599
+ - vendor/liburing/src/version.c
597
600
  - vendor/liburing/test/232c93d07b74.c
598
601
  - vendor/liburing/test/35fa71a030ca.c
599
602
  - vendor/liburing/test/500f9fbadef8.c
@@ -628,10 +631,12 @@ files:
628
631
  - vendor/liburing/test/drop-submit.c
629
632
  - vendor/liburing/test/eeed8b54e0df.c
630
633
  - vendor/liburing/test/empty-eownerdead.c
634
+ - vendor/liburing/test/eploop.c
631
635
  - vendor/liburing/test/eventfd-disable.c
632
636
  - vendor/liburing/test/eventfd-reg.c
633
637
  - vendor/liburing/test/eventfd-ring.c
634
638
  - vendor/liburing/test/eventfd.c
639
+ - vendor/liburing/test/evloop.c
635
640
  - vendor/liburing/test/exec-target.c
636
641
  - vendor/liburing/test/exit-no-cleanup.c
637
642
  - vendor/liburing/test/fadvise.c
@@ -647,6 +652,7 @@ files:
647
652
  - vendor/liburing/test/fixed-link.c
648
653
  - vendor/liburing/test/fixed-reuse.c
649
654
  - vendor/liburing/test/fpos.c
655
+ - vendor/liburing/test/fsnotify.c
650
656
  - vendor/liburing/test/fsync.c
651
657
  - vendor/liburing/test/hardlink.c
652
658
  - vendor/liburing/test/helpers.c
@@ -657,6 +663,7 @@ files:
657
663
  - vendor/liburing/test/io_uring_register.c
658
664
  - vendor/liburing/test/io_uring_setup.c
659
665
  - vendor/liburing/test/iopoll-leak.c
666
+ - vendor/liburing/test/iopoll-overflow.c
660
667
  - vendor/liburing/test/iopoll.c
661
668
  - vendor/liburing/test/lfs-openat-write.c
662
669
  - vendor/liburing/test/lfs-openat.c
@@ -665,6 +672,8 @@ files:
665
672
  - vendor/liburing/test/link_drain.c
666
673
  - vendor/liburing/test/madvise.c
667
674
  - vendor/liburing/test/mkdir.c
675
+ - vendor/liburing/test/msg-ring-flags.c
676
+ - vendor/liburing/test/msg-ring-overflow.c
668
677
  - vendor/liburing/test/msg-ring.c
669
678
  - vendor/liburing/test/multicqes_drain.c
670
679
  - vendor/liburing/test/nolibc.c
@@ -676,6 +685,7 @@ files:
676
685
  - vendor/liburing/test/open-direct-pick.c
677
686
  - vendor/liburing/test/openat2.c
678
687
  - vendor/liburing/test/personality.c
688
+ - vendor/liburing/test/pipe-bug.c
679
689
  - vendor/liburing/test/pipe-eof.c
680
690
  - vendor/liburing/test/pipe-reuse.c
681
691
  - vendor/liburing/test/poll-cancel-all.c
@@ -685,6 +695,8 @@ files:
685
695
  - vendor/liburing/test/poll-many.c
686
696
  - vendor/liburing/test/poll-mshot-overflow.c
687
697
  - vendor/liburing/test/poll-mshot-update.c
698
+ - vendor/liburing/test/poll-race-mshot.c
699
+ - vendor/liburing/test/poll-race.c
688
700
  - vendor/liburing/test/poll-ring.c
689
701
  - vendor/liburing/test/poll-v-poll.c
690
702
  - vendor/liburing/test/poll.c
@@ -695,6 +707,7 @@ files:
695
707
  - vendor/liburing/test/recv-msgall-stream.c
696
708
  - vendor/liburing/test/recv-msgall.c
697
709
  - vendor/liburing/test/recv-multishot.c
710
+ - vendor/liburing/test/reg-reg-ring.c
698
711
  - vendor/liburing/test/register-restrictions.c
699
712
  - vendor/liburing/test/rename.c
700
713
  - vendor/liburing/test/ring-leak.c
@@ -746,6 +759,7 @@ files:
746
759
  - vendor/liburing/test/timeout.c
747
760
  - vendor/liburing/test/tty-write-dpoll.c
748
761
  - vendor/liburing/test/unlink.c
762
+ - vendor/liburing/test/version.c
749
763
  - vendor/liburing/test/wakeup-hang.c
750
764
  - vendor/liburing/test/xattr.c
751
765
  homepage: https://digital-fabric.github.io/polyphony
@@ -753,8 +767,7 @@ licenses:
753
767
  - MIT
754
768
  metadata:
755
769
  source_code_uri: https://github.com/digital-fabric/polyphony
756
- documentation_uri: https://digital-fabric.github.io/polyphony/
757
- homepage_uri: https://digital-fabric.github.io/polyphony/
770
+ documentation_uri: https://www.rubydoc.info/gems/polyphony
758
771
  changelog_uri: https://github.com/digital-fabric/polyphony/blob/master/CHANGELOG.md
759
772
  post_install_message:
760
773
  rdoc_options:
data/docs/_config.yml DELETED
@@ -1,64 +0,0 @@
1
- title: "Polyphony"
2
- description: Fine-grained concurrency for Ruby
3
-
4
- plugins:
5
- - jekyll-remote-theme
6
-
7
- permalink: pretty
8
- remote_theme: pmarsceill/just-the-docs
9
- color_scheme: light
10
-
11
- search_enabled: true
12
- search:
13
- # Split pages into sections that can be searched individually
14
- # Supports 1 - 6, default: 2
15
- heading_level: 2
16
- # Maximum amount of previews per search result
17
- # Default: 3
18
- previews: 3
19
- # Maximum amount of words to display before a matched word in the preview
20
- # Default: 5
21
- preview_words_before: 5
22
- # Maximum amount of words to display after a matched word in the preview
23
- # Default: 10
24
- preview_words_after: 10
25
- # Set the search token separator
26
- # Default: /[\s\-/]+/
27
- # Example: enable support for hyphenated search words
28
- tokenizer_separator: /[\s/]+/
29
- # Display the relative url in search results
30
- # Supports true (default) or false
31
- rel_url: true
32
- # Enable or disable the search button that appears in the bottom right corner of every page
33
- # Supports true or false (default)
34
- button: false
35
-
36
- aux_links:
37
- "Polyphony on GitHub":
38
- - "//github.com/digital-fabric/polyphony"
39
-
40
- # Makes Aux links open in a new tab. Default is false
41
- aux_links_new_tab: false
42
-
43
- # Enable or disable heading anchors
44
- heading_anchors: true
45
-
46
- back_to_top: true
47
- back_to_top_text: "Back to top"
48
-
49
- footer_content: "Copyright &copy; 2020 Sharon Rosner. Distributed by an <a href=\"https://github.com/digital-fabric/polyphony/tree/master/LICENSE\">MIT license.</a>"
50
-
51
- # Footer "Edit this page on GitHub" link text
52
- gh_edit_link: true # show or hide edit this page link
53
- gh_edit_link_text: "Edit this page on GitHub"
54
- gh_edit_repository: "https://github.com/digital-fabric/polyphony" # the github URL for your repo
55
- gh_edit_branch: "master/docs" # the branch that your docs is served from
56
- gh_edit_view_mode: "tree" # "tree" or "edit" if you want the user to jump into the editor immediately
57
-
58
- compress_html:
59
- clippings: all
60
- comments: all
61
- endings: all
62
- startings: []
63
- blanklines: false
64
- profile: false
@@ -1,40 +0,0 @@
1
- <head>
2
- <meta charset="UTF-8">
3
- <meta http-equiv="X-UA-Compatible" content="IE=Edge">
4
-
5
- {% unless site.plugins contains "jekyll-seo-tag" %}
6
- <title>{{ page.title }} - {{ site.title }}</title>
7
-
8
- {% if page.description %}
9
- <meta name="Description" content="{{ page.description }}">
10
- {% endif %}
11
- {% endunless %}
12
-
13
- <link rel="shortcut icon" href="{{ 'polyphony-logo.png' | absolute_url }}" type="image/png">
14
-
15
- <link rel="stylesheet" href="{{ '/assets/css/just-the-docs-default.css' | absolute_url }}">
16
-
17
- {% if site.ga_tracking != nil %}
18
- <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.ga_tracking }}"></script>
19
- <script>
20
- window.dataLayer = window.dataLayer || [];
21
- function gtag(){dataLayer.push(arguments);}
22
- gtag('js', new Date());
23
-
24
- gtag('config', '{{ site.ga_tracking }}'{% unless site.ga_tracking_anonymize_ip == nil %}, { 'anonymize_ip': true }{% endunless %});
25
- </script>
26
-
27
- {% endif %}
28
-
29
- {% if site.search_enabled != false %}
30
- <script type="text/javascript" src="{{ '/assets/js/vendor/lunr.min.js' | absolute_url }}"></script>
31
- {% endif %}
32
- <script type="text/javascript" src="{{ '/assets/js/just-the-docs.js' | absolute_url }}"></script>
33
-
34
- <meta name="viewport" content="width=device-width, initial-scale=1">
35
-
36
- {% seo %}
37
-
38
- {% include head_custom.html %}
39
-
40
- </head>
@@ -1 +0,0 @@
1
- <img src="{{ 'polyphony-logo.png' | absolute_url }}" style="height: 1.5em; margin-right: 0.5em">Polyphony
@@ -1,10 +0,0 @@
1
-
2
- h1.logo-title {
3
- font-size: 42px !important;
4
- font-weight: bold;
5
- }
6
-
7
- h2.logo-title {
8
- margin-top: 0.25em;
9
- margin-bottom: 1em;
10
- }
File without changes
@@ -1,31 +0,0 @@
1
- ---
2
- layout: page
3
- title: ::Exception
4
- parent: API Reference
5
- permalink: /api-reference/exception/
6
- source_url: https://github.com/digital-fabric/polyphony/blob/master/lib/polyphony/extensions/core.rb
7
- ruby_docs_url: https://rubyapi.org/3.0/o/exception
8
- ---
9
- # ::Exception
10
-
11
- [Ruby core Exception documentation](https://rubyapi.org/3.0/o/exception)
12
-
13
- The core `Exception` class is enhanced to provide a better backtrace that takes
14
- into account the fiber hierarchy. In addition, a `source_fiber` attribute allows
15
- tracking the fiber from which an uncaught exception was propagated.
16
-
17
-
18
-
19
- ## Class Methods
20
-
21
- ## Instance methods
22
-
23
- ### #source_fiber → fiber
24
-
25
- Returns the fiber in which the exception occurred. Polyphony sets this attribute
26
- only for uncaught exceptions. Currently this attribute is only used in a
27
- meaningful way for supervising fibers.
28
-
29
- ### #source_fiber=(fiber) → fiber
30
-
31
- Sets the fiber in which the exception occurred.