polyphony 0.98 → 0.99.1

Sign up to get free protection for your applications and to get access to all the features.
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.