html-to-markdown 2.25.1 → 2.26.2

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 (2075) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.toml +3 -0
  3. data/Gemfile.lock +2 -2
  4. data/README.md +8 -5
  5. data/ext/html-to-markdown-rb/native/Cargo.toml +1 -1
  6. data/lib/html_to_markdown/version.rb +1 -1
  7. data/rust-vendor/anyhow/.cargo-checksum.json +1 -1
  8. data/rust-vendor/anyhow/.cargo_vcs_info.json +1 -1
  9. data/rust-vendor/anyhow/.github/workflows/ci.yml +3 -4
  10. data/rust-vendor/anyhow/Cargo.lock +31 -111
  11. data/rust-vendor/anyhow/Cargo.toml +2 -5
  12. data/rust-vendor/anyhow/Cargo.toml.orig +4 -8
  13. data/rust-vendor/anyhow/build.rs +1 -14
  14. data/rust-vendor/anyhow/src/backtrace.rs +8 -370
  15. data/rust-vendor/anyhow/src/error.rs +12 -39
  16. data/rust-vendor/anyhow/src/fmt.rs +2 -2
  17. data/rust-vendor/anyhow/src/lib.rs +1 -1
  18. data/rust-vendor/async-trait/.cargo-checksum.json +1 -0
  19. data/rust-vendor/async-trait/.cargo_vcs_info.json +6 -0
  20. data/rust-vendor/async-trait/.github/FUNDING.yml +1 -0
  21. data/rust-vendor/async-trait/.github/workflows/ci.yml +109 -0
  22. data/rust-vendor/async-trait/Cargo.lock +453 -0
  23. data/rust-vendor/async-trait/Cargo.toml +91 -0
  24. data/rust-vendor/async-trait/Cargo.toml.orig +38 -0
  25. data/rust-vendor/async-trait/LICENSE-APACHE +176 -0
  26. data/rust-vendor/async-trait/README.md +205 -0
  27. data/rust-vendor/async-trait/src/args.rs +36 -0
  28. data/rust-vendor/async-trait/src/bound.rs +50 -0
  29. data/rust-vendor/async-trait/src/expand.rs +504 -0
  30. data/rust-vendor/async-trait/src/lib.rs +257 -0
  31. data/rust-vendor/async-trait/src/lifetime.rs +112 -0
  32. data/rust-vendor/async-trait/src/parse.rs +34 -0
  33. data/rust-vendor/async-trait/src/receiver.rs +169 -0
  34. data/rust-vendor/async-trait/src/verbatim.rs +34 -0
  35. data/rust-vendor/async-trait/tests/compiletest.rs +7 -0
  36. data/rust-vendor/async-trait/tests/executor/mod.rs +36 -0
  37. data/rust-vendor/async-trait/tests/test.rs +1728 -0
  38. data/rust-vendor/async-trait/tests/ui/arg-implementation-detail.rs +22 -0
  39. data/rust-vendor/async-trait/tests/ui/arg-implementation-detail.stderr +5 -0
  40. data/rust-vendor/async-trait/tests/ui/bare-trait-object.rs +15 -0
  41. data/rust-vendor/async-trait/tests/ui/bare-trait-object.stderr +15 -0
  42. data/rust-vendor/async-trait/tests/ui/consider-restricting.rs +26 -0
  43. data/rust-vendor/async-trait/tests/ui/consider-restricting.stderr +33 -0
  44. data/rust-vendor/async-trait/tests/ui/delimiter-span.rs +24 -0
  45. data/rust-vendor/async-trait/tests/ui/delimiter-span.stderr +21 -0
  46. data/rust-vendor/async-trait/tests/ui/lifetime-defined-here.rs +23 -0
  47. data/rust-vendor/async-trait/tests/ui/lifetime-defined-here.stderr +29 -0
  48. data/rust-vendor/async-trait/tests/ui/lifetime-span.rs +36 -0
  49. data/rust-vendor/async-trait/tests/ui/lifetime-span.stderr +33 -0
  50. data/rust-vendor/async-trait/tests/ui/missing-async-in-impl.rs +15 -0
  51. data/rust-vendor/async-trait/tests/ui/missing-async-in-impl.stderr +8 -0
  52. data/rust-vendor/async-trait/tests/ui/missing-async-in-trait.rs +15 -0
  53. data/rust-vendor/async-trait/tests/ui/missing-async-in-trait.stderr +8 -0
  54. data/rust-vendor/async-trait/tests/ui/missing-body.rs +15 -0
  55. data/rust-vendor/async-trait/tests/ui/missing-body.stderr +7 -0
  56. data/rust-vendor/async-trait/tests/ui/must-use.rs +21 -0
  57. data/rust-vendor/async-trait/tests/ui/must-use.stderr +23 -0
  58. data/rust-vendor/async-trait/tests/ui/no-attribute-macro.rs +13 -0
  59. data/rust-vendor/async-trait/tests/ui/no-attribute-macro.stderr +17 -0
  60. data/rust-vendor/async-trait/tests/ui/self-span.rs +30 -0
  61. data/rust-vendor/async-trait/tests/ui/self-span.stderr +32 -0
  62. data/rust-vendor/async-trait/tests/ui/send-not-implemented.rs +22 -0
  63. data/rust-vendor/async-trait/tests/ui/send-not-implemented.stderr +31 -0
  64. data/rust-vendor/async-trait/tests/ui/type-mismatch.rs +21 -0
  65. data/rust-vendor/async-trait/tests/ui/type-mismatch.stderr +11 -0
  66. data/rust-vendor/async-trait/tests/ui/unreachable.rs +20 -0
  67. data/rust-vendor/async-trait/tests/ui/unreachable.stderr +14 -0
  68. data/rust-vendor/async-trait/tests/ui/unsupported-self.rs +15 -0
  69. data/rust-vendor/async-trait/tests/ui/unsupported-self.stderr +5 -0
  70. data/rust-vendor/bumpalo/.cargo-checksum.json +1 -1
  71. data/rust-vendor/bumpalo/.cargo_vcs_info.json +1 -1
  72. data/rust-vendor/bumpalo/CHANGELOG.md +39 -0
  73. data/rust-vendor/bumpalo/Cargo.lock +1 -1
  74. data/rust-vendor/bumpalo/Cargo.toml +2 -2
  75. data/rust-vendor/bumpalo/Cargo.toml.orig +2 -2
  76. data/rust-vendor/bumpalo/src/boxed.rs +73 -25
  77. data/rust-vendor/bumpalo/src/collections/string.rs +41 -19
  78. data/rust-vendor/bumpalo/src/collections/vec.rs +27 -0
  79. data/rust-vendor/bumpalo/src/lib.rs +11 -0
  80. data/rust-vendor/futures/.cargo-checksum.json +1 -0
  81. data/rust-vendor/futures/.cargo_vcs_info.json +6 -0
  82. data/rust-vendor/futures/Cargo.lock +746 -0
  83. data/rust-vendor/futures/Cargo.toml +394 -0
  84. data/rust-vendor/futures/Cargo.toml.orig +65 -0
  85. data/rust-vendor/futures/LICENSE-APACHE +202 -0
  86. data/rust-vendor/futures/LICENSE-MIT +26 -0
  87. data/rust-vendor/futures/README.md +61 -0
  88. data/rust-vendor/futures/src/lib.rs +254 -0
  89. data/rust-vendor/futures/tests/_require_features.rs +13 -0
  90. data/rust-vendor/futures/tests/async_await_macros.rs +404 -0
  91. data/rust-vendor/futures/tests/auto_traits.rs +1899 -0
  92. data/rust-vendor/futures/tests/bilock.rs +104 -0
  93. data/rust-vendor/futures/tests/compat.rs +16 -0
  94. data/rust-vendor/futures/tests/eager_drop.rs +121 -0
  95. data/rust-vendor/futures/tests/eventual.rs +179 -0
  96. data/rust-vendor/futures/tests/future_abortable.rs +44 -0
  97. data/rust-vendor/futures/tests/future_basic_combinators.rs +104 -0
  98. data/rust-vendor/futures/tests/future_fuse.rs +12 -0
  99. data/rust-vendor/futures/tests/future_inspect.rs +16 -0
  100. data/rust-vendor/futures/tests/future_join.rs +32 -0
  101. data/rust-vendor/futures/tests/future_join_all.rs +40 -0
  102. data/rust-vendor/futures/tests/future_obj.rs +33 -0
  103. data/rust-vendor/futures/tests/future_select_all.rs +25 -0
  104. data/rust-vendor/futures/tests/future_select_ok.rs +30 -0
  105. data/rust-vendor/futures/tests/future_shared.rs +273 -0
  106. data/rust-vendor/futures/tests/future_try_flatten_stream.rs +83 -0
  107. data/rust-vendor/futures/tests/future_try_join_all.rs +44 -0
  108. data/rust-vendor/futures/tests/io_buf_reader.rs +431 -0
  109. data/rust-vendor/futures/tests/io_buf_writer.rs +239 -0
  110. data/rust-vendor/futures/tests/io_cursor.rs +30 -0
  111. data/rust-vendor/futures/tests/io_line_writer.rs +73 -0
  112. data/rust-vendor/futures/tests/io_lines.rs +84 -0
  113. data/rust-vendor/futures/tests/io_read.rs +64 -0
  114. data/rust-vendor/futures/tests/io_read_exact.rs +17 -0
  115. data/rust-vendor/futures/tests/io_read_line.rs +101 -0
  116. data/rust-vendor/futures/tests/io_read_to_end.rs +65 -0
  117. data/rust-vendor/futures/tests/io_read_to_string.rs +44 -0
  118. data/rust-vendor/futures/tests/io_read_until.rs +60 -0
  119. data/rust-vendor/futures/tests/io_window.rs +30 -0
  120. data/rust-vendor/futures/tests/io_write.rs +65 -0
  121. data/rust-vendor/futures/tests/lock_mutex.rs +69 -0
  122. data/rust-vendor/futures/tests/macro_comma_support.rs +43 -0
  123. data/rust-vendor/futures/tests/object_safety.rs +49 -0
  124. data/rust-vendor/futures/tests/oneshot.rs +78 -0
  125. data/rust-vendor/futures/tests/ready_queue.rs +148 -0
  126. data/rust-vendor/futures/tests/recurse.rs +25 -0
  127. data/rust-vendor/futures/tests/sink.rs +554 -0
  128. data/rust-vendor/futures/tests/sink_fanout.rs +24 -0
  129. data/rust-vendor/futures/tests/stream.rs +577 -0
  130. data/rust-vendor/futures/tests/stream_abortable.rs +46 -0
  131. data/rust-vendor/futures/tests/stream_buffer_unordered.rs +73 -0
  132. data/rust-vendor/futures/tests/stream_catch_unwind.rs +27 -0
  133. data/rust-vendor/futures/tests/stream_futures_ordered.rs +172 -0
  134. data/rust-vendor/futures/tests/stream_futures_unordered.rs +431 -0
  135. data/rust-vendor/futures/tests/stream_into_async_read.rs +94 -0
  136. data/rust-vendor/futures/tests/stream_peekable.rs +58 -0
  137. data/rust-vendor/futures/tests/stream_select_all.rs +197 -0
  138. data/rust-vendor/futures/tests/stream_select_next_some.rs +86 -0
  139. data/rust-vendor/futures/tests/stream_split.rs +57 -0
  140. data/rust-vendor/futures/tests/stream_try_stream.rs +183 -0
  141. data/rust-vendor/futures/tests/stream_unfold.rs +32 -0
  142. data/rust-vendor/futures/tests/task_arc_wake.rs +79 -0
  143. data/rust-vendor/futures/tests/task_atomic_waker.rs +48 -0
  144. data/rust-vendor/futures/tests/test_macro.rs +20 -0
  145. data/rust-vendor/futures/tests/try_join.rs +35 -0
  146. data/rust-vendor/futures/tests_disabled/all.rs +400 -0
  147. data/rust-vendor/futures/tests_disabled/stream.rs +368 -0
  148. data/rust-vendor/futures-channel/.cargo-checksum.json +1 -0
  149. data/rust-vendor/futures-channel/.cargo_vcs_info.json +6 -0
  150. data/rust-vendor/futures-channel/Cargo.lock +23 -0
  151. data/rust-vendor/futures-channel/Cargo.toml +97 -0
  152. data/rust-vendor/futures-channel/Cargo.toml.orig +38 -0
  153. data/rust-vendor/futures-channel/LICENSE-APACHE +202 -0
  154. data/rust-vendor/futures-channel/LICENSE-MIT +26 -0
  155. data/rust-vendor/futures-channel/README.md +23 -0
  156. data/rust-vendor/futures-channel/benches/sync_mpsc.rs +135 -0
  157. data/rust-vendor/futures-channel/src/lib.rs +38 -0
  158. data/rust-vendor/futures-channel/src/lock.rs +102 -0
  159. data/rust-vendor/futures-channel/src/mpsc/mod.rs +1468 -0
  160. data/rust-vendor/futures-channel/src/mpsc/queue.rs +177 -0
  161. data/rust-vendor/futures-channel/src/mpsc/sink_impl.rs +73 -0
  162. data/rust-vendor/futures-channel/src/oneshot.rs +488 -0
  163. data/rust-vendor/futures-channel/tests/channel.rs +66 -0
  164. data/rust-vendor/futures-channel/tests/mpsc-close.rs +332 -0
  165. data/rust-vendor/futures-channel/tests/mpsc-size_hint.rs +40 -0
  166. data/rust-vendor/futures-channel/tests/mpsc.rs +703 -0
  167. data/rust-vendor/futures-channel/tests/oneshot.rs +256 -0
  168. data/rust-vendor/futures-core/.cargo-checksum.json +1 -0
  169. data/rust-vendor/futures-core/.cargo_vcs_info.json +6 -0
  170. data/rust-vendor/futures-core/Cargo.lock +16 -0
  171. data/rust-vendor/futures-core/Cargo.toml +66 -0
  172. data/rust-vendor/futures-core/Cargo.toml.orig +35 -0
  173. data/rust-vendor/futures-core/LICENSE-APACHE +202 -0
  174. data/rust-vendor/futures-core/LICENSE-MIT +26 -0
  175. data/rust-vendor/futures-core/README.md +23 -0
  176. data/rust-vendor/futures-core/src/future.rs +113 -0
  177. data/rust-vendor/futures-core/src/lib.rs +27 -0
  178. data/rust-vendor/futures-core/src/stream.rs +245 -0
  179. data/rust-vendor/futures-core/src/task/__internal/atomic_waker.rs +423 -0
  180. data/rust-vendor/futures-core/src/task/__internal/mod.rs +7 -0
  181. data/rust-vendor/futures-core/src/task/mod.rs +10 -0
  182. data/rust-vendor/futures-core/src/task/poll.rs +15 -0
  183. data/rust-vendor/futures-executor/.cargo-checksum.json +1 -0
  184. data/rust-vendor/futures-executor/.cargo_vcs_info.json +6 -0
  185. data/rust-vendor/futures-executor/Cargo.lock +48 -0
  186. data/rust-vendor/futures-executor/Cargo.toml +82 -0
  187. data/rust-vendor/futures-executor/Cargo.toml.orig +32 -0
  188. data/rust-vendor/futures-executor/LICENSE-APACHE +202 -0
  189. data/rust-vendor/futures-executor/LICENSE-MIT +26 -0
  190. data/rust-vendor/futures-executor/README.md +23 -0
  191. data/rust-vendor/futures-executor/benches/thread_notify.rs +109 -0
  192. data/rust-vendor/futures-executor/src/enter.rs +80 -0
  193. data/rust-vendor/futures-executor/src/lib.rs +73 -0
  194. data/rust-vendor/futures-executor/src/local_pool.rs +401 -0
  195. data/rust-vendor/futures-executor/src/thread_pool.rs +377 -0
  196. data/rust-vendor/futures-executor/src/unpark_mutex.rs +137 -0
  197. data/rust-vendor/futures-executor/tests/local_pool.rs +497 -0
  198. data/rust-vendor/futures-io/.cargo-checksum.json +1 -0
  199. data/rust-vendor/futures-io/.cargo_vcs_info.json +6 -0
  200. data/rust-vendor/futures-io/Cargo.lock +6 -0
  201. data/rust-vendor/futures-io/Cargo.toml +58 -0
  202. data/rust-vendor/futures-io/Cargo.toml.orig +30 -0
  203. data/rust-vendor/futures-io/LICENSE-APACHE +202 -0
  204. data/rust-vendor/futures-io/LICENSE-MIT +26 -0
  205. data/rust-vendor/futures-io/README.md +23 -0
  206. data/rust-vendor/futures-io/src/lib.rs +561 -0
  207. data/rust-vendor/futures-macro/.cargo-checksum.json +1 -0
  208. data/rust-vendor/futures-macro/.cargo_vcs_info.json +6 -0
  209. data/rust-vendor/futures-macro/Cargo.lock +47 -0
  210. data/rust-vendor/futures-macro/Cargo.toml +57 -0
  211. data/rust-vendor/futures-macro/Cargo.toml.orig +25 -0
  212. data/rust-vendor/futures-macro/LICENSE-APACHE +202 -0
  213. data/rust-vendor/futures-macro/LICENSE-MIT +26 -0
  214. data/rust-vendor/futures-macro/src/executor.rs +56 -0
  215. data/rust-vendor/futures-macro/src/join.rs +144 -0
  216. data/rust-vendor/futures-macro/src/lib.rs +55 -0
  217. data/rust-vendor/futures-macro/src/select.rs +330 -0
  218. data/rust-vendor/futures-macro/src/stream_select.rs +113 -0
  219. data/rust-vendor/futures-sink/.cargo-checksum.json +1 -0
  220. data/rust-vendor/futures-sink/.cargo_vcs_info.json +6 -0
  221. data/rust-vendor/futures-sink/Cargo.lock +6 -0
  222. data/rust-vendor/futures-sink/Cargo.toml +54 -0
  223. data/rust-vendor/futures-sink/Cargo.toml.orig +25 -0
  224. data/rust-vendor/futures-sink/LICENSE-APACHE +202 -0
  225. data/rust-vendor/futures-sink/LICENSE-MIT +26 -0
  226. data/rust-vendor/futures-sink/README.md +23 -0
  227. data/rust-vendor/futures-sink/src/lib.rs +240 -0
  228. data/rust-vendor/futures-task/.cargo-checksum.json +1 -0
  229. data/rust-vendor/futures-task/.cargo_vcs_info.json +6 -0
  230. data/rust-vendor/futures-task/Cargo.lock +6 -0
  231. data/rust-vendor/futures-task/Cargo.toml +58 -0
  232. data/rust-vendor/futures-task/Cargo.toml.orig +33 -0
  233. data/rust-vendor/futures-task/LICENSE-APACHE +202 -0
  234. data/rust-vendor/futures-task/LICENSE-MIT +26 -0
  235. data/rust-vendor/futures-task/README.md +23 -0
  236. data/rust-vendor/futures-task/src/arc_wake.rs +49 -0
  237. data/rust-vendor/futures-task/src/future_obj.rs +335 -0
  238. data/rust-vendor/futures-task/src/lib.rs +50 -0
  239. data/rust-vendor/futures-task/src/noop_waker.rs +63 -0
  240. data/rust-vendor/futures-task/src/spawn.rs +192 -0
  241. data/rust-vendor/futures-task/src/waker.rs +60 -0
  242. data/rust-vendor/futures-task/src/waker_ref.rs +66 -0
  243. data/rust-vendor/futures-util/.cargo-checksum.json +1 -0
  244. data/rust-vendor/futures-util/.cargo_vcs_info.json +6 -0
  245. data/rust-vendor/futures-util/Cargo.lock +693 -0
  246. data/rust-vendor/futures-util/Cargo.toml +181 -0
  247. data/rust-vendor/futures-util/Cargo.toml.orig +65 -0
  248. data/rust-vendor/futures-util/LICENSE-APACHE +202 -0
  249. data/rust-vendor/futures-util/LICENSE-MIT +26 -0
  250. data/rust-vendor/futures-util/README.md +23 -0
  251. data/rust-vendor/futures-util/benches/bilock.rs +68 -0
  252. data/rust-vendor/futures-util/benches/flatten_unordered.rs +58 -0
  253. data/rust-vendor/futures-util/benches/futures_unordered.rs +43 -0
  254. data/rust-vendor/futures-util/benches/select.rs +35 -0
  255. data/rust-vendor/futures-util/src/abortable.rs +209 -0
  256. data/rust-vendor/futures-util/src/async_await/join_mod.rs +110 -0
  257. data/rust-vendor/futures-util/src/async_await/mod.rs +60 -0
  258. data/rust-vendor/futures-util/src/async_await/pending.rs +43 -0
  259. data/rust-vendor/futures-util/src/async_await/poll.rs +39 -0
  260. data/rust-vendor/futures-util/src/async_await/random.rs +54 -0
  261. data/rust-vendor/futures-util/src/async_await/select_mod.rs +340 -0
  262. data/rust-vendor/futures-util/src/async_await/stream_select_mod.rs +39 -0
  263. data/rust-vendor/futures-util/src/compat/compat01as03.rs +455 -0
  264. data/rust-vendor/futures-util/src/compat/compat03as01.rs +268 -0
  265. data/rust-vendor/futures-util/src/compat/executor.rs +86 -0
  266. data/rust-vendor/futures-util/src/compat/mod.rs +22 -0
  267. data/rust-vendor/futures-util/src/fns.rs +372 -0
  268. data/rust-vendor/futures-util/src/future/abortable.rs +19 -0
  269. data/rust-vendor/futures-util/src/future/always_ready.rs +62 -0
  270. data/rust-vendor/futures-util/src/future/either.rs +314 -0
  271. data/rust-vendor/futures-util/src/future/future/catch_unwind.rs +39 -0
  272. data/rust-vendor/futures-util/src/future/future/flatten.rs +153 -0
  273. data/rust-vendor/futures-util/src/future/future/fuse.rs +92 -0
  274. data/rust-vendor/futures-util/src/future/future/map.rs +66 -0
  275. data/rust-vendor/futures-util/src/future/future/mod.rs +603 -0
  276. data/rust-vendor/futures-util/src/future/future/remote_handle.rs +127 -0
  277. data/rust-vendor/futures-util/src/future/future/shared.rs +430 -0
  278. data/rust-vendor/futures-util/src/future/join.rs +217 -0
  279. data/rust-vendor/futures-util/src/future/join_all.rs +167 -0
  280. data/rust-vendor/futures-util/src/future/lazy.rs +60 -0
  281. data/rust-vendor/futures-util/src/future/maybe_done.rs +105 -0
  282. data/rust-vendor/futures-util/src/future/mod.rs +134 -0
  283. data/rust-vendor/futures-util/src/future/option.rs +64 -0
  284. data/rust-vendor/futures-util/src/future/pending.rs +55 -0
  285. data/rust-vendor/futures-util/src/future/poll_fn.rs +58 -0
  286. data/rust-vendor/futures-util/src/future/poll_immediate.rs +131 -0
  287. data/rust-vendor/futures-util/src/future/ready.rs +82 -0
  288. data/rust-vendor/futures-util/src/future/select.rs +133 -0
  289. data/rust-vendor/futures-util/src/future/select_all.rs +75 -0
  290. data/rust-vendor/futures-util/src/future/select_ok.rs +85 -0
  291. data/rust-vendor/futures-util/src/future/try_future/into_future.rs +36 -0
  292. data/rust-vendor/futures-util/src/future/try_future/mod.rs +625 -0
  293. data/rust-vendor/futures-util/src/future/try_future/try_flatten.rs +162 -0
  294. data/rust-vendor/futures-util/src/future/try_future/try_flatten_err.rs +62 -0
  295. data/rust-vendor/futures-util/src/future/try_join.rs +256 -0
  296. data/rust-vendor/futures-util/src/future/try_join_all.rs +201 -0
  297. data/rust-vendor/futures-util/src/future/try_maybe_done.rs +92 -0
  298. data/rust-vendor/futures-util/src/future/try_select.rs +85 -0
  299. data/rust-vendor/futures-util/src/io/allow_std.rs +202 -0
  300. data/rust-vendor/futures-util/src/io/buf_reader.rs +264 -0
  301. data/rust-vendor/futures-util/src/io/buf_writer.rs +229 -0
  302. data/rust-vendor/futures-util/src/io/chain.rs +142 -0
  303. data/rust-vendor/futures-util/src/io/close.rs +28 -0
  304. data/rust-vendor/futures-util/src/io/copy.rs +58 -0
  305. data/rust-vendor/futures-util/src/io/copy_buf.rs +78 -0
  306. data/rust-vendor/futures-util/src/io/copy_buf_abortable.rs +124 -0
  307. data/rust-vendor/futures-util/src/io/cursor.rs +234 -0
  308. data/rust-vendor/futures-util/src/io/empty.rs +59 -0
  309. data/rust-vendor/futures-util/src/io/fill_buf.rs +47 -0
  310. data/rust-vendor/futures-util/src/io/flush.rs +31 -0
  311. data/rust-vendor/futures-util/src/io/into_sink.rs +82 -0
  312. data/rust-vendor/futures-util/src/io/line_writer.rs +155 -0
  313. data/rust-vendor/futures-util/src/io/lines.rs +50 -0
  314. data/rust-vendor/futures-util/src/io/mod.rs +833 -0
  315. data/rust-vendor/futures-util/src/io/read.rs +30 -0
  316. data/rust-vendor/futures-util/src/io/read_exact.rs +42 -0
  317. data/rust-vendor/futures-util/src/io/read_line.rs +77 -0
  318. data/rust-vendor/futures-util/src/io/read_to_end.rs +90 -0
  319. data/rust-vendor/futures-util/src/io/read_to_string.rs +60 -0
  320. data/rust-vendor/futures-util/src/io/read_until.rs +60 -0
  321. data/rust-vendor/futures-util/src/io/read_vectored.rs +30 -0
  322. data/rust-vendor/futures-util/src/io/repeat.rs +66 -0
  323. data/rust-vendor/futures-util/src/io/seek.rs +30 -0
  324. data/rust-vendor/futures-util/src/io/sink.rs +67 -0
  325. data/rust-vendor/futures-util/src/io/split.rs +129 -0
  326. data/rust-vendor/futures-util/src/io/take.rs +125 -0
  327. data/rust-vendor/futures-util/src/io/window.rs +104 -0
  328. data/rust-vendor/futures-util/src/io/write.rs +30 -0
  329. data/rust-vendor/futures-util/src/io/write_all.rs +43 -0
  330. data/rust-vendor/futures-util/src/io/write_all_vectored.rs +195 -0
  331. data/rust-vendor/futures-util/src/io/write_vectored.rs +30 -0
  332. data/rust-vendor/futures-util/src/lib.rs +332 -0
  333. data/rust-vendor/futures-util/src/lock/bilock.rs +297 -0
  334. data/rust-vendor/futures-util/src/lock/mod.rs +27 -0
  335. data/rust-vendor/futures-util/src/lock/mutex.rs +560 -0
  336. data/rust-vendor/futures-util/src/macros.rs +31 -0
  337. data/rust-vendor/futures-util/src/never.rs +18 -0
  338. data/rust-vendor/futures-util/src/sink/buffer.rs +105 -0
  339. data/rust-vendor/futures-util/src/sink/close.rs +32 -0
  340. data/rust-vendor/futures-util/src/sink/drain.rs +59 -0
  341. data/rust-vendor/futures-util/src/sink/err_into.rs +57 -0
  342. data/rust-vendor/futures-util/src/sink/fanout.rs +111 -0
  343. data/rust-vendor/futures-util/src/sink/feed.rs +43 -0
  344. data/rust-vendor/futures-util/src/sink/flush.rs +36 -0
  345. data/rust-vendor/futures-util/src/sink/map_err.rs +65 -0
  346. data/rust-vendor/futures-util/src/sink/mod.rs +344 -0
  347. data/rust-vendor/futures-util/src/sink/send.rs +41 -0
  348. data/rust-vendor/futures-util/src/sink/send_all.rs +100 -0
  349. data/rust-vendor/futures-util/src/sink/unfold.rs +92 -0
  350. data/rust-vendor/futures-util/src/sink/with.rs +145 -0
  351. data/rust-vendor/futures-util/src/sink/with_flat_map.rs +127 -0
  352. data/rust-vendor/futures-util/src/stream/abortable.rs +19 -0
  353. data/rust-vendor/futures-util/src/stream/empty.rs +45 -0
  354. data/rust-vendor/futures-util/src/stream/futures_ordered.rs +260 -0
  355. data/rust-vendor/futures-util/src/stream/futures_unordered/abort.rs +12 -0
  356. data/rust-vendor/futures-util/src/stream/futures_unordered/iter.rs +172 -0
  357. data/rust-vendor/futures-util/src/stream/futures_unordered/mod.rs +674 -0
  358. data/rust-vendor/futures-util/src/stream/futures_unordered/ready_to_run_queue.rs +113 -0
  359. data/rust-vendor/futures-util/src/stream/futures_unordered/task.rs +214 -0
  360. data/rust-vendor/futures-util/src/stream/iter.rs +66 -0
  361. data/rust-vendor/futures-util/src/stream/mod.rs +148 -0
  362. data/rust-vendor/futures-util/src/stream/once.rs +67 -0
  363. data/rust-vendor/futures-util/src/stream/pending.rs +45 -0
  364. data/rust-vendor/futures-util/src/stream/poll_fn.rs +57 -0
  365. data/rust-vendor/futures-util/src/stream/poll_immediate.rs +80 -0
  366. data/rust-vendor/futures-util/src/stream/repeat.rs +58 -0
  367. data/rust-vendor/futures-util/src/stream/repeat_with.rs +93 -0
  368. data/rust-vendor/futures-util/src/stream/select.rs +117 -0
  369. data/rust-vendor/futures-util/src/stream/select_all.rs +249 -0
  370. data/rust-vendor/futures-util/src/stream/select_with_strategy.rs +304 -0
  371. data/rust-vendor/futures-util/src/stream/stream/all.rs +93 -0
  372. data/rust-vendor/futures-util/src/stream/stream/any.rs +93 -0
  373. data/rust-vendor/futures-util/src/stream/stream/buffer_unordered.rs +120 -0
  374. data/rust-vendor/futures-util/src/stream/stream/buffered.rs +118 -0
  375. data/rust-vendor/futures-util/src/stream/stream/catch_unwind.rs +62 -0
  376. data/rust-vendor/futures-util/src/stream/stream/chain.rs +76 -0
  377. data/rust-vendor/futures-util/src/stream/stream/chunks.rs +103 -0
  378. data/rust-vendor/futures-util/src/stream/stream/collect.rs +56 -0
  379. data/rust-vendor/futures-util/src/stream/stream/concat.rs +62 -0
  380. data/rust-vendor/futures-util/src/stream/stream/count.rs +53 -0
  381. data/rust-vendor/futures-util/src/stream/stream/cycle.rs +67 -0
  382. data/rust-vendor/futures-util/src/stream/stream/enumerate.rs +64 -0
  383. data/rust-vendor/futures-util/src/stream/stream/filter.rs +117 -0
  384. data/rust-vendor/futures-util/src/stream/stream/filter_map.rs +111 -0
  385. data/rust-vendor/futures-util/src/stream/stream/flatten.rs +73 -0
  386. data/rust-vendor/futures-util/src/stream/stream/flatten_unordered.rs +531 -0
  387. data/rust-vendor/futures-util/src/stream/stream/fold.rs +88 -0
  388. data/rust-vendor/futures-util/src/stream/stream/for_each.rs +78 -0
  389. data/rust-vendor/futures-util/src/stream/stream/for_each_concurrent.rs +119 -0
  390. data/rust-vendor/futures-util/src/stream/stream/forward.rs +75 -0
  391. data/rust-vendor/futures-util/src/stream/stream/fuse.rs +75 -0
  392. data/rust-vendor/futures-util/src/stream/stream/into_future.rs +90 -0
  393. data/rust-vendor/futures-util/src/stream/stream/map.rs +77 -0
  394. data/rust-vendor/futures-util/src/stream/stream/mod.rs +1697 -0
  395. data/rust-vendor/futures-util/src/stream/stream/next.rs +34 -0
  396. data/rust-vendor/futures-util/src/stream/stream/peek.rs +441 -0
  397. data/rust-vendor/futures-util/src/stream/stream/ready_chunks.rs +93 -0
  398. data/rust-vendor/futures-util/src/stream/stream/scan.rs +128 -0
  399. data/rust-vendor/futures-util/src/stream/stream/select_next_some.rs +42 -0
  400. data/rust-vendor/futures-util/src/stream/stream/skip.rs +70 -0
  401. data/rust-vendor/futures-util/src/stream/stream/skip_while.rs +124 -0
  402. data/rust-vendor/futures-util/src/stream/stream/split.rs +224 -0
  403. data/rust-vendor/futures-util/src/stream/stream/take.rs +86 -0
  404. data/rust-vendor/futures-util/src/stream/stream/take_until.rs +170 -0
  405. data/rust-vendor/futures-util/src/stream/stream/take_while.rs +124 -0
  406. data/rust-vendor/futures-util/src/stream/stream/then.rs +101 -0
  407. data/rust-vendor/futures-util/src/stream/stream/unzip.rs +63 -0
  408. data/rust-vendor/futures-util/src/stream/stream/zip.rs +128 -0
  409. data/rust-vendor/futures-util/src/stream/try_stream/and_then.rs +105 -0
  410. data/rust-vendor/futures-util/src/stream/try_stream/into_async_read.rs +166 -0
  411. data/rust-vendor/futures-util/src/stream/try_stream/into_stream.rs +52 -0
  412. data/rust-vendor/futures-util/src/stream/try_stream/mod.rs +1254 -0
  413. data/rust-vendor/futures-util/src/stream/try_stream/or_else.rs +109 -0
  414. data/rust-vendor/futures-util/src/stream/try_stream/try_all.rs +98 -0
  415. data/rust-vendor/futures-util/src/stream/try_stream/try_any.rs +98 -0
  416. data/rust-vendor/futures-util/src/stream/try_stream/try_buffer_unordered.rs +86 -0
  417. data/rust-vendor/futures-util/src/stream/try_stream/try_buffered.rs +87 -0
  418. data/rust-vendor/futures-util/src/stream/try_stream/try_chunks.rs +132 -0
  419. data/rust-vendor/futures-util/src/stream/try_stream/try_collect.rs +52 -0
  420. data/rust-vendor/futures-util/src/stream/try_stream/try_concat.rs +51 -0
  421. data/rust-vendor/futures-util/src/stream/try_stream/try_filter.rs +112 -0
  422. data/rust-vendor/futures-util/src/stream/try_stream/try_filter_map.rs +106 -0
  423. data/rust-vendor/futures-util/src/stream/try_stream/try_flatten.rs +84 -0
  424. data/rust-vendor/futures-util/src/stream/try_stream/try_flatten_unordered.rs +176 -0
  425. data/rust-vendor/futures-util/src/stream/try_stream/try_fold.rs +93 -0
  426. data/rust-vendor/futures-util/src/stream/try_stream/try_for_each.rs +68 -0
  427. data/rust-vendor/futures-util/src/stream/try_stream/try_for_each_concurrent.rs +132 -0
  428. data/rust-vendor/futures-util/src/stream/try_stream/try_next.rs +34 -0
  429. data/rust-vendor/futures-util/src/stream/try_stream/try_ready_chunks.rs +126 -0
  430. data/rust-vendor/futures-util/src/stream/try_stream/try_skip_while.rs +120 -0
  431. data/rust-vendor/futures-util/src/stream/try_stream/try_take_while.rs +129 -0
  432. data/rust-vendor/futures-util/src/stream/try_stream/try_unfold.rs +122 -0
  433. data/rust-vendor/futures-util/src/stream/unfold.rs +119 -0
  434. data/rust-vendor/futures-util/src/task/mod.rs +40 -0
  435. data/rust-vendor/futures-util/src/task/spawn.rs +169 -0
  436. data/rust-vendor/futures-util/src/unfold_state.rs +39 -0
  437. data/rust-vendor/html-to-markdown-rs/Cargo.toml +2 -2
  438. data/rust-vendor/html-to-markdown-rs/src/convert_api.rs +5 -1
  439. data/rust-vendor/html-to-markdown-rs/src/converter/block/paragraph.rs +1 -0
  440. data/rust-vendor/html-to-markdown-rs/src/converter/context.rs +5 -0
  441. data/rust-vendor/html-to-markdown-rs/src/converter/text_node.rs +6 -1
  442. data/rust-vendor/html-to-markdown-rs/src/converter/visitor_hooks.rs +9 -3
  443. data/rust-vendor/html-to-markdown-rs/tests/convert_with_metadata_no_frontmatter.rs +100 -0
  444. data/rust-vendor/html-to-markdown-rs/tests/issue_212_regressions.rs +63 -0
  445. data/rust-vendor/html-to-markdown-rs/tests/visitor_integration_test.rs +58 -0
  446. data/rust-vendor/html5ever/.cargo-checksum.json +1 -1
  447. data/rust-vendor/html5ever/.cargo_vcs_info.json +1 -1
  448. data/rust-vendor/html5ever/Cargo.lock +216 -128
  449. data/rust-vendor/html5ever/Cargo.toml +11 -6
  450. data/rust-vendor/html5ever/Cargo.toml.orig +1 -0
  451. data/rust-vendor/html5ever/examples/arena.rs +30 -1
  452. data/rust-vendor/html5ever/src/driver.rs +19 -5
  453. data/rust-vendor/html5ever/src/encoding.rs +173 -0
  454. data/rust-vendor/html5ever/src/lib.rs +1 -0
  455. data/rust-vendor/html5ever/src/serialize/mod.rs +2 -2
  456. data/rust-vendor/html5ever/src/tokenizer/interface.rs +42 -4
  457. data/rust-vendor/html5ever/src/tokenizer/mod.rs +24 -1
  458. data/rust-vendor/html5ever/src/tokenizer/states.rs +34 -0
  459. data/rust-vendor/html5ever/src/tree_builder/mod.rs +8 -13
  460. data/rust-vendor/html5ever/src/tree_builder/rules.rs +131 -153
  461. data/rust-vendor/html5ever/src/tree_builder/tag_sets.rs +1 -6
  462. data/rust-vendor/html5ever/src/tree_builder/types.rs +22 -2
  463. data/rust-vendor/html5ever/tests/driver.rs +111 -0
  464. data/rust-vendor/js-sys/.cargo-checksum.json +1 -1
  465. data/rust-vendor/js-sys/.cargo_vcs_info.json +1 -1
  466. data/rust-vendor/js-sys/Cargo.lock +19 -19
  467. data/rust-vendor/js-sys/Cargo.toml +7 -3
  468. data/rust-vendor/js-sys/Cargo.toml.orig +7 -3
  469. data/rust-vendor/js-sys/README.md +2 -2
  470. data/rust-vendor/js-sys/src/Temporal.rs +2990 -663
  471. data/rust-vendor/js-sys/src/lib.rs +7485 -731
  472. data/rust-vendor/linux-raw-sys/.cargo-checksum.json +1 -1
  473. data/rust-vendor/linux-raw-sys/.cargo_vcs_info.json +1 -1
  474. data/rust-vendor/linux-raw-sys/Cargo.lock +3 -3
  475. data/rust-vendor/linux-raw-sys/Cargo.toml +3 -1
  476. data/rust-vendor/linux-raw-sys/Cargo.toml.orig +3 -1
  477. data/rust-vendor/linux-raw-sys/src/aarch64/btrfs.rs +42 -1
  478. data/rust-vendor/linux-raw-sys/src/aarch64/general.rs +52 -2
  479. data/rust-vendor/linux-raw-sys/src/aarch64/if_arp.rs +6 -2
  480. data/rust-vendor/linux-raw-sys/src/aarch64/if_tun.rs +319 -0
  481. data/rust-vendor/linux-raw-sys/src/aarch64/io_uring.rs +52 -1
  482. data/rust-vendor/linux-raw-sys/src/aarch64/ioctl.rs +0 -1
  483. data/rust-vendor/linux-raw-sys/src/aarch64/net.rs +5 -1
  484. data/rust-vendor/linux-raw-sys/src/aarch64/netlink.rs +153 -6
  485. data/rust-vendor/linux-raw-sys/src/aarch64/prctl.rs +3 -2
  486. data/rust-vendor/linux-raw-sys/src/aarch64/ptrace.rs +2 -0
  487. data/rust-vendor/linux-raw-sys/src/aarch64/vm_sockets.rs +111 -0
  488. data/rust-vendor/linux-raw-sys/src/aarch64/xdp.rs +1 -0
  489. data/rust-vendor/linux-raw-sys/src/arm/btrfs.rs +42 -1
  490. data/rust-vendor/linux-raw-sys/src/arm/general.rs +52 -2
  491. data/rust-vendor/linux-raw-sys/src/arm/if_arp.rs +6 -2
  492. data/rust-vendor/linux-raw-sys/src/arm/if_tun.rs +317 -0
  493. data/rust-vendor/linux-raw-sys/src/arm/io_uring.rs +52 -1
  494. data/rust-vendor/linux-raw-sys/src/arm/ioctl.rs +0 -1
  495. data/rust-vendor/linux-raw-sys/src/arm/net.rs +5 -1
  496. data/rust-vendor/linux-raw-sys/src/arm/netlink.rs +153 -6
  497. data/rust-vendor/linux-raw-sys/src/arm/prctl.rs +3 -2
  498. data/rust-vendor/linux-raw-sys/src/arm/vm_sockets.rs +108 -0
  499. data/rust-vendor/linux-raw-sys/src/arm/xdp.rs +1 -0
  500. data/rust-vendor/linux-raw-sys/src/csky/btrfs.rs +42 -1
  501. data/rust-vendor/linux-raw-sys/src/csky/general.rs +52 -2
  502. data/rust-vendor/linux-raw-sys/src/csky/if_arp.rs +6 -2
  503. data/rust-vendor/linux-raw-sys/src/csky/if_tun.rs +317 -0
  504. data/rust-vendor/linux-raw-sys/src/csky/io_uring.rs +52 -1
  505. data/rust-vendor/linux-raw-sys/src/csky/net.rs +5 -1
  506. data/rust-vendor/linux-raw-sys/src/csky/netlink.rs +153 -6
  507. data/rust-vendor/linux-raw-sys/src/csky/prctl.rs +3 -2
  508. data/rust-vendor/linux-raw-sys/src/csky/vm_sockets.rs +108 -0
  509. data/rust-vendor/linux-raw-sys/src/csky/xdp.rs +1 -0
  510. data/rust-vendor/linux-raw-sys/src/hexagon/auxvec.rs +30 -0
  511. data/rust-vendor/linux-raw-sys/src/hexagon/bootparam.rs +3 -0
  512. data/rust-vendor/linux-raw-sys/src/hexagon/btrfs.rs +1935 -0
  513. data/rust-vendor/linux-raw-sys/src/hexagon/elf_uapi.rs +652 -0
  514. data/rust-vendor/linux-raw-sys/src/hexagon/errno.rs +135 -0
  515. data/rust-vendor/linux-raw-sys/src/hexagon/general.rs +3284 -0
  516. data/rust-vendor/linux-raw-sys/src/hexagon/if_arp.rs +2793 -0
  517. data/rust-vendor/linux-raw-sys/src/hexagon/if_ether.rs +168 -0
  518. data/rust-vendor/linux-raw-sys/src/hexagon/if_packet.rs +309 -0
  519. data/rust-vendor/linux-raw-sys/src/hexagon/if_tun.rs +317 -0
  520. data/rust-vendor/linux-raw-sys/src/hexagon/image.rs +3 -0
  521. data/rust-vendor/linux-raw-sys/src/hexagon/io_uring.rs +1489 -0
  522. data/rust-vendor/linux-raw-sys/src/hexagon/ioctl.rs +3 -0
  523. data/rust-vendor/linux-raw-sys/src/hexagon/landlock.rs +102 -0
  524. data/rust-vendor/linux-raw-sys/src/hexagon/loop_device.rs +132 -0
  525. data/rust-vendor/linux-raw-sys/src/hexagon/mempolicy.rs +175 -0
  526. data/rust-vendor/linux-raw-sys/src/hexagon/net.rs +3487 -0
  527. data/rust-vendor/linux-raw-sys/src/hexagon/netlink.rs +5606 -0
  528. data/rust-vendor/linux-raw-sys/src/hexagon/prctl.rs +270 -0
  529. data/rust-vendor/linux-raw-sys/src/hexagon/ptrace.rs +1091 -0
  530. data/rust-vendor/linux-raw-sys/src/hexagon/system.rs +100 -0
  531. data/rust-vendor/linux-raw-sys/src/hexagon/vm_sockets.rs +108 -0
  532. data/rust-vendor/linux-raw-sys/src/hexagon/xdp.rs +192 -0
  533. data/rust-vendor/linux-raw-sys/src/lib.rs +329 -0
  534. data/rust-vendor/linux-raw-sys/src/loongarch64/btrfs.rs +42 -1
  535. data/rust-vendor/linux-raw-sys/src/loongarch64/general.rs +52 -2
  536. data/rust-vendor/linux-raw-sys/src/loongarch64/if_arp.rs +6 -2
  537. data/rust-vendor/linux-raw-sys/src/loongarch64/if_tun.rs +319 -0
  538. data/rust-vendor/linux-raw-sys/src/loongarch64/io_uring.rs +52 -1
  539. data/rust-vendor/linux-raw-sys/src/loongarch64/net.rs +5 -1
  540. data/rust-vendor/linux-raw-sys/src/loongarch64/netlink.rs +153 -6
  541. data/rust-vendor/linux-raw-sys/src/loongarch64/prctl.rs +3 -2
  542. data/rust-vendor/linux-raw-sys/src/loongarch64/vm_sockets.rs +111 -0
  543. data/rust-vendor/linux-raw-sys/src/loongarch64/xdp.rs +1 -0
  544. data/rust-vendor/linux-raw-sys/src/m68k/auxvec.rs +30 -0
  545. data/rust-vendor/linux-raw-sys/src/m68k/bootparam.rs +3 -0
  546. data/rust-vendor/linux-raw-sys/src/m68k/btrfs.rs +1935 -0
  547. data/rust-vendor/linux-raw-sys/src/m68k/elf_uapi.rs +652 -0
  548. data/rust-vendor/linux-raw-sys/src/m68k/errno.rs +135 -0
  549. data/rust-vendor/linux-raw-sys/src/m68k/general.rs +3379 -0
  550. data/rust-vendor/linux-raw-sys/src/m68k/if_arp.rs +2793 -0
  551. data/rust-vendor/linux-raw-sys/src/m68k/if_ether.rs +168 -0
  552. data/rust-vendor/linux-raw-sys/src/m68k/if_packet.rs +309 -0
  553. data/rust-vendor/linux-raw-sys/src/m68k/if_tun.rs +317 -0
  554. data/rust-vendor/linux-raw-sys/src/m68k/image.rs +3 -0
  555. data/rust-vendor/linux-raw-sys/src/m68k/io_uring.rs +1489 -0
  556. data/rust-vendor/linux-raw-sys/src/m68k/ioctl.rs +1501 -0
  557. data/rust-vendor/linux-raw-sys/src/m68k/landlock.rs +102 -0
  558. data/rust-vendor/linux-raw-sys/src/m68k/loop_device.rs +132 -0
  559. data/rust-vendor/linux-raw-sys/src/m68k/mempolicy.rs +175 -0
  560. data/rust-vendor/linux-raw-sys/src/m68k/net.rs +3487 -0
  561. data/rust-vendor/linux-raw-sys/src/m68k/netlink.rs +5606 -0
  562. data/rust-vendor/linux-raw-sys/src/m68k/prctl.rs +270 -0
  563. data/rust-vendor/linux-raw-sys/src/m68k/ptrace.rs +1019 -0
  564. data/rust-vendor/linux-raw-sys/src/m68k/system.rs +100 -0
  565. data/rust-vendor/linux-raw-sys/src/m68k/vm_sockets.rs +108 -0
  566. data/rust-vendor/linux-raw-sys/src/m68k/xdp.rs +192 -0
  567. data/rust-vendor/linux-raw-sys/src/mips/btrfs.rs +42 -1
  568. data/rust-vendor/linux-raw-sys/src/mips/general.rs +52 -2
  569. data/rust-vendor/linux-raw-sys/src/mips/if_arp.rs +6 -2
  570. data/rust-vendor/linux-raw-sys/src/mips/if_tun.rs +327 -0
  571. data/rust-vendor/linux-raw-sys/src/mips/io_uring.rs +52 -1
  572. data/rust-vendor/linux-raw-sys/src/mips/ioctl.rs +0 -1
  573. data/rust-vendor/linux-raw-sys/src/mips/net.rs +5 -1
  574. data/rust-vendor/linux-raw-sys/src/mips/netlink.rs +153 -6
  575. data/rust-vendor/linux-raw-sys/src/mips/prctl.rs +3 -2
  576. data/rust-vendor/linux-raw-sys/src/mips/vm_sockets.rs +118 -0
  577. data/rust-vendor/linux-raw-sys/src/mips/xdp.rs +1 -0
  578. data/rust-vendor/linux-raw-sys/src/mips32r6/btrfs.rs +42 -1
  579. data/rust-vendor/linux-raw-sys/src/mips32r6/general.rs +52 -2
  580. data/rust-vendor/linux-raw-sys/src/mips32r6/if_arp.rs +6 -2
  581. data/rust-vendor/linux-raw-sys/src/mips32r6/if_tun.rs +327 -0
  582. data/rust-vendor/linux-raw-sys/src/mips32r6/io_uring.rs +52 -1
  583. data/rust-vendor/linux-raw-sys/src/mips32r6/ioctl.rs +0 -1
  584. data/rust-vendor/linux-raw-sys/src/mips32r6/net.rs +5 -1
  585. data/rust-vendor/linux-raw-sys/src/mips32r6/netlink.rs +153 -6
  586. data/rust-vendor/linux-raw-sys/src/mips32r6/prctl.rs +3 -2
  587. data/rust-vendor/linux-raw-sys/src/mips32r6/vm_sockets.rs +118 -0
  588. data/rust-vendor/linux-raw-sys/src/mips32r6/xdp.rs +1 -0
  589. data/rust-vendor/linux-raw-sys/src/mips64/btrfs.rs +42 -1
  590. data/rust-vendor/linux-raw-sys/src/mips64/general.rs +52 -2
  591. data/rust-vendor/linux-raw-sys/src/mips64/if_arp.rs +6 -2
  592. data/rust-vendor/linux-raw-sys/src/mips64/if_tun.rs +329 -0
  593. data/rust-vendor/linux-raw-sys/src/mips64/io_uring.rs +52 -1
  594. data/rust-vendor/linux-raw-sys/src/mips64/ioctl.rs +0 -1
  595. data/rust-vendor/linux-raw-sys/src/mips64/net.rs +5 -1
  596. data/rust-vendor/linux-raw-sys/src/mips64/netlink.rs +153 -6
  597. data/rust-vendor/linux-raw-sys/src/mips64/prctl.rs +3 -2
  598. data/rust-vendor/linux-raw-sys/src/mips64/vm_sockets.rs +121 -0
  599. data/rust-vendor/linux-raw-sys/src/mips64/xdp.rs +1 -0
  600. data/rust-vendor/linux-raw-sys/src/mips64r6/btrfs.rs +42 -1
  601. data/rust-vendor/linux-raw-sys/src/mips64r6/general.rs +52 -2
  602. data/rust-vendor/linux-raw-sys/src/mips64r6/if_arp.rs +6 -2
  603. data/rust-vendor/linux-raw-sys/src/mips64r6/if_tun.rs +329 -0
  604. data/rust-vendor/linux-raw-sys/src/mips64r6/io_uring.rs +52 -1
  605. data/rust-vendor/linux-raw-sys/src/mips64r6/ioctl.rs +0 -1
  606. data/rust-vendor/linux-raw-sys/src/mips64r6/net.rs +5 -1
  607. data/rust-vendor/linux-raw-sys/src/mips64r6/netlink.rs +153 -6
  608. data/rust-vendor/linux-raw-sys/src/mips64r6/prctl.rs +3 -2
  609. data/rust-vendor/linux-raw-sys/src/mips64r6/vm_sockets.rs +121 -0
  610. data/rust-vendor/linux-raw-sys/src/mips64r6/xdp.rs +1 -0
  611. data/rust-vendor/linux-raw-sys/src/powerpc/btrfs.rs +42 -1
  612. data/rust-vendor/linux-raw-sys/src/powerpc/general.rs +52 -2
  613. data/rust-vendor/linux-raw-sys/src/powerpc/if_arp.rs +6 -2
  614. data/rust-vendor/linux-raw-sys/src/powerpc/if_tun.rs +323 -0
  615. data/rust-vendor/linux-raw-sys/src/powerpc/io_uring.rs +52 -1
  616. data/rust-vendor/linux-raw-sys/src/powerpc/ioctl.rs +0 -1
  617. data/rust-vendor/linux-raw-sys/src/powerpc/net.rs +5 -1
  618. data/rust-vendor/linux-raw-sys/src/powerpc/netlink.rs +153 -6
  619. data/rust-vendor/linux-raw-sys/src/powerpc/prctl.rs +3 -2
  620. data/rust-vendor/linux-raw-sys/src/powerpc/vm_sockets.rs +114 -0
  621. data/rust-vendor/linux-raw-sys/src/powerpc/xdp.rs +1 -0
  622. data/rust-vendor/linux-raw-sys/src/powerpc64/btrfs.rs +42 -1
  623. data/rust-vendor/linux-raw-sys/src/powerpc64/general.rs +52 -2
  624. data/rust-vendor/linux-raw-sys/src/powerpc64/if_arp.rs +6 -2
  625. data/rust-vendor/linux-raw-sys/src/powerpc64/if_tun.rs +325 -0
  626. data/rust-vendor/linux-raw-sys/src/powerpc64/io_uring.rs +52 -1
  627. data/rust-vendor/linux-raw-sys/src/powerpc64/ioctl.rs +0 -1
  628. data/rust-vendor/linux-raw-sys/src/powerpc64/net.rs +5 -1
  629. data/rust-vendor/linux-raw-sys/src/powerpc64/netlink.rs +153 -6
  630. data/rust-vendor/linux-raw-sys/src/powerpc64/prctl.rs +3 -2
  631. data/rust-vendor/linux-raw-sys/src/powerpc64/vm_sockets.rs +117 -0
  632. data/rust-vendor/linux-raw-sys/src/powerpc64/xdp.rs +1 -0
  633. data/rust-vendor/linux-raw-sys/src/riscv32/btrfs.rs +42 -1
  634. data/rust-vendor/linux-raw-sys/src/riscv32/general.rs +52 -2
  635. data/rust-vendor/linux-raw-sys/src/riscv32/if_arp.rs +6 -2
  636. data/rust-vendor/linux-raw-sys/src/riscv32/if_tun.rs +317 -0
  637. data/rust-vendor/linux-raw-sys/src/riscv32/io_uring.rs +52 -1
  638. data/rust-vendor/linux-raw-sys/src/riscv32/net.rs +5 -1
  639. data/rust-vendor/linux-raw-sys/src/riscv32/netlink.rs +153 -6
  640. data/rust-vendor/linux-raw-sys/src/riscv32/prctl.rs +3 -2
  641. data/rust-vendor/linux-raw-sys/src/riscv32/vm_sockets.rs +108 -0
  642. data/rust-vendor/linux-raw-sys/src/riscv32/xdp.rs +1 -0
  643. data/rust-vendor/linux-raw-sys/src/riscv64/btrfs.rs +42 -1
  644. data/rust-vendor/linux-raw-sys/src/riscv64/general.rs +52 -2
  645. data/rust-vendor/linux-raw-sys/src/riscv64/if_arp.rs +6 -2
  646. data/rust-vendor/linux-raw-sys/src/riscv64/if_tun.rs +319 -0
  647. data/rust-vendor/linux-raw-sys/src/riscv64/io_uring.rs +52 -1
  648. data/rust-vendor/linux-raw-sys/src/riscv64/ioctl.rs +0 -1
  649. data/rust-vendor/linux-raw-sys/src/riscv64/net.rs +5 -1
  650. data/rust-vendor/linux-raw-sys/src/riscv64/netlink.rs +153 -6
  651. data/rust-vendor/linux-raw-sys/src/riscv64/prctl.rs +3 -2
  652. data/rust-vendor/linux-raw-sys/src/riscv64/vm_sockets.rs +111 -0
  653. data/rust-vendor/linux-raw-sys/src/riscv64/xdp.rs +1 -0
  654. data/rust-vendor/linux-raw-sys/src/s390x/btrfs.rs +42 -1
  655. data/rust-vendor/linux-raw-sys/src/s390x/general.rs +52 -2
  656. data/rust-vendor/linux-raw-sys/src/s390x/if_arp.rs +6 -2
  657. data/rust-vendor/linux-raw-sys/src/s390x/if_tun.rs +339 -0
  658. data/rust-vendor/linux-raw-sys/src/s390x/io_uring.rs +52 -1
  659. data/rust-vendor/linux-raw-sys/src/s390x/ioctl.rs +0 -1
  660. data/rust-vendor/linux-raw-sys/src/s390x/net.rs +5 -1
  661. data/rust-vendor/linux-raw-sys/src/s390x/netlink.rs +153 -6
  662. data/rust-vendor/linux-raw-sys/src/s390x/prctl.rs +3 -2
  663. data/rust-vendor/linux-raw-sys/src/s390x/vm_sockets.rs +131 -0
  664. data/rust-vendor/linux-raw-sys/src/s390x/xdp.rs +1 -0
  665. data/rust-vendor/linux-raw-sys/src/sparc/btrfs.rs +42 -1
  666. data/rust-vendor/linux-raw-sys/src/sparc/general.rs +52 -2
  667. data/rust-vendor/linux-raw-sys/src/sparc/if_arp.rs +6 -2
  668. data/rust-vendor/linux-raw-sys/src/sparc/if_tun.rs +317 -0
  669. data/rust-vendor/linux-raw-sys/src/sparc/io_uring.rs +52 -1
  670. data/rust-vendor/linux-raw-sys/src/sparc/net.rs +5 -1
  671. data/rust-vendor/linux-raw-sys/src/sparc/netlink.rs +153 -6
  672. data/rust-vendor/linux-raw-sys/src/sparc/prctl.rs +3 -2
  673. data/rust-vendor/linux-raw-sys/src/sparc/vm_sockets.rs +108 -0
  674. data/rust-vendor/linux-raw-sys/src/sparc/xdp.rs +1 -0
  675. data/rust-vendor/linux-raw-sys/src/sparc64/btrfs.rs +42 -1
  676. data/rust-vendor/linux-raw-sys/src/sparc64/general.rs +52 -2
  677. data/rust-vendor/linux-raw-sys/src/sparc64/if_arp.rs +6 -2
  678. data/rust-vendor/linux-raw-sys/src/sparc64/if_tun.rs +325 -0
  679. data/rust-vendor/linux-raw-sys/src/sparc64/io_uring.rs +52 -1
  680. data/rust-vendor/linux-raw-sys/src/sparc64/net.rs +5 -1
  681. data/rust-vendor/linux-raw-sys/src/sparc64/netlink.rs +153 -6
  682. data/rust-vendor/linux-raw-sys/src/sparc64/prctl.rs +3 -2
  683. data/rust-vendor/linux-raw-sys/src/sparc64/vm_sockets.rs +117 -0
  684. data/rust-vendor/linux-raw-sys/src/sparc64/xdp.rs +1 -0
  685. data/rust-vendor/linux-raw-sys/src/x32/btrfs.rs +42 -1
  686. data/rust-vendor/linux-raw-sys/src/x32/general.rs +52 -2
  687. data/rust-vendor/linux-raw-sys/src/x32/if_arp.rs +6 -2
  688. data/rust-vendor/linux-raw-sys/src/x32/if_tun.rs +319 -0
  689. data/rust-vendor/linux-raw-sys/src/x32/io_uring.rs +52 -1
  690. data/rust-vendor/linux-raw-sys/src/x32/ioctl.rs +0 -1
  691. data/rust-vendor/linux-raw-sys/src/x32/net.rs +5 -1
  692. data/rust-vendor/linux-raw-sys/src/x32/netlink.rs +153 -6
  693. data/rust-vendor/linux-raw-sys/src/x32/prctl.rs +3 -2
  694. data/rust-vendor/linux-raw-sys/src/x32/vm_sockets.rs +111 -0
  695. data/rust-vendor/linux-raw-sys/src/x32/xdp.rs +1 -0
  696. data/rust-vendor/linux-raw-sys/src/x86/btrfs.rs +42 -1
  697. data/rust-vendor/linux-raw-sys/src/x86/general.rs +52 -2
  698. data/rust-vendor/linux-raw-sys/src/x86/if_arp.rs +6 -2
  699. data/rust-vendor/linux-raw-sys/src/x86/if_tun.rs +317 -0
  700. data/rust-vendor/linux-raw-sys/src/x86/io_uring.rs +52 -1
  701. data/rust-vendor/linux-raw-sys/src/x86/ioctl.rs +0 -1
  702. data/rust-vendor/linux-raw-sys/src/x86/net.rs +5 -1
  703. data/rust-vendor/linux-raw-sys/src/x86/netlink.rs +153 -6
  704. data/rust-vendor/linux-raw-sys/src/x86/prctl.rs +3 -2
  705. data/rust-vendor/linux-raw-sys/src/x86/vm_sockets.rs +108 -0
  706. data/rust-vendor/linux-raw-sys/src/x86/xdp.rs +1 -0
  707. data/rust-vendor/linux-raw-sys/src/x86_64/btrfs.rs +42 -1
  708. data/rust-vendor/linux-raw-sys/src/x86_64/general.rs +52 -2
  709. data/rust-vendor/linux-raw-sys/src/x86_64/if_arp.rs +6 -2
  710. data/rust-vendor/linux-raw-sys/src/x86_64/if_tun.rs +319 -0
  711. data/rust-vendor/linux-raw-sys/src/x86_64/io_uring.rs +52 -1
  712. data/rust-vendor/linux-raw-sys/src/x86_64/ioctl.rs +0 -1
  713. data/rust-vendor/linux-raw-sys/src/x86_64/net.rs +5 -1
  714. data/rust-vendor/linux-raw-sys/src/x86_64/netlink.rs +153 -6
  715. data/rust-vendor/linux-raw-sys/src/x86_64/prctl.rs +3 -2
  716. data/rust-vendor/linux-raw-sys/src/x86_64/vm_sockets.rs +111 -0
  717. data/rust-vendor/linux-raw-sys/src/x86_64/xdp.rs +1 -0
  718. data/rust-vendor/markup5ever/.cargo-checksum.json +1 -1
  719. data/rust-vendor/markup5ever/.cargo_vcs_info.json +1 -1
  720. data/rust-vendor/markup5ever/Cargo.toml +6 -3
  721. data/rust-vendor/markup5ever/Cargo.toml.orig +3 -0
  722. data/rust-vendor/markup5ever/interface/mod.rs +9 -0
  723. data/rust-vendor/markup5ever/interface/tree_builder.rs +11 -0
  724. data/rust-vendor/pin-project-lite/.cargo-checksum.json +1 -0
  725. data/rust-vendor/pin-project-lite/.cargo_vcs_info.json +6 -0
  726. data/rust-vendor/pin-project-lite/CHANGELOG.md +264 -0
  727. data/rust-vendor/pin-project-lite/Cargo.lock +23 -0
  728. data/rust-vendor/pin-project-lite/Cargo.toml +198 -0
  729. data/rust-vendor/pin-project-lite/Cargo.toml.orig +91 -0
  730. data/rust-vendor/pin-project-lite/LICENSE-APACHE +177 -0
  731. data/rust-vendor/pin-project-lite/LICENSE-MIT +23 -0
  732. data/rust-vendor/pin-project-lite/README.md +129 -0
  733. data/rust-vendor/pin-project-lite/src/lib.rs +1770 -0
  734. data/rust-vendor/pin-project-lite/tests/auxiliary/mod.rs +14 -0
  735. data/rust-vendor/pin-project-lite/tests/compiletest.rs +11 -0
  736. data/rust-vendor/pin-project-lite/tests/drop_order.rs +169 -0
  737. data/rust-vendor/pin-project-lite/tests/expand/.rustfmt.toml +1 -0
  738. data/rust-vendor/pin-project-lite/tests/expand/default/enum.expanded.rs +166 -0
  739. data/rust-vendor/pin-project-lite/tests/expand/default/enum.rs +19 -0
  740. data/rust-vendor/pin-project-lite/tests/expand/default/struct.expanded.rs +107 -0
  741. data/rust-vendor/pin-project-lite/tests/expand/default/struct.rs +13 -0
  742. data/rust-vendor/pin-project-lite/tests/expand/multifields/enum.expanded.rs +102 -0
  743. data/rust-vendor/pin-project-lite/tests/expand/multifields/enum.rs +20 -0
  744. data/rust-vendor/pin-project-lite/tests/expand/multifields/struct.expanded.rs +174 -0
  745. data/rust-vendor/pin-project-lite/tests/expand/multifields/struct.rs +17 -0
  746. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-all.expanded.rs +166 -0
  747. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-all.rs +19 -0
  748. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-mut.expanded.rs +76 -0
  749. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-mut.rs +17 -0
  750. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-none.expanded.rs +33 -0
  751. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-none.rs +16 -0
  752. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-ref.expanded.rs +76 -0
  753. data/rust-vendor/pin-project-lite/tests/expand/naming/enum-ref.rs +17 -0
  754. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-all.expanded.rs +151 -0
  755. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-all.rs +16 -0
  756. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-mut.expanded.rs +107 -0
  757. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-mut.rs +14 -0
  758. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-none.expanded.rs +107 -0
  759. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-none.rs +13 -0
  760. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-ref.expanded.rs +107 -0
  761. data/rust-vendor/pin-project-lite/tests/expand/naming/struct-ref.rs +14 -0
  762. data/rust-vendor/pin-project-lite/tests/expand/not_unpin/enum.expanded.rs +114 -0
  763. data/rust-vendor/pin-project-lite/tests/expand/not_unpin/enum.rs +19 -0
  764. data/rust-vendor/pin-project-lite/tests/expand/not_unpin/struct.expanded.rs +103 -0
  765. data/rust-vendor/pin-project-lite/tests/expand/not_unpin/struct.rs +16 -0
  766. data/rust-vendor/pin-project-lite/tests/expand/pinned_drop/enum.expanded.rs +128 -0
  767. data/rust-vendor/pin-project-lite/tests/expand/pinned_drop/enum.rs +23 -0
  768. data/rust-vendor/pin-project-lite/tests/expand/pinned_drop/struct.expanded.rs +117 -0
  769. data/rust-vendor/pin-project-lite/tests/expand/pinned_drop/struct.rs +18 -0
  770. data/rust-vendor/pin-project-lite/tests/expand/pub/enum.expanded.rs +118 -0
  771. data/rust-vendor/pin-project-lite/tests/expand/pub/enum.rs +18 -0
  772. data/rust-vendor/pin-project-lite/tests/expand/pub/struct.expanded.rs +107 -0
  773. data/rust-vendor/pin-project-lite/tests/expand/pub/struct.rs +13 -0
  774. data/rust-vendor/pin-project-lite/tests/expandtest.rs +10 -0
  775. data/rust-vendor/pin-project-lite/tests/include/basic.rs +81 -0
  776. data/rust-vendor/pin-project-lite/tests/proper_unpin.rs +101 -0
  777. data/rust-vendor/pin-project-lite/tests/test.rs +699 -0
  778. data/rust-vendor/pin-project-lite/tests/ui/not_unpin/conflict-unpin.rs +38 -0
  779. data/rust-vendor/pin-project-lite/tests/ui/not_unpin/conflict-unpin.stderr +50 -0
  780. data/rust-vendor/pin-project-lite/tests/ui/not_unpin/negative_impls_stable.rs +22 -0
  781. data/rust-vendor/pin-project-lite/tests/ui/not_unpin/negative_impls_stable.stderr +16 -0
  782. data/rust-vendor/pin-project-lite/tests/ui/pin_project/conflict-drop.rs +17 -0
  783. data/rust-vendor/pin-project-lite/tests/ui/pin_project/conflict-drop.stderr +15 -0
  784. data/rust-vendor/pin-project-lite/tests/ui/pin_project/conflict-unpin.rs +66 -0
  785. data/rust-vendor/pin-project-lite/tests/ui/pin_project/conflict-unpin.stderr +81 -0
  786. data/rust-vendor/pin-project-lite/tests/ui/pin_project/invalid-bounds.rs +95 -0
  787. data/rust-vendor/pin-project-lite/tests/ui/pin_project/invalid-bounds.stderr +512 -0
  788. data/rust-vendor/pin-project-lite/tests/ui/pin_project/invalid.rs +27 -0
  789. data/rust-vendor/pin-project-lite/tests/ui/pin_project/invalid.stderr +47 -0
  790. data/rust-vendor/pin-project-lite/tests/ui/pin_project/negative_impls_stable.rs +21 -0
  791. data/rust-vendor/pin-project-lite/tests/ui/pin_project/negative_impls_stable.stderr +15 -0
  792. data/rust-vendor/pin-project-lite/tests/ui/pin_project/overlapping_lifetime_names.rs +12 -0
  793. data/rust-vendor/pin-project-lite/tests/ui/pin_project/overlapping_lifetime_names.stderr +75 -0
  794. data/rust-vendor/pin-project-lite/tests/ui/pin_project/overlapping_unpin_struct.rs +22 -0
  795. data/rust-vendor/pin-project-lite/tests/ui/pin_project/overlapping_unpin_struct.stderr +34 -0
  796. data/rust-vendor/pin-project-lite/tests/ui/pin_project/packed.rs +21 -0
  797. data/rust-vendor/pin-project-lite/tests/ui/pin_project/packed.stderr +95 -0
  798. data/rust-vendor/pin-project-lite/tests/ui/pin_project/unpin_sneaky.rs +14 -0
  799. data/rust-vendor/pin-project-lite/tests/ui/pin_project/unpin_sneaky.stderr +5 -0
  800. data/rust-vendor/pin-project-lite/tests/ui/pin_project/unsupported.rs +29 -0
  801. data/rust-vendor/pin-project-lite/tests/ui/pin_project/unsupported.stderr +111 -0
  802. data/rust-vendor/pin-project-lite/tests/ui/pinned_drop/call-drop-inner.rs +19 -0
  803. data/rust-vendor/pin-project-lite/tests/ui/pinned_drop/call-drop-inner.stderr +22 -0
  804. data/rust-vendor/pin-project-lite/tests/ui/pinned_drop/conditional-drop-impl.rs +28 -0
  805. data/rust-vendor/pin-project-lite/tests/ui/pinned_drop/conditional-drop-impl.stderr +34 -0
  806. data/rust-vendor/regex-syntax/.cargo-checksum.json +1 -1
  807. data/rust-vendor/regex-syntax/.cargo_vcs_info.json +1 -1
  808. data/rust-vendor/regex-syntax/Cargo.lock +1 -1
  809. data/rust-vendor/regex-syntax/Cargo.toml +6 -1
  810. data/rust-vendor/regex-syntax/Cargo.toml.orig +1 -1
  811. data/rust-vendor/regex-syntax/benches/bench.rs +63 -0
  812. data/rust-vendor/regex-syntax/src/hir/translate.rs +6 -2
  813. data/rust-vendor/rgb/.cargo-checksum.json +1 -1
  814. data/rust-vendor/rgb/.cargo_vcs_info.json +1 -1
  815. data/rust-vendor/rgb/Cargo.lock +31 -20
  816. data/rust-vendor/rgb/Cargo.toml +1 -1
  817. data/rust-vendor/rgb/Cargo.toml.orig +1 -1
  818. data/rust-vendor/rgb/examples/example.rs +1 -12
  819. data/rust-vendor/rgb/src/as_bytes.rs +0 -21
  820. data/rust-vendor/rgb/src/formats/gray.rs +3 -2
  821. data/rust-vendor/rgb/src/legacy/alt.rs +7 -51
  822. data/rust-vendor/rgb/src/legacy/internal/convert/array.rs +0 -16
  823. data/rust-vendor/rgb/src/legacy/internal/convert/mod.rs +24 -74
  824. data/rust-vendor/rgb/src/legacy/internal/convert/tuple.rs +0 -9
  825. data/rust-vendor/rgb/src/legacy/internal/ops.rs +0 -156
  826. data/rust-vendor/rgb/src/legacy/internal/pixel.rs +8 -2
  827. data/rust-vendor/rgb/src/legacy/internal/rgb.rs +8 -61
  828. data/rust-vendor/rgb/src/legacy/internal/rgba.rs +8 -92
  829. data/rust-vendor/rgb/src/lib.rs +6 -113
  830. data/rust-vendor/rustix/.cargo-checksum.json +1 -1
  831. data/rust-vendor/rustix/.cargo_vcs_info.json +1 -1
  832. data/rust-vendor/rustix/Cargo.lock +301 -91
  833. data/rust-vendor/rustix/Cargo.toml +5 -5
  834. data/rust-vendor/rustix/Cargo.toml.orig +5 -5
  835. data/rust-vendor/rustix/README.md +4 -5
  836. data/rust-vendor/rustix/src/backend/libc/fs/makedev.rs +2 -22
  837. data/rust-vendor/rustix/src/backend/libc/fs/syscalls.rs +20 -2
  838. data/rust-vendor/rustix/src/backend/libc/fs/types.rs +16 -0
  839. data/rust-vendor/rustix/src/backend/linux_raw/arch/riscv64.rs +432 -13
  840. data/rust-vendor/rustix/src/fs/at.rs +30 -14
  841. data/rust-vendor/rustix/src/fs/mod.rs +2 -4
  842. data/rust-vendor/rustix/src/process/types.rs +23 -8
  843. data/rust-vendor/slab/.cargo-checksum.json +1 -0
  844. data/rust-vendor/slab/.cargo_vcs_info.json +6 -0
  845. data/rust-vendor/slab/CHANGELOG.md +71 -0
  846. data/rust-vendor/slab/Cargo.lock +83 -0
  847. data/rust-vendor/slab/Cargo.toml +67 -0
  848. data/rust-vendor/slab/Cargo.toml.orig +29 -0
  849. data/rust-vendor/slab/LICENSE +25 -0
  850. data/rust-vendor/slab/README.md +51 -0
  851. data/rust-vendor/slab/SECURITY.md +9 -0
  852. data/rust-vendor/slab/src/builder.rs +63 -0
  853. data/rust-vendor/slab/src/lib.rs +1653 -0
  854. data/rust-vendor/slab/src/serde.rs +62 -0
  855. data/rust-vendor/slab/tests/serde.rs +49 -0
  856. data/rust-vendor/slab/tests/slab.rs +782 -0
  857. data/rust-vendor/syn/.cargo-checksum.json +1 -1
  858. data/rust-vendor/syn/.cargo_vcs_info.json +1 -1
  859. data/rust-vendor/syn/Cargo.lock +30 -30
  860. data/rust-vendor/syn/Cargo.toml +1 -1
  861. data/rust-vendor/syn/Cargo.toml.orig +1 -1
  862. data/rust-vendor/syn/src/item.rs +3 -0
  863. data/rust-vendor/syn/src/lib.rs +1 -1
  864. data/rust-vendor/syn/tests/common/eq.rs +1 -1
  865. data/rust-vendor/tempfile/.cargo-checksum.json +1 -1
  866. data/rust-vendor/tempfile/.cargo_vcs_info.json +1 -1
  867. data/rust-vendor/tempfile/CHANGELOG.md +4 -0
  868. data/rust-vendor/tempfile/Cargo.lock +7 -7
  869. data/rust-vendor/tempfile/Cargo.toml +2 -2
  870. data/rust-vendor/tempfile/Cargo.toml.orig +2 -2
  871. data/rust-vendor/tempfile/README.md +23 -6
  872. data/rust-vendor/tempfile/src/env.rs +1 -1
  873. data/rust-vendor/tempfile/src/file/imp/unix.rs +2 -10
  874. data/rust-vendor/tempfile/src/lib.rs +1 -1
  875. data/rust-vendor/tempfile/src/util.rs +1 -1
  876. data/rust-vendor/tendril/.cargo-checksum.json +1 -1
  877. data/rust-vendor/tendril/.cargo_vcs_info.json +2 -2
  878. data/rust-vendor/tendril/Cargo.lock +642 -68
  879. data/rust-vendor/tendril/Cargo.toml +44 -16
  880. data/rust-vendor/tendril/Cargo.toml.orig +26 -15
  881. data/rust-vendor/tendril/README.md +27 -27
  882. data/rust-vendor/tendril/benches/futf.rs +63 -0
  883. data/rust-vendor/tendril/benches/tendril.rs +158 -0
  884. data/rust-vendor/tendril/examples/fuzz.rs +22 -25
  885. data/rust-vendor/tendril/src/buf32.rs +4 -9
  886. data/rust-vendor/tendril/src/fmt.rs +23 -26
  887. data/rust-vendor/tendril/src/futf.rs +504 -0
  888. data/rust-vendor/tendril/src/lib.rs +13 -13
  889. data/rust-vendor/tendril/src/stream.rs +46 -140
  890. data/rust-vendor/tendril/src/tendril.rs +56 -175
  891. data/rust-vendor/tendril/src/utf8_decode.rs +12 -14
  892. data/rust-vendor/tendril/src/util.rs +5 -9
  893. data/rust-vendor/tokio/.cargo-checksum.json +1 -0
  894. data/rust-vendor/tokio/.cargo_vcs_info.json +6 -0
  895. data/rust-vendor/tokio/CHANGELOG.md +4253 -0
  896. data/rust-vendor/tokio/Cargo.toml +934 -0
  897. data/rust-vendor/tokio/Cargo.toml.orig +189 -0
  898. data/rust-vendor/tokio/LICENSE +21 -0
  899. data/rust-vendor/tokio/README.md +255 -0
  900. data/rust-vendor/tokio/docs/reactor-refactor.md +276 -0
  901. data/rust-vendor/tokio/src/blocking.rs +63 -0
  902. data/rust-vendor/tokio/src/doc/mod.rs +47 -0
  903. data/rust-vendor/tokio/src/doc/os.rs +68 -0
  904. data/rust-vendor/tokio/src/fs/canonicalize.rs +49 -0
  905. data/rust-vendor/tokio/src/fs/copy.rs +24 -0
  906. data/rust-vendor/tokio/src/fs/create_dir.rs +50 -0
  907. data/rust-vendor/tokio/src/fs/create_dir_all.rs +51 -0
  908. data/rust-vendor/tokio/src/fs/dir_builder.rs +129 -0
  909. data/rust-vendor/tokio/src/fs/file/tests.rs +978 -0
  910. data/rust-vendor/tokio/src/fs/file.rs +995 -0
  911. data/rust-vendor/tokio/src/fs/hard_link.rs +44 -0
  912. data/rust-vendor/tokio/src/fs/metadata.rs +46 -0
  913. data/rust-vendor/tokio/src/fs/mocks.rs +176 -0
  914. data/rust-vendor/tokio/src/fs/mod.rs +324 -0
  915. data/rust-vendor/tokio/src/fs/open_options/mock_open_options.rs +39 -0
  916. data/rust-vendor/tokio/src/fs/open_options/uring_open_options.rs +128 -0
  917. data/rust-vendor/tokio/src/fs/open_options.rs +853 -0
  918. data/rust-vendor/tokio/src/fs/read.rs +77 -0
  919. data/rust-vendor/tokio/src/fs/read_dir.rs +357 -0
  920. data/rust-vendor/tokio/src/fs/read_link.rs +12 -0
  921. data/rust-vendor/tokio/src/fs/read_to_string.rs +30 -0
  922. data/rust-vendor/tokio/src/fs/read_uring.rs +134 -0
  923. data/rust-vendor/tokio/src/fs/remove_dir.rs +12 -0
  924. data/rust-vendor/tokio/src/fs/remove_dir_all.rs +14 -0
  925. data/rust-vendor/tokio/src/fs/remove_file.rs +16 -0
  926. data/rust-vendor/tokio/src/fs/rename.rs +17 -0
  927. data/rust-vendor/tokio/src/fs/set_permissions.rs +15 -0
  928. data/rust-vendor/tokio/src/fs/symlink.rs +16 -0
  929. data/rust-vendor/tokio/src/fs/symlink_dir.rs +19 -0
  930. data/rust-vendor/tokio/src/fs/symlink_file.rs +19 -0
  931. data/rust-vendor/tokio/src/fs/symlink_metadata.rs +15 -0
  932. data/rust-vendor/tokio/src/fs/try_exists.rs +28 -0
  933. data/rust-vendor/tokio/src/fs/write.rs +96 -0
  934. data/rust-vendor/tokio/src/future/block_on.rs +22 -0
  935. data/rust-vendor/tokio/src/future/maybe_done.rs +123 -0
  936. data/rust-vendor/tokio/src/future/mod.rs +28 -0
  937. data/rust-vendor/tokio/src/future/trace.rs +11 -0
  938. data/rust-vendor/tokio/src/future/try_join.rs +82 -0
  939. data/rust-vendor/tokio/src/fuzz.rs +1 -0
  940. data/rust-vendor/tokio/src/io/async_buf_read.rs +117 -0
  941. data/rust-vendor/tokio/src/io/async_fd.rs +1439 -0
  942. data/rust-vendor/tokio/src/io/async_read.rs +133 -0
  943. data/rust-vendor/tokio/src/io/async_seek.rs +96 -0
  944. data/rust-vendor/tokio/src/io/async_write.rs +403 -0
  945. data/rust-vendor/tokio/src/io/blocking.rs +306 -0
  946. data/rust-vendor/tokio/src/io/bsd/poll_aio.rs +197 -0
  947. data/rust-vendor/tokio/src/io/interest.rs +345 -0
  948. data/rust-vendor/tokio/src/io/join.rs +130 -0
  949. data/rust-vendor/tokio/src/io/mod.rs +308 -0
  950. data/rust-vendor/tokio/src/io/poll_evented.rs +297 -0
  951. data/rust-vendor/tokio/src/io/read_buf.rs +344 -0
  952. data/rust-vendor/tokio/src/io/ready.rs +322 -0
  953. data/rust-vendor/tokio/src/io/seek.rs +57 -0
  954. data/rust-vendor/tokio/src/io/split.rs +166 -0
  955. data/rust-vendor/tokio/src/io/stderr.rs +134 -0
  956. data/rust-vendor/tokio/src/io/stdin.rs +98 -0
  957. data/rust-vendor/tokio/src/io/stdio_common.rs +222 -0
  958. data/rust-vendor/tokio/src/io/stdout.rs +183 -0
  959. data/rust-vendor/tokio/src/io/uring/mod.rs +4 -0
  960. data/rust-vendor/tokio/src/io/uring/open.rs +59 -0
  961. data/rust-vendor/tokio/src/io/uring/read.rs +61 -0
  962. data/rust-vendor/tokio/src/io/uring/utils.rs +6 -0
  963. data/rust-vendor/tokio/src/io/uring/write.rs +55 -0
  964. data/rust-vendor/tokio/src/io/util/async_buf_read_ext.rs +357 -0
  965. data/rust-vendor/tokio/src/io/util/async_read_ext.rs +1454 -0
  966. data/rust-vendor/tokio/src/io/util/async_seek_ext.rs +96 -0
  967. data/rust-vendor/tokio/src/io/util/async_write_ext.rs +1332 -0
  968. data/rust-vendor/tokio/src/io/util/buf_reader.rs +311 -0
  969. data/rust-vendor/tokio/src/io/util/buf_stream.rs +207 -0
  970. data/rust-vendor/tokio/src/io/util/buf_writer.rs +310 -0
  971. data/rust-vendor/tokio/src/io/util/chain.rs +144 -0
  972. data/rust-vendor/tokio/src/io/util/copy.rs +303 -0
  973. data/rust-vendor/tokio/src/io/util/copy_bidirectional.rs +137 -0
  974. data/rust-vendor/tokio/src/io/util/copy_buf.rs +117 -0
  975. data/rust-vendor/tokio/src/io/util/empty.rs +164 -0
  976. data/rust-vendor/tokio/src/io/util/fill_buf.rs +59 -0
  977. data/rust-vendor/tokio/src/io/util/flush.rs +47 -0
  978. data/rust-vendor/tokio/src/io/util/lines.rs +145 -0
  979. data/rust-vendor/tokio/src/io/util/mem.rs +429 -0
  980. data/rust-vendor/tokio/src/io/util/mod.rs +112 -0
  981. data/rust-vendor/tokio/src/io/util/read.rs +55 -0
  982. data/rust-vendor/tokio/src/io/util/read_buf.rs +71 -0
  983. data/rust-vendor/tokio/src/io/util/read_exact.rs +69 -0
  984. data/rust-vendor/tokio/src/io/util/read_int.rs +158 -0
  985. data/rust-vendor/tokio/src/io/util/read_line.rs +119 -0
  986. data/rust-vendor/tokio/src/io/util/read_to_end.rs +143 -0
  987. data/rust-vendor/tokio/src/io/util/read_to_string.rs +78 -0
  988. data/rust-vendor/tokio/src/io/util/read_until.rs +80 -0
  989. data/rust-vendor/tokio/src/io/util/repeat.rs +74 -0
  990. data/rust-vendor/tokio/src/io/util/shutdown.rs +46 -0
  991. data/rust-vendor/tokio/src/io/util/sink.rs +94 -0
  992. data/rust-vendor/tokio/src/io/util/split.rs +121 -0
  993. data/rust-vendor/tokio/src/io/util/take.rs +138 -0
  994. data/rust-vendor/tokio/src/io/util/vec_with_initialized.rs +142 -0
  995. data/rust-vendor/tokio/src/io/util/write.rs +46 -0
  996. data/rust-vendor/tokio/src/io/util/write_all.rs +55 -0
  997. data/rust-vendor/tokio/src/io/util/write_all_buf.rs +64 -0
  998. data/rust-vendor/tokio/src/io/util/write_buf.rs +55 -0
  999. data/rust-vendor/tokio/src/io/util/write_int.rs +151 -0
  1000. data/rust-vendor/tokio/src/io/util/write_vectored.rs +47 -0
  1001. data/rust-vendor/tokio/src/lib.rs +707 -0
  1002. data/rust-vendor/tokio/src/loom/mocked.rs +85 -0
  1003. data/rust-vendor/tokio/src/loom/mod.rs +14 -0
  1004. data/rust-vendor/tokio/src/loom/std/atomic_u16.rs +47 -0
  1005. data/rust-vendor/tokio/src/loom/std/atomic_u32.rs +47 -0
  1006. data/rust-vendor/tokio/src/loom/std/atomic_u64.rs +19 -0
  1007. data/rust-vendor/tokio/src/loom/std/atomic_u64_as_mutex.rs +76 -0
  1008. data/rust-vendor/tokio/src/loom/std/atomic_u64_native.rs +4 -0
  1009. data/rust-vendor/tokio/src/loom/std/atomic_u64_static_const_new.rs +12 -0
  1010. data/rust-vendor/tokio/src/loom/std/atomic_u64_static_once_cell.rs +57 -0
  1011. data/rust-vendor/tokio/src/loom/std/atomic_usize.rs +59 -0
  1012. data/rust-vendor/tokio/src/loom/std/barrier.rs +223 -0
  1013. data/rust-vendor/tokio/src/loom/std/mod.rs +124 -0
  1014. data/rust-vendor/tokio/src/loom/std/mutex.rs +36 -0
  1015. data/rust-vendor/tokio/src/loom/std/parking_lot.rs +195 -0
  1016. data/rust-vendor/tokio/src/loom/std/rwlock.rs +48 -0
  1017. data/rust-vendor/tokio/src/loom/std/unsafe_cell.rs +18 -0
  1018. data/rust-vendor/tokio/src/macros/addr_of.rs +27 -0
  1019. data/rust-vendor/tokio/src/macros/cfg.rs +713 -0
  1020. data/rust-vendor/tokio/src/macros/join.rs +279 -0
  1021. data/rust-vendor/tokio/src/macros/loom.rs +8 -0
  1022. data/rust-vendor/tokio/src/macros/mod.rs +36 -0
  1023. data/rust-vendor/tokio/src/macros/pin.rs +144 -0
  1024. data/rust-vendor/tokio/src/macros/select.rs +1411 -0
  1025. data/rust-vendor/tokio/src/macros/support.rs +32 -0
  1026. data/rust-vendor/tokio/src/macros/thread_local.rs +18 -0
  1027. data/rust-vendor/tokio/src/macros/trace.rs +26 -0
  1028. data/rust-vendor/tokio/src/macros/try_join.rs +280 -0
  1029. data/rust-vendor/tokio/src/net/addr.rs +333 -0
  1030. data/rust-vendor/tokio/src/net/lookup_host.rs +38 -0
  1031. data/rust-vendor/tokio/src/net/mod.rs +64 -0
  1032. data/rust-vendor/tokio/src/net/tcp/listener.rs +460 -0
  1033. data/rust-vendor/tokio/src/net/tcp/mod.rs +16 -0
  1034. data/rust-vendor/tokio/src/net/tcp/socket.rs +1027 -0
  1035. data/rust-vendor/tokio/src/net/tcp/split.rs +423 -0
  1036. data/rust-vendor/tokio/src/net/tcp/split_owned.rs +507 -0
  1037. data/rust-vendor/tokio/src/net/tcp/stream.rs +1541 -0
  1038. data/rust-vendor/tokio/src/net/udp.rs +2333 -0
  1039. data/rust-vendor/tokio/src/net/unix/datagram/mod.rs +3 -0
  1040. data/rust-vendor/tokio/src/net/unix/datagram/socket.rs +1621 -0
  1041. data/rust-vendor/tokio/src/net/unix/listener.rs +247 -0
  1042. data/rust-vendor/tokio/src/net/unix/mod.rs +39 -0
  1043. data/rust-vendor/tokio/src/net/unix/pipe.rs +1442 -0
  1044. data/rust-vendor/tokio/src/net/unix/socket.rs +273 -0
  1045. data/rust-vendor/tokio/src/net/unix/socketaddr.rs +66 -0
  1046. data/rust-vendor/tokio/src/net/unix/split.rs +331 -0
  1047. data/rust-vendor/tokio/src/net/unix/split_owned.rs +419 -0
  1048. data/rust-vendor/tokio/src/net/unix/stream.rs +1095 -0
  1049. data/rust-vendor/tokio/src/net/unix/ucred.rs +332 -0
  1050. data/rust-vendor/tokio/src/net/windows/mod.rs +3 -0
  1051. data/rust-vendor/tokio/src/net/windows/named_pipe.rs +2699 -0
  1052. data/rust-vendor/tokio/src/process/kill.rs +13 -0
  1053. data/rust-vendor/tokio/src/process/mod.rs +1854 -0
  1054. data/rust-vendor/tokio/src/process/unix/mod.rs +374 -0
  1055. data/rust-vendor/tokio/src/process/unix/orphan.rs +334 -0
  1056. data/rust-vendor/tokio/src/process/unix/pidfd_reaper.rs +352 -0
  1057. data/rust-vendor/tokio/src/process/unix/reap.rs +298 -0
  1058. data/rust-vendor/tokio/src/process/windows.rs +285 -0
  1059. data/rust-vendor/tokio/src/runtime/blocking/mod.rs +26 -0
  1060. data/rust-vendor/tokio/src/runtime/blocking/pool.rs +606 -0
  1061. data/rust-vendor/tokio/src/runtime/blocking/schedule.rs +66 -0
  1062. data/rust-vendor/tokio/src/runtime/blocking/shutdown.rs +71 -0
  1063. data/rust-vendor/tokio/src/runtime/blocking/task.rs +44 -0
  1064. data/rust-vendor/tokio/src/runtime/builder.rs +1840 -0
  1065. data/rust-vendor/tokio/src/runtime/config.rs +54 -0
  1066. data/rust-vendor/tokio/src/runtime/context/blocking.rs +121 -0
  1067. data/rust-vendor/tokio/src/runtime/context/current.rs +97 -0
  1068. data/rust-vendor/tokio/src/runtime/context/runtime.rs +99 -0
  1069. data/rust-vendor/tokio/src/runtime/context/runtime_mt.rs +36 -0
  1070. data/rust-vendor/tokio/src/runtime/context/scoped.rs +56 -0
  1071. data/rust-vendor/tokio/src/runtime/context.rs +200 -0
  1072. data/rust-vendor/tokio/src/runtime/driver/op.rs +207 -0
  1073. data/rust-vendor/tokio/src/runtime/driver.rs +376 -0
  1074. data/rust-vendor/tokio/src/runtime/dump.rs +340 -0
  1075. data/rust-vendor/tokio/src/runtime/handle.rs +710 -0
  1076. data/rust-vendor/tokio/src/runtime/id.rs +42 -0
  1077. data/rust-vendor/tokio/src/runtime/io/driver/signal.rs +22 -0
  1078. data/rust-vendor/tokio/src/runtime/io/driver/uring.rs +294 -0
  1079. data/rust-vendor/tokio/src/runtime/io/driver.rs +333 -0
  1080. data/rust-vendor/tokio/src/runtime/io/metrics.rs +24 -0
  1081. data/rust-vendor/tokio/src/runtime/io/mod.rs +22 -0
  1082. data/rust-vendor/tokio/src/runtime/io/registration.rs +259 -0
  1083. data/rust-vendor/tokio/src/runtime/io/registration_set.rs +149 -0
  1084. data/rust-vendor/tokio/src/runtime/io/scheduled_io.rs +582 -0
  1085. data/rust-vendor/tokio/src/runtime/local_runtime/mod.rs +7 -0
  1086. data/rust-vendor/tokio/src/runtime/local_runtime/options.rs +18 -0
  1087. data/rust-vendor/tokio/src/runtime/local_runtime/runtime.rs +397 -0
  1088. data/rust-vendor/tokio/src/runtime/metrics/batch.rs +303 -0
  1089. data/rust-vendor/tokio/src/runtime/metrics/histogram/h2_histogram.rs +526 -0
  1090. data/rust-vendor/tokio/src/runtime/metrics/histogram.rs +629 -0
  1091. data/rust-vendor/tokio/src/runtime/metrics/io.rs +25 -0
  1092. data/rust-vendor/tokio/src/runtime/metrics/mock.rs +15 -0
  1093. data/rust-vendor/tokio/src/runtime/metrics/mod.rs +40 -0
  1094. data/rust-vendor/tokio/src/runtime/metrics/runtime.rs +1122 -0
  1095. data/rust-vendor/tokio/src/runtime/metrics/scheduler.rs +35 -0
  1096. data/rust-vendor/tokio/src/runtime/metrics/worker.rs +110 -0
  1097. data/rust-vendor/tokio/src/runtime/mod.rs +604 -0
  1098. data/rust-vendor/tokio/src/runtime/park.rs +362 -0
  1099. data/rust-vendor/tokio/src/runtime/process.rs +44 -0
  1100. data/rust-vendor/tokio/src/runtime/runtime.rs +515 -0
  1101. data/rust-vendor/tokio/src/runtime/scheduler/block_in_place.rs +9 -0
  1102. data/rust-vendor/tokio/src/runtime/scheduler/current_thread/mod.rs +861 -0
  1103. data/rust-vendor/tokio/src/runtime/scheduler/defer.rs +43 -0
  1104. data/rust-vendor/tokio/src/runtime/scheduler/inject/metrics.rs +7 -0
  1105. data/rust-vendor/tokio/src/runtime/scheduler/inject/pop.rs +55 -0
  1106. data/rust-vendor/tokio/src/runtime/scheduler/inject/rt_multi_thread.rs +122 -0
  1107. data/rust-vendor/tokio/src/runtime/scheduler/inject/shared.rs +121 -0
  1108. data/rust-vendor/tokio/src/runtime/scheduler/inject/synced.rs +37 -0
  1109. data/rust-vendor/tokio/src/runtime/scheduler/inject.rs +70 -0
  1110. data/rust-vendor/tokio/src/runtime/scheduler/lock.rs +6 -0
  1111. data/rust-vendor/tokio/src/runtime/scheduler/mod.rs +338 -0
  1112. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/counters.rs +62 -0
  1113. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/handle/metrics.rs +55 -0
  1114. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/handle/taskdump.rs +26 -0
  1115. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/handle.rs +132 -0
  1116. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/idle.rs +240 -0
  1117. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/mod.rs +105 -0
  1118. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/overflow.rs +26 -0
  1119. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/park.rs +300 -0
  1120. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/queue.rs +599 -0
  1121. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/stats.rs +137 -0
  1122. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/trace.rs +61 -0
  1123. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/trace_mock.rs +11 -0
  1124. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/worker/metrics.rs +15 -0
  1125. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/worker/taskdump.rs +79 -0
  1126. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/worker/taskdump_mock.rs +7 -0
  1127. data/rust-vendor/tokio/src/runtime/scheduler/multi_thread/worker.rs +1497 -0
  1128. data/rust-vendor/tokio/src/runtime/scheduler/util/mod.rs +2 -0
  1129. data/rust-vendor/tokio/src/runtime/scheduler/util/time_alt.rs +179 -0
  1130. data/rust-vendor/tokio/src/runtime/signal/mod.rs +143 -0
  1131. data/rust-vendor/tokio/src/runtime/task/abort.rs +105 -0
  1132. data/rust-vendor/tokio/src/runtime/task/core.rs +570 -0
  1133. data/rust-vendor/tokio/src/runtime/task/error.rs +198 -0
  1134. data/rust-vendor/tokio/src/runtime/task/harness.rs +567 -0
  1135. data/rust-vendor/tokio/src/runtime/task/id.rs +92 -0
  1136. data/rust-vendor/tokio/src/runtime/task/join.rs +373 -0
  1137. data/rust-vendor/tokio/src/runtime/task/list.rs +368 -0
  1138. data/rust-vendor/tokio/src/runtime/task/mod.rs +670 -0
  1139. data/rust-vendor/tokio/src/runtime/task/raw.rs +378 -0
  1140. data/rust-vendor/tokio/src/runtime/task/state.rs +662 -0
  1141. data/rust-vendor/tokio/src/runtime/task/trace/mod.rs +364 -0
  1142. data/rust-vendor/tokio/src/runtime/task/trace/symbol.rs +92 -0
  1143. data/rust-vendor/tokio/src/runtime/task/trace/tree.rs +126 -0
  1144. data/rust-vendor/tokio/src/runtime/task/waker.rs +124 -0
  1145. data/rust-vendor/tokio/src/runtime/task_hooks.rs +83 -0
  1146. data/rust-vendor/tokio/src/runtime/tests/inject.rs +54 -0
  1147. data/rust-vendor/tokio/src/runtime/tests/loom_blocking.rs +102 -0
  1148. data/rust-vendor/tokio/src/runtime/tests/loom_current_thread/yield_now.rs +30 -0
  1149. data/rust-vendor/tokio/src/runtime/tests/loom_current_thread.rs +198 -0
  1150. data/rust-vendor/tokio/src/runtime/tests/loom_join_set.rs +82 -0
  1151. data/rust-vendor/tokio/src/runtime/tests/loom_local.rs +47 -0
  1152. data/rust-vendor/tokio/src/runtime/tests/loom_multi_thread/queue.rs +205 -0
  1153. data/rust-vendor/tokio/src/runtime/tests/loom_multi_thread/shutdown.rs +28 -0
  1154. data/rust-vendor/tokio/src/runtime/tests/loom_multi_thread/yield_now.rs +37 -0
  1155. data/rust-vendor/tokio/src/runtime/tests/loom_multi_thread.rs +461 -0
  1156. data/rust-vendor/tokio/src/runtime/tests/loom_oneshot.rs +48 -0
  1157. data/rust-vendor/tokio/src/runtime/tests/mod.rs +85 -0
  1158. data/rust-vendor/tokio/src/runtime/tests/queue.rs +273 -0
  1159. data/rust-vendor/tokio/src/runtime/tests/task.rs +469 -0
  1160. data/rust-vendor/tokio/src/runtime/tests/task_combinations.rs +488 -0
  1161. data/rust-vendor/tokio/src/runtime/thread_id.rs +31 -0
  1162. data/rust-vendor/tokio/src/runtime/time/entry.rs +693 -0
  1163. data/rust-vendor/tokio/src/runtime/time/handle.rs +68 -0
  1164. data/rust-vendor/tokio/src/runtime/time/mod.rs +493 -0
  1165. data/rust-vendor/tokio/src/runtime/time/source.rs +45 -0
  1166. data/rust-vendor/tokio/src/runtime/time/tests/mod.rs +269 -0
  1167. data/rust-vendor/tokio/src/runtime/time/wheel/level.rs +192 -0
  1168. data/rust-vendor/tokio/src/runtime/time/wheel/mod.rs +331 -0
  1169. data/rust-vendor/tokio/src/runtime/time_alt/cancellation_queue/tests.rs +97 -0
  1170. data/rust-vendor/tokio/src/runtime/time_alt/cancellation_queue.rs +92 -0
  1171. data/rust-vendor/tokio/src/runtime/time_alt/context.rs +47 -0
  1172. data/rust-vendor/tokio/src/runtime/time_alt/entry.rs +276 -0
  1173. data/rust-vendor/tokio/src/runtime/time_alt/mod.rs +24 -0
  1174. data/rust-vendor/tokio/src/runtime/time_alt/registration_queue/tests.rs +53 -0
  1175. data/rust-vendor/tokio/src/runtime/time_alt/registration_queue.rs +43 -0
  1176. data/rust-vendor/tokio/src/runtime/time_alt/tests.rs +168 -0
  1177. data/rust-vendor/tokio/src/runtime/time_alt/timer.rs +169 -0
  1178. data/rust-vendor/tokio/src/runtime/time_alt/wake_queue/tests.rs +66 -0
  1179. data/rust-vendor/tokio/src/runtime/time_alt/wake_queue.rs +50 -0
  1180. data/rust-vendor/tokio/src/runtime/time_alt/wheel/level.rs +194 -0
  1181. data/rust-vendor/tokio/src/runtime/time_alt/wheel/mod.rs +272 -0
  1182. data/rust-vendor/tokio/src/signal/ctrl_c.rs +62 -0
  1183. data/rust-vendor/tokio/src/signal/mod.rs +100 -0
  1184. data/rust-vendor/tokio/src/signal/registry.rs +275 -0
  1185. data/rust-vendor/tokio/src/signal/reusable_box.rs +230 -0
  1186. data/rust-vendor/tokio/src/signal/unix.rs +570 -0
  1187. data/rust-vendor/tokio/src/signal/windows/stub.rs +25 -0
  1188. data/rust-vendor/tokio/src/signal/windows/sys.rs +244 -0
  1189. data/rust-vendor/tokio/src/signal/windows.rs +526 -0
  1190. data/rust-vendor/tokio/src/sync/barrier.rs +213 -0
  1191. data/rust-vendor/tokio/src/sync/batch_semaphore.rs +780 -0
  1192. data/rust-vendor/tokio/src/sync/broadcast.rs +1759 -0
  1193. data/rust-vendor/tokio/src/sync/mod.rs +524 -0
  1194. data/rust-vendor/tokio/src/sync/mpsc/block.rs +477 -0
  1195. data/rust-vendor/tokio/src/sync/mpsc/bounded.rs +1949 -0
  1196. data/rust-vendor/tokio/src/sync/mpsc/chan.rs +628 -0
  1197. data/rust-vendor/tokio/src/sync/mpsc/error.rs +168 -0
  1198. data/rust-vendor/tokio/src/sync/mpsc/list.rs +419 -0
  1199. data/rust-vendor/tokio/src/sync/mpsc/mod.rs +144 -0
  1200. data/rust-vendor/tokio/src/sync/mpsc/unbounded.rs +726 -0
  1201. data/rust-vendor/tokio/src/sync/mutex.rs +1396 -0
  1202. data/rust-vendor/tokio/src/sync/notify.rs +1409 -0
  1203. data/rust-vendor/tokio/src/sync/once_cell.rs +512 -0
  1204. data/rust-vendor/tokio/src/sync/oneshot.rs +1594 -0
  1205. data/rust-vendor/tokio/src/sync/rwlock/owned_read_guard.rs +208 -0
  1206. data/rust-vendor/tokio/src/sync/rwlock/owned_write_guard.rs +460 -0
  1207. data/rust-vendor/tokio/src/sync/rwlock/owned_write_guard_mapped.rs +230 -0
  1208. data/rust-vendor/tokio/src/sync/rwlock/read_guard.rs +191 -0
  1209. data/rust-vendor/tokio/src/sync/rwlock/write_guard.rs +457 -0
  1210. data/rust-vendor/tokio/src/sync/rwlock/write_guard_mapped.rs +213 -0
  1211. data/rust-vendor/tokio/src/sync/rwlock.rs +1121 -0
  1212. data/rust-vendor/tokio/src/sync/semaphore.rs +1206 -0
  1213. data/rust-vendor/tokio/src/sync/set_once.rs +388 -0
  1214. data/rust-vendor/tokio/src/sync/task/atomic_waker.rs +383 -0
  1215. data/rust-vendor/tokio/src/sync/task/mod.rs +4 -0
  1216. data/rust-vendor/tokio/src/sync/tests/atomic_waker.rs +113 -0
  1217. data/rust-vendor/tokio/src/sync/tests/loom_atomic_waker.rs +100 -0
  1218. data/rust-vendor/tokio/src/sync/tests/loom_broadcast.rs +207 -0
  1219. data/rust-vendor/tokio/src/sync/tests/loom_list.rs +48 -0
  1220. data/rust-vendor/tokio/src/sync/tests/loom_mpsc.rs +224 -0
  1221. data/rust-vendor/tokio/src/sync/tests/loom_notify.rs +330 -0
  1222. data/rust-vendor/tokio/src/sync/tests/loom_oneshot.rs +187 -0
  1223. data/rust-vendor/tokio/src/sync/tests/loom_rwlock.rs +105 -0
  1224. data/rust-vendor/tokio/src/sync/tests/loom_semaphore_batch.rs +242 -0
  1225. data/rust-vendor/tokio/src/sync/tests/loom_set_once.rs +72 -0
  1226. data/rust-vendor/tokio/src/sync/tests/loom_watch.rs +110 -0
  1227. data/rust-vendor/tokio/src/sync/tests/mod.rs +18 -0
  1228. data/rust-vendor/tokio/src/sync/tests/notify.rs +121 -0
  1229. data/rust-vendor/tokio/src/sync/tests/semaphore_batch.rs +310 -0
  1230. data/rust-vendor/tokio/src/sync/watch.rs +1556 -0
  1231. data/rust-vendor/tokio/src/task/blocking.rs +212 -0
  1232. data/rust-vendor/tokio/src/task/builder.rs +235 -0
  1233. data/rust-vendor/tokio/src/task/coop/consume_budget.rs +39 -0
  1234. data/rust-vendor/tokio/src/task/coop/mod.rs +573 -0
  1235. data/rust-vendor/tokio/src/task/coop/unconstrained.rs +45 -0
  1236. data/rust-vendor/tokio/src/task/join_set.rs +851 -0
  1237. data/rust-vendor/tokio/src/task/local.rs +1353 -0
  1238. data/rust-vendor/tokio/src/task/mod.rs +335 -0
  1239. data/rust-vendor/tokio/src/task/spawn.rs +210 -0
  1240. data/rust-vendor/tokio/src/task/task_local.rs +488 -0
  1241. data/rust-vendor/tokio/src/task/yield_now.rs +64 -0
  1242. data/rust-vendor/tokio/src/time/clock.rs +320 -0
  1243. data/rust-vendor/tokio/src/time/error.rs +123 -0
  1244. data/rust-vendor/tokio/src/time/instant.rs +223 -0
  1245. data/rust-vendor/tokio/src/time/interval.rs +643 -0
  1246. data/rust-vendor/tokio/src/time/mod.rs +110 -0
  1247. data/rust-vendor/tokio/src/time/sleep.rs +469 -0
  1248. data/rust-vendor/tokio/src/time/timeout.rs +234 -0
  1249. data/rust-vendor/tokio/src/util/as_ref.rs +38 -0
  1250. data/rust-vendor/tokio/src/util/atomic_cell.rs +51 -0
  1251. data/rust-vendor/tokio/src/util/bit.rs +64 -0
  1252. data/rust-vendor/tokio/src/util/blocking_check.rs +29 -0
  1253. data/rust-vendor/tokio/src/util/cacheline.rs +89 -0
  1254. data/rust-vendor/tokio/src/util/error.rs +16 -0
  1255. data/rust-vendor/tokio/src/util/idle_notified_set.rs +512 -0
  1256. data/rust-vendor/tokio/src/util/linked_list.rs +808 -0
  1257. data/rust-vendor/tokio/src/util/markers.rs +9 -0
  1258. data/rust-vendor/tokio/src/util/memchr.rs +74 -0
  1259. data/rust-vendor/tokio/src/util/metric_atomics.rs +81 -0
  1260. data/rust-vendor/tokio/src/util/mod.rs +110 -0
  1261. data/rust-vendor/tokio/src/util/ptr_expose.rs +74 -0
  1262. data/rust-vendor/tokio/src/util/rand/rt.rs +61 -0
  1263. data/rust-vendor/tokio/src/util/rand/rt_unstable.rs +20 -0
  1264. data/rust-vendor/tokio/src/util/rand.rs +95 -0
  1265. data/rust-vendor/tokio/src/util/rc_cell.rs +57 -0
  1266. data/rust-vendor/tokio/src/util/sharded_list.rs +162 -0
  1267. data/rust-vendor/tokio/src/util/sync_wrapper.rs +37 -0
  1268. data/rust-vendor/tokio/src/util/trace.rs +191 -0
  1269. data/rust-vendor/tokio/src/util/try_lock.rs +80 -0
  1270. data/rust-vendor/tokio/src/util/typeid.rs +45 -0
  1271. data/rust-vendor/tokio/src/util/wake.rs +78 -0
  1272. data/rust-vendor/tokio/src/util/wake_list.rs +83 -0
  1273. data/rust-vendor/tokio/tests/_require_full.rs +8 -0
  1274. data/rust-vendor/tokio/tests/async_send_sync.rs +778 -0
  1275. data/rust-vendor/tokio/tests/buffered.rs +51 -0
  1276. data/rust-vendor/tokio/tests/coop_budget.rs +93 -0
  1277. data/rust-vendor/tokio/tests/dump.rs +199 -0
  1278. data/rust-vendor/tokio/tests/duplex_stream.rs +47 -0
  1279. data/rust-vendor/tokio/tests/fs.rs +36 -0
  1280. data/rust-vendor/tokio/tests/fs_canonicalize_dir.rs +22 -0
  1281. data/rust-vendor/tokio/tests/fs_copy.rs +41 -0
  1282. data/rust-vendor/tokio/tests/fs_dir.rs +126 -0
  1283. data/rust-vendor/tokio/tests/fs_file.rs +289 -0
  1284. data/rust-vendor/tokio/tests/fs_link.rs +62 -0
  1285. data/rust-vendor/tokio/tests/fs_open_options.rs +84 -0
  1286. data/rust-vendor/tokio/tests/fs_open_options_windows.rs +51 -0
  1287. data/rust-vendor/tokio/tests/fs_remove_dir_all.rs +31 -0
  1288. data/rust-vendor/tokio/tests/fs_remove_file.rs +24 -0
  1289. data/rust-vendor/tokio/tests/fs_rename.rs +28 -0
  1290. data/rust-vendor/tokio/tests/fs_symlink_dir_windows.rs +31 -0
  1291. data/rust-vendor/tokio/tests/fs_symlink_file_windows.rs +24 -0
  1292. data/rust-vendor/tokio/tests/fs_try_exists.rs +48 -0
  1293. data/rust-vendor/tokio/tests/fs_uring.rs +157 -0
  1294. data/rust-vendor/tokio/tests/fs_uring_read.rs +202 -0
  1295. data/rust-vendor/tokio/tests/fs_write.rs +16 -0
  1296. data/rust-vendor/tokio/tests/io_async_fd.rs +958 -0
  1297. data/rust-vendor/tokio/tests/io_async_read.rs +10 -0
  1298. data/rust-vendor/tokio/tests/io_buf_reader.rs +379 -0
  1299. data/rust-vendor/tokio/tests/io_buf_writer.rs +537 -0
  1300. data/rust-vendor/tokio/tests/io_chain.rs +16 -0
  1301. data/rust-vendor/tokio/tests/io_copy.rs +101 -0
  1302. data/rust-vendor/tokio/tests/io_copy_bidirectional.rs +168 -0
  1303. data/rust-vendor/tokio/tests/io_driver.rs +105 -0
  1304. data/rust-vendor/tokio/tests/io_driver_drop.rs +62 -0
  1305. data/rust-vendor/tokio/tests/io_fill_buf.rs +34 -0
  1306. data/rust-vendor/tokio/tests/io_join.rs +81 -0
  1307. data/rust-vendor/tokio/tests/io_lines.rs +19 -0
  1308. data/rust-vendor/tokio/tests/io_mem_stream.rs +121 -0
  1309. data/rust-vendor/tokio/tests/io_panic.rs +222 -0
  1310. data/rust-vendor/tokio/tests/io_poll_aio.rs +339 -0
  1311. data/rust-vendor/tokio/tests/io_read.rs +75 -0
  1312. data/rust-vendor/tokio/tests/io_read_buf.rs +94 -0
  1313. data/rust-vendor/tokio/tests/io_read_exact.rs +15 -0
  1314. data/rust-vendor/tokio/tests/io_read_line.rs +107 -0
  1315. data/rust-vendor/tokio/tests/io_read_to_end.rs +125 -0
  1316. data/rust-vendor/tokio/tests/io_read_to_string.rs +63 -0
  1317. data/rust-vendor/tokio/tests/io_read_until.rs +74 -0
  1318. data/rust-vendor/tokio/tests/io_repeat.rs +18 -0
  1319. data/rust-vendor/tokio/tests/io_sink.rs +44 -0
  1320. data/rust-vendor/tokio/tests/io_split.rs +114 -0
  1321. data/rust-vendor/tokio/tests/io_take.rs +74 -0
  1322. data/rust-vendor/tokio/tests/io_util_empty.rs +61 -0
  1323. data/rust-vendor/tokio/tests/io_write.rs +58 -0
  1324. data/rust-vendor/tokio/tests/io_write_all.rs +51 -0
  1325. data/rust-vendor/tokio/tests/io_write_all_buf.rs +145 -0
  1326. data/rust-vendor/tokio/tests/io_write_buf.rs +56 -0
  1327. data/rust-vendor/tokio/tests/io_write_int.rs +37 -0
  1328. data/rust-vendor/tokio/tests/join_handle_panic.rs +21 -0
  1329. data/rust-vendor/tokio/tests/macros_join.rs +256 -0
  1330. data/rust-vendor/tokio/tests/macros_pin.rs +21 -0
  1331. data/rust-vendor/tokio/tests/macros_rename_test.rs +35 -0
  1332. data/rust-vendor/tokio/tests/macros_select.rs +760 -0
  1333. data/rust-vendor/tokio/tests/macros_test.rs +117 -0
  1334. data/rust-vendor/tokio/tests/macros_try_join.rs +269 -0
  1335. data/rust-vendor/tokio/tests/net_bind_resource.rs +14 -0
  1336. data/rust-vendor/tokio/tests/net_lookup_host.rs +39 -0
  1337. data/rust-vendor/tokio/tests/net_named_pipe.rs +399 -0
  1338. data/rust-vendor/tokio/tests/net_panic.rs +196 -0
  1339. data/rust-vendor/tokio/tests/net_quickack.rs +71 -0
  1340. data/rust-vendor/tokio/tests/net_unix_pipe.rs +546 -0
  1341. data/rust-vendor/tokio/tests/no_rt.rs +47 -0
  1342. data/rust-vendor/tokio/tests/process_arg0.rs +13 -0
  1343. data/rust-vendor/tokio/tests/process_change_of_runtime.rs +34 -0
  1344. data/rust-vendor/tokio/tests/process_issue_2174.rs +46 -0
  1345. data/rust-vendor/tokio/tests/process_issue_42.rs +39 -0
  1346. data/rust-vendor/tokio/tests/process_issue_7144.rs +28 -0
  1347. data/rust-vendor/tokio/tests/process_kill_after_wait.rs +27 -0
  1348. data/rust-vendor/tokio/tests/process_kill_on_drop.rs +44 -0
  1349. data/rust-vendor/tokio/tests/process_raw_handle.rs +24 -0
  1350. data/rust-vendor/tokio/tests/process_smoke.rs +34 -0
  1351. data/rust-vendor/tokio/tests/rt_basic.rs +458 -0
  1352. data/rust-vendor/tokio/tests/rt_common.rs +1438 -0
  1353. data/rust-vendor/tokio/tests/rt_handle.rs +125 -0
  1354. data/rust-vendor/tokio/tests/rt_handle_block_on.rs +567 -0
  1355. data/rust-vendor/tokio/tests/rt_local.rs +170 -0
  1356. data/rust-vendor/tokio/tests/rt_metrics.rs +233 -0
  1357. data/rust-vendor/tokio/tests/rt_panic.rs +90 -0
  1358. data/rust-vendor/tokio/tests/rt_poll_callbacks.rs +128 -0
  1359. data/rust-vendor/tokio/tests/rt_threaded.rs +884 -0
  1360. data/rust-vendor/tokio/tests/rt_time_start_paused.rs +14 -0
  1361. data/rust-vendor/tokio/tests/rt_unstable_metrics.rs +821 -0
  1362. data/rust-vendor/tokio/tests/signal_ctrl_c.rs +23 -0
  1363. data/rust-vendor/tokio/tests/signal_drop_recv.rs +23 -0
  1364. data/rust-vendor/tokio/tests/signal_drop_rt.rs +45 -0
  1365. data/rust-vendor/tokio/tests/signal_drop_signal.rs +27 -0
  1366. data/rust-vendor/tokio/tests/signal_info.rs +35 -0
  1367. data/rust-vendor/tokio/tests/signal_multi_rt.rs +55 -0
  1368. data/rust-vendor/tokio/tests/signal_no_rt.rs +13 -0
  1369. data/rust-vendor/tokio/tests/signal_notify_both.rs +24 -0
  1370. data/rust-vendor/tokio/tests/signal_panic.rs +31 -0
  1371. data/rust-vendor/tokio/tests/signal_realtime.rs +105 -0
  1372. data/rust-vendor/tokio/tests/signal_twice.rs +23 -0
  1373. data/rust-vendor/tokio/tests/signal_usr1.rs +24 -0
  1374. data/rust-vendor/tokio/tests/support/io_vec.rs +45 -0
  1375. data/rust-vendor/tokio/tests/support/leaked_buffers.rs +26 -0
  1376. data/rust-vendor/tokio/tests/support/mpsc_stream.rs +42 -0
  1377. data/rust-vendor/tokio/tests/support/panic.rs +34 -0
  1378. data/rust-vendor/tokio/tests/support/signal.rs +15 -0
  1379. data/rust-vendor/tokio/tests/sync_barrier.rs +99 -0
  1380. data/rust-vendor/tokio/tests/sync_broadcast.rs +722 -0
  1381. data/rust-vendor/tokio/tests/sync_broadcast_weak.rs +181 -0
  1382. data/rust-vendor/tokio/tests/sync_errors.rs +30 -0
  1383. data/rust-vendor/tokio/tests/sync_mpsc.rs +1512 -0
  1384. data/rust-vendor/tokio/tests/sync_mpsc_weak.rs +688 -0
  1385. data/rust-vendor/tokio/tests/sync_mutex.rs +178 -0
  1386. data/rust-vendor/tokio/tests/sync_mutex_owned.rs +137 -0
  1387. data/rust-vendor/tokio/tests/sync_notify.rs +303 -0
  1388. data/rust-vendor/tokio/tests/sync_notify_owned.rs +304 -0
  1389. data/rust-vendor/tokio/tests/sync_once_cell.rs +250 -0
  1390. data/rust-vendor/tokio/tests/sync_oneshot.rs +440 -0
  1391. data/rust-vendor/tokio/tests/sync_panic.rs +231 -0
  1392. data/rust-vendor/tokio/tests/sync_rwlock.rs +332 -0
  1393. data/rust-vendor/tokio/tests/sync_semaphore.rs +176 -0
  1394. data/rust-vendor/tokio/tests/sync_semaphore_owned.rs +164 -0
  1395. data/rust-vendor/tokio/tests/sync_set_once.rs +180 -0
  1396. data/rust-vendor/tokio/tests/sync_watch.rs +505 -0
  1397. data/rust-vendor/tokio/tests/task_abort.rs +326 -0
  1398. data/rust-vendor/tokio/tests/task_blocking.rs +310 -0
  1399. data/rust-vendor/tokio/tests/task_builder.rs +105 -0
  1400. data/rust-vendor/tokio/tests/task_hooks.rs +194 -0
  1401. data/rust-vendor/tokio/tests/task_id.rs +300 -0
  1402. data/rust-vendor/tokio/tests/task_join_set.rs +662 -0
  1403. data/rust-vendor/tokio/tests/task_local.rs +171 -0
  1404. data/rust-vendor/tokio/tests/task_local_set.rs +808 -0
  1405. data/rust-vendor/tokio/tests/task_panic.rs +123 -0
  1406. data/rust-vendor/tokio/tests/task_trace_self.rs +107 -0
  1407. data/rust-vendor/tokio/tests/task_yield_now.rs +24 -0
  1408. data/rust-vendor/tokio/tests/tcp_accept.rs +157 -0
  1409. data/rust-vendor/tokio/tests/tcp_connect.rs +231 -0
  1410. data/rust-vendor/tokio/tests/tcp_echo.rs +43 -0
  1411. data/rust-vendor/tokio/tests/tcp_into_split.rs +132 -0
  1412. data/rust-vendor/tokio/tests/tcp_into_std.rs +46 -0
  1413. data/rust-vendor/tokio/tests/tcp_peek.rs +37 -0
  1414. data/rust-vendor/tokio/tests/tcp_shutdown.rs +83 -0
  1415. data/rust-vendor/tokio/tests/tcp_socket.rs +185 -0
  1416. data/rust-vendor/tokio/tests/tcp_split.rs +43 -0
  1417. data/rust-vendor/tokio/tests/tcp_stream.rs +407 -0
  1418. data/rust-vendor/tokio/tests/test_clock.rs +50 -0
  1419. data/rust-vendor/tokio/tests/time_alt.rs +108 -0
  1420. data/rust-vendor/tokio/tests/time_interval.rs +477 -0
  1421. data/rust-vendor/tokio/tests/time_panic.rs +139 -0
  1422. data/rust-vendor/tokio/tests/time_pause.rs +333 -0
  1423. data/rust-vendor/tokio/tests/time_rt.rs +166 -0
  1424. data/rust-vendor/tokio/tests/time_sleep.rs +366 -0
  1425. data/rust-vendor/tokio/tests/time_timeout.rs +151 -0
  1426. data/rust-vendor/tokio/tests/time_wasm.rs +40 -0
  1427. data/rust-vendor/tokio/tests/tracing_sync.rs +282 -0
  1428. data/rust-vendor/tokio/tests/tracing_task.rs +186 -0
  1429. data/rust-vendor/tokio/tests/tracing_time.rs +71 -0
  1430. data/rust-vendor/tokio/tests/udp.rs +724 -0
  1431. data/rust-vendor/tokio/tests/uds_cred.rs +26 -0
  1432. data/rust-vendor/tokio/tests/uds_datagram.rs +425 -0
  1433. data/rust-vendor/tokio/tests/uds_socket.rs +121 -0
  1434. data/rust-vendor/tokio/tests/uds_split.rs +44 -0
  1435. data/rust-vendor/tokio/tests/uds_stream.rs +446 -0
  1436. data/rust-vendor/tokio/tests/unwindsafe.rs +42 -0
  1437. data/rust-vendor/wasip2/.cargo-checksum.json +1 -1
  1438. data/rust-vendor/wasip2/.cargo_vcs_info.json +1 -1
  1439. data/rust-vendor/wasip2/Cargo.lock +9 -9
  1440. data/rust-vendor/wasip2/Cargo.toml +3 -3
  1441. data/rust-vendor/wasip2/Cargo.toml.orig +1 -1
  1442. data/rust-vendor/wasip2/src/command.rs +95 -95
  1443. data/rust-vendor/wasip2/src/imports.rs +283 -296
  1444. data/rust-vendor/wasip2/src/proxy.rs +846 -842
  1445. data/rust-vendor/wasip2/wit/deps/cli.wit +233 -0
  1446. data/rust-vendor/wasip2/wit/deps/clocks.wit +162 -0
  1447. data/rust-vendor/wasip2/wit/deps/filesystem.wit +587 -0
  1448. data/rust-vendor/wasip2/wit/deps/http.wit +733 -0
  1449. data/rust-vendor/wasip2/wit/deps/io.wit +299 -0
  1450. data/rust-vendor/wasip2/wit/deps/random.wit +92 -0
  1451. data/rust-vendor/wasip2/wit/deps/sockets.wit +949 -0
  1452. data/rust-vendor/wasm-bindgen/.cargo-checksum.json +1 -1
  1453. data/rust-vendor/wasm-bindgen/.cargo_vcs_info.json +1 -1
  1454. data/rust-vendor/wasm-bindgen/Cargo.lock +21 -21
  1455. data/rust-vendor/wasm-bindgen/Cargo.toml +6 -3
  1456. data/rust-vendor/wasm-bindgen/Cargo.toml.orig +6 -4
  1457. data/rust-vendor/wasm-bindgen/src/cast.rs +5 -1
  1458. data/rust-vendor/wasm-bindgen/src/closure.rs +695 -245
  1459. data/rust-vendor/wasm-bindgen/src/convert/closures.rs +324 -27
  1460. data/rust-vendor/wasm-bindgen/src/convert/impls.rs +203 -5
  1461. data/rust-vendor/wasm-bindgen/src/convert/slices.rs +36 -10
  1462. data/rust-vendor/wasm-bindgen/src/convert/traits.rs +172 -1
  1463. data/rust-vendor/wasm-bindgen/src/describe.rs +2 -2
  1464. data/rust-vendor/wasm-bindgen/src/lib.rs +28 -7
  1465. data/rust-vendor/wasm-bindgen/src/rt/marker.rs +104 -0
  1466. data/rust-vendor/wasm-bindgen/src/rt/mod.rs +48 -47
  1467. data/rust-vendor/wasm-bindgen/src/sys.rs +272 -0
  1468. data/rust-vendor/wasm-bindgen-macro/.cargo-checksum.json +1 -1
  1469. data/rust-vendor/wasm-bindgen-macro/.cargo_vcs_info.json +1 -1
  1470. data/rust-vendor/wasm-bindgen-macro/Cargo.lock +27 -27
  1471. data/rust-vendor/wasm-bindgen-macro/Cargo.toml +5 -2
  1472. data/rust-vendor/wasm-bindgen-macro/Cargo.toml.orig +2 -2
  1473. data/rust-vendor/wasm-bindgen-macro-support/.cargo-checksum.json +1 -1
  1474. data/rust-vendor/wasm-bindgen-macro-support/.cargo_vcs_info.json +1 -1
  1475. data/rust-vendor/wasm-bindgen-macro-support/Cargo.lock +13 -13
  1476. data/rust-vendor/wasm-bindgen-macro-support/Cargo.toml +6 -2
  1477. data/rust-vendor/wasm-bindgen-macro-support/Cargo.toml.orig +3 -3
  1478. data/rust-vendor/wasm-bindgen-macro-support/src/ast.rs +14 -1
  1479. data/rust-vendor/wasm-bindgen-macro-support/src/codegen.rs +789 -98
  1480. data/rust-vendor/wasm-bindgen-macro-support/src/encode.rs +2 -0
  1481. data/rust-vendor/wasm-bindgen-macro-support/src/generics.rs +805 -0
  1482. data/rust-vendor/wasm-bindgen-macro-support/src/lib.rs +1 -0
  1483. data/rust-vendor/wasm-bindgen-macro-support/src/parser.rs +209 -54
  1484. data/rust-vendor/wasm-bindgen-shared/.cargo-checksum.json +1 -1
  1485. data/rust-vendor/wasm-bindgen-shared/.cargo_vcs_info.json +1 -1
  1486. data/rust-vendor/wasm-bindgen-shared/Cargo.lock +3 -3
  1487. data/rust-vendor/wasm-bindgen-shared/Cargo.toml +4 -1
  1488. data/rust-vendor/wasm-bindgen-shared/Cargo.toml.orig +1 -1
  1489. data/rust-vendor/wasm-bindgen-shared/src/lib.rs +39 -1
  1490. data/rust-vendor/wasm-bindgen-shared/src/schema_hash_approval.rs +1 -1
  1491. data/rust-vendor/zerocopy/.cargo-checksum.json +1 -1
  1492. data/rust-vendor/zerocopy/.cargo_vcs_info.json +1 -1
  1493. data/rust-vendor/zerocopy/Cargo.lock +3 -188
  1494. data/rust-vendor/zerocopy/Cargo.toml +7 -11
  1495. data/rust-vendor/zerocopy/Cargo.toml.orig +5 -10
  1496. data/rust-vendor/zerocopy/cargo.sh +2 -0
  1497. data/rust-vendor/zerocopy/ci/check_fmt.sh +7 -6
  1498. data/rust-vendor/zerocopy/ci/check_stale_stderr.sh +9 -0
  1499. data/rust-vendor/zerocopy/ci/check_todo.sh +8 -1
  1500. data/rust-vendor/zerocopy/githooks/pre-push +3 -3
  1501. data/rust-vendor/zerocopy/src/macros.rs +4 -0
  1502. data/rust-vendor/zerocopy/src/util/macro_util.rs +26 -11
  1503. data/rust-vendor/zerocopy/tests/ui/diagnostic-not-implemented.msrv.stderr +99 -0
  1504. data/rust-vendor/zerocopy/tests/ui/diagnostic-not-implemented.nightly.stderr +249 -0
  1505. data/rust-vendor/zerocopy/tests/ui/diagnostic-not-implemented.rs +83 -0
  1506. data/rust-vendor/zerocopy/tests/ui/diagnostic-not-implemented.stable.stderr +249 -0
  1507. data/rust-vendor/zerocopy/tests/ui/include_value.msrv.stderr +19 -0
  1508. data/rust-vendor/zerocopy/tests/ui/include_value.nightly.stderr +35 -0
  1509. data/rust-vendor/zerocopy/tests/ui/include_value.rs +18 -0
  1510. data/rust-vendor/zerocopy/tests/ui/include_value.stable.stderr +35 -0
  1511. data/rust-vendor/zerocopy/tests/ui/late-compile-pass.msrv.stderr +135 -0
  1512. data/rust-vendor/zerocopy/tests/ui/late-compile-pass.nightly.stderr +157 -0
  1513. data/rust-vendor/zerocopy/tests/ui/late-compile-pass.rs +79 -0
  1514. data/rust-vendor/zerocopy/tests/ui/late-compile-pass.stable.stderr +157 -0
  1515. data/rust-vendor/zerocopy/tests/ui/max-align.msrv.stderr +9 -0
  1516. data/rust-vendor/zerocopy/tests/ui/max-align.nightly.stderr +9 -0
  1517. data/rust-vendor/zerocopy/tests/ui/max-align.rs +102 -0
  1518. data/rust-vendor/zerocopy/tests/ui/max-align.stable.stderr +9 -0
  1519. data/rust-vendor/zerocopy/tests/ui/ptr-is-invariant-over-v.msrv.stderr +21 -0
  1520. data/rust-vendor/zerocopy/tests/ui/ptr-is-invariant-over-v.nightly.stderr +34 -0
  1521. data/rust-vendor/zerocopy/tests/ui/ptr-is-invariant-over-v.rs +35 -0
  1522. data/rust-vendor/zerocopy/tests/ui/ptr-is-invariant-over-v.stable.stderr +34 -0
  1523. data/rust-vendor/zerocopy/tests/ui/transmute-ptr-to-usize.msrv.stderr +19 -0
  1524. data/rust-vendor/zerocopy/tests/ui/transmute-ptr-to-usize.nightly.stderr +33 -0
  1525. data/rust-vendor/zerocopy/tests/ui/transmute-ptr-to-usize.rs +22 -0
  1526. data/rust-vendor/zerocopy/tests/ui/transmute-ptr-to-usize.stable.stderr +28 -0
  1527. data/rust-vendor/zerocopy/tests/ui/transmute.msrv.stderr +35 -0
  1528. data/rust-vendor/zerocopy/tests/ui/transmute.nightly.stderr +70 -0
  1529. data/rust-vendor/zerocopy/tests/ui/transmute.rs +22 -0
  1530. data/rust-vendor/zerocopy/tests/ui/transmute.stable.stderr +70 -0
  1531. data/rust-vendor/zerocopy/tests/ui/transmute_mut.msrv.stderr +111 -0
  1532. data/rust-vendor/zerocopy/tests/ui/transmute_mut.nightly.stderr +213 -0
  1533. data/rust-vendor/zerocopy/tests/ui/transmute_mut.rs +89 -0
  1534. data/rust-vendor/zerocopy/tests/ui/transmute_mut.stable.stderr +213 -0
  1535. data/rust-vendor/zerocopy/tests/ui/transmute_ref.msrv.stderr +245 -0
  1536. data/rust-vendor/zerocopy/tests/ui/transmute_ref.nightly.stderr +359 -0
  1537. data/rust-vendor/zerocopy/tests/ui/transmute_ref.rs +86 -0
  1538. data/rust-vendor/zerocopy/tests/ui/transmute_ref.stable.stderr +359 -0
  1539. data/rust-vendor/zerocopy/tests/ui/try_transmute.msrv.stderr +54 -0
  1540. data/rust-vendor/zerocopy/tests/ui/try_transmute.nightly.stderr +124 -0
  1541. data/rust-vendor/zerocopy/tests/ui/try_transmute.rs +23 -0
  1542. data/rust-vendor/zerocopy/tests/ui/try_transmute.stable.stderr +124 -0
  1543. data/rust-vendor/zerocopy/tests/ui/try_transmute_mut.msrv.stderr +76 -0
  1544. data/rust-vendor/zerocopy/tests/ui/try_transmute_mut.nightly.stderr +252 -0
  1545. data/rust-vendor/zerocopy/tests/ui/try_transmute_mut.rs +49 -0
  1546. data/rust-vendor/zerocopy/tests/ui/try_transmute_mut.stable.stderr +252 -0
  1547. data/rust-vendor/zerocopy/tests/ui/try_transmute_ref.msrv.stderr +84 -0
  1548. data/rust-vendor/zerocopy/tests/ui/try_transmute_ref.nightly.stderr +206 -0
  1549. data/rust-vendor/zerocopy/tests/ui/try_transmute_ref.rs +36 -0
  1550. data/rust-vendor/zerocopy/tests/ui/try_transmute_ref.stable.stderr +206 -0
  1551. data/rust-vendor/zerocopy/tests/ui.rs +34 -0
  1552. data/rust-vendor/zerocopy-derive/.cargo-checksum.json +1 -1
  1553. data/rust-vendor/zerocopy-derive/.cargo_vcs_info.json +1 -1
  1554. data/rust-vendor/zerocopy-derive/Cargo.lock +1 -180
  1555. data/rust-vendor/zerocopy-derive/Cargo.toml +3 -13
  1556. data/rust-vendor/zerocopy-derive/Cargo.toml.orig +1 -8
  1557. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(C).expected.rs +40 -0
  1558. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(i128).expected.rs +40 -0
  1559. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(i16).expected.rs +40 -0
  1560. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(i32).expected.rs +40 -0
  1561. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(i64).expected.rs +40 -0
  1562. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(i8).expected.rs +40 -0
  1563. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(isize).expected.rs +40 -0
  1564. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(u128).expected.rs +40 -0
  1565. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(u16).expected.rs +40 -0
  1566. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(u32).expected.rs +40 -0
  1567. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(u64).expected.rs +40 -0
  1568. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(u8).expected.rs +40 -0
  1569. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.repr(usize).expected.rs +40 -0
  1570. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_struct_basic.expected.rs +10 -1
  1571. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_struct_trailing.expected.rs +10 -1
  1572. data/rust-vendor/zerocopy-derive/src/output_tests/mod.rs +4 -4
  1573. data/rust-vendor/zerocopy-derive/src/util.rs +24 -5
  1574. data/rust-vendor/zerocopy-derive/tests/enum_to_bytes.rs +9 -0
  1575. data/rust-vendor/zerocopy-derive/tests/struct_to_bytes.rs +9 -0
  1576. data/rust-vendor/zerocopy-derive/tests/ui/absence_of_deprecated_warning.msrv.stderr +14 -0
  1577. data/rust-vendor/zerocopy-derive/tests/ui/absence_of_deprecated_warning.nightly.stderr +28 -0
  1578. data/rust-vendor/zerocopy-derive/tests/ui/absence_of_deprecated_warning.rs +35 -0
  1579. data/rust-vendor/zerocopy-derive/tests/ui/absence_of_deprecated_warning.stable.stderr +28 -0
  1580. data/rust-vendor/zerocopy-derive/tests/ui/cfgs/union_into_bytes_cfg.msrv.stderr +15 -0
  1581. data/rust-vendor/zerocopy-derive/tests/ui/derive_transparent.msrv.stderr +93 -0
  1582. data/rust-vendor/zerocopy-derive/tests/ui/derive_transparent.nightly.stderr +198 -0
  1583. data/rust-vendor/zerocopy-derive/tests/ui/derive_transparent.rs +48 -0
  1584. data/rust-vendor/zerocopy-derive/tests/ui/derive_transparent.stable.stderr +173 -0
  1585. data/rust-vendor/zerocopy-derive/tests/ui/enum.msrv.stderr +419 -0
  1586. data/rust-vendor/zerocopy-derive/tests/ui/enum.nightly.stderr +601 -0
  1587. data/rust-vendor/zerocopy-derive/tests/ui/enum.rs +688 -0
  1588. data/rust-vendor/zerocopy-derive/tests/ui/enum.stable.stderr +549 -0
  1589. data/rust-vendor/zerocopy-derive/tests/ui/enum_from_bytes_u8_too_few.msrv.stderr +14 -0
  1590. data/rust-vendor/zerocopy-derive/tests/ui/enum_from_bytes_u8_too_few.nightly.stderr +14 -0
  1591. data/rust-vendor/zerocopy-derive/tests/ui/enum_from_bytes_u8_too_few.rs +274 -0
  1592. data/rust-vendor/zerocopy-derive/tests/ui/enum_from_bytes_u8_too_few.stable.stderr +14 -0
  1593. data/rust-vendor/zerocopy-derive/tests/ui/late_compile_pass.msrv.stderr +101 -0
  1594. data/rust-vendor/zerocopy-derive/tests/ui/late_compile_pass.nightly.stderr +335 -0
  1595. data/rust-vendor/zerocopy-derive/tests/ui/late_compile_pass.rs +108 -0
  1596. data/rust-vendor/zerocopy-derive/tests/ui/late_compile_pass.stable.stderr +295 -0
  1597. data/rust-vendor/zerocopy-derive/tests/ui/mid_compile_pass.msrv.stderr +101 -0
  1598. data/rust-vendor/zerocopy-derive/tests/ui/mid_compile_pass.nightly.stderr +114 -0
  1599. data/rust-vendor/zerocopy-derive/tests/ui/mid_compile_pass.rs +70 -0
  1600. data/rust-vendor/zerocopy-derive/tests/ui/mid_compile_pass.stable.stderr +114 -0
  1601. data/rust-vendor/zerocopy-derive/tests/ui/msrv_specific.msrv.stderr +29 -0
  1602. data/rust-vendor/zerocopy-derive/tests/ui/msrv_specific.nightly.stderr +45 -0
  1603. data/rust-vendor/zerocopy-derive/tests/ui/msrv_specific.rs +40 -0
  1604. data/rust-vendor/zerocopy-derive/tests/ui/msrv_specific.stable.stderr +45 -0
  1605. data/rust-vendor/zerocopy-derive/tests/ui/privacy.msrv.stderr +147 -0
  1606. data/rust-vendor/zerocopy-derive/tests/ui/privacy.nightly.stderr +32 -0
  1607. data/rust-vendor/zerocopy-derive/tests/ui/privacy.rs +160 -0
  1608. data/rust-vendor/zerocopy-derive/tests/ui/privacy.stable.stderr +32 -0
  1609. data/rust-vendor/zerocopy-derive/tests/ui/struct.msrv.stderr +87 -0
  1610. data/rust-vendor/zerocopy-derive/tests/ui/struct.nightly.stderr +554 -0
  1611. data/rust-vendor/zerocopy-derive/tests/ui/struct.rs +339 -0
  1612. data/rust-vendor/zerocopy-derive/tests/ui/struct.stable.stderr +522 -0
  1613. data/rust-vendor/zerocopy-derive/tests/ui/union.msrv.stderr +88 -0
  1614. data/rust-vendor/zerocopy-derive/tests/ui/union.nightly.stderr +130 -0
  1615. data/rust-vendor/zerocopy-derive/tests/ui/union.rs +134 -0
  1616. data/rust-vendor/zerocopy-derive/tests/ui/union.stable.stderr +125 -0
  1617. data/rust-vendor/zerocopy-derive/tests/ui.rs +28 -0
  1618. data/rust-vendor/zerocopy-derive/tests/union_to_bytes.rs +9 -0
  1619. metadata +1263 -458
  1620. data/ext/html-to-markdown-rb/native/Cargo.lock +0 -1591
  1621. data/rust-vendor/futf/.cargo-checksum.json +0 -1
  1622. data/rust-vendor/futf/.cargo_vcs_info.json +0 -6
  1623. data/rust-vendor/futf/.travis.yml +0 -11
  1624. data/rust-vendor/futf/Cargo.toml +0 -24
  1625. data/rust-vendor/futf/Cargo.toml.orig +0 -12
  1626. data/rust-vendor/futf/LICENSE-APACHE +0 -201
  1627. data/rust-vendor/futf/LICENSE-MIT +0 -25
  1628. data/rust-vendor/futf/README.md +0 -18
  1629. data/rust-vendor/futf/src/lib.rs +0 -248
  1630. data/rust-vendor/futf/src/test.rs +0 -270
  1631. data/rust-vendor/html5ever/examples/capi/tokenize.c +0 -74
  1632. data/rust-vendor/mac/.cargo-checksum.json +0 -1
  1633. data/rust-vendor/mac/.travis.yml +0 -19
  1634. data/rust-vendor/mac/Cargo.toml +0 -10
  1635. data/rust-vendor/mac/README.md +0 -27
  1636. data/rust-vendor/mac/src/cfg.rs +0 -90
  1637. data/rust-vendor/mac/src/format.rs +0 -50
  1638. data/rust-vendor/mac/src/inspect.rs +0 -93
  1639. data/rust-vendor/mac/src/lib.rs +0 -71
  1640. data/rust-vendor/mac/src/matches.rs +0 -44
  1641. data/rust-vendor/mac/src/mem.rs +0 -44
  1642. data/rust-vendor/mac/src/syntax_ext.rs +0 -31
  1643. data/rust-vendor/mac/src/test.rs +0 -24
  1644. data/rust-vendor/markup5ever/Cargo.lock +0 -292
  1645. data/rust-vendor/tendril/.github/workflows/main.yml +0 -51
  1646. data/rust-vendor/tendril/src/bench.rs +0 -159
  1647. data/rust-vendor/wasip2/wit/deps/cli/command.wit +0 -10
  1648. data/rust-vendor/wasip2/wit/deps/cli/environment.wit +0 -22
  1649. data/rust-vendor/wasip2/wit/deps/cli/exit.wit +0 -17
  1650. data/rust-vendor/wasip2/wit/deps/cli/imports.wit +0 -36
  1651. data/rust-vendor/wasip2/wit/deps/cli/run.wit +0 -6
  1652. data/rust-vendor/wasip2/wit/deps/cli/stdio.wit +0 -26
  1653. data/rust-vendor/wasip2/wit/deps/cli/terminal.wit +0 -62
  1654. data/rust-vendor/wasip2/wit/deps/clocks/monotonic-clock.wit +0 -50
  1655. data/rust-vendor/wasip2/wit/deps/clocks/timezone.wit +0 -55
  1656. data/rust-vendor/wasip2/wit/deps/clocks/wall-clock.wit +0 -46
  1657. data/rust-vendor/wasip2/wit/deps/clocks/world.wit +0 -11
  1658. data/rust-vendor/wasip2/wit/deps/filesystem/preopens.wit +0 -11
  1659. data/rust-vendor/wasip2/wit/deps/filesystem/types.wit +0 -676
  1660. data/rust-vendor/wasip2/wit/deps/filesystem/world.wit +0 -9
  1661. data/rust-vendor/wasip2/wit/deps/http/handler.wit +0 -49
  1662. data/rust-vendor/wasip2/wit/deps/http/proxy.wit +0 -50
  1663. data/rust-vendor/wasip2/wit/deps/http/types.wit +0 -688
  1664. data/rust-vendor/wasip2/wit/deps/io/error.wit +0 -34
  1665. data/rust-vendor/wasip2/wit/deps/io/poll.wit +0 -47
  1666. data/rust-vendor/wasip2/wit/deps/io/streams.wit +0 -290
  1667. data/rust-vendor/wasip2/wit/deps/io/world.wit +0 -10
  1668. data/rust-vendor/wasip2/wit/deps/random/insecure-seed.wit +0 -27
  1669. data/rust-vendor/wasip2/wit/deps/random/insecure.wit +0 -25
  1670. data/rust-vendor/wasip2/wit/deps/random/random.wit +0 -29
  1671. data/rust-vendor/wasip2/wit/deps/random/world.wit +0 -13
  1672. data/rust-vendor/wasip2/wit/deps/sockets/instance-network.wit +0 -11
  1673. data/rust-vendor/wasip2/wit/deps/sockets/ip-name-lookup.wit +0 -56
  1674. data/rust-vendor/wasip2/wit/deps/sockets/network.wit +0 -169
  1675. data/rust-vendor/wasip2/wit/deps/sockets/tcp-create-socket.wit +0 -30
  1676. data/rust-vendor/wasip2/wit/deps/sockets/tcp.wit +0 -387
  1677. data/rust-vendor/wasip2/wit/deps/sockets/udp-create-socket.wit +0 -30
  1678. data/rust-vendor/wasip2/wit/deps/sockets/udp.wit +0 -288
  1679. data/rust-vendor/wasip2/wit/deps/sockets/world.wit +0 -19
  1680. data/rust-vendor/wit-bindgen-0.46.0/.cargo-checksum.json +0 -1
  1681. data/rust-vendor/wit-bindgen-0.46.0/.cargo_vcs_info.json +0 -6
  1682. data/rust-vendor/wit-bindgen-0.46.0/Cargo.lock +0 -428
  1683. data/rust-vendor/wit-bindgen-0.46.0/Cargo.toml +0 -88
  1684. data/rust-vendor/wit-bindgen-0.46.0/Cargo.toml.orig +0 -37
  1685. data/rust-vendor/wit-bindgen-0.46.0/LICENSE-APACHE +0 -201
  1686. data/rust-vendor/wit-bindgen-0.46.0/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -220
  1687. data/rust-vendor/wit-bindgen-0.46.0/README.md +0 -45
  1688. data/rust-vendor/wit-bindgen-0.46.0/build.rs +0 -32
  1689. data/rust-vendor/wit-bindgen-0.46.0/src/examples/_0_world_imports.rs +0 -17
  1690. data/rust-vendor/wit-bindgen-0.46.0/src/examples/_1_interface_imports.rs +0 -32
  1691. data/rust-vendor/wit-bindgen-0.46.0/src/examples/_2_imported_resources.rs +0 -22
  1692. data/rust-vendor/wit-bindgen-0.46.0/src/examples/_3_world_exports.rs +0 -47
  1693. data/rust-vendor/wit-bindgen-0.46.0/src/examples/_4_exported_resources.rs +0 -26
  1694. data/rust-vendor/wit-bindgen-0.46.0/src/examples.rs +0 -55
  1695. data/rust-vendor/wit-bindgen-0.46.0/src/lib.rs +0 -881
  1696. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/abi_buffer.rs +0 -417
  1697. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/cabi.rs +0 -112
  1698. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/error_context.rs +0 -94
  1699. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/future_support.rs +0 -734
  1700. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/stream_support.rs +0 -604
  1701. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/subtask.rs +0 -289
  1702. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/waitable.rs +0 -466
  1703. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support/waitable_set.rs +0 -100
  1704. data/rust-vendor/wit-bindgen-0.46.0/src/rt/async_support.rs +0 -634
  1705. data/rust-vendor/wit-bindgen-0.46.0/src/rt/mod.rs +0 -230
  1706. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi.c +0 -20
  1707. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi.o +0 -0
  1708. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi_realloc.c +0 -10
  1709. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi_realloc.o +0 -0
  1710. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi_realloc.rs +0 -11
  1711. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi_wasip3.c +0 -12
  1712. data/rust-vendor/wit-bindgen-0.46.0/src/rt/wit_bindgen_cabi_wasip3.o +0 -0
  1713. data/rust-vendor/wit-bindgen-0.46.0/wasi-cli@0.2.0.wasm +0 -0
  1714. data/rust-vendor/zerocopy/tests/trybuild.rs +0 -40
  1715. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-from-bytes.rs +0 -19
  1716. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-from-bytes.stderr +0 -11
  1717. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-from-zeros.rs +0 -19
  1718. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-from-zeros.stderr +0 -11
  1719. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-immutable.rs +0 -19
  1720. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-immutable.stderr +0 -11
  1721. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-into-bytes.rs +0 -19
  1722. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-into-bytes.stderr +0 -11
  1723. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-issue-1296.rs +0 -57
  1724. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-issue-1296.stderr +0 -11
  1725. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-known-layout.rs +0 -19
  1726. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-known-layout.stderr +0 -11
  1727. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-try-from-bytes.rs +0 -19
  1728. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-try-from-bytes.stderr +0 -11
  1729. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-unaligned.rs +0 -19
  1730. data/rust-vendor/zerocopy/tests/ui-msrv/diagnostic-not-implemented-unaligned.stderr +0 -11
  1731. data/rust-vendor/zerocopy/tests/ui-msrv/include_value_not_from_bytes.rs +0 -17
  1732. data/rust-vendor/zerocopy/tests/ui-msrv/include_value_not_from_bytes.stderr +0 -15
  1733. data/rust-vendor/zerocopy/tests/ui-msrv/include_value_wrong_size.rs +0 -12
  1734. data/rust-vendor/zerocopy/tests/ui-msrv/include_value_wrong_size.stderr +0 -9
  1735. data/rust-vendor/zerocopy/tests/ui-msrv/max-align.rs +0 -99
  1736. data/rust-vendor/zerocopy/tests/ui-msrv/max-align.stderr +0 -5
  1737. data/rust-vendor/zerocopy/tests/ui-msrv/ptr-is-invariant-over-v.rs +0 -29
  1738. data/rust-vendor/zerocopy/tests/ui-msrv/ptr-is-invariant-over-v.stderr +0 -17
  1739. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-dst-not-frombytes.rs +0 -17
  1740. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-dst-not-frombytes.stderr +0 -15
  1741. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-const.rs +0 -18
  1742. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-const.stderr +0 -48
  1743. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-dst-not-a-reference.rs +0 -15
  1744. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-dst-not-a-reference.stderr +0 -19
  1745. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-dst-not-frombytes.rs +0 -22
  1746. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-dst-not-frombytes.stderr +0 -7
  1747. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-dst-not-intobytes.rs +0 -22
  1748. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-dst-not-intobytes.stderr +0 -7
  1749. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-illegal-lifetime.rs +0 -15
  1750. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-illegal-lifetime.stderr +0 -9
  1751. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-dst-not-references.rs +0 -15
  1752. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-dst-not-references.stderr +0 -12
  1753. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-immutable.rs +0 -16
  1754. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-immutable.stderr +0 -11
  1755. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-not-a-reference.rs +0 -15
  1756. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-not-a-reference.stderr +0 -12
  1757. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-not-frombytes.rs +0 -22
  1758. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-not-frombytes.stderr +0 -7
  1759. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-not-intobytes.rs +0 -22
  1760. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-not-intobytes.stderr +0 -7
  1761. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-unsized.rs +0 -15
  1762. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-mut-src-unsized.stderr +0 -16
  1763. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ptr-to-usize.rs +0 -18
  1764. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ptr-to-usize.stderr +0 -15
  1765. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-mutable.rs +0 -17
  1766. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-mutable.stderr +0 -39
  1767. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-not-a-reference.rs +0 -15
  1768. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-not-a-reference.stderr +0 -39
  1769. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-not-frombytes.rs +0 -21
  1770. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-not-frombytes.stderr +0 -12
  1771. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-not-nocell.rs +0 -21
  1772. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-dst-not-nocell.stderr +0 -12
  1773. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-illegal-lifetime.rs +0 -15
  1774. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-illegal-lifetime.stderr +0 -9
  1775. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-dst-not-references.rs +0 -15
  1776. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-dst-not-references.stderr +0 -52
  1777. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-not-a-reference.rs +0 -15
  1778. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-not-a-reference.stderr +0 -12
  1779. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-not-intobytes.rs +0 -21
  1780. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-not-intobytes.stderr +0 -25
  1781. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-not-nocell.rs +0 -21
  1782. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-not-nocell.stderr +0 -25
  1783. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-unsized.rs +0 -14
  1784. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-ref-src-unsized.stderr +0 -16
  1785. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-size-decrease.rs +0 -18
  1786. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-size-decrease.stderr +0 -9
  1787. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-size-increase-allow-shrink.rs +0 -18
  1788. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-size-increase-allow-shrink.stderr +0 -9
  1789. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-size-increase.rs +0 -18
  1790. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-size-increase.stderr +0 -9
  1791. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-src-not-intobytes.rs +0 -17
  1792. data/rust-vendor/zerocopy/tests/ui-msrv/transmute-src-not-intobytes.stderr +0 -15
  1793. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-dst-not-tryfrombytes.rs +0 -16
  1794. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-dst-not-tryfrombytes.stderr +0 -37
  1795. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-size-decrease.rs +0 -18
  1796. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-size-decrease.stderr +0 -9
  1797. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-size-increase.rs +0 -18
  1798. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-size-increase.stderr +0 -9
  1799. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-src-not-intobytes.rs +0 -17
  1800. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute-src-not-intobytes.stderr +0 -12
  1801. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_mut-dst-not-tryfrombytes.rs +0 -19
  1802. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_mut-dst-not-tryfrombytes.stderr +0 -40
  1803. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_mut-src-not-frombytes.rs +0 -22
  1804. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_mut-src-not-frombytes.stderr +0 -23
  1805. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_mut-src-not-intobytes.rs +0 -22
  1806. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_mut-src-not-intobytes.stderr +0 -23
  1807. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_ref-dst-mutable.rs +0 -17
  1808. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_ref-dst-mutable.stderr +0 -22
  1809. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_ref-dst-not-immutable-tryfrombytes.rs +0 -18
  1810. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_ref-dst-not-immutable-tryfrombytes.stderr +0 -40
  1811. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_ref-src-not-immutable-intobytes.rs +0 -18
  1812. data/rust-vendor/zerocopy/tests/ui-msrv/try_transmute_ref-src-not-immutable-intobytes.stderr +0 -15
  1813. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-from-bytes.rs +0 -19
  1814. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-from-bytes.stderr +0 -27
  1815. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-from-zeros.rs +0 -19
  1816. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-from-zeros.stderr +0 -27
  1817. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-immutable.rs +0 -19
  1818. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-immutable.stderr +0 -27
  1819. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-into-bytes.rs +0 -19
  1820. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-into-bytes.stderr +0 -27
  1821. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-issue-1296.rs +0 -57
  1822. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-issue-1296.stderr +0 -49
  1823. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-known-layout.rs +0 -19
  1824. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-known-layout.stderr +0 -27
  1825. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-try-from-bytes.rs +0 -19
  1826. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-try-from-bytes.stderr +0 -27
  1827. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-unaligned.rs +0 -19
  1828. data/rust-vendor/zerocopy/tests/ui-nightly/diagnostic-not-implemented-unaligned.stderr +0 -27
  1829. data/rust-vendor/zerocopy/tests/ui-nightly/include_value_not_from_bytes.rs +0 -17
  1830. data/rust-vendor/zerocopy/tests/ui-nightly/include_value_not_from_bytes.stderr +0 -31
  1831. data/rust-vendor/zerocopy/tests/ui-nightly/include_value_wrong_size.rs +0 -12
  1832. data/rust-vendor/zerocopy/tests/ui-nightly/include_value_wrong_size.stderr +0 -17
  1833. data/rust-vendor/zerocopy/tests/ui-nightly/max-align.rs +0 -99
  1834. data/rust-vendor/zerocopy/tests/ui-nightly/max-align.stderr +0 -5
  1835. data/rust-vendor/zerocopy/tests/ui-nightly/ptr-is-invariant-over-v.rs +0 -29
  1836. data/rust-vendor/zerocopy/tests/ui-nightly/ptr-is-invariant-over-v.stderr +0 -31
  1837. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-dst-not-frombytes.rs +0 -17
  1838. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-dst-not-frombytes.stderr +0 -31
  1839. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-const.rs +0 -18
  1840. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-const.stderr +0 -32
  1841. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-dst-not-a-reference.rs +0 -15
  1842. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-dst-not-a-reference.stderr +0 -19
  1843. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-dst-not-frombytes.rs +0 -22
  1844. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-dst-not-frombytes.stderr +0 -31
  1845. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-dst-not-intobytes.rs +0 -22
  1846. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-dst-not-intobytes.stderr +0 -31
  1847. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-illegal-lifetime.rs +0 -15
  1848. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-illegal-lifetime.stderr +0 -12
  1849. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-dst-not-references.rs +0 -15
  1850. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-dst-not-references.stderr +0 -15
  1851. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-immutable.rs +0 -16
  1852. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-immutable.stderr +0 -11
  1853. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-not-a-reference.rs +0 -15
  1854. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-not-a-reference.stderr +0 -15
  1855. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-not-frombytes.rs +0 -22
  1856. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-not-frombytes.stderr +0 -31
  1857. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-not-intobytes.rs +0 -22
  1858. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-not-intobytes.stderr +0 -31
  1859. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-unsized.rs +0 -15
  1860. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-mut-src-unsized.stderr +0 -16
  1861. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ptr-to-usize.rs +0 -18
  1862. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ptr-to-usize.stderr +0 -29
  1863. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-mutable.rs +0 -17
  1864. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-mutable.stderr +0 -39
  1865. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-not-a-reference.rs +0 -15
  1866. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-not-a-reference.stderr +0 -39
  1867. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-not-frombytes.rs +0 -21
  1868. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-not-frombytes.stderr +0 -31
  1869. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-not-nocell.rs +0 -21
  1870. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-dst-not-nocell.stderr +0 -31
  1871. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-illegal-lifetime.rs +0 -15
  1872. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-illegal-lifetime.stderr +0 -12
  1873. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-dst-not-references.rs +0 -15
  1874. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-dst-not-references.stderr +0 -55
  1875. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-not-a-reference.rs +0 -15
  1876. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-not-a-reference.stderr +0 -15
  1877. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-not-intobytes.rs +0 -21
  1878. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-not-intobytes.stderr +0 -60
  1879. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-not-nocell.rs +0 -21
  1880. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-not-nocell.stderr +0 -60
  1881. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-unsized.rs +0 -14
  1882. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-ref-src-unsized.stderr +0 -16
  1883. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-size-decrease.rs +0 -18
  1884. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-size-decrease.stderr +0 -17
  1885. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-size-increase-allow-shrink.rs +0 -18
  1886. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-size-increase-allow-shrink.stderr +0 -17
  1887. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-size-increase.rs +0 -18
  1888. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-size-increase.stderr +0 -17
  1889. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-src-not-intobytes.rs +0 -17
  1890. data/rust-vendor/zerocopy/tests/ui-nightly/transmute-src-not-intobytes.stderr +0 -34
  1891. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-dst-not-tryfrombytes.rs +0 -16
  1892. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-dst-not-tryfrombytes.stderr +0 -88
  1893. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-size-decrease.rs +0 -18
  1894. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-size-decrease.stderr +0 -9
  1895. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-size-increase.rs +0 -18
  1896. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-size-increase.stderr +0 -9
  1897. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-src-not-intobytes.rs +0 -17
  1898. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute-src-not-intobytes.stderr +0 -31
  1899. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_mut-dst-not-tryfrombytes.rs +0 -19
  1900. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_mut-dst-not-tryfrombytes.stderr +0 -120
  1901. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_mut-src-not-frombytes.rs +0 -22
  1902. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_mut-src-not-frombytes.stderr +0 -95
  1903. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_mut-src-not-intobytes.rs +0 -22
  1904. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_mut-src-not-intobytes.stderr +0 -95
  1905. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_ref-dst-mutable.rs +0 -17
  1906. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_ref-dst-mutable.stderr +0 -32
  1907. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_ref-dst-not-immutable-tryfrombytes.rs +0 -18
  1908. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_ref-dst-not-immutable-tryfrombytes.stderr +0 -120
  1909. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_ref-src-not-immutable-intobytes.rs +0 -18
  1910. data/rust-vendor/zerocopy/tests/ui-nightly/try_transmute_ref-src-not-immutable-intobytes.stderr +0 -63
  1911. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-from-bytes.rs +0 -19
  1912. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-from-bytes.stderr +0 -27
  1913. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-from-zeros.rs +0 -19
  1914. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-from-zeros.stderr +0 -27
  1915. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-immutable.rs +0 -19
  1916. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-immutable.stderr +0 -27
  1917. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-into-bytes.rs +0 -19
  1918. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-into-bytes.stderr +0 -27
  1919. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-issue-1296.rs +0 -57
  1920. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-issue-1296.stderr +0 -49
  1921. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-known-layout.rs +0 -19
  1922. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-known-layout.stderr +0 -27
  1923. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-try-from-bytes.rs +0 -19
  1924. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-try-from-bytes.stderr +0 -27
  1925. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-unaligned.rs +0 -19
  1926. data/rust-vendor/zerocopy/tests/ui-stable/diagnostic-not-implemented-unaligned.stderr +0 -27
  1927. data/rust-vendor/zerocopy/tests/ui-stable/include_value_not_from_bytes.rs +0 -17
  1928. data/rust-vendor/zerocopy/tests/ui-stable/include_value_not_from_bytes.stderr +0 -31
  1929. data/rust-vendor/zerocopy/tests/ui-stable/include_value_wrong_size.rs +0 -12
  1930. data/rust-vendor/zerocopy/tests/ui-stable/include_value_wrong_size.stderr +0 -17
  1931. data/rust-vendor/zerocopy/tests/ui-stable/max-align.rs +0 -99
  1932. data/rust-vendor/zerocopy/tests/ui-stable/max-align.stderr +0 -5
  1933. data/rust-vendor/zerocopy/tests/ui-stable/ptr-is-invariant-over-v.rs +0 -29
  1934. data/rust-vendor/zerocopy/tests/ui-stable/ptr-is-invariant-over-v.stderr +0 -31
  1935. data/rust-vendor/zerocopy/tests/ui-stable/transmute-dst-not-frombytes.rs +0 -17
  1936. data/rust-vendor/zerocopy/tests/ui-stable/transmute-dst-not-frombytes.stderr +0 -31
  1937. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-const.rs +0 -18
  1938. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-const.stderr +0 -32
  1939. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-dst-not-a-reference.rs +0 -15
  1940. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-dst-not-a-reference.stderr +0 -19
  1941. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-dst-not-frombytes.rs +0 -22
  1942. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-dst-not-frombytes.stderr +0 -31
  1943. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-dst-not-intobytes.rs +0 -22
  1944. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-dst-not-intobytes.stderr +0 -31
  1945. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-illegal-lifetime.rs +0 -15
  1946. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-illegal-lifetime.stderr +0 -12
  1947. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-dst-not-references.rs +0 -15
  1948. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-dst-not-references.stderr +0 -15
  1949. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-immutable.rs +0 -16
  1950. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-immutable.stderr +0 -11
  1951. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-not-a-reference.rs +0 -15
  1952. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-not-a-reference.stderr +0 -15
  1953. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-not-frombytes.rs +0 -22
  1954. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-not-frombytes.stderr +0 -31
  1955. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-not-intobytes.rs +0 -22
  1956. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-not-intobytes.stderr +0 -31
  1957. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-unsized.rs +0 -15
  1958. data/rust-vendor/zerocopy/tests/ui-stable/transmute-mut-src-unsized.stderr +0 -16
  1959. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ptr-to-usize.rs +0 -18
  1960. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ptr-to-usize.stderr +0 -24
  1961. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-mutable.rs +0 -17
  1962. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-mutable.stderr +0 -39
  1963. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-not-a-reference.rs +0 -15
  1964. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-not-a-reference.stderr +0 -39
  1965. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-not-frombytes.rs +0 -21
  1966. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-not-frombytes.stderr +0 -31
  1967. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-not-nocell.rs +0 -21
  1968. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-dst-not-nocell.stderr +0 -31
  1969. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-illegal-lifetime.rs +0 -15
  1970. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-illegal-lifetime.stderr +0 -12
  1971. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-dst-not-references.rs +0 -15
  1972. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-dst-not-references.stderr +0 -55
  1973. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-not-a-reference.rs +0 -15
  1974. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-not-a-reference.stderr +0 -15
  1975. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-not-intobytes.rs +0 -21
  1976. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-not-intobytes.stderr +0 -60
  1977. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-not-nocell.rs +0 -21
  1978. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-not-nocell.stderr +0 -60
  1979. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-unsized.rs +0 -14
  1980. data/rust-vendor/zerocopy/tests/ui-stable/transmute-ref-src-unsized.stderr +0 -16
  1981. data/rust-vendor/zerocopy/tests/ui-stable/transmute-size-decrease.rs +0 -18
  1982. data/rust-vendor/zerocopy/tests/ui-stable/transmute-size-decrease.stderr +0 -17
  1983. data/rust-vendor/zerocopy/tests/ui-stable/transmute-size-increase-allow-shrink.rs +0 -18
  1984. data/rust-vendor/zerocopy/tests/ui-stable/transmute-size-increase-allow-shrink.stderr +0 -17
  1985. data/rust-vendor/zerocopy/tests/ui-stable/transmute-size-increase.rs +0 -18
  1986. data/rust-vendor/zerocopy/tests/ui-stable/transmute-size-increase.stderr +0 -17
  1987. data/rust-vendor/zerocopy/tests/ui-stable/transmute-src-not-intobytes.rs +0 -17
  1988. data/rust-vendor/zerocopy/tests/ui-stable/transmute-src-not-intobytes.stderr +0 -34
  1989. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-dst-not-tryfrombytes.rs +0 -16
  1990. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-dst-not-tryfrombytes.stderr +0 -88
  1991. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-size-decrease.rs +0 -18
  1992. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-size-decrease.stderr +0 -9
  1993. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-size-increase.rs +0 -18
  1994. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-size-increase.stderr +0 -9
  1995. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-src-not-intobytes.rs +0 -17
  1996. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute-src-not-intobytes.stderr +0 -31
  1997. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_mut-dst-not-tryfrombytes.rs +0 -19
  1998. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_mut-dst-not-tryfrombytes.stderr +0 -120
  1999. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_mut-src-not-frombytes.rs +0 -22
  2000. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_mut-src-not-frombytes.stderr +0 -95
  2001. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_mut-src-not-intobytes.rs +0 -22
  2002. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_mut-src-not-intobytes.stderr +0 -95
  2003. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_ref-dst-mutable.rs +0 -17
  2004. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_ref-dst-mutable.stderr +0 -32
  2005. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_ref-dst-not-immutable-tryfrombytes.rs +0 -18
  2006. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_ref-dst-not-immutable-tryfrombytes.stderr +0 -120
  2007. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_ref-src-not-immutable-intobytes.rs +0 -18
  2008. data/rust-vendor/zerocopy/tests/ui-stable/try_transmute_ref-src-not-immutable-intobytes.stderr +0 -63
  2009. data/rust-vendor/zerocopy-derive/src/output_tests/expected/into_bytes_enum.expected.rs +0 -17
  2010. data/rust-vendor/zerocopy-derive/tests/trybuild.rs +0 -62
  2011. data/rust-vendor/zerocopy-derive/tests/ui-msrv/cfgs/union_into_bytes_cfg.stderr +0 -8
  2012. data/rust-vendor/zerocopy-derive/tests/ui-msrv/derive_transparent.rs +0 -39
  2013. data/rust-vendor/zerocopy-derive/tests/ui-msrv/derive_transparent.stderr +0 -89
  2014. data/rust-vendor/zerocopy-derive/tests/ui-msrv/enum.rs +0 -624
  2015. data/rust-vendor/zerocopy-derive/tests/ui-msrv/enum.stderr +0 -399
  2016. data/rust-vendor/zerocopy-derive/tests/ui-msrv/enum_from_bytes_u8_too_few.rs +0 -273
  2017. data/rust-vendor/zerocopy-derive/tests/ui-msrv/enum_from_bytes_u8_too_few.stderr +0 -11
  2018. data/rust-vendor/zerocopy-derive/tests/ui-msrv/late_compile_pass.rs +0 -92
  2019. data/rust-vendor/zerocopy-derive/tests/ui-msrv/late_compile_pass.stderr +0 -97
  2020. data/rust-vendor/zerocopy-derive/tests/ui-msrv/mid_compile_pass.rs +0 -65
  2021. data/rust-vendor/zerocopy-derive/tests/ui-msrv/mid_compile_pass.stderr +0 -97
  2022. data/rust-vendor/zerocopy-derive/tests/ui-msrv/msrv_specific.rs +0 -39
  2023. data/rust-vendor/zerocopy-derive/tests/ui-msrv/msrv_specific.stderr +0 -25
  2024. data/rust-vendor/zerocopy-derive/tests/ui-msrv/privacy.rs +0 -139
  2025. data/rust-vendor/zerocopy-derive/tests/ui-msrv/privacy.stderr +0 -143
  2026. data/rust-vendor/zerocopy-derive/tests/ui-msrv/struct.rs +0 -286
  2027. data/rust-vendor/zerocopy-derive/tests/ui-msrv/struct.stderr +0 -281
  2028. data/rust-vendor/zerocopy-derive/tests/ui-msrv/union.rs +0 -120
  2029. data/rust-vendor/zerocopy-derive/tests/ui-msrv/union.stderr +0 -84
  2030. data/rust-vendor/zerocopy-derive/tests/ui-nightly/absence_of_deprecated_warning.rs +0 -34
  2031. data/rust-vendor/zerocopy-derive/tests/ui-nightly/absence_of_deprecated_warning.stderr +0 -11
  2032. data/rust-vendor/zerocopy-derive/tests/ui-nightly/cfgs/on_error.rs +0 -19
  2033. data/rust-vendor/zerocopy-derive/tests/ui-nightly/cfgs/union_into_bytes_cfg.rs +0 -27
  2034. data/rust-vendor/zerocopy-derive/tests/ui-nightly/derive_transparent.rs +0 -39
  2035. data/rust-vendor/zerocopy-derive/tests/ui-nightly/derive_transparent.stderr +0 -194
  2036. data/rust-vendor/zerocopy-derive/tests/ui-nightly/enum.rs +0 -624
  2037. data/rust-vendor/zerocopy-derive/tests/ui-nightly/enum.stderr +0 -578
  2038. data/rust-vendor/zerocopy-derive/tests/ui-nightly/enum_from_bytes_u8_too_few.rs +0 -273
  2039. data/rust-vendor/zerocopy-derive/tests/ui-nightly/enum_from_bytes_u8_too_few.stderr +0 -11
  2040. data/rust-vendor/zerocopy-derive/tests/ui-nightly/late_compile_pass.rs +0 -92
  2041. data/rust-vendor/zerocopy-derive/tests/ui-nightly/late_compile_pass.stderr +0 -331
  2042. data/rust-vendor/zerocopy-derive/tests/ui-nightly/mid_compile_pass.rs +0 -65
  2043. data/rust-vendor/zerocopy-derive/tests/ui-nightly/mid_compile_pass.stderr +0 -109
  2044. data/rust-vendor/zerocopy-derive/tests/ui-nightly/privacy.rs +0 -139
  2045. data/rust-vendor/zerocopy-derive/tests/ui-nightly/privacy.stderr +0 -17
  2046. data/rust-vendor/zerocopy-derive/tests/ui-nightly/struct.rs +0 -286
  2047. data/rust-vendor/zerocopy-derive/tests/ui-nightly/struct.stderr +0 -555
  2048. data/rust-vendor/zerocopy-derive/tests/ui-nightly/union.rs +0 -120
  2049. data/rust-vendor/zerocopy-derive/tests/ui-nightly/union.stderr +0 -128
  2050. data/rust-vendor/zerocopy-derive/tests/ui-stable/cfgs/on_error.rs +0 -19
  2051. data/rust-vendor/zerocopy-derive/tests/ui-stable/cfgs/union_into_bytes_cfg.rs +0 -27
  2052. data/rust-vendor/zerocopy-derive/tests/ui-stable/derive_transparent.rs +0 -39
  2053. data/rust-vendor/zerocopy-derive/tests/ui-stable/derive_transparent.stderr +0 -169
  2054. data/rust-vendor/zerocopy-derive/tests/ui-stable/enum.rs +0 -624
  2055. data/rust-vendor/zerocopy-derive/tests/ui-stable/enum.stderr +0 -523
  2056. data/rust-vendor/zerocopy-derive/tests/ui-stable/enum_from_bytes_u8_too_few.rs +0 -273
  2057. data/rust-vendor/zerocopy-derive/tests/ui-stable/enum_from_bytes_u8_too_few.stderr +0 -11
  2058. data/rust-vendor/zerocopy-derive/tests/ui-stable/late_compile_pass.rs +0 -92
  2059. data/rust-vendor/zerocopy-derive/tests/ui-stable/late_compile_pass.stderr +0 -291
  2060. data/rust-vendor/zerocopy-derive/tests/ui-stable/mid_compile_pass.rs +0 -65
  2061. data/rust-vendor/zerocopy-derive/tests/ui-stable/mid_compile_pass.stderr +0 -109
  2062. data/rust-vendor/zerocopy-derive/tests/ui-stable/privacy.rs +0 -139
  2063. data/rust-vendor/zerocopy-derive/tests/ui-stable/privacy.stderr +0 -17
  2064. data/rust-vendor/zerocopy-derive/tests/ui-stable/struct.rs +0 -286
  2065. data/rust-vendor/zerocopy-derive/tests/ui-stable/struct.stderr +0 -499
  2066. data/rust-vendor/zerocopy-derive/tests/ui-stable/union.rs +0 -120
  2067. data/rust-vendor/zerocopy-derive/tests/ui-stable/union.stderr +0 -120
  2068. /data/rust-vendor/{wit-bindgen-0.46.0 → async-trait}/LICENSE-MIT +0 -0
  2069. /data/rust-vendor/zerocopy-derive/tests/{ui-msrv/cfgs/on_error.stderr → ui/cfgs/on_error.msrv.stderr} +0 -0
  2070. /data/rust-vendor/zerocopy-derive/tests/{ui-nightly/cfgs/on_error.stderr → ui/cfgs/on_error.nightly.stderr} +0 -0
  2071. /data/rust-vendor/zerocopy-derive/tests/{ui-msrv → ui}/cfgs/on_error.rs +0 -0
  2072. /data/rust-vendor/zerocopy-derive/tests/{ui-stable/cfgs/on_error.stderr → ui/cfgs/on_error.stable.stderr} +0 -0
  2073. /data/rust-vendor/zerocopy-derive/tests/{ui-nightly/cfgs/union_into_bytes_cfg.stderr → ui/cfgs/union_into_bytes_cfg.nightly.stderr} +0 -0
  2074. /data/rust-vendor/zerocopy-derive/tests/{ui-msrv → ui}/cfgs/union_into_bytes_cfg.rs +0 -0
  2075. /data/rust-vendor/zerocopy-derive/tests/{ui-stable/cfgs/union_into_bytes_cfg.stderr → ui/cfgs/union_into_bytes_cfg.stable.stderr} +0 -0
@@ -0,0 +1,4253 @@
1
+ # 1.49.0 (January 3rd, 2026)
2
+
3
+ ### Added
4
+
5
+ * net: add support for `TCLASS` option on IPv6 ([#7781])
6
+ * runtime: stabilize `runtime::id::Id` ([#7125])
7
+ * task: implement `Extend` for `JoinSet` ([#7195])
8
+ * task: stabilize the `LocalSet::id()` ([#7776])
9
+
10
+ ### Changed
11
+
12
+ * net: deprecate `{TcpStream,TcpSocket}::set_linger` ([#7752])
13
+
14
+ ### Fixed
15
+
16
+ * macros: fix the hygiene issue of `join!` and `try_join!` ([#7766])
17
+ * runtime: revert "replace manual vtable definitions with Wake" ([#7699])
18
+ * sync: return `TryRecvError::Disconnected` from `Receiver::try_recv` after `Receiver::close` ([#7686])
19
+ * task: remove unnecessary trait bounds on the `Debug` implementation ([#7720])
20
+
21
+ ### Unstable
22
+
23
+ * fs: handle `EINTR` in `fs::write` for io-uring ([#7786])
24
+ * fs: support io-uring with `tokio::fs::read` ([#7696])
25
+ * runtime: disable io-uring on `EPERM` ([#7724])
26
+ * time: add alternative timer for better multicore scalability ([#7467])
27
+
28
+ ### Documented
29
+
30
+ * docs: fix a typos in `bounded.rs` and `park.rs` ([#7817])
31
+ * io: add `SyncIoBridge` cross-references to `copy` and `copy_buf` ([#7798])
32
+ * io: doc that `AsyncWrite` does not inherit from `std::io::Write` ([#7705])
33
+ * metrics: clarify that `num_alive_tasks` is not strongly consistent ([#7614])
34
+ * net: clarify the cancellation safety of the `TcpStream::peek` ([#7305])
35
+ * net: clarify the drop behavior of `unix::OwnedWriteHalf` ([#7742])
36
+ * net: clarify the platform-dependent backlog in `TcpSocket` docs ([#7738])
37
+ * runtime: mention `LocalRuntime` in `new_current_thread` docs ([#7820])
38
+ * sync: add missing period to `mpsc::Sender::try_send` docs ([#7721])
39
+ * sync: clarify the cancellation safety of `oneshot::Receiver` ([#7780])
40
+ * sync: improve the docs for the `errors` of mpsc ([#7722])
41
+ * task: add example for `spawn_local` usage on local runtime ([#7689])
42
+
43
+ [#7125]: https://github.com/tokio-rs/tokio/pull/7125
44
+ [#7195]: https://github.com/tokio-rs/tokio/pull/7195
45
+ [#7305]: https://github.com/tokio-rs/tokio/pull/7305
46
+ [#7467]: https://github.com/tokio-rs/tokio/pull/7467
47
+ [#7614]: https://github.com/tokio-rs/tokio/pull/7614
48
+ [#7686]: https://github.com/tokio-rs/tokio/pull/7686
49
+ [#7689]: https://github.com/tokio-rs/tokio/pull/7689
50
+ [#7696]: https://github.com/tokio-rs/tokio/pull/7696
51
+ [#7699]: https://github.com/tokio-rs/tokio/pull/7699
52
+ [#7705]: https://github.com/tokio-rs/tokio/pull/7705
53
+ [#7720]: https://github.com/tokio-rs/tokio/pull/7720
54
+ [#7721]: https://github.com/tokio-rs/tokio/pull/7721
55
+ [#7722]: https://github.com/tokio-rs/tokio/pull/7722
56
+ [#7724]: https://github.com/tokio-rs/tokio/pull/7724
57
+ [#7738]: https://github.com/tokio-rs/tokio/pull/7738
58
+ [#7742]: https://github.com/tokio-rs/tokio/pull/7742
59
+ [#7752]: https://github.com/tokio-rs/tokio/pull/7752
60
+ [#7766]: https://github.com/tokio-rs/tokio/pull/7766
61
+ [#7776]: https://github.com/tokio-rs/tokio/pull/7776
62
+ [#7780]: https://github.com/tokio-rs/tokio/pull/7780
63
+ [#7781]: https://github.com/tokio-rs/tokio/pull/7781
64
+ [#7786]: https://github.com/tokio-rs/tokio/pull/7786
65
+ [#7798]: https://github.com/tokio-rs/tokio/pull/7798
66
+ [#7817]: https://github.com/tokio-rs/tokio/pull/7817
67
+ [#7820]: https://github.com/tokio-rs/tokio/pull/7820
68
+
69
+ # 1.48.0 (October 14th, 2025)
70
+
71
+ The MSRV is increased to 1.71.
72
+
73
+ ### Added
74
+
75
+ - fs: add `File::max_buf_size` ([#7594])
76
+ - io: export `Chain` of `AsyncReadExt::chain` ([#7599])
77
+ - net: add `SocketAddr::as_abstract_name` ([#7491])
78
+ - net: add `TcpStream::quickack` and `TcpStream::set_quickack` ([#7490])
79
+ - net: implement `AsRef<Self>` for `TcpStream` and `UnixStream` ([#7573])
80
+ - task: add `LocalKey::try_get` ([#7666])
81
+ - task: implement `Ord` for `task::Id` ([#7530])
82
+
83
+ ### Changed
84
+
85
+ - deps: bump windows-sys to version 0.61 ([#7645])
86
+ - fs: preserve `max_buf_size` when cloning a `File` ([#7593])
87
+ - macros: suppress `clippy::unwrap_in_result` in `#[tokio::main]` ([#7651])
88
+ - net: remove `PollEvented` noise from Debug formats ([#7675])
89
+ - process: upgrade `Command::spawn_with` to use `FnOnce` ([#7511])
90
+ - sync: remove inner mutex in `SetOnce` ([#7554])
91
+ - sync: use `UnsafeCell::get_mut` in `Mutex::get_mut` and `RwLock::get_mut` ([#7569])
92
+ - time: reduce the generated code size of `Timeout<T>::poll` ([#7535])
93
+
94
+ ### Fixed
95
+
96
+ - macros: fix hygiene issue in `join!` and `try_join!` ([#7638])
97
+ - net: fix copy/paste errors in udp peek methods ([#7604])
98
+ - process: fix error when runtime is shut down on nightly-2025-10-12 ([#7672])
99
+ - runtime: use release ordering in `wake_by_ref()` even if already woken ([#7622])
100
+ - sync: close the `broadcast::Sender` in `broadcast::Sender::new()` ([#7629])
101
+ - sync: fix implementation of unused `RwLock::try_*` methods ([#7587])
102
+
103
+ ### Unstable
104
+
105
+ - tokio: use cargo features instead of `--cfg` flags for `taskdump` and `io_uring` ([#7655], [#7621])
106
+ - fs: support `io_uring` in `fs::write` ([#7567])
107
+ - fs: support `io_uring` with `File::open()` ([#7617])
108
+ - fs: support `io_uring` with `OpenOptions` ([#7321])
109
+ - macros: add `local` runtime flavor ([#7375], [#7597])
110
+
111
+ ### Documented
112
+
113
+ - io: clarify the zero capacity case of `AsyncRead::poll_read` ([#7580])
114
+ - io: fix typos in the docs of `AsyncFd` readiness guards ([#7583])
115
+ - net: clarify socket gets closed on drop ([#7526])
116
+ - net: clarify the behavior of `UCred::pid()` on Cygwin ([#7611])
117
+ - net: clarify the supported platform of `set_reuseport()` and `reuseport()` ([#7628])
118
+ - net: qualify that `SO_REUSEADDR` is only set on Unix ([#7533])
119
+ - runtime: add guide for choosing between runtime types ([#7635])
120
+ - runtime: clarify the behavior of `Handle::block_on` ([#7665])
121
+ - runtime: clarify the edge case of `Builder::global_queue_interval()` ([#7605])
122
+ - sync: clarify bounded channel panic behavior ([#7641])
123
+ - sync: clarify the behavior of `tokio::sync::watch::Receiver` ([#7584])
124
+ - sync: document cancel safety on `SetOnce::wait` ([#7506])
125
+ - sync: fix the docs of `parking_lot` feature flag ([#7663])
126
+ - sync: improve the docs of `UnboundedSender::send` ([#7661])
127
+ - sync: improve the docs of `sync::watch` ([#7601])
128
+ - sync: reword allocation failure paragraph in broadcast docs ([#7595])
129
+ - task: clarify the behavior of several `spawn_local` methods ([#7669])
130
+ - task: clarify the task ID reuse guarantees ([#7577])
131
+ - task: improve the example of `poll_proceed` ([#7586])
132
+
133
+ [#7321]: https://github.com/tokio-rs/tokio/pull/7321
134
+ [#7375]: https://github.com/tokio-rs/tokio/pull/7375
135
+ [#7490]: https://github.com/tokio-rs/tokio/pull/7490
136
+ [#7491]: https://github.com/tokio-rs/tokio/pull/7491
137
+ [#7494]: https://github.com/tokio-rs/tokio/pull/7494
138
+ [#7506]: https://github.com/tokio-rs/tokio/pull/7506
139
+ [#7511]: https://github.com/tokio-rs/tokio/pull/7511
140
+ [#7526]: https://github.com/tokio-rs/tokio/pull/7526
141
+ [#7530]: https://github.com/tokio-rs/tokio/pull/7530
142
+ [#7533]: https://github.com/tokio-rs/tokio/pull/7533
143
+ [#7535]: https://github.com/tokio-rs/tokio/pull/7535
144
+ [#7554]: https://github.com/tokio-rs/tokio/pull/7554
145
+ [#7567]: https://github.com/tokio-rs/tokio/pull/7567
146
+ [#7569]: https://github.com/tokio-rs/tokio/pull/7569
147
+ [#7573]: https://github.com/tokio-rs/tokio/pull/7573
148
+ [#7577]: https://github.com/tokio-rs/tokio/pull/7577
149
+ [#7580]: https://github.com/tokio-rs/tokio/pull/7580
150
+ [#7583]: https://github.com/tokio-rs/tokio/pull/7583
151
+ [#7584]: https://github.com/tokio-rs/tokio/pull/7584
152
+ [#7586]: https://github.com/tokio-rs/tokio/pull/7586
153
+ [#7587]: https://github.com/tokio-rs/tokio/pull/7587
154
+ [#7593]: https://github.com/tokio-rs/tokio/pull/7593
155
+ [#7594]: https://github.com/tokio-rs/tokio/pull/7594
156
+ [#7595]: https://github.com/tokio-rs/tokio/pull/7595
157
+ [#7597]: https://github.com/tokio-rs/tokio/pull/7597
158
+ [#7599]: https://github.com/tokio-rs/tokio/pull/7599
159
+ [#7601]: https://github.com/tokio-rs/tokio/pull/7601
160
+ [#7604]: https://github.com/tokio-rs/tokio/pull/7604
161
+ [#7605]: https://github.com/tokio-rs/tokio/pull/7605
162
+ [#7611]: https://github.com/tokio-rs/tokio/pull/7611
163
+ [#7617]: https://github.com/tokio-rs/tokio/pull/7617
164
+ [#7621]: https://github.com/tokio-rs/tokio/pull/7621
165
+ [#7622]: https://github.com/tokio-rs/tokio/pull/7622
166
+ [#7628]: https://github.com/tokio-rs/tokio/pull/7628
167
+ [#7629]: https://github.com/tokio-rs/tokio/pull/7629
168
+ [#7635]: https://github.com/tokio-rs/tokio/pull/7635
169
+ [#7638]: https://github.com/tokio-rs/tokio/pull/7638
170
+ [#7641]: https://github.com/tokio-rs/tokio/pull/7641
171
+ [#7645]: https://github.com/tokio-rs/tokio/pull/7645
172
+ [#7651]: https://github.com/tokio-rs/tokio/pull/7651
173
+ [#7655]: https://github.com/tokio-rs/tokio/pull/7655
174
+ [#7661]: https://github.com/tokio-rs/tokio/pull/7661
175
+ [#7663]: https://github.com/tokio-rs/tokio/pull/7663
176
+ [#7665]: https://github.com/tokio-rs/tokio/pull/7665
177
+ [#7666]: https://github.com/tokio-rs/tokio/pull/7666
178
+ [#7669]: https://github.com/tokio-rs/tokio/pull/7669
179
+ [#7672]: https://github.com/tokio-rs/tokio/pull/7672
180
+ [#7675]: https://github.com/tokio-rs/tokio/pull/7675
181
+
182
+ # 1.47.3 (Januar 3rd, 2026)
183
+
184
+ ### Fixed
185
+
186
+ * sync: return `TryRecvError::Disconnected` from `Receiver::try_recv` after `Receiver::close` ([#7686])
187
+
188
+ # 1.47.2 (October 14th, 2025)
189
+
190
+ ### Fixed
191
+
192
+ - runtime: use release ordering in `wake_by_ref()` even if already woken ([#7622])
193
+ - sync: close the `broadcast::Sender` in `broadcast::Sender::new()` ([#7629])
194
+ - macros: fix hygiene issue in `join!` and `try_join!` ([#7638])
195
+ - process: fix error when runtime is shut down on nightly-2025-10-12 ([#7672])
196
+
197
+ [#7622]: https://github.com/tokio-rs/tokio/pull/7622
198
+ [#7629]: https://github.com/tokio-rs/tokio/pull/7629
199
+ [#7638]: https://github.com/tokio-rs/tokio/pull/7638
200
+ [#7672]: https://github.com/tokio-rs/tokio/pull/7672
201
+
202
+ # 1.47.1 (August 1st, 2025)
203
+
204
+ ### Fixed
205
+
206
+ - process: fix panic from spurious pidfd wakeup ([#7494])
207
+ - sync: fix broken link of Python `asyncio.Event` in `SetOnce` docs ([#7485])
208
+
209
+ [#7485]: https://github.com/tokio-rs/tokio/pull/7485
210
+
211
+ # 1.47.0 (July 25th, 2025)
212
+
213
+ This release adds `poll_proceed` and `cooperative` to the `coop` module for
214
+ cooperative scheduling, adds `SetOnce` to the `sync` module which provides
215
+ similar functionality to [`std::sync::OnceLock`], and adds a new method
216
+ `sync::Notify::notified_owned()` which returns an `OwnedNotified` without
217
+ a lifetime parameter.
218
+
219
+ ## Added
220
+
221
+ - coop: add `cooperative` and `poll_proceed` ([#7405])
222
+ - sync: add `SetOnce` ([#7418])
223
+ - sync: add `sync::Notify::notified_owned()` ([#7465])
224
+
225
+ ## Changed
226
+
227
+ - deps: upgrade windows-sys 0.52 → 0.59 ([#7117])
228
+ - deps: update to socket2 v0.6 ([#7443])
229
+ - sync: improve `AtomicWaker::wake` performance ([#7450])
230
+
231
+ ## Documented
232
+
233
+ - metrics: fix listed feature requirements for some metrics ([#7449])
234
+ - runtime: improve safety comments of `Readiness<'_>` ([#7415])
235
+
236
+ [#7117]: https://github.com/tokio-rs/tokio/pull/7117
237
+ [#7405]: https://github.com/tokio-rs/tokio/pull/7405
238
+ [#7415]: https://github.com/tokio-rs/tokio/pull/7415
239
+ [#7418]: https://github.com/tokio-rs/tokio/pull/7418
240
+ [#7443]: https://github.com/tokio-rs/tokio/pull/7443
241
+ [#7449]: https://github.com/tokio-rs/tokio/pull/7449
242
+ [#7450]: https://github.com/tokio-rs/tokio/pull/7450
243
+ [#7465]: https://github.com/tokio-rs/tokio/pull/7465
244
+
245
+ # 1.46.1 (July 4th, 2025)
246
+
247
+ This release fixes incorrect spawn locations in runtime task hooks for tasks
248
+ spawned using `tokio::spawn` rather than `Runtime::spawn`. This issue only
249
+ affected the spawn location in `TaskMeta::spawned_at`, and did not affect task
250
+ locations in Tracing events.
251
+
252
+ ## Unstable
253
+
254
+ - runtime: add `TaskMeta::spawned_at` tracking where a task was spawned
255
+ ([#7440])
256
+
257
+ [#7440]: https://github.com/tokio-rs/tokio/pull/7440
258
+
259
+ # 1.46.0 (July 2nd, 2025)
260
+
261
+ ## Fixed
262
+
263
+ - net: fixed `TcpStream::shutdown` incorrectly returning an error on macOS ([#7290])
264
+
265
+ ## Added
266
+
267
+ - sync: `mpsc::OwnedPermit::{same_channel, same_channel_as_sender}` methods ([#7389])
268
+ - macros: `biased` option for `join!` and `try_join!`, similar to `select!` ([#7307])
269
+ - net: support for cygwin ([#7393])
270
+ - net: support `pipe::OpenOptions::read_write` on Android ([#7426])
271
+ - net: add `Clone` implementation for `net::unix::SocketAddr` ([#7422])
272
+
273
+ ## Changed
274
+
275
+ - runtime: eliminate unnecessary lfence while operating on `queue::Local<T>` ([#7340])
276
+ - task: disallow blocking in `LocalSet::{poll,drop}` ([#7372])
277
+
278
+ ## Unstable
279
+
280
+ - runtime: add `TaskMeta::spawn_location` tracking where a task was spawned ([#7417])
281
+ - runtime: removed borrow from `LocalOptions` parameter to `runtime::Builder::build_local` ([#7346])
282
+
283
+ ## Documented
284
+
285
+ - io: clarify behavior of seeking when `start_seek` is not used ([#7366])
286
+ - io: document cancellation safety of `AsyncWriteExt::flush` ([#7364])
287
+ - net: fix docs for `recv_buffer_size` method ([#7336])
288
+ - net: fix broken link of `RawFd` in `TcpSocket` docs ([#7416])
289
+ - net: update `AsRawFd` doc link to current Rust stdlib location ([#7429])
290
+ - readme: fix double period in reactor description ([#7363])
291
+ - runtime: add doc note that `on_*_task_poll` is unstable ([#7311])
292
+ - sync: update broadcast docs on allocation failure ([#7352])
293
+ - time: add a missing panic scenario of `time::advance` ([#7394])
294
+
295
+ [#7290]: https://github.com/tokio-rs/tokio/pull/7290
296
+ [#7307]: https://github.com/tokio-rs/tokio/pull/7307
297
+ [#7311]: https://github.com/tokio-rs/tokio/pull/7311
298
+ [#7336]: https://github.com/tokio-rs/tokio/pull/7336
299
+ [#7340]: https://github.com/tokio-rs/tokio/pull/7340
300
+ [#7346]: https://github.com/tokio-rs/tokio/pull/7346
301
+ [#7352]: https://github.com/tokio-rs/tokio/pull/7352
302
+ [#7363]: https://github.com/tokio-rs/tokio/pull/7363
303
+ [#7364]: https://github.com/tokio-rs/tokio/pull/7364
304
+ [#7366]: https://github.com/tokio-rs/tokio/pull/7366
305
+ [#7372]: https://github.com/tokio-rs/tokio/pull/7372
306
+ [#7389]: https://github.com/tokio-rs/tokio/pull/7389
307
+ [#7393]: https://github.com/tokio-rs/tokio/pull/7393
308
+ [#7394]: https://github.com/tokio-rs/tokio/pull/7394
309
+ [#7416]: https://github.com/tokio-rs/tokio/pull/7416
310
+ [#7422]: https://github.com/tokio-rs/tokio/pull/7422
311
+ [#7426]: https://github.com/tokio-rs/tokio/pull/7426
312
+ [#7429]: https://github.com/tokio-rs/tokio/pull/7429
313
+ [#7417]: https://github.com/tokio-rs/tokio/pull/7417
314
+
315
+ # 1.45.1 (May 24th, 2025)
316
+
317
+ This fixes a regression on the wasm32-unknown-unknown target, where code that
318
+ previously did not panic due to calls to `Instant::now()` started failing. This
319
+ is due to the stabilization of the first time-based metric.
320
+
321
+ ### Fixed
322
+
323
+ - Disable time-based metrics on wasm32-unknown-unknown ([#7322])
324
+
325
+ [#7322]: https://github.com/tokio-rs/tokio/pull/7322
326
+
327
+ # 1.45.0 (May 5th, 2025)
328
+
329
+ ### Added
330
+
331
+ - metrics: stabilize `worker_total_busy_duration`, `worker_park_count`, and
332
+ `worker_unpark_count` ([#6899], [#7276])
333
+ - process: add `Command::spawn_with` ([#7249])
334
+
335
+ ### Changed
336
+
337
+ - io: do not require `Unpin` for some trait impls ([#7204])
338
+ - rt: mark `runtime::Handle` as unwind safe ([#7230])
339
+ - time: revert internal sharding implementation ([#7226])
340
+
341
+ ### Unstable
342
+
343
+ - rt: remove alt multi-threaded runtime ([#7275])
344
+
345
+ [#6899]: https://github.com/tokio-rs/tokio/pull/6899
346
+ [#7276]: https://github.com/tokio-rs/tokio/pull/7276
347
+ [#7249]: https://github.com/tokio-rs/tokio/pull/7249
348
+ [#7204]: https://github.com/tokio-rs/tokio/pull/7204
349
+ [#7230]: https://github.com/tokio-rs/tokio/pull/7230
350
+ [#7226]: https://github.com/tokio-rs/tokio/pull/7226
351
+ [#7275]: https://github.com/tokio-rs/tokio/pull/7275
352
+
353
+
354
+ # 1.44.2 (April 5th, 2025)
355
+
356
+ This release fixes a soundness issue in the broadcast channel. The channel
357
+ accepts values that are `Send` but `!Sync`. Previously, the channel called
358
+ `clone()` on these values without synchronizing. This release fixes the channel
359
+ by synchronizing calls to `.clone()` (Thanks Austin Bonander for finding and
360
+ reporting the issue).
361
+
362
+ ### Fixed
363
+
364
+ - sync: synchronize `clone()` call in broadcast channel ([#7232])
365
+
366
+ [#7232]: https://github.com/tokio-rs/tokio/pull/7232
367
+
368
+ # 1.44.1 (March 13th, 2025)
369
+
370
+ ### Fixed
371
+
372
+ - rt: skip defer queue in `block_in_place` context ([#7216])
373
+
374
+ [#7216]: https://github.com/tokio-rs/tokio/pull/7216
375
+
376
+ # 1.44.0 (March 7th, 2025)
377
+
378
+ This release changes the `from_std` method on sockets to panic if a blocking
379
+ socket is provided. We determined this change is not a breaking change as Tokio is not
380
+ intended to operate using blocking sockets. Doing so results in runtime hangs and
381
+ should be considered a bug. Accidentally passing a blocking socket to Tokio is one
382
+ of the most common user mistakes. If this change causes an issue for you, please
383
+ comment on [#7172].
384
+
385
+ ### Added
386
+
387
+ - coop: add `task::coop` module ([#7116])
388
+ - process: add `Command::get_kill_on_drop()` ([#7086])
389
+ - sync: add `broadcast::Sender::closed` ([#6685], [#7090])
390
+ - sync: add `broadcast::WeakSender` ([#7100])
391
+ - sync: add `oneshot::Receiver::is_empty()` ([#7153])
392
+ - sync: add `oneshot::Receiver::is_terminated()` ([#7152])
393
+
394
+ ### Fixed
395
+
396
+ - fs: empty reads on `File` should not start a background read ([#7139])
397
+ - process: calling `start_kill` on exited child should not fail ([#7160])
398
+ - signal: fix `CTRL_CLOSE`, `CTRL_LOGOFF`, `CTRL_SHUTDOWN` on windows ([#7122])
399
+ - sync: properly handle panic during mpsc drop ([#7094])
400
+
401
+ ### Changes
402
+
403
+ - runtime: clean up magic number in registration set ([#7112])
404
+ - coop: make coop yield using waker defer strategy ([#7185])
405
+ - macros: make `select!` budget-aware ([#7164])
406
+ - net: panic when passing a blocking socket to `from_std` ([#7166])
407
+ - io: clean up buffer casts ([#7142])
408
+
409
+ ### Changes to unstable APIs
410
+
411
+ - rt: add before and after task poll callbacks ([#7120])
412
+ - tracing: make the task tracing API unstable public ([#6972])
413
+
414
+ ### Documented
415
+
416
+ - docs: fix nesting of sections in top-level docs ([#7159])
417
+ - fs: rename symlink and hardlink parameter names ([#7143])
418
+ - io: swap reader/writer in simplex doc test ([#7176])
419
+ - macros: docs about `select!` alternatives ([#7110])
420
+ - net: rename the argument for `send_to` ([#7146])
421
+ - process: add example for reading `Child` stdout ([#7141])
422
+ - process: clarify `Child::kill` behavior ([#7162])
423
+ - process: fix grammar of the `ChildStdin` struct doc comment ([#7192])
424
+ - runtime: consistently use `worker_threads` instead of `core_threads` ([#7186])
425
+
426
+ [#6685]: https://github.com/tokio-rs/tokio/pull/6685
427
+ [#6972]: https://github.com/tokio-rs/tokio/pull/6972
428
+ [#7086]: https://github.com/tokio-rs/tokio/pull/7086
429
+ [#7090]: https://github.com/tokio-rs/tokio/pull/7090
430
+ [#7094]: https://github.com/tokio-rs/tokio/pull/7094
431
+ [#7100]: https://github.com/tokio-rs/tokio/pull/7100
432
+ [#7110]: https://github.com/tokio-rs/tokio/pull/7110
433
+ [#7112]: https://github.com/tokio-rs/tokio/pull/7112
434
+ [#7116]: https://github.com/tokio-rs/tokio/pull/7116
435
+ [#7120]: https://github.com/tokio-rs/tokio/pull/7120
436
+ [#7122]: https://github.com/tokio-rs/tokio/pull/7122
437
+ [#7139]: https://github.com/tokio-rs/tokio/pull/7139
438
+ [#7141]: https://github.com/tokio-rs/tokio/pull/7141
439
+ [#7142]: https://github.com/tokio-rs/tokio/pull/7142
440
+ [#7143]: https://github.com/tokio-rs/tokio/pull/7143
441
+ [#7146]: https://github.com/tokio-rs/tokio/pull/7146
442
+ [#7152]: https://github.com/tokio-rs/tokio/pull/7152
443
+ [#7153]: https://github.com/tokio-rs/tokio/pull/7153
444
+ [#7159]: https://github.com/tokio-rs/tokio/pull/7159
445
+ [#7160]: https://github.com/tokio-rs/tokio/pull/7160
446
+ [#7162]: https://github.com/tokio-rs/tokio/pull/7162
447
+ [#7164]: https://github.com/tokio-rs/tokio/pull/7164
448
+ [#7166]: https://github.com/tokio-rs/tokio/pull/7166
449
+ [#7172]: https://github.com/tokio-rs/tokio/pull/7172
450
+ [#7176]: https://github.com/tokio-rs/tokio/pull/7176
451
+ [#7185]: https://github.com/tokio-rs/tokio/pull/7185
452
+ [#7186]: https://github.com/tokio-rs/tokio/pull/7186
453
+ [#7192]: https://github.com/tokio-rs/tokio/pull/7192
454
+
455
+ # 1.43.4 (January 3rd, 2026)
456
+
457
+ ### Fixed
458
+
459
+ * sync: return `TryRecvError::Disconnected` from `Receiver::try_recv` after `Receiver::close` ([#7686])
460
+
461
+ [#7686]: https://github.com/tokio-rs/tokio/pull/7686
462
+
463
+ # 1.43.3 (October 14th, 2025)
464
+
465
+ ### Fixed
466
+
467
+ - runtime: use release ordering in `wake_by_ref()` even if already woken ([#7622])
468
+ - sync: close the `broadcast::Sender` in `broadcast::Sender::new()` ([#7629])
469
+ - process: fix error when runtime is shut down on nightly-2025-10-12 ([#7672])
470
+
471
+ [#7622]: https://github.com/tokio-rs/tokio/pull/7622
472
+ [#7629]: https://github.com/tokio-rs/tokio/pull/7629
473
+ [#7672]: https://github.com/tokio-rs/tokio/pull/7672
474
+
475
+ # 1.43.2 (August 1st, 2025)
476
+
477
+ ### Fixed
478
+
479
+ - process: fix panic from spurious pidfd wakeup ([#7494])
480
+
481
+ [#7494]: https://github.com/tokio-rs/tokio/pull/7494
482
+
483
+ # 1.43.1 (April 5th, 2025)
484
+
485
+ This release fixes a soundness issue in the broadcast channel. The channel
486
+ accepts values that are `Send` but `!Sync`. Previously, the channel called
487
+ `clone()` on these values without synchronizing. This release fixes the channel
488
+ by synchronizing calls to `.clone()` (Thanks Austin Bonander for finding and
489
+ reporting the issue).
490
+
491
+ ### Fixed
492
+
493
+ - sync: synchronize `clone()` call in broadcast channel ([#7232])
494
+
495
+ [#7232]: https://github.com/tokio-rs/tokio/pull/7232
496
+
497
+ # 1.43.0 (Jan 8th, 2025)
498
+
499
+ ### Added
500
+
501
+ - net: add `UdpSocket::peek` methods ([#7068])
502
+ - net: add support for Haiku OS ([#7042])
503
+ - process: add `Command::into_std()` ([#7014])
504
+ - signal: add `SignalKind::info` on illumos ([#6995])
505
+ - signal: add support for realtime signals on illumos ([#7029])
506
+
507
+ ### Fixed
508
+
509
+ - io: don't call `set_len` before initializing vector in `Blocking` ([#7054])
510
+ - macros: suppress `clippy::needless_return` in `#[tokio::main]` ([#6874])
511
+ - runtime: fix thread parking on WebAssembly ([#7041])
512
+
513
+ ### Changes
514
+
515
+ - chore: use unsync loads for `unsync_load` ([#7073])
516
+ - io: use `Buf::put_bytes` in `Repeat` read impl ([#7055])
517
+ - task: drop the join waker of a task eagerly ([#6986])
518
+
519
+ ### Changes to unstable APIs
520
+
521
+ - metrics: improve flexibility of H2Histogram Configuration ([#6963])
522
+ - taskdump: add accessor methods for backtrace ([#6975])
523
+
524
+ ### Documented
525
+
526
+ - io: clarify `ReadBuf::uninit` allows initialized buffers as well ([#7053])
527
+ - net: fix ambiguity in `TcpStream::try_write_vectored` docs ([#7067])
528
+ - runtime: fix `LocalRuntime` doc links ([#7074])
529
+ - sync: extend documentation for `watch::Receiver::wait_for` ([#7038])
530
+ - sync: fix typos in `OnceCell` docs ([#7047])
531
+
532
+ [#6874]: https://github.com/tokio-rs/tokio/pull/6874
533
+ [#6963]: https://github.com/tokio-rs/tokio/pull/6963
534
+ [#6975]: https://github.com/tokio-rs/tokio/pull/6975
535
+ [#6986]: https://github.com/tokio-rs/tokio/pull/6986
536
+ [#6995]: https://github.com/tokio-rs/tokio/pull/6995
537
+ [#7014]: https://github.com/tokio-rs/tokio/pull/7014
538
+ [#7029]: https://github.com/tokio-rs/tokio/pull/7029
539
+ [#7038]: https://github.com/tokio-rs/tokio/pull/7038
540
+ [#7041]: https://github.com/tokio-rs/tokio/pull/7041
541
+ [#7042]: https://github.com/tokio-rs/tokio/pull/7042
542
+ [#7047]: https://github.com/tokio-rs/tokio/pull/7047
543
+ [#7053]: https://github.com/tokio-rs/tokio/pull/7053
544
+ [#7054]: https://github.com/tokio-rs/tokio/pull/7054
545
+ [#7055]: https://github.com/tokio-rs/tokio/pull/7055
546
+ [#7067]: https://github.com/tokio-rs/tokio/pull/7067
547
+ [#7068]: https://github.com/tokio-rs/tokio/pull/7068
548
+ [#7073]: https://github.com/tokio-rs/tokio/pull/7073
549
+ [#7074]: https://github.com/tokio-rs/tokio/pull/7074
550
+
551
+ # 1.42.1 (April 8th, 2025)
552
+
553
+ This release fixes a soundness issue in the broadcast channel. The channel
554
+ accepts values that are `Send` but `!Sync`. Previously, the channel called
555
+ `clone()` on these values without synchronizing. This release fixes the channel
556
+ by synchronizing calls to `.clone()` (Thanks Austin Bonander for finding and
557
+ reporting the issue).
558
+
559
+ ### Fixed
560
+
561
+ - sync: synchronize `clone()` call in broadcast channel ([#7232])
562
+
563
+ [#7232]: https://github.com/tokio-rs/tokio/pull/7232
564
+
565
+ # 1.42.0 (Dec 3rd, 2024)
566
+
567
+ ### Added
568
+
569
+ - io: add `AsyncFd::{try_io, try_io_mut}` ([#6967])
570
+
571
+ ### Fixed
572
+
573
+ - io: avoid `ptr->ref->ptr` roundtrip in RegistrationSet ([#6929])
574
+ - runtime: do not defer `yield_now` inside `block_in_place` ([#6999])
575
+
576
+ ### Changes
577
+
578
+ - io: simplify io readiness logic ([#6966])
579
+
580
+ ### Documented
581
+
582
+ - net: fix docs for `tokio::net::unix::{pid_t, gid_t, uid_t}` ([#6791])
583
+ - time: fix a typo in `Instant` docs ([#6982])
584
+
585
+ [#6791]: https://github.com/tokio-rs/tokio/pull/6791
586
+ [#6929]: https://github.com/tokio-rs/tokio/pull/6929
587
+ [#6966]: https://github.com/tokio-rs/tokio/pull/6966
588
+ [#6967]: https://github.com/tokio-rs/tokio/pull/6967
589
+ [#6982]: https://github.com/tokio-rs/tokio/pull/6982
590
+ [#6999]: https://github.com/tokio-rs/tokio/pull/6999
591
+
592
+ # 1.41.1 (Nov 7th, 2024)
593
+
594
+ ### Fixed
595
+
596
+ - metrics: fix bug with wrong number of buckets for the histogram ([#6957])
597
+ - net: display `net` requirement for `net::UdpSocket` in docs ([#6938])
598
+ - net: fix typo in `TcpStream` internal comment ([#6944])
599
+
600
+ [#6957]: https://github.com/tokio-rs/tokio/pull/6957
601
+ [#6938]: https://github.com/tokio-rs/tokio/pull/6938
602
+ [#6944]: https://github.com/tokio-rs/tokio/pull/6944
603
+
604
+ # 1.41.0 (Oct 22nd, 2024)
605
+
606
+ ### Added
607
+
608
+ - metrics: stabilize `global_queue_depth` ([#6854], [#6918])
609
+ - net: add conversions for unix `SocketAddr` ([#6868])
610
+ - sync: add `watch::Sender::sender_count` ([#6836])
611
+ - sync: add `mpsc::Receiver::blocking_recv_many` ([#6867])
612
+ - task: stabilize `Id` apis ([#6793], [#6891])
613
+
614
+ ### Added (unstable)
615
+
616
+ - metrics: add H2 Histogram option to improve histogram granularity ([#6897])
617
+ - metrics: rename some histogram apis ([#6924])
618
+ - runtime: add `LocalRuntime` ([#6808])
619
+
620
+ ### Changed
621
+
622
+ - runtime: box futures larger than 16k on release mode ([#6826])
623
+ - sync: add `#[must_use]` to `Notified` ([#6828])
624
+ - sync: make `watch` cooperative ([#6846])
625
+ - sync: make `broadcast::Receiver` cooperative ([#6870])
626
+ - task: add task size to tracing instrumentation ([#6881])
627
+ - wasm: enable `cfg_fs` for `wasi` target ([#6822])
628
+
629
+ ### Fixed
630
+
631
+ - net: fix regression of abstract socket path in unix socket ([#6838])
632
+
633
+ ### Documented
634
+
635
+ - io: recommend `OwnedFd` with `AsyncFd` ([#6821])
636
+ - io: document cancel safety of `AsyncFd` methods ([#6890])
637
+ - macros: render more comprehensible documentation for `join` and `try_join` ([#6814], [#6841])
638
+ - net: fix swapped examples for `TcpSocket::set_nodelay` and `TcpSocket::nodelay` ([#6840])
639
+ - sync: document runtime compatibility ([#6833])
640
+
641
+ [#6793]: https://github.com/tokio-rs/tokio/pull/6793
642
+ [#6808]: https://github.com/tokio-rs/tokio/pull/6808
643
+ [#6810]: https://github.com/tokio-rs/tokio/pull/6810
644
+ [#6814]: https://github.com/tokio-rs/tokio/pull/6814
645
+ [#6821]: https://github.com/tokio-rs/tokio/pull/6821
646
+ [#6822]: https://github.com/tokio-rs/tokio/pull/6822
647
+ [#6826]: https://github.com/tokio-rs/tokio/pull/6826
648
+ [#6828]: https://github.com/tokio-rs/tokio/pull/6828
649
+ [#6833]: https://github.com/tokio-rs/tokio/pull/6833
650
+ [#6836]: https://github.com/tokio-rs/tokio/pull/6836
651
+ [#6838]: https://github.com/tokio-rs/tokio/pull/6838
652
+ [#6840]: https://github.com/tokio-rs/tokio/pull/6840
653
+ [#6841]: https://github.com/tokio-rs/tokio/pull/6841
654
+ [#6846]: https://github.com/tokio-rs/tokio/pull/6846
655
+ [#6854]: https://github.com/tokio-rs/tokio/pull/6854
656
+ [#6867]: https://github.com/tokio-rs/tokio/pull/6867
657
+ [#6868]: https://github.com/tokio-rs/tokio/pull/6868
658
+ [#6870]: https://github.com/tokio-rs/tokio/pull/6870
659
+ [#6881]: https://github.com/tokio-rs/tokio/pull/6881
660
+ [#6890]: https://github.com/tokio-rs/tokio/pull/6890
661
+ [#6891]: https://github.com/tokio-rs/tokio/pull/6891
662
+ [#6897]: https://github.com/tokio-rs/tokio/pull/6897
663
+ [#6918]: https://github.com/tokio-rs/tokio/pull/6918
664
+ [#6924]: https://github.com/tokio-rs/tokio/pull/6924
665
+
666
+ # 1.40.0 (August 30th, 2024)
667
+
668
+ ### Added
669
+
670
+ - io: add `util::SimplexStream` ([#6589])
671
+ - process: stabilize `Command::process_group` ([#6731])
672
+ - sync: add `{TrySendError,SendTimeoutError}::into_inner` ([#6755])
673
+ - task: add `JoinSet::join_all` ([#6784])
674
+
675
+ ### Added (unstable)
676
+
677
+ - runtime: add `Builder::{on_task_spawn, on_task_terminate}` ([#6742])
678
+
679
+ ### Changed
680
+
681
+ - io: use vectored io for `write_all_buf` when possible ([#6724])
682
+ - runtime: prevent niche-optimization to avoid triggering miri ([#6744])
683
+ - sync: mark mpsc types as `UnwindSafe` ([#6783])
684
+ - sync,time: make `Sleep` and `BatchSemaphore` instrumentation explicit roots ([#6727])
685
+ - task: use `NonZeroU64` for `task::Id` ([#6733])
686
+ - task: include panic message when printing `JoinError` ([#6753])
687
+ - task: add `#[must_use]` to `JoinHandle::abort_handle` ([#6762])
688
+ - time: eliminate timer wheel allocations ([#6779])
689
+
690
+ ### Documented
691
+
692
+ - docs: clarify that `[build]` section doesn't go in Cargo.toml ([#6728])
693
+ - io: clarify zero remaining capacity case ([#6790])
694
+ - macros: improve documentation for `select!` ([#6774])
695
+ - sync: document mpsc channel allocation behavior ([#6773])
696
+
697
+ [#6589]: https://github.com/tokio-rs/tokio/pull/6589
698
+ [#6724]: https://github.com/tokio-rs/tokio/pull/6724
699
+ [#6727]: https://github.com/tokio-rs/tokio/pull/6727
700
+ [#6728]: https://github.com/tokio-rs/tokio/pull/6728
701
+ [#6731]: https://github.com/tokio-rs/tokio/pull/6731
702
+ [#6733]: https://github.com/tokio-rs/tokio/pull/6733
703
+ [#6742]: https://github.com/tokio-rs/tokio/pull/6742
704
+ [#6744]: https://github.com/tokio-rs/tokio/pull/6744
705
+ [#6753]: https://github.com/tokio-rs/tokio/pull/6753
706
+ [#6755]: https://github.com/tokio-rs/tokio/pull/6755
707
+ [#6762]: https://github.com/tokio-rs/tokio/pull/6762
708
+ [#6773]: https://github.com/tokio-rs/tokio/pull/6773
709
+ [#6774]: https://github.com/tokio-rs/tokio/pull/6774
710
+ [#6779]: https://github.com/tokio-rs/tokio/pull/6779
711
+ [#6783]: https://github.com/tokio-rs/tokio/pull/6783
712
+ [#6784]: https://github.com/tokio-rs/tokio/pull/6784
713
+ [#6790]: https://github.com/tokio-rs/tokio/pull/6790
714
+
715
+ # 1.39.3 (August 17th, 2024)
716
+
717
+ This release fixes a regression where the unix socket api stopped accepting
718
+ the abstract socket namespace. ([#6772])
719
+
720
+ [#6772]: https://github.com/tokio-rs/tokio/pull/6772
721
+
722
+ # 1.39.2 (July 27th, 2024)
723
+
724
+ This release fixes a regression where the `select!` macro stopped accepting
725
+ expressions that make use of temporary lifetime extension. ([#6722])
726
+
727
+ [#6722]: https://github.com/tokio-rs/tokio/pull/6722
728
+
729
+ # 1.39.1 (July 23rd, 2024)
730
+
731
+ This release reverts "time: avoid traversing entries in the time wheel twice"
732
+ because it contains a bug. ([#6715])
733
+
734
+ [#6715]: https://github.com/tokio-rs/tokio/pull/6715
735
+
736
+ # 1.39.0 (July 23rd, 2024)
737
+
738
+ Yanked. Please use 1.39.1 instead.
739
+
740
+ - This release bumps the MSRV to 1.70. ([#6645])
741
+ - This release upgrades to mio v1. ([#6635])
742
+ - This release upgrades to windows-sys v0.52 ([#6154])
743
+
744
+ ### Added
745
+
746
+ - io: implement `AsyncSeek` for `Empty` ([#6663])
747
+ - metrics: stabilize `num_alive_tasks` ([#6619], [#6667])
748
+ - process: add `Command::as_std_mut` ([#6608])
749
+ - sync: add `watch::Sender::same_channel` ([#6637])
750
+ - sync: add `{Receiver,UnboundedReceiver}::{sender_strong_count,sender_weak_count}` ([#6661])
751
+ - sync: implement `Default` for `watch::Sender` ([#6626])
752
+ - task: implement `Clone` for `AbortHandle` ([#6621])
753
+ - task: stabilize `consume_budget` ([#6622])
754
+
755
+ ### Changed
756
+
757
+ - io: improve panic message of `ReadBuf::put_slice()` ([#6629])
758
+ - io: read during write in `copy_bidirectional` and `copy` ([#6532])
759
+ - runtime: replace `num_cpus` with `available_parallelism` ([#6709])
760
+ - task: avoid stack overflow when passing large future to `block_on` ([#6692])
761
+ - time: avoid traversing entries in the time wheel twice ([#6584])
762
+ - time: support `IntoFuture` with `timeout` ([#6666])
763
+ - macros: support `IntoFuture` with `join!` and `select!` ([#6710])
764
+
765
+ ### Fixed
766
+
767
+ - docs: fix docsrs builds with the fs feature enabled ([#6585])
768
+ - io: only use short-read optimization on known-to-be-compatible platforms ([#6668])
769
+ - time: fix overflow panic when using large durations with `Interval` ([#6612])
770
+
771
+ ### Added (unstable)
772
+
773
+ - macros: allow `unhandled_panic` behavior for `#[tokio::main]` and `#[tokio::test]` ([#6593])
774
+ - metrics: add `spawned_tasks_count` ([#6114])
775
+ - metrics: add `worker_park_unpark_count` ([#6696])
776
+ - metrics: add worker thread id ([#6695])
777
+
778
+ ### Documented
779
+
780
+ - io: update `tokio::io::stdout` documentation ([#6674])
781
+ - macros: typo fix in `join.rs` and `try_join.rs` ([#6641])
782
+ - runtime: fix typo in `unhandled_panic` ([#6660])
783
+ - task: document behavior of `JoinSet::try_join_next` when all tasks are running ([#6671])
784
+
785
+ [#6114]: https://github.com/tokio-rs/tokio/pull/6114
786
+ [#6154]: https://github.com/tokio-rs/tokio/pull/6154
787
+ [#6532]: https://github.com/tokio-rs/tokio/pull/6532
788
+ [#6584]: https://github.com/tokio-rs/tokio/pull/6584
789
+ [#6585]: https://github.com/tokio-rs/tokio/pull/6585
790
+ [#6593]: https://github.com/tokio-rs/tokio/pull/6593
791
+ [#6608]: https://github.com/tokio-rs/tokio/pull/6608
792
+ [#6612]: https://github.com/tokio-rs/tokio/pull/6612
793
+ [#6619]: https://github.com/tokio-rs/tokio/pull/6619
794
+ [#6621]: https://github.com/tokio-rs/tokio/pull/6621
795
+ [#6622]: https://github.com/tokio-rs/tokio/pull/6622
796
+ [#6626]: https://github.com/tokio-rs/tokio/pull/6626
797
+ [#6629]: https://github.com/tokio-rs/tokio/pull/6629
798
+ [#6635]: https://github.com/tokio-rs/tokio/pull/6635
799
+ [#6637]: https://github.com/tokio-rs/tokio/pull/6637
800
+ [#6641]: https://github.com/tokio-rs/tokio/pull/6641
801
+ [#6645]: https://github.com/tokio-rs/tokio/pull/6645
802
+ [#6660]: https://github.com/tokio-rs/tokio/pull/6660
803
+ [#6661]: https://github.com/tokio-rs/tokio/pull/6661
804
+ [#6663]: https://github.com/tokio-rs/tokio/pull/6663
805
+ [#6666]: https://github.com/tokio-rs/tokio/pull/6666
806
+ [#6667]: https://github.com/tokio-rs/tokio/pull/6667
807
+ [#6668]: https://github.com/tokio-rs/tokio/pull/6668
808
+ [#6671]: https://github.com/tokio-rs/tokio/pull/6671
809
+ [#6674]: https://github.com/tokio-rs/tokio/pull/6674
810
+ [#6692]: https://github.com/tokio-rs/tokio/pull/6692
811
+ [#6695]: https://github.com/tokio-rs/tokio/pull/6695
812
+ [#6696]: https://github.com/tokio-rs/tokio/pull/6696
813
+ [#6709]: https://github.com/tokio-rs/tokio/pull/6709
814
+ [#6710]: https://github.com/tokio-rs/tokio/pull/6710
815
+
816
+ # 1.38.2 (April 2nd, 2025)
817
+
818
+ This release fixes a soundness issue in the broadcast channel. The channel
819
+ accepts values that are `Send` but `!Sync`. Previously, the channel called
820
+ `clone()` on these values without synchronizing. This release fixes the channel
821
+ by synchronizing calls to `.clone()` (Thanks Austin Bonander for finding and
822
+ reporting the issue).
823
+
824
+ ### Fixed
825
+
826
+ - sync: synchronize `clone()` call in broadcast channel ([#7232])
827
+
828
+ [#7232]: https://github.com/tokio-rs/tokio/pull/7232
829
+
830
+ # 1.38.1 (July 16th, 2024)
831
+
832
+ This release fixes the bug identified as ([#6682]), which caused timers not
833
+ to fire when they should.
834
+
835
+ ### Fixed
836
+
837
+ - time: update `wake_up` while holding all the locks of sharded time wheels ([#6683])
838
+
839
+ [#6682]: https://github.com/tokio-rs/tokio/pull/6682
840
+ [#6683]: https://github.com/tokio-rs/tokio/pull/6683
841
+
842
+ # 1.38.0 (May 30th, 2024)
843
+
844
+ This release marks the beginning of stabilization for runtime metrics. It
845
+ stabilizes `RuntimeMetrics::worker_count`. Future releases will continue to
846
+ stabilize more metrics.
847
+
848
+ ### Added
849
+
850
+ - fs: add `File::create_new` ([#6573])
851
+ - io: add `copy_bidirectional_with_sizes` ([#6500])
852
+ - io: implement `AsyncBufRead` for `Join` ([#6449])
853
+ - net: add Apple visionOS support ([#6465])
854
+ - net: implement `Clone` for `NamedPipeInfo` ([#6586])
855
+ - net: support QNX OS ([#6421])
856
+ - sync: add `Notify::notify_last` ([#6520])
857
+ - sync: add `mpsc::Receiver::{capacity,max_capacity}` ([#6511])
858
+ - sync: add `split` method to the semaphore permit ([#6472], [#6478])
859
+ - task: add `tokio::task::join_set::Builder::spawn_blocking` ([#6578])
860
+ - wasm: support rt-multi-thread with wasm32-wasi-preview1-threads ([#6510])
861
+
862
+ ### Changed
863
+
864
+ - macros: make `#[tokio::test]` append `#[test]` at the end of the attribute list ([#6497])
865
+ - metrics: fix `blocking_threads` count ([#6551])
866
+ - metrics: stabilize `RuntimeMetrics::worker_count` ([#6556])
867
+ - runtime: move task out of the `lifo_slot` in `block_in_place` ([#6596])
868
+ - runtime: panic if `global_queue_interval` is zero ([#6445])
869
+ - sync: always drop message in destructor for oneshot receiver ([#6558])
870
+ - sync: instrument `Semaphore` for task dumps ([#6499])
871
+ - sync: use FIFO ordering when waking batches of wakers ([#6521])
872
+ - task: make `LocalKey::get` work with Clone types ([#6433])
873
+ - tests: update nix and mio-aio dev-dependencies ([#6552])
874
+ - time: clean up implementation ([#6517])
875
+ - time: lazily init timers on first poll ([#6512])
876
+ - time: remove the `true_when` field in `TimerShared` ([#6563])
877
+ - time: use sharding for timer implementation ([#6534])
878
+
879
+ ### Fixed
880
+
881
+ - taskdump: allow building taskdump docs on non-unix machines ([#6564])
882
+ - time: check for overflow in `Interval::poll_tick` ([#6487])
883
+ - sync: fix incorrect `is_empty` on mpsc block boundaries ([#6603])
884
+
885
+ ### Documented
886
+
887
+ - fs: rewrite file system docs ([#6467])
888
+ - io: fix `stdin` documentation ([#6581])
889
+ - io: fix obsolete reference in `ReadHalf::unsplit()` documentation ([#6498])
890
+ - macros: render more comprehensible documentation for `select!` ([#6468])
891
+ - net: add missing types to module docs ([#6482])
892
+ - net: fix misleading `NamedPipeServer` example ([#6590])
893
+ - sync: add examples for `SemaphorePermit`, `OwnedSemaphorePermit` ([#6477])
894
+ - sync: document that `Barrier::wait` is not cancel safe ([#6494])
895
+ - sync: explain relation between `watch::Sender::{subscribe,closed}` ([#6490])
896
+ - task: clarify that you can't abort `spawn_blocking` tasks ([#6571])
897
+ - task: fix a typo in doc of `LocalSet::run_until` ([#6599])
898
+ - time: fix test-util requirement for pause and resume in docs ([#6503])
899
+
900
+ [#6421]: https://github.com/tokio-rs/tokio/pull/6421
901
+ [#6433]: https://github.com/tokio-rs/tokio/pull/6433
902
+ [#6445]: https://github.com/tokio-rs/tokio/pull/6445
903
+ [#6449]: https://github.com/tokio-rs/tokio/pull/6449
904
+ [#6465]: https://github.com/tokio-rs/tokio/pull/6465
905
+ [#6467]: https://github.com/tokio-rs/tokio/pull/6467
906
+ [#6468]: https://github.com/tokio-rs/tokio/pull/6468
907
+ [#6472]: https://github.com/tokio-rs/tokio/pull/6472
908
+ [#6477]: https://github.com/tokio-rs/tokio/pull/6477
909
+ [#6478]: https://github.com/tokio-rs/tokio/pull/6478
910
+ [#6482]: https://github.com/tokio-rs/tokio/pull/6482
911
+ [#6487]: https://github.com/tokio-rs/tokio/pull/6487
912
+ [#6490]: https://github.com/tokio-rs/tokio/pull/6490
913
+ [#6494]: https://github.com/tokio-rs/tokio/pull/6494
914
+ [#6497]: https://github.com/tokio-rs/tokio/pull/6497
915
+ [#6498]: https://github.com/tokio-rs/tokio/pull/6498
916
+ [#6499]: https://github.com/tokio-rs/tokio/pull/6499
917
+ [#6500]: https://github.com/tokio-rs/tokio/pull/6500
918
+ [#6503]: https://github.com/tokio-rs/tokio/pull/6503
919
+ [#6510]: https://github.com/tokio-rs/tokio/pull/6510
920
+ [#6511]: https://github.com/tokio-rs/tokio/pull/6511
921
+ [#6512]: https://github.com/tokio-rs/tokio/pull/6512
922
+ [#6517]: https://github.com/tokio-rs/tokio/pull/6517
923
+ [#6520]: https://github.com/tokio-rs/tokio/pull/6520
924
+ [#6521]: https://github.com/tokio-rs/tokio/pull/6521
925
+ [#6534]: https://github.com/tokio-rs/tokio/pull/6534
926
+ [#6551]: https://github.com/tokio-rs/tokio/pull/6551
927
+ [#6552]: https://github.com/tokio-rs/tokio/pull/6552
928
+ [#6556]: https://github.com/tokio-rs/tokio/pull/6556
929
+ [#6558]: https://github.com/tokio-rs/tokio/pull/6558
930
+ [#6563]: https://github.com/tokio-rs/tokio/pull/6563
931
+ [#6564]: https://github.com/tokio-rs/tokio/pull/6564
932
+ [#6571]: https://github.com/tokio-rs/tokio/pull/6571
933
+ [#6573]: https://github.com/tokio-rs/tokio/pull/6573
934
+ [#6578]: https://github.com/tokio-rs/tokio/pull/6578
935
+ [#6581]: https://github.com/tokio-rs/tokio/pull/6581
936
+ [#6586]: https://github.com/tokio-rs/tokio/pull/6586
937
+ [#6590]: https://github.com/tokio-rs/tokio/pull/6590
938
+ [#6596]: https://github.com/tokio-rs/tokio/pull/6596
939
+ [#6599]: https://github.com/tokio-rs/tokio/pull/6599
940
+ [#6603]: https://github.com/tokio-rs/tokio/pull/6603
941
+
942
+ # 1.37.0 (March 28th, 2024)
943
+
944
+ ### Added
945
+
946
+ - fs: add `set_max_buf_size` to `tokio::fs::File` ([#6411])
947
+ - io: add `try_new` and `try_with_interest` to `AsyncFd` ([#6345])
948
+ - sync: add `forget_permits` method to semaphore ([#6331])
949
+ - sync: add `is_closed`, `is_empty`, and `len` to mpsc receivers ([#6348])
950
+ - sync: add a `rwlock()` method to owned `RwLock` guards ([#6418])
951
+ - sync: expose strong and weak counts of mpsc sender handles ([#6405])
952
+ - sync: implement `Clone` for `watch::Sender` ([#6388])
953
+ - task: add `TaskLocalFuture::take_value` ([#6340])
954
+ - task: implement `FromIterator` for `JoinSet` ([#6300])
955
+
956
+ ### Changed
957
+
958
+ - io: make `io::split` use a mutex instead of a spinlock ([#6403])
959
+
960
+ ### Fixed
961
+
962
+ - docs: fix docsrs build without net feature ([#6360])
963
+ - macros: allow select with only else branch ([#6339])
964
+ - runtime: fix leaking registration entries when os registration fails ([#6329])
965
+
966
+ ### Documented
967
+
968
+ - io: document cancel safety of `AsyncBufReadExt::fill_buf` ([#6431])
969
+ - io: document cancel safety of `AsyncReadExt`'s primitive read functions ([#6337])
970
+ - runtime: add doc link from `Runtime` to `#[tokio::main]` ([#6366])
971
+ - runtime: make the `enter` example deterministic ([#6351])
972
+ - sync: add Semaphore example for limiting the number of outgoing requests ([#6419])
973
+ - sync: fix missing period in broadcast docs ([#6377])
974
+ - sync: mark `mpsc::Sender::downgrade` with `#[must_use]` ([#6326])
975
+ - sync: reorder `const_new` before `new_with` ([#6392])
976
+ - sync: update watch channel docs ([#6395])
977
+ - task: fix documentation links ([#6336])
978
+
979
+ ### Changed (unstable)
980
+
981
+ - runtime: include task `Id` in taskdumps ([#6328])
982
+ - runtime: panic if `unhandled_panic` is enabled when not supported ([#6410])
983
+
984
+ [#6300]: https://github.com/tokio-rs/tokio/pull/6300
985
+ [#6326]: https://github.com/tokio-rs/tokio/pull/6326
986
+ [#6328]: https://github.com/tokio-rs/tokio/pull/6328
987
+ [#6329]: https://github.com/tokio-rs/tokio/pull/6329
988
+ [#6331]: https://github.com/tokio-rs/tokio/pull/6331
989
+ [#6336]: https://github.com/tokio-rs/tokio/pull/6336
990
+ [#6337]: https://github.com/tokio-rs/tokio/pull/6337
991
+ [#6339]: https://github.com/tokio-rs/tokio/pull/6339
992
+ [#6340]: https://github.com/tokio-rs/tokio/pull/6340
993
+ [#6345]: https://github.com/tokio-rs/tokio/pull/6345
994
+ [#6348]: https://github.com/tokio-rs/tokio/pull/6348
995
+ [#6351]: https://github.com/tokio-rs/tokio/pull/6351
996
+ [#6360]: https://github.com/tokio-rs/tokio/pull/6360
997
+ [#6366]: https://github.com/tokio-rs/tokio/pull/6366
998
+ [#6377]: https://github.com/tokio-rs/tokio/pull/6377
999
+ [#6388]: https://github.com/tokio-rs/tokio/pull/6388
1000
+ [#6392]: https://github.com/tokio-rs/tokio/pull/6392
1001
+ [#6395]: https://github.com/tokio-rs/tokio/pull/6395
1002
+ [#6403]: https://github.com/tokio-rs/tokio/pull/6403
1003
+ [#6405]: https://github.com/tokio-rs/tokio/pull/6405
1004
+ [#6410]: https://github.com/tokio-rs/tokio/pull/6410
1005
+ [#6411]: https://github.com/tokio-rs/tokio/pull/6411
1006
+ [#6418]: https://github.com/tokio-rs/tokio/pull/6418
1007
+ [#6419]: https://github.com/tokio-rs/tokio/pull/6419
1008
+ [#6431]: https://github.com/tokio-rs/tokio/pull/6431
1009
+
1010
+ # 1.36.0 (February 2nd, 2024)
1011
+
1012
+ ### Added
1013
+
1014
+ - io: add `tokio::io::Join` ([#6220])
1015
+ - io: implement `AsyncWrite` for `Empty` ([#6235])
1016
+ - net: add support for anonymous unix pipes ([#6127])
1017
+ - net: add `UnixSocket` ([#6290])
1018
+ - net: expose keepalive option on `TcpSocket` ([#6311])
1019
+ - sync: add `{Receiver,UnboundedReceiver}::poll_recv_many` ([#6236])
1020
+ - sync: add `Sender::{try_,}reserve_many` ([#6205])
1021
+ - sync: add `watch::Receiver::mark_unchanged` ([#6252])
1022
+ - task: add `JoinSet::try_join_next` ([#6280])
1023
+
1024
+ ### Changed
1025
+
1026
+ - io: make `copy` cooperative ([#6265])
1027
+ - io: make `repeat` and `sink` cooperative ([#6254])
1028
+ - io: simplify check for empty slice ([#6293])
1029
+ - process: use pidfd on Linux when available ([#6152])
1030
+ - sync: use AtomicBool in broadcast channel future ([#6298])
1031
+
1032
+ ### Documented
1033
+
1034
+ - io: clarify `clear_ready` docs ([#6304])
1035
+ - net: document that `*Fd` traits on `TcpSocket` are unix-only ([#6294])
1036
+ - sync: document FIFO behavior of `tokio::sync::Mutex` ([#6279])
1037
+ - chore: typographic improvements ([#6262])
1038
+ - runtime: remove obsolete comment ([#6303])
1039
+ - task: fix typo ([#6261])
1040
+
1041
+ [#6220]: https://github.com/tokio-rs/tokio/pull/6220
1042
+ [#6235]: https://github.com/tokio-rs/tokio/pull/6235
1043
+ [#6127]: https://github.com/tokio-rs/tokio/pull/6127
1044
+ [#6290]: https://github.com/tokio-rs/tokio/pull/6290
1045
+ [#6311]: https://github.com/tokio-rs/tokio/pull/6311
1046
+ [#6236]: https://github.com/tokio-rs/tokio/pull/6236
1047
+ [#6205]: https://github.com/tokio-rs/tokio/pull/6205
1048
+ [#6252]: https://github.com/tokio-rs/tokio/pull/6252
1049
+ [#6280]: https://github.com/tokio-rs/tokio/pull/6280
1050
+ [#6265]: https://github.com/tokio-rs/tokio/pull/6265
1051
+ [#6254]: https://github.com/tokio-rs/tokio/pull/6254
1052
+ [#6293]: https://github.com/tokio-rs/tokio/pull/6293
1053
+ [#6238]: https://github.com/tokio-rs/tokio/pull/6238
1054
+ [#6152]: https://github.com/tokio-rs/tokio/pull/6152
1055
+ [#6298]: https://github.com/tokio-rs/tokio/pull/6298
1056
+ [#6262]: https://github.com/tokio-rs/tokio/pull/6262
1057
+ [#6303]: https://github.com/tokio-rs/tokio/pull/6303
1058
+ [#6261]: https://github.com/tokio-rs/tokio/pull/6261
1059
+ [#6304]: https://github.com/tokio-rs/tokio/pull/6304
1060
+ [#6294]: https://github.com/tokio-rs/tokio/pull/6294
1061
+ [#6279]: https://github.com/tokio-rs/tokio/pull/6279
1062
+
1063
+ # 1.35.1 (December 19, 2023)
1064
+
1065
+ This is a forward part of a change that was backported to 1.25.3.
1066
+
1067
+ ### Fixed
1068
+
1069
+ - io: add budgeting to `tokio::runtime::io::registration::async_io` ([#6221])
1070
+
1071
+ [#6221]: https://github.com/tokio-rs/tokio/pull/6221
1072
+
1073
+ # 1.35.0 (December 8th, 2023)
1074
+
1075
+ ### Added
1076
+
1077
+ - net: add Apple watchOS support ([#6176])
1078
+
1079
+ ### Changed
1080
+
1081
+ - io: drop the `Sized` requirements from `AsyncReadExt.read_buf` ([#6169])
1082
+ - runtime: make `Runtime` unwind safe ([#6189])
1083
+ - runtime: reduce the lock contention in task spawn ([#6001])
1084
+ - tokio: update nix dependency to 0.27.1 ([#6190])
1085
+
1086
+ ### Fixed
1087
+
1088
+ - chore: make `--cfg docsrs` work without net feature ([#6166])
1089
+ - chore: use relaxed load for `unsync_load` on miri ([#6179])
1090
+ - runtime: handle missing context on wake ([#6148])
1091
+ - taskdump: fix taskdump cargo config example ([#6150])
1092
+ - taskdump: skip notified tasks during taskdumps ([#6194])
1093
+ - tracing: avoid creating resource spans with current parent, use a None parent instead ([#6107])
1094
+ - tracing: make task span explicit root ([#6158])
1095
+
1096
+ ### Documented
1097
+
1098
+ - io: flush in `AsyncWriteExt` examples ([#6149])
1099
+ - runtime: document fairness guarantees and current behavior ([#6145])
1100
+ - task: document cancel safety of `LocalSet::run_until` ([#6147])
1101
+
1102
+ [#6001]: https://github.com/tokio-rs/tokio/pull/6001
1103
+ [#6107]: https://github.com/tokio-rs/tokio/pull/6107
1104
+ [#6144]: https://github.com/tokio-rs/tokio/pull/6144
1105
+ [#6145]: https://github.com/tokio-rs/tokio/pull/6145
1106
+ [#6147]: https://github.com/tokio-rs/tokio/pull/6147
1107
+ [#6148]: https://github.com/tokio-rs/tokio/pull/6148
1108
+ [#6149]: https://github.com/tokio-rs/tokio/pull/6149
1109
+ [#6150]: https://github.com/tokio-rs/tokio/pull/6150
1110
+ [#6158]: https://github.com/tokio-rs/tokio/pull/6158
1111
+ [#6166]: https://github.com/tokio-rs/tokio/pull/6166
1112
+ [#6169]: https://github.com/tokio-rs/tokio/pull/6169
1113
+ [#6176]: https://github.com/tokio-rs/tokio/pull/6176
1114
+ [#6179]: https://github.com/tokio-rs/tokio/pull/6179
1115
+ [#6189]: https://github.com/tokio-rs/tokio/pull/6189
1116
+ [#6190]: https://github.com/tokio-rs/tokio/pull/6190
1117
+ [#6194]: https://github.com/tokio-rs/tokio/pull/6194
1118
+
1119
+ # 1.34.0 (November 19th, 2023)
1120
+
1121
+ ### Fixed
1122
+
1123
+ - io: allow `clear_readiness` after io driver shutdown ([#6067])
1124
+ - io: fix integer overflow in `take` ([#6080])
1125
+ - io: fix I/O resource hang ([#6134])
1126
+ - sync: fix `broadcast::channel` link ([#6100])
1127
+
1128
+ ### Changed
1129
+
1130
+ - macros: use `::core` qualified imports instead of `::std` inside `tokio::test` macro ([#5973])
1131
+
1132
+ ### Added
1133
+
1134
+ - fs: update cfg attr in `fs::read_dir` to include `aix` ([#6075])
1135
+ - sync: add `mpsc::Receiver::recv_many` ([#6010])
1136
+ - tokio: added vita target support ([#6094])
1137
+
1138
+ [#5973]: https://github.com/tokio-rs/tokio/pull/5973
1139
+ [#6067]: https://github.com/tokio-rs/tokio/pull/6067
1140
+ [#6080]: https://github.com/tokio-rs/tokio/pull/6080
1141
+ [#6134]: https://github.com/tokio-rs/tokio/pull/6134
1142
+ [#6100]: https://github.com/tokio-rs/tokio/pull/6100
1143
+ [#6075]: https://github.com/tokio-rs/tokio/pull/6075
1144
+ [#6010]: https://github.com/tokio-rs/tokio/pull/6010
1145
+ [#6094]: https://github.com/tokio-rs/tokio/pull/6094
1146
+
1147
+ # 1.33.0 (October 9, 2023)
1148
+
1149
+ ### Fixed
1150
+
1151
+ - io: mark `Interest::add` with `#[must_use]` ([#6037])
1152
+ - runtime: fix cache line size for RISC-V ([#5994])
1153
+ - sync: prevent lock poisoning in `watch::Receiver::wait_for` ([#6021])
1154
+ - task: fix `spawn_local` source location ([#5984])
1155
+
1156
+ ### Changed
1157
+
1158
+ - sync: use Acquire/Release orderings instead of SeqCst in `watch` ([#6018])
1159
+
1160
+ ### Added
1161
+
1162
+ - fs: add vectored writes to `tokio::fs::File` ([#5958])
1163
+ - io: add `Interest::remove` method ([#5906])
1164
+ - io: add vectored writes to `DuplexStream` ([#5985])
1165
+ - net: add Apple tvOS support ([#6045])
1166
+ - sync: add `?Sized` bound to `{MutexGuard,OwnedMutexGuard}::map` ([#5997])
1167
+ - sync: add `watch::Receiver::mark_unseen` ([#5962], [#6014], [#6017])
1168
+ - sync: add `watch::Sender::new` ([#5998])
1169
+ - sync: add const fn `OnceCell::from_value` ([#5903])
1170
+
1171
+ ### Removed
1172
+
1173
+ - remove unused `stats` feature ([#5952])
1174
+
1175
+ ### Documented
1176
+
1177
+ - add missing backticks in code examples ([#5938], [#6056])
1178
+ - fix typos ([#5988], [#6030])
1179
+ - process: document that `Child::wait` is cancel safe ([#5977])
1180
+ - sync: add examples for `Semaphore` ([#5939], [#5956], [#5978], [#6031], [#6032], [#6050])
1181
+ - sync: document that `broadcast` capacity is a lower bound ([#6042])
1182
+ - sync: document that `const_new` is not instrumented ([#6002])
1183
+ - sync: improve cancel-safety documentation for `mpsc::Sender::send` ([#5947])
1184
+ - sync: improve docs for `watch` channel ([#5954])
1185
+ - taskdump: render taskdump documentation on docs.rs ([#5972])
1186
+
1187
+ ### Unstable
1188
+
1189
+ - taskdump: fix potential deadlock ([#6036])
1190
+
1191
+ [#5903]: https://github.com/tokio-rs/tokio/pull/5903
1192
+ [#5906]: https://github.com/tokio-rs/tokio/pull/5906
1193
+ [#5938]: https://github.com/tokio-rs/tokio/pull/5938
1194
+ [#5939]: https://github.com/tokio-rs/tokio/pull/5939
1195
+ [#5947]: https://github.com/tokio-rs/tokio/pull/5947
1196
+ [#5952]: https://github.com/tokio-rs/tokio/pull/5952
1197
+ [#5954]: https://github.com/tokio-rs/tokio/pull/5954
1198
+ [#5956]: https://github.com/tokio-rs/tokio/pull/5956
1199
+ [#5958]: https://github.com/tokio-rs/tokio/pull/5958
1200
+ [#5960]: https://github.com/tokio-rs/tokio/pull/5960
1201
+ [#5962]: https://github.com/tokio-rs/tokio/pull/5962
1202
+ [#5971]: https://github.com/tokio-rs/tokio/pull/5971
1203
+ [#5972]: https://github.com/tokio-rs/tokio/pull/5972
1204
+ [#5977]: https://github.com/tokio-rs/tokio/pull/5977
1205
+ [#5978]: https://github.com/tokio-rs/tokio/pull/5978
1206
+ [#5984]: https://github.com/tokio-rs/tokio/pull/5984
1207
+ [#5985]: https://github.com/tokio-rs/tokio/pull/5985
1208
+ [#5988]: https://github.com/tokio-rs/tokio/pull/5988
1209
+ [#5994]: https://github.com/tokio-rs/tokio/pull/5994
1210
+ [#5997]: https://github.com/tokio-rs/tokio/pull/5997
1211
+ [#5998]: https://github.com/tokio-rs/tokio/pull/5998
1212
+ [#6002]: https://github.com/tokio-rs/tokio/pull/6002
1213
+ [#6014]: https://github.com/tokio-rs/tokio/pull/6014
1214
+ [#6017]: https://github.com/tokio-rs/tokio/pull/6017
1215
+ [#6018]: https://github.com/tokio-rs/tokio/pull/6018
1216
+ [#6021]: https://github.com/tokio-rs/tokio/pull/6021
1217
+ [#6030]: https://github.com/tokio-rs/tokio/pull/6030
1218
+ [#6031]: https://github.com/tokio-rs/tokio/pull/6031
1219
+ [#6032]: https://github.com/tokio-rs/tokio/pull/6032
1220
+ [#6036]: https://github.com/tokio-rs/tokio/pull/6036
1221
+ [#6037]: https://github.com/tokio-rs/tokio/pull/6037
1222
+ [#6042]: https://github.com/tokio-rs/tokio/pull/6042
1223
+ [#6045]: https://github.com/tokio-rs/tokio/pull/6045
1224
+ [#6050]: https://github.com/tokio-rs/tokio/pull/6050
1225
+ [#6056]: https://github.com/tokio-rs/tokio/pull/6056
1226
+ [#6058]: https://github.com/tokio-rs/tokio/pull/6058
1227
+
1228
+ # 1.32.1 (December 19, 2023)
1229
+
1230
+ This is a forward part of a change that was backported to 1.25.3.
1231
+
1232
+ ### Fixed
1233
+
1234
+ - io: add budgeting to `tokio::runtime::io::registration::async_io` ([#6221])
1235
+
1236
+ [#6221]: https://github.com/tokio-rs/tokio/pull/6221
1237
+
1238
+ # 1.32.0 (August 16, 2023)
1239
+
1240
+ ### Fixed
1241
+
1242
+ - sync: fix potential quadratic behavior in `broadcast::Receiver` ([#5925])
1243
+
1244
+ ### Added
1245
+
1246
+ - process: stabilize `Command::raw_arg` ([#5930])
1247
+ - io: enable awaiting error readiness ([#5781])
1248
+
1249
+ ### Unstable
1250
+
1251
+ - rt(alt): improve scalability of alt runtime as the number of cores grows ([#5935])
1252
+
1253
+ [#5925]: https://github.com/tokio-rs/tokio/pull/5925
1254
+ [#5930]: https://github.com/tokio-rs/tokio/pull/5930
1255
+ [#5781]: https://github.com/tokio-rs/tokio/pull/5781
1256
+ [#5935]: https://github.com/tokio-rs/tokio/pull/5935
1257
+
1258
+ # 1.31.0 (August 10, 2023)
1259
+
1260
+ ### Fixed
1261
+
1262
+ * io: delegate `WriteHalf::poll_write_vectored` ([#5914])
1263
+
1264
+ ### Unstable
1265
+
1266
+ * rt(alt): fix memory leak in unstable next-gen scheduler prototype ([#5911])
1267
+ * rt: expose mean task poll time metric ([#5927])
1268
+
1269
+ [#5914]: https://github.com/tokio-rs/tokio/pull/5914
1270
+ [#5911]: https://github.com/tokio-rs/tokio/pull/5911
1271
+ [#5927]: https://github.com/tokio-rs/tokio/pull/5927
1272
+
1273
+ # 1.30.0 (August 9, 2023)
1274
+
1275
+ This release bumps the MSRV of Tokio to 1.63. ([#5887])
1276
+
1277
+ ### Changed
1278
+
1279
+ - tokio: reduce LLVM code generation ([#5859])
1280
+ - io: support `--cfg mio_unsupported_force_poll_poll` flag ([#5881])
1281
+ - sync: make `const_new` methods always available ([#5885])
1282
+ - sync: avoid false sharing in mpsc channel ([#5829])
1283
+ - rt: pop at least one task from inject queue ([#5908])
1284
+
1285
+ ### Added
1286
+
1287
+ - sync: add `broadcast::Sender::new` ([#5824])
1288
+ - net: implement `UCred` for espidf ([#5868])
1289
+ - fs: add `File::options()` ([#5869])
1290
+ - time: implement extra reset variants for `Interval` ([#5878])
1291
+ - process: add `{ChildStd*}::into_owned_{fd, handle}` ([#5899])
1292
+
1293
+ ### Removed
1294
+
1295
+ - tokio: removed unused `tokio_*` cfgs ([#5890])
1296
+ - remove build script to speed up compilation ([#5887])
1297
+
1298
+ ### Documented
1299
+
1300
+ - sync: mention lagging in docs for `broadcast::send` ([#5820])
1301
+ - runtime: expand on sharing runtime docs ([#5858])
1302
+ - io: use vec in example for `AsyncReadExt::read_exact` ([#5863])
1303
+ - time: mark `Sleep` as `!Unpin` in docs ([#5916])
1304
+ - process: fix `raw_arg` not showing up in docs ([#5865])
1305
+
1306
+ ### Unstable
1307
+
1308
+ - rt: add runtime ID ([#5864])
1309
+ - rt: initial implementation of new threaded runtime ([#5823])
1310
+
1311
+ [#5820]: https://github.com/tokio-rs/tokio/pull/5820
1312
+ [#5823]: https://github.com/tokio-rs/tokio/pull/5823
1313
+ [#5824]: https://github.com/tokio-rs/tokio/pull/5824
1314
+ [#5829]: https://github.com/tokio-rs/tokio/pull/5829
1315
+ [#5858]: https://github.com/tokio-rs/tokio/pull/5858
1316
+ [#5859]: https://github.com/tokio-rs/tokio/pull/5859
1317
+ [#5863]: https://github.com/tokio-rs/tokio/pull/5863
1318
+ [#5864]: https://github.com/tokio-rs/tokio/pull/5864
1319
+ [#5865]: https://github.com/tokio-rs/tokio/pull/5865
1320
+ [#5868]: https://github.com/tokio-rs/tokio/pull/5868
1321
+ [#5869]: https://github.com/tokio-rs/tokio/pull/5869
1322
+ [#5878]: https://github.com/tokio-rs/tokio/pull/5878
1323
+ [#5881]: https://github.com/tokio-rs/tokio/pull/5881
1324
+ [#5885]: https://github.com/tokio-rs/tokio/pull/5885
1325
+ [#5887]: https://github.com/tokio-rs/tokio/pull/5887
1326
+ [#5890]: https://github.com/tokio-rs/tokio/pull/5890
1327
+ [#5899]: https://github.com/tokio-rs/tokio/pull/5899
1328
+ [#5908]: https://github.com/tokio-rs/tokio/pull/5908
1329
+ [#5916]: https://github.com/tokio-rs/tokio/pull/5916
1330
+
1331
+ # 1.29.1 (June 29, 2023)
1332
+
1333
+ ### Fixed
1334
+
1335
+ - rt: fix nesting two `block_in_place` with a `block_on` between ([#5837])
1336
+
1337
+ [#5837]: https://github.com/tokio-rs/tokio/pull/5837
1338
+
1339
+ # 1.29.0 (June 27, 2023)
1340
+
1341
+ Technically a breaking change, the `Send` implementation is removed from
1342
+ `runtime::EnterGuard`. This change fixes a bug and should not impact most users.
1343
+
1344
+ ### Breaking
1345
+
1346
+ - rt: `EnterGuard` should not be `Send` ([#5766])
1347
+
1348
+ ### Fixed
1349
+
1350
+ - fs: reduce blocking ops in `fs::read_dir` ([#5653])
1351
+ - rt: fix possible starvation ([#5686], [#5712])
1352
+ - rt: fix stacked borrows issue in `JoinSet` ([#5693])
1353
+ - rt: panic if `EnterGuard` dropped incorrect order ([#5772])
1354
+ - time: do not overflow to signal value ([#5710])
1355
+ - fs: wait for in-flight ops before cloning `File` ([#5803])
1356
+
1357
+ ### Changed
1358
+
1359
+ - rt: reduce time to poll tasks scheduled from outside the runtime ([#5705], [#5720])
1360
+
1361
+ ### Added
1362
+
1363
+ - net: add uds doc alias for unix sockets ([#5659])
1364
+ - rt: add metric for number of tasks ([#5628])
1365
+ - sync: implement more traits for channel errors ([#5666])
1366
+ - net: add nodelay methods on TcpSocket ([#5672])
1367
+ - sync: add `broadcast::Receiver::blocking_recv` ([#5690])
1368
+ - process: add `raw_arg` method to `Command` ([#5704])
1369
+ - io: support PRIORITY epoll events ([#5566])
1370
+ - task: add `JoinSet::poll_join_next` ([#5721])
1371
+ - net: add support for Redox OS ([#5790])
1372
+
1373
+
1374
+ ### Unstable
1375
+
1376
+ - rt: add the ability to dump task backtraces ([#5608], [#5676], [#5708], [#5717])
1377
+ - rt: instrument task poll times with a histogram ([#5685])
1378
+
1379
+ [#5766]: https://github.com/tokio-rs/tokio/pull/5766
1380
+ [#5653]: https://github.com/tokio-rs/tokio/pull/5653
1381
+ [#5686]: https://github.com/tokio-rs/tokio/pull/5686
1382
+ [#5712]: https://github.com/tokio-rs/tokio/pull/5712
1383
+ [#5693]: https://github.com/tokio-rs/tokio/pull/5693
1384
+ [#5772]: https://github.com/tokio-rs/tokio/pull/5772
1385
+ [#5710]: https://github.com/tokio-rs/tokio/pull/5710
1386
+ [#5803]: https://github.com/tokio-rs/tokio/pull/5803
1387
+ [#5705]: https://github.com/tokio-rs/tokio/pull/5705
1388
+ [#5720]: https://github.com/tokio-rs/tokio/pull/5720
1389
+ [#5659]: https://github.com/tokio-rs/tokio/pull/5659
1390
+ [#5628]: https://github.com/tokio-rs/tokio/pull/5628
1391
+ [#5666]: https://github.com/tokio-rs/tokio/pull/5666
1392
+ [#5672]: https://github.com/tokio-rs/tokio/pull/5672
1393
+ [#5690]: https://github.com/tokio-rs/tokio/pull/5690
1394
+ [#5704]: https://github.com/tokio-rs/tokio/pull/5704
1395
+ [#5566]: https://github.com/tokio-rs/tokio/pull/5566
1396
+ [#5721]: https://github.com/tokio-rs/tokio/pull/5721
1397
+ [#5790]: https://github.com/tokio-rs/tokio/pull/5790
1398
+ [#5608]: https://github.com/tokio-rs/tokio/pull/5608
1399
+ [#5676]: https://github.com/tokio-rs/tokio/pull/5676
1400
+ [#5708]: https://github.com/tokio-rs/tokio/pull/5708
1401
+ [#5717]: https://github.com/tokio-rs/tokio/pull/5717
1402
+ [#5685]: https://github.com/tokio-rs/tokio/pull/5685
1403
+
1404
+ # 1.28.2 (May 28, 2023)
1405
+
1406
+ Forward ports 1.18.6 changes.
1407
+
1408
+ ### Fixed
1409
+
1410
+ - deps: disable default features for mio ([#5728])
1411
+
1412
+ [#5728]: https://github.com/tokio-rs/tokio/pull/5728
1413
+
1414
+ # 1.28.1 (May 10th, 2023)
1415
+
1416
+ This release fixes a mistake in the build script that makes `AsFd`
1417
+ implementations unavailable on Rust 1.63. ([#5677])
1418
+
1419
+ [#5677]: https://github.com/tokio-rs/tokio/pull/5677
1420
+
1421
+ # 1.28.0 (April 25th, 2023)
1422
+
1423
+ ### Added
1424
+
1425
+ - io: add `AsyncFd::async_io` ([#5542])
1426
+ - io: impl BufMut for ReadBuf ([#5590])
1427
+ - net: add `recv_buf` for `UdpSocket` and `UnixDatagram` ([#5583])
1428
+ - sync: add `OwnedSemaphorePermit::semaphore` ([#5618])
1429
+ - sync: add `same_channel` to broadcast channel ([#5607])
1430
+ - sync: add `watch::Receiver::wait_for` ([#5611])
1431
+ - task: add `JoinSet::spawn_blocking` and `JoinSet::spawn_blocking_on` ([#5612])
1432
+
1433
+ ### Changed
1434
+
1435
+ - deps: update windows-sys to 0.48 ([#5591])
1436
+ - io: make `read_to_end` not grow unnecessarily ([#5610])
1437
+ - macros: make entrypoints more efficient ([#5621])
1438
+ - sync: improve Debug impl for `RwLock` ([#5647])
1439
+ - sync: reduce contention in `Notify` ([#5503])
1440
+
1441
+ ### Fixed
1442
+
1443
+ - net: support `get_peer_cred` on AIX ([#5065])
1444
+ - sync: avoid deadlocks in `broadcast` with custom wakers ([#5578])
1445
+
1446
+ ### Documented
1447
+
1448
+ - sync: fix typo in `Semaphore::MAX_PERMITS` ([#5645])
1449
+ - sync: fix typo in `tokio::sync::watch::Sender` docs ([#5587])
1450
+
1451
+ [#5065]: https://github.com/tokio-rs/tokio/pull/5065
1452
+ [#5503]: https://github.com/tokio-rs/tokio/pull/5503
1453
+ [#5542]: https://github.com/tokio-rs/tokio/pull/5542
1454
+ [#5578]: https://github.com/tokio-rs/tokio/pull/5578
1455
+ [#5583]: https://github.com/tokio-rs/tokio/pull/5583
1456
+ [#5587]: https://github.com/tokio-rs/tokio/pull/5587
1457
+ [#5590]: https://github.com/tokio-rs/tokio/pull/5590
1458
+ [#5591]: https://github.com/tokio-rs/tokio/pull/5591
1459
+ [#5607]: https://github.com/tokio-rs/tokio/pull/5607
1460
+ [#5610]: https://github.com/tokio-rs/tokio/pull/5610
1461
+ [#5611]: https://github.com/tokio-rs/tokio/pull/5611
1462
+ [#5612]: https://github.com/tokio-rs/tokio/pull/5612
1463
+ [#5618]: https://github.com/tokio-rs/tokio/pull/5618
1464
+ [#5621]: https://github.com/tokio-rs/tokio/pull/5621
1465
+ [#5645]: https://github.com/tokio-rs/tokio/pull/5645
1466
+ [#5647]: https://github.com/tokio-rs/tokio/pull/5647
1467
+
1468
+ # 1.27.0 (March 27th, 2023)
1469
+
1470
+ This release bumps the MSRV of Tokio to 1.56. ([#5559])
1471
+
1472
+ ### Added
1473
+
1474
+ - io: add `async_io` helper method to sockets ([#5512])
1475
+ - io: add implementations of `AsFd`/`AsHandle`/`AsSocket` ([#5514], [#5540])
1476
+ - net: add `UdpSocket::peek_sender()` ([#5520])
1477
+ - sync: add `RwLockWriteGuard::{downgrade_map, try_downgrade_map}` ([#5527])
1478
+ - task: add `JoinHandle::abort_handle` ([#5543])
1479
+
1480
+ ### Changed
1481
+
1482
+ - io: use `memchr` from `libc` ([#5558])
1483
+ - macros: accept path as crate rename in `#[tokio::main]` ([#5557])
1484
+ - macros: update to syn 2.0.0 ([#5572])
1485
+ - time: don't register for a wakeup when `Interval` returns `Ready` ([#5553])
1486
+
1487
+ ### Fixed
1488
+
1489
+ - fs: fuse std iterator in `ReadDir` ([#5555])
1490
+ - tracing: fix `spawn_blocking` location fields ([#5573])
1491
+ - time: clean up redundant check in `Wheel::poll()` ([#5574])
1492
+
1493
+ ### Documented
1494
+
1495
+ - macros: define cancellation safety ([#5525])
1496
+ - io: add details to docs of `tokio::io::copy[_buf]` ([#5575])
1497
+ - io: refer to `ReaderStream` and `StreamReader` in module docs ([#5576])
1498
+
1499
+ [#5512]: https://github.com/tokio-rs/tokio/pull/5512
1500
+ [#5514]: https://github.com/tokio-rs/tokio/pull/5514
1501
+ [#5520]: https://github.com/tokio-rs/tokio/pull/5520
1502
+ [#5525]: https://github.com/tokio-rs/tokio/pull/5525
1503
+ [#5527]: https://github.com/tokio-rs/tokio/pull/5527
1504
+ [#5540]: https://github.com/tokio-rs/tokio/pull/5540
1505
+ [#5543]: https://github.com/tokio-rs/tokio/pull/5543
1506
+ [#5553]: https://github.com/tokio-rs/tokio/pull/5553
1507
+ [#5555]: https://github.com/tokio-rs/tokio/pull/5555
1508
+ [#5557]: https://github.com/tokio-rs/tokio/pull/5557
1509
+ [#5558]: https://github.com/tokio-rs/tokio/pull/5558
1510
+ [#5559]: https://github.com/tokio-rs/tokio/pull/5559
1511
+ [#5572]: https://github.com/tokio-rs/tokio/pull/5572
1512
+ [#5573]: https://github.com/tokio-rs/tokio/pull/5573
1513
+ [#5574]: https://github.com/tokio-rs/tokio/pull/5574
1514
+ [#5575]: https://github.com/tokio-rs/tokio/pull/5575
1515
+ [#5576]: https://github.com/tokio-rs/tokio/pull/5576
1516
+
1517
+ # 1.26.0 (March 1st, 2023)
1518
+
1519
+ ### Fixed
1520
+
1521
+ - macros: fix empty `join!` and `try_join!` ([#5504])
1522
+ - sync: don't leak tracing spans in mutex guards ([#5469])
1523
+ - sync: drop wakers after unlocking the mutex in Notify ([#5471])
1524
+ - sync: drop wakers outside lock in semaphore ([#5475])
1525
+
1526
+ ### Added
1527
+
1528
+ - fs: add `fs::try_exists` ([#4299])
1529
+ - net: add types for named unix pipes ([#5351])
1530
+ - sync: add `MappedOwnedMutexGuard` ([#5474])
1531
+
1532
+ ### Changed
1533
+
1534
+ - chore: update windows-sys to 0.45 ([#5386])
1535
+ - net: use Message Read Mode for named pipes ([#5350])
1536
+ - sync: mark lock guards with `#[clippy::has_significant_drop]` ([#5422])
1537
+ - sync: reduce contention in watch channel ([#5464])
1538
+ - time: remove cache padding in timer entries ([#5468])
1539
+ - time: Improve `Instant::now()` perf with test-util ([#5513])
1540
+
1541
+ ### Internal Changes
1542
+
1543
+ - io: use `poll_fn` in `copy_bidirectional` ([#5486])
1544
+ - net: refactor named pipe builders to not use bitfields ([#5477])
1545
+ - rt: remove Arc from Clock ([#5434])
1546
+ - sync: make `notify_waiters` calls atomic ([#5458])
1547
+ - time: don't store deadline twice in sleep entries ([#5410])
1548
+
1549
+ ### Unstable
1550
+
1551
+ - metrics: add a new metric for budget exhaustion yields ([#5517])
1552
+
1553
+ ### Documented
1554
+
1555
+ - io: improve AsyncFd example ([#5481])
1556
+ - runtime: document the nature of the main future ([#5494])
1557
+ - runtime: remove extra period in docs ([#5511])
1558
+ - signal: updated Documentation for Signals ([#5459])
1559
+ - sync: add doc aliases for `blocking_*` methods ([#5448])
1560
+ - sync: fix docs for Send/Sync bounds in broadcast ([#5480])
1561
+ - sync: document drop behavior for channels ([#5497])
1562
+ - task: clarify what happens to spawned work during runtime shutdown ([#5394])
1563
+ - task: clarify `process::Command` docs ([#5413])
1564
+ - task: fix wording with 'unsend' ([#5452])
1565
+ - time: document immediate completion guarantee for timeouts ([#5509])
1566
+ - tokio: document supported platforms ([#5483])
1567
+
1568
+ [#4299]: https://github.com/tokio-rs/tokio/pull/4299
1569
+ [#5350]: https://github.com/tokio-rs/tokio/pull/5350
1570
+ [#5351]: https://github.com/tokio-rs/tokio/pull/5351
1571
+ [#5386]: https://github.com/tokio-rs/tokio/pull/5386
1572
+ [#5394]: https://github.com/tokio-rs/tokio/pull/5394
1573
+ [#5410]: https://github.com/tokio-rs/tokio/pull/5410
1574
+ [#5413]: https://github.com/tokio-rs/tokio/pull/5413
1575
+ [#5422]: https://github.com/tokio-rs/tokio/pull/5422
1576
+ [#5434]: https://github.com/tokio-rs/tokio/pull/5434
1577
+ [#5448]: https://github.com/tokio-rs/tokio/pull/5448
1578
+ [#5452]: https://github.com/tokio-rs/tokio/pull/5452
1579
+ [#5458]: https://github.com/tokio-rs/tokio/pull/5458
1580
+ [#5459]: https://github.com/tokio-rs/tokio/pull/5459
1581
+ [#5464]: https://github.com/tokio-rs/tokio/pull/5464
1582
+ [#5468]: https://github.com/tokio-rs/tokio/pull/5468
1583
+ [#5469]: https://github.com/tokio-rs/tokio/pull/5469
1584
+ [#5471]: https://github.com/tokio-rs/tokio/pull/5471
1585
+ [#5474]: https://github.com/tokio-rs/tokio/pull/5474
1586
+ [#5475]: https://github.com/tokio-rs/tokio/pull/5475
1587
+ [#5477]: https://github.com/tokio-rs/tokio/pull/5477
1588
+ [#5480]: https://github.com/tokio-rs/tokio/pull/5480
1589
+ [#5481]: https://github.com/tokio-rs/tokio/pull/5481
1590
+ [#5483]: https://github.com/tokio-rs/tokio/pull/5483
1591
+ [#5486]: https://github.com/tokio-rs/tokio/pull/5486
1592
+ [#5494]: https://github.com/tokio-rs/tokio/pull/5494
1593
+ [#5497]: https://github.com/tokio-rs/tokio/pull/5497
1594
+ [#5504]: https://github.com/tokio-rs/tokio/pull/5504
1595
+ [#5509]: https://github.com/tokio-rs/tokio/pull/5509
1596
+ [#5511]: https://github.com/tokio-rs/tokio/pull/5511
1597
+ [#5513]: https://github.com/tokio-rs/tokio/pull/5513
1598
+ [#5517]: https://github.com/tokio-rs/tokio/pull/5517
1599
+
1600
+ # 1.25.3 (December 17th, 2023)
1601
+
1602
+ ### Fixed
1603
+ - io: add budgeting to `tokio::runtime::io::registration::async_io` ([#6221])
1604
+
1605
+ [#6221]: https://github.com/tokio-rs/tokio/pull/6221
1606
+
1607
+ # 1.25.2 (September 22, 2023)
1608
+
1609
+ Forward ports 1.20.6 changes.
1610
+
1611
+ ### Changed
1612
+
1613
+ - io: use `memchr` from `libc` ([#5960])
1614
+
1615
+ [#5960]: https://github.com/tokio-rs/tokio/pull/5960
1616
+
1617
+ # 1.25.1 (May 28, 2023)
1618
+
1619
+ Forward ports 1.18.6 changes.
1620
+
1621
+ ### Fixed
1622
+
1623
+ - deps: disable default features for mio ([#5728])
1624
+
1625
+ [#5728]: https://github.com/tokio-rs/tokio/pull/5728
1626
+
1627
+ # 1.25.0 (January 28, 2023)
1628
+
1629
+ ### Fixed
1630
+
1631
+ - rt: fix runtime metrics reporting ([#5330])
1632
+
1633
+ ### Added
1634
+
1635
+ - sync: add `broadcast::Sender::len` ([#5343])
1636
+
1637
+ ### Changed
1638
+
1639
+ - fs: increase maximum read buffer size to 2MiB ([#5397])
1640
+
1641
+ [#5330]: https://github.com/tokio-rs/tokio/pull/5330
1642
+ [#5343]: https://github.com/tokio-rs/tokio/pull/5343
1643
+ [#5397]: https://github.com/tokio-rs/tokio/pull/5397
1644
+
1645
+ # 1.24.2 (January 17, 2023)
1646
+
1647
+ Forward ports 1.18.5 changes.
1648
+
1649
+ ### Fixed
1650
+
1651
+ - io: fix unsoundness in `ReadHalf::unsplit` ([#5375])
1652
+
1653
+ [#5375]: https://github.com/tokio-rs/tokio/pull/5375
1654
+
1655
+ # 1.24.1 (January 6, 2022)
1656
+
1657
+ This release fixes a compilation failure on targets without `AtomicU64` when using rustc older than 1.63. ([#5356])
1658
+
1659
+ [#5356]: https://github.com/tokio-rs/tokio/pull/5356
1660
+
1661
+ # 1.24.0 (January 5, 2022)
1662
+
1663
+ ### Fixed
1664
+ - rt: improve native `AtomicU64` support detection ([#5284])
1665
+
1666
+ ### Added
1667
+ - rt: add configuration option for max number of I/O events polled from the OS
1668
+ per tick ([#5186])
1669
+ - rt: add an environment variable for configuring the default number of worker
1670
+ threads per runtime instance ([#4250])
1671
+
1672
+ ### Changed
1673
+ - sync: reduce MPSC channel stack usage ([#5294])
1674
+ - io: reduce lock contention in I/O operations ([#5300])
1675
+ - fs: speed up `read_dir()` by chunking operations ([#5309])
1676
+ - rt: use internal `ThreadId` implementation ([#5329])
1677
+ - test: don't auto-advance time when a `spawn_blocking` task is running ([#5115])
1678
+
1679
+ [#5186]: https://github.com/tokio-rs/tokio/pull/5186
1680
+ [#5294]: https://github.com/tokio-rs/tokio/pull/5294
1681
+ [#5284]: https://github.com/tokio-rs/tokio/pull/5284
1682
+ [#4250]: https://github.com/tokio-rs/tokio/pull/4250
1683
+ [#5300]: https://github.com/tokio-rs/tokio/pull/5300
1684
+ [#5329]: https://github.com/tokio-rs/tokio/pull/5329
1685
+ [#5115]: https://github.com/tokio-rs/tokio/pull/5115
1686
+ [#5309]: https://github.com/tokio-rs/tokio/pull/5309
1687
+
1688
+ # 1.23.1 (January 4, 2022)
1689
+
1690
+ This release forward ports changes from 1.18.4.
1691
+
1692
+ ### Fixed
1693
+
1694
+ - net: fix Windows named pipe server builder to maintain option when toggling
1695
+ pipe mode ([#5336]).
1696
+
1697
+ [#5336]: https://github.com/tokio-rs/tokio/pull/5336
1698
+
1699
+ # 1.23.0 (December 5, 2022)
1700
+
1701
+ ### Fixed
1702
+
1703
+ - net: fix Windows named pipe connect ([#5208])
1704
+ - io: support vectored writes for `ChildStdin` ([#5216])
1705
+ - io: fix `async fn ready()` false positive for OS-specific events ([#5231])
1706
+
1707
+ ### Changed
1708
+ - runtime: `yield_now` defers task until after driver poll ([#5223])
1709
+ - runtime: reduce amount of codegen needed per spawned task ([#5213])
1710
+ - windows: replace `winapi` dependency with `windows-sys` ([#5204])
1711
+
1712
+ [#5208]: https://github.com/tokio-rs/tokio/pull/5208
1713
+ [#5216]: https://github.com/tokio-rs/tokio/pull/5216
1714
+ [#5213]: https://github.com/tokio-rs/tokio/pull/5213
1715
+ [#5204]: https://github.com/tokio-rs/tokio/pull/5204
1716
+ [#5223]: https://github.com/tokio-rs/tokio/pull/5223
1717
+ [#5231]: https://github.com/tokio-rs/tokio/pull/5231
1718
+
1719
+ # 1.22.0 (November 17, 2022)
1720
+
1721
+ ### Added
1722
+ - runtime: add `Handle::runtime_flavor` ([#5138])
1723
+ - sync: add `Mutex::blocking_lock_owned` ([#5130])
1724
+ - sync: add `Semaphore::MAX_PERMITS` ([#5144])
1725
+ - sync: add `merge()` to semaphore permits ([#4948])
1726
+ - sync: add `mpsc::WeakUnboundedSender` ([#5189])
1727
+
1728
+ ### Added (unstable)
1729
+
1730
+ - process: add `Command::process_group` ([#5114])
1731
+ - runtime: export metrics about the blocking thread pool ([#5161])
1732
+ - task: add `task::id()` and `task::try_id()` ([#5171])
1733
+
1734
+ ### Fixed
1735
+ - macros: don't take ownership of futures in macros ([#5087])
1736
+ - runtime: fix Stacked Borrows violation in `LocalOwnedTasks` ([#5099])
1737
+ - runtime: mitigate ABA with 32-bit queue indices when possible ([#5042])
1738
+ - task: wake local tasks to the local queue when woken by the same thread ([#5095])
1739
+ - time: panic in release mode when `mark_pending` called illegally ([#5093])
1740
+ - runtime: fix typo in expect message ([#5169])
1741
+ - runtime: fix `unsync_load` on atomic types ([#5175])
1742
+ - task: elaborate safety comments in task deallocation ([#5172])
1743
+ - runtime: fix `LocalSet` drop in thread local ([#5179])
1744
+ - net: remove libc type leakage in a public API ([#5191])
1745
+ - runtime: update the alignment of `CachePadded` ([#5106])
1746
+
1747
+ ### Changed
1748
+ - io: make `tokio::io::copy` continue filling the buffer when writer stalls ([#5066])
1749
+ - runtime: remove `coop::budget` from `LocalSet::run_until` ([#5155])
1750
+ - sync: make `Notify` panic safe ([#5154])
1751
+
1752
+ ### Documented
1753
+ - io: fix doc for `write_i8` to use signed integers ([#5040])
1754
+ - net: fix doc typos for TCP and UDP `set_tos` methods ([#5073])
1755
+ - net: fix function name in `UdpSocket::recv` documentation ([#5150])
1756
+ - sync: typo in `TryLockError` for `RwLock::try_write` ([#5160])
1757
+ - task: document that spawned tasks execute immediately ([#5117])
1758
+ - time: document return type of `timeout` ([#5118])
1759
+ - time: document that `timeout` checks only before poll ([#5126])
1760
+ - sync: specify return type of `oneshot::Receiver` in docs ([#5198])
1761
+
1762
+ ### Internal changes
1763
+ - runtime: use const `Mutex::new` for globals ([#5061])
1764
+ - runtime: remove `Option` around `mio::Events` in io driver ([#5078])
1765
+ - runtime: remove a conditional compilation clause ([#5104])
1766
+ - runtime: remove a reference to internal time handle ([#5107])
1767
+ - runtime: misc time driver cleanup ([#5120])
1768
+ - runtime: move signal driver to runtime module ([#5121])
1769
+ - runtime: signal driver now uses I/O driver directly ([#5125])
1770
+ - runtime: start decoupling I/O driver and I/O handle ([#5127])
1771
+ - runtime: switch `io::handle` refs with scheduler:Handle ([#5128])
1772
+ - runtime: remove Arc from I/O driver ([#5134])
1773
+ - runtime: use signal driver handle via `scheduler::Handle` ([#5135])
1774
+ - runtime: move internal clock fns out of context ([#5139])
1775
+ - runtime: remove `runtime::context` module ([#5140])
1776
+ - runtime: keep driver cfgs in `driver.rs` ([#5141])
1777
+ - runtime: add `runtime::context` to unify thread-locals ([#5143])
1778
+ - runtime: rename some confusing internal variables/fns ([#5151])
1779
+ - runtime: move `coop` mod into `runtime` ([#5152])
1780
+ - runtime: move budget state to context thread-local ([#5157])
1781
+ - runtime: move park logic into runtime module ([#5158])
1782
+ - runtime: move `Runtime` into its own file ([#5159])
1783
+ - runtime: unify entering a runtime with `Handle::enter` ([#5163])
1784
+ - runtime: remove handle reference from each scheduler ([#5166])
1785
+ - runtime: move `enter` into `context` ([#5167])
1786
+ - runtime: combine context and entered thread-locals ([#5168])
1787
+ - runtime: fix accidental unsetting of current handle ([#5178])
1788
+ - runtime: move `CoreStage` methods to `Core` ([#5182])
1789
+ - sync: name mpsc semaphore types ([#5146])
1790
+
1791
+ [#4948]: https://github.com/tokio-rs/tokio/pull/4948
1792
+ [#5040]: https://github.com/tokio-rs/tokio/pull/5040
1793
+ [#5042]: https://github.com/tokio-rs/tokio/pull/5042
1794
+ [#5061]: https://github.com/tokio-rs/tokio/pull/5061
1795
+ [#5066]: https://github.com/tokio-rs/tokio/pull/5066
1796
+ [#5073]: https://github.com/tokio-rs/tokio/pull/5073
1797
+ [#5078]: https://github.com/tokio-rs/tokio/pull/5078
1798
+ [#5087]: https://github.com/tokio-rs/tokio/pull/5087
1799
+ [#5093]: https://github.com/tokio-rs/tokio/pull/5093
1800
+ [#5095]: https://github.com/tokio-rs/tokio/pull/5095
1801
+ [#5099]: https://github.com/tokio-rs/tokio/pull/5099
1802
+ [#5104]: https://github.com/tokio-rs/tokio/pull/5104
1803
+ [#5106]: https://github.com/tokio-rs/tokio/pull/5106
1804
+ [#5107]: https://github.com/tokio-rs/tokio/pull/5107
1805
+ [#5114]: https://github.com/tokio-rs/tokio/pull/5114
1806
+ [#5117]: https://github.com/tokio-rs/tokio/pull/5117
1807
+ [#5118]: https://github.com/tokio-rs/tokio/pull/5118
1808
+ [#5120]: https://github.com/tokio-rs/tokio/pull/5120
1809
+ [#5121]: https://github.com/tokio-rs/tokio/pull/5121
1810
+ [#5125]: https://github.com/tokio-rs/tokio/pull/5125
1811
+ [#5126]: https://github.com/tokio-rs/tokio/pull/5126
1812
+ [#5127]: https://github.com/tokio-rs/tokio/pull/5127
1813
+ [#5128]: https://github.com/tokio-rs/tokio/pull/5128
1814
+ [#5130]: https://github.com/tokio-rs/tokio/pull/5130
1815
+ [#5134]: https://github.com/tokio-rs/tokio/pull/5134
1816
+ [#5135]: https://github.com/tokio-rs/tokio/pull/5135
1817
+ [#5138]: https://github.com/tokio-rs/tokio/pull/5138
1818
+ [#5138]: https://github.com/tokio-rs/tokio/pull/5138
1819
+ [#5139]: https://github.com/tokio-rs/tokio/pull/5139
1820
+ [#5140]: https://github.com/tokio-rs/tokio/pull/5140
1821
+ [#5141]: https://github.com/tokio-rs/tokio/pull/5141
1822
+ [#5143]: https://github.com/tokio-rs/tokio/pull/5143
1823
+ [#5144]: https://github.com/tokio-rs/tokio/pull/5144
1824
+ [#5144]: https://github.com/tokio-rs/tokio/pull/5144
1825
+ [#5146]: https://github.com/tokio-rs/tokio/pull/5146
1826
+ [#5150]: https://github.com/tokio-rs/tokio/pull/5150
1827
+ [#5151]: https://github.com/tokio-rs/tokio/pull/5151
1828
+ [#5152]: https://github.com/tokio-rs/tokio/pull/5152
1829
+ [#5154]: https://github.com/tokio-rs/tokio/pull/5154
1830
+ [#5155]: https://github.com/tokio-rs/tokio/pull/5155
1831
+ [#5157]: https://github.com/tokio-rs/tokio/pull/5157
1832
+ [#5158]: https://github.com/tokio-rs/tokio/pull/5158
1833
+ [#5159]: https://github.com/tokio-rs/tokio/pull/5159
1834
+ [#5160]: https://github.com/tokio-rs/tokio/pull/5160
1835
+ [#5161]: https://github.com/tokio-rs/tokio/pull/5161
1836
+ [#5163]: https://github.com/tokio-rs/tokio/pull/5163
1837
+ [#5166]: https://github.com/tokio-rs/tokio/pull/5166
1838
+ [#5167]: https://github.com/tokio-rs/tokio/pull/5167
1839
+ [#5168]: https://github.com/tokio-rs/tokio/pull/5168
1840
+ [#5169]: https://github.com/tokio-rs/tokio/pull/5169
1841
+ [#5171]: https://github.com/tokio-rs/tokio/pull/5171
1842
+ [#5172]: https://github.com/tokio-rs/tokio/pull/5172
1843
+ [#5175]: https://github.com/tokio-rs/tokio/pull/5175
1844
+ [#5178]: https://github.com/tokio-rs/tokio/pull/5178
1845
+ [#5179]: https://github.com/tokio-rs/tokio/pull/5179
1846
+ [#5182]: https://github.com/tokio-rs/tokio/pull/5182
1847
+ [#5189]: https://github.com/tokio-rs/tokio/pull/5189
1848
+ [#5191]: https://github.com/tokio-rs/tokio/pull/5191
1849
+ [#5198]: https://github.com/tokio-rs/tokio/pull/5198
1850
+
1851
+ # 1.21.2 (September 27, 2022)
1852
+
1853
+ This release removes the dependency on the `once_cell` crate to restore the MSRV
1854
+ of 1.21.x, which is the latest minor version at the time of release. ([#5048])
1855
+
1856
+ [#5048]: https://github.com/tokio-rs/tokio/pull/5048
1857
+
1858
+ # 1.21.1 (September 13, 2022)
1859
+
1860
+ ### Fixed
1861
+
1862
+ - net: fix dependency resolution for socket2 ([#5000])
1863
+ - task: ignore failure to set TLS in `LocalSet` Drop ([#4976])
1864
+
1865
+ [#4976]: https://github.com/tokio-rs/tokio/pull/4976
1866
+ [#5000]: https://github.com/tokio-rs/tokio/pull/5000
1867
+
1868
+ # 1.21.0 (September 2, 2022)
1869
+
1870
+ This release is the first release of Tokio to intentionally support WASM. The
1871
+ `sync,macros,io-util,rt,time` features are stabilized on WASM. Additionally the
1872
+ wasm32-wasi target is given unstable support for the `net` feature.
1873
+
1874
+ ### Added
1875
+
1876
+ - net: add `device` and `bind_device` methods to TCP/UDP sockets ([#4882])
1877
+ - net: add `tos` and `set_tos` methods to TCP and UDP sockets ([#4877])
1878
+ - net: add security flags to named pipe `ServerOptions` ([#4845])
1879
+ - signal: add more windows signal handlers ([#4924])
1880
+ - sync: add `mpsc::Sender::max_capacity` method ([#4904])
1881
+ - sync: implement Weak version of `mpsc::Sender` ([#4595])
1882
+ - task: add `LocalSet::enter` ([#4765])
1883
+ - task: stabilize `JoinSet` and `AbortHandle` ([#4920])
1884
+ - tokio: add `track_caller` to public APIs ([#4805], [#4848], [#4852])
1885
+ - wasm: initial support for `wasm32-wasi` target ([#4716])
1886
+
1887
+ ### Fixed
1888
+
1889
+ - miri: improve miri compatibility by avoiding temporary references in `linked_list::Link` impls ([#4841])
1890
+ - signal: don't register write interest on signal pipe ([#4898])
1891
+ - sync: add `#[must_use]` to lock guards ([#4886])
1892
+ - sync: fix hang when calling `recv` on closed and reopened broadcast channel ([#4867])
1893
+ - task: propagate attributes on task-locals ([#4837])
1894
+
1895
+ ### Changed
1896
+
1897
+ - fs: change panic to error in `File::start_seek` ([#4897])
1898
+ - io: reduce syscalls in `poll_read` ([#4840])
1899
+ - process: use blocking threadpool for child stdio I/O ([#4824])
1900
+ - signal: make `SignalKind` methods const ([#4956])
1901
+
1902
+ ### Internal changes
1903
+
1904
+ - rt: extract `basic_scheduler::Config` ([#4935])
1905
+ - rt: move I/O driver into `runtime` module ([#4942])
1906
+ - rt: rename internal scheduler types ([#4945])
1907
+
1908
+ ### Documented
1909
+
1910
+ - chore: fix typos and grammar ([#4858], [#4894], [#4928])
1911
+ - io: fix typo in `AsyncSeekExt::rewind` docs ([#4893])
1912
+ - net: add documentation to `try_read()` for zero-length buffers ([#4937])
1913
+ - runtime: remove incorrect panic section for `Builder::worker_threads` ([#4849])
1914
+ - sync: doc of `watch::Sender::send` improved ([#4959])
1915
+ - task: add cancel safety docs to `JoinHandle` ([#4901])
1916
+ - task: expand on cancellation of `spawn_blocking` ([#4811])
1917
+ - time: clarify that the first tick of `Interval::tick` happens immediately ([#4951])
1918
+
1919
+ ### Unstable
1920
+
1921
+ - rt: add unstable option to disable the LIFO slot ([#4936])
1922
+ - task: fix incorrect signature in `Builder::spawn_on` ([#4953])
1923
+ - task: make `task::Builder::spawn*` methods fallible ([#4823])
1924
+
1925
+ [#4595]: https://github.com/tokio-rs/tokio/pull/4595
1926
+ [#4716]: https://github.com/tokio-rs/tokio/pull/4716
1927
+ [#4765]: https://github.com/tokio-rs/tokio/pull/4765
1928
+ [#4805]: https://github.com/tokio-rs/tokio/pull/4805
1929
+ [#4811]: https://github.com/tokio-rs/tokio/pull/4811
1930
+ [#4823]: https://github.com/tokio-rs/tokio/pull/4823
1931
+ [#4824]: https://github.com/tokio-rs/tokio/pull/4824
1932
+ [#4837]: https://github.com/tokio-rs/tokio/pull/4837
1933
+ [#4840]: https://github.com/tokio-rs/tokio/pull/4840
1934
+ [#4841]: https://github.com/tokio-rs/tokio/pull/4841
1935
+ [#4845]: https://github.com/tokio-rs/tokio/pull/4845
1936
+ [#4848]: https://github.com/tokio-rs/tokio/pull/4848
1937
+ [#4849]: https://github.com/tokio-rs/tokio/pull/4849
1938
+ [#4852]: https://github.com/tokio-rs/tokio/pull/4852
1939
+ [#4858]: https://github.com/tokio-rs/tokio/pull/4858
1940
+ [#4867]: https://github.com/tokio-rs/tokio/pull/4867
1941
+ [#4877]: https://github.com/tokio-rs/tokio/pull/4877
1942
+ [#4882]: https://github.com/tokio-rs/tokio/pull/4882
1943
+ [#4886]: https://github.com/tokio-rs/tokio/pull/4886
1944
+ [#4893]: https://github.com/tokio-rs/tokio/pull/4893
1945
+ [#4894]: https://github.com/tokio-rs/tokio/pull/4894
1946
+ [#4897]: https://github.com/tokio-rs/tokio/pull/4897
1947
+ [#4898]: https://github.com/tokio-rs/tokio/pull/4898
1948
+ [#4901]: https://github.com/tokio-rs/tokio/pull/4901
1949
+ [#4904]: https://github.com/tokio-rs/tokio/pull/4904
1950
+ [#4920]: https://github.com/tokio-rs/tokio/pull/4920
1951
+ [#4924]: https://github.com/tokio-rs/tokio/pull/4924
1952
+ [#4928]: https://github.com/tokio-rs/tokio/pull/4928
1953
+ [#4935]: https://github.com/tokio-rs/tokio/pull/4935
1954
+ [#4936]: https://github.com/tokio-rs/tokio/pull/4936
1955
+ [#4937]: https://github.com/tokio-rs/tokio/pull/4937
1956
+ [#4942]: https://github.com/tokio-rs/tokio/pull/4942
1957
+ [#4945]: https://github.com/tokio-rs/tokio/pull/4945
1958
+ [#4951]: https://github.com/tokio-rs/tokio/pull/4951
1959
+ [#4953]: https://github.com/tokio-rs/tokio/pull/4953
1960
+ [#4956]: https://github.com/tokio-rs/tokio/pull/4956
1961
+ [#4959]: https://github.com/tokio-rs/tokio/pull/4959
1962
+
1963
+ # 1.20.6 (September 22, 2023)
1964
+
1965
+ This is a backport of a change from 1.27.0.
1966
+
1967
+ ### Changed
1968
+
1969
+ - io: use `memchr` from `libc` ([#5960])
1970
+
1971
+ [#5960]: https://github.com/tokio-rs/tokio/pull/5960
1972
+
1973
+ # 1.20.5 (May 28, 2023)
1974
+
1975
+ Forward ports 1.18.6 changes.
1976
+
1977
+ ### Fixed
1978
+
1979
+ - deps: disable default features for mio ([#5728])
1980
+
1981
+ [#5728]: https://github.com/tokio-rs/tokio/pull/5728
1982
+
1983
+ # 1.20.4 (January 17, 2023)
1984
+
1985
+ Forward ports 1.18.5 changes.
1986
+
1987
+ ### Fixed
1988
+
1989
+ - io: fix unsoundness in `ReadHalf::unsplit` ([#5375])
1990
+
1991
+ [#5375]: https://github.com/tokio-rs/tokio/pull/5375
1992
+
1993
+ # 1.20.3 (January 3, 2022)
1994
+
1995
+ This release forward ports changes from 1.18.4.
1996
+
1997
+ ### Fixed
1998
+
1999
+ - net: fix Windows named pipe server builder to maintain option when toggling
2000
+ pipe mode ([#5336]).
2001
+
2002
+ [#5336]: https://github.com/tokio-rs/tokio/pull/5336
2003
+
2004
+ # 1.20.2 (September 27, 2022)
2005
+
2006
+ This release removes the dependency on the `once_cell` crate to restore the MSRV
2007
+ of the 1.20.x LTS release. ([#5048])
2008
+
2009
+ [#5048]: https://github.com/tokio-rs/tokio/pull/5048
2010
+
2011
+ # 1.20.1 (July 25, 2022)
2012
+
2013
+ ### Fixed
2014
+
2015
+ - chore: fix version detection in build script ([#4860])
2016
+
2017
+ [#4860]: https://github.com/tokio-rs/tokio/pull/4860
2018
+
2019
+ # 1.20.0 (July 12, 2022)
2020
+
2021
+ ### Added
2022
+ - tokio: add `track_caller` to public APIs ([#4772], [#4791], [#4793], [#4806], [#4808])
2023
+ - sync: Add `has_changed` method to `watch::Ref` ([#4758])
2024
+
2025
+ ### Changed
2026
+
2027
+ - time: remove `src/time/driver/wheel/stack.rs` ([#4766])
2028
+ - rt: clean up arguments passed to basic scheduler ([#4767])
2029
+ - net: be more specific about winapi features ([#4764])
2030
+ - tokio: use const initialized thread locals where possible ([#4677])
2031
+ - task: various small improvements to LocalKey ([#4795])
2032
+
2033
+ ### Documented
2034
+
2035
+ - fs: warn about performance pitfall ([#4762])
2036
+ - chore: fix spelling ([#4769])
2037
+ - sync: document spurious failures in oneshot ([#4777])
2038
+ - sync: add warning for watch in non-Send futures ([#4741])
2039
+ - chore: fix typo ([#4798])
2040
+
2041
+ ### Unstable
2042
+
2043
+ - joinset: rename `join_one` to `join_next` ([#4755])
2044
+ - rt: unhandled panic config for current thread rt ([#4770])
2045
+
2046
+ [#4677]: https://github.com/tokio-rs/tokio/pull/4677
2047
+ [#4741]: https://github.com/tokio-rs/tokio/pull/4741
2048
+ [#4755]: https://github.com/tokio-rs/tokio/pull/4755
2049
+ [#4758]: https://github.com/tokio-rs/tokio/pull/4758
2050
+ [#4762]: https://github.com/tokio-rs/tokio/pull/4762
2051
+ [#4764]: https://github.com/tokio-rs/tokio/pull/4764
2052
+ [#4766]: https://github.com/tokio-rs/tokio/pull/4766
2053
+ [#4767]: https://github.com/tokio-rs/tokio/pull/4767
2054
+ [#4769]: https://github.com/tokio-rs/tokio/pull/4769
2055
+ [#4770]: https://github.com/tokio-rs/tokio/pull/4770
2056
+ [#4772]: https://github.com/tokio-rs/tokio/pull/4772
2057
+ [#4777]: https://github.com/tokio-rs/tokio/pull/4777
2058
+ [#4791]: https://github.com/tokio-rs/tokio/pull/4791
2059
+ [#4793]: https://github.com/tokio-rs/tokio/pull/4793
2060
+ [#4795]: https://github.com/tokio-rs/tokio/pull/4795
2061
+ [#4798]: https://github.com/tokio-rs/tokio/pull/4798
2062
+ [#4806]: https://github.com/tokio-rs/tokio/pull/4806
2063
+ [#4808]: https://github.com/tokio-rs/tokio/pull/4808
2064
+
2065
+ # 1.19.2 (June 6, 2022)
2066
+
2067
+ This release fixes another bug in `Notified::enable`. ([#4751])
2068
+
2069
+ [#4751]: https://github.com/tokio-rs/tokio/pull/4751
2070
+
2071
+ # 1.19.1 (June 5, 2022)
2072
+
2073
+ This release fixes a bug in `Notified::enable`. ([#4747])
2074
+
2075
+ [#4747]: https://github.com/tokio-rs/tokio/pull/4747
2076
+
2077
+ # 1.19.0 (June 3, 2022)
2078
+
2079
+ ### Added
2080
+
2081
+ - runtime: add `is_finished` method for `JoinHandle` and `AbortHandle` ([#4709])
2082
+ - runtime: make global queue and event polling intervals configurable ([#4671])
2083
+ - sync: add `Notified::enable` ([#4705])
2084
+ - sync: add `watch::Sender::send_if_modified` ([#4591])
2085
+ - sync: add resubscribe method to broadcast::Receiver ([#4607])
2086
+ - net: add `take_error` to `TcpSocket` and `TcpStream` ([#4739])
2087
+
2088
+ ### Changed
2089
+
2090
+ - io: refactor out usage of Weak in the io handle ([#4656])
2091
+
2092
+ ### Fixed
2093
+
2094
+ - macros: avoid starvation in `join!` and `try_join!` ([#4624])
2095
+
2096
+ ### Documented
2097
+
2098
+ - runtime: clarify semantics of tasks outliving `block_on` ([#4729])
2099
+ - time: fix example for `MissedTickBehavior::Burst` ([#4713])
2100
+
2101
+ ### Unstable
2102
+
2103
+ - metrics: correctly update atomics in `IoDriverMetrics` ([#4725])
2104
+ - metrics: fix compilation with unstable, process, and rt, but without net ([#4682])
2105
+ - task: add `#[track_caller]` to `JoinSet`/`JoinMap` ([#4697])
2106
+ - task: add `Builder::{spawn_on, spawn_local_on, spawn_blocking_on}` ([#4683])
2107
+ - task: add `consume_budget` for cooperative scheduling ([#4498])
2108
+ - task: add `join_set::Builder` for configuring `JoinSet` tasks ([#4687])
2109
+ - task: update return value of `JoinSet::join_one` ([#4726])
2110
+
2111
+ [#4498]: https://github.com/tokio-rs/tokio/pull/4498
2112
+ [#4591]: https://github.com/tokio-rs/tokio/pull/4591
2113
+ [#4607]: https://github.com/tokio-rs/tokio/pull/4607
2114
+ [#4624]: https://github.com/tokio-rs/tokio/pull/4624
2115
+ [#4656]: https://github.com/tokio-rs/tokio/pull/4656
2116
+ [#4671]: https://github.com/tokio-rs/tokio/pull/4671
2117
+ [#4682]: https://github.com/tokio-rs/tokio/pull/4682
2118
+ [#4683]: https://github.com/tokio-rs/tokio/pull/4683
2119
+ [#4687]: https://github.com/tokio-rs/tokio/pull/4687
2120
+ [#4697]: https://github.com/tokio-rs/tokio/pull/4697
2121
+ [#4705]: https://github.com/tokio-rs/tokio/pull/4705
2122
+ [#4709]: https://github.com/tokio-rs/tokio/pull/4709
2123
+ [#4713]: https://github.com/tokio-rs/tokio/pull/4713
2124
+ [#4725]: https://github.com/tokio-rs/tokio/pull/4725
2125
+ [#4726]: https://github.com/tokio-rs/tokio/pull/4726
2126
+ [#4729]: https://github.com/tokio-rs/tokio/pull/4729
2127
+ [#4739]: https://github.com/tokio-rs/tokio/pull/4739
2128
+
2129
+ # 1.18.6 (May 28, 2023)
2130
+
2131
+ ### Fixed
2132
+
2133
+ - deps: disable default features for mio ([#5728])
2134
+
2135
+ [#5728]: https://github.com/tokio-rs/tokio/pull/5728
2136
+
2137
+ # 1.18.5 (January 17, 2023)
2138
+
2139
+ ### Fixed
2140
+
2141
+ - io: fix unsoundness in `ReadHalf::unsplit` ([#5375])
2142
+
2143
+ [#5375]: https://github.com/tokio-rs/tokio/pull/5375
2144
+
2145
+ # 1.18.4 (January 3, 2022)
2146
+
2147
+ ### Fixed
2148
+
2149
+ - net: fix Windows named pipe server builder to maintain option when toggling
2150
+ pipe mode ([#5336]).
2151
+
2152
+ [#5336]: https://github.com/tokio-rs/tokio/pull/5336
2153
+
2154
+ # 1.18.3 (September 27, 2022)
2155
+
2156
+ This release removes the dependency on the `once_cell` crate to restore the MSRV
2157
+ of the 1.18.x LTS release. ([#5048])
2158
+
2159
+ [#5048]: https://github.com/tokio-rs/tokio/pull/5048
2160
+
2161
+ # 1.18.2 (May 5, 2022)
2162
+
2163
+ Add missing features for the `winapi` dependency. ([#4663])
2164
+
2165
+ [#4663]: https://github.com/tokio-rs/tokio/pull/4663
2166
+
2167
+ # 1.18.1 (May 2, 2022)
2168
+
2169
+ The 1.18.0 release broke the build for targets without 64-bit atomics when
2170
+ building with `tokio_unstable`. This release fixes that. ([#4649])
2171
+
2172
+ [#4649]: https://github.com/tokio-rs/tokio/pull/4649
2173
+
2174
+ # 1.18.0 (April 27, 2022)
2175
+
2176
+ This release adds a number of new APIs in `tokio::net`, `tokio::signal`, and
2177
+ `tokio::sync`. In addition, it adds new unstable APIs to `tokio::task` (`Id`s
2178
+ for uniquely identifying a task, and `AbortHandle` for remotely cancelling a
2179
+ task), as well as a number of bugfixes.
2180
+
2181
+ ### Fixed
2182
+
2183
+ - blocking: add missing `#[track_caller]` for `spawn_blocking` ([#4616])
2184
+ - macros: fix `select` macro to process 64 branches ([#4519])
2185
+ - net: fix `try_io` methods not calling Mio's `try_io` internally ([#4582])
2186
+ - runtime: recover when OS fails to spawn a new thread ([#4485])
2187
+
2188
+ ### Added
2189
+
2190
+ - net: add `UdpSocket::peer_addr` ([#4611])
2191
+ - net: add `try_read_buf` method for named pipes ([#4626])
2192
+ - signal: add `SignalKind` `Hash`/`Eq` impls and `c_int` conversion ([#4540])
2193
+ - signal: add support for signals up to `SIGRTMAX` ([#4555])
2194
+ - sync: add `watch::Sender::send_modify` method ([#4310])
2195
+ - sync: add `broadcast::Receiver::len` method ([#4542])
2196
+ - sync: add `watch::Receiver::same_channel` method ([#4581])
2197
+ - sync: implement `Clone` for `RecvError` types ([#4560])
2198
+
2199
+ ### Changed
2200
+
2201
+ - update `mio` to 0.8.1 ([#4582])
2202
+ - macros: rename `tokio::select!`'s internal `util` module ([#4543])
2203
+ - runtime: use `Vec::with_capacity` when building runtime ([#4553])
2204
+
2205
+ ### Documented
2206
+
2207
+ - improve docs for `tokio_unstable` ([#4524])
2208
+ - runtime: include more documentation for thread_pool/worker ([#4511])
2209
+ - runtime: update `Handle::current`'s docs to mention `EnterGuard` ([#4567])
2210
+ - time: clarify platform specific timer resolution ([#4474])
2211
+ - signal: document that `Signal::recv` is cancel-safe ([#4634])
2212
+ - sync: `UnboundedReceiver` close docs ([#4548])
2213
+
2214
+ ### Unstable
2215
+
2216
+ The following changes only apply when building with `--cfg tokio_unstable`:
2217
+
2218
+ - task: add `task::Id` type ([#4630])
2219
+ - task: add `AbortHandle` type for cancelling tasks in a `JoinSet` ([#4530],
2220
+ [#4640])
2221
+ - task: fix missing `doc(cfg(...))` attributes for `JoinSet` ([#4531])
2222
+ - task: fix broken link in `AbortHandle` RustDoc ([#4545])
2223
+ - metrics: add initial IO driver metrics ([#4507])
2224
+
2225
+
2226
+ [#4616]: https://github.com/tokio-rs/tokio/pull/4616
2227
+ [#4519]: https://github.com/tokio-rs/tokio/pull/4519
2228
+ [#4582]: https://github.com/tokio-rs/tokio/pull/4582
2229
+ [#4485]: https://github.com/tokio-rs/tokio/pull/4485
2230
+ [#4613]: https://github.com/tokio-rs/tokio/pull/4613
2231
+ [#4611]: https://github.com/tokio-rs/tokio/pull/4611
2232
+ [#4626]: https://github.com/tokio-rs/tokio/pull/4626
2233
+ [#4540]: https://github.com/tokio-rs/tokio/pull/4540
2234
+ [#4555]: https://github.com/tokio-rs/tokio/pull/4555
2235
+ [#4310]: https://github.com/tokio-rs/tokio/pull/4310
2236
+ [#4542]: https://github.com/tokio-rs/tokio/pull/4542
2237
+ [#4581]: https://github.com/tokio-rs/tokio/pull/4581
2238
+ [#4560]: https://github.com/tokio-rs/tokio/pull/4560
2239
+ [#4631]: https://github.com/tokio-rs/tokio/pull/4631
2240
+ [#4582]: https://github.com/tokio-rs/tokio/pull/4582
2241
+ [#4543]: https://github.com/tokio-rs/tokio/pull/4543
2242
+ [#4553]: https://github.com/tokio-rs/tokio/pull/4553
2243
+ [#4524]: https://github.com/tokio-rs/tokio/pull/4524
2244
+ [#4511]: https://github.com/tokio-rs/tokio/pull/4511
2245
+ [#4567]: https://github.com/tokio-rs/tokio/pull/4567
2246
+ [#4474]: https://github.com/tokio-rs/tokio/pull/4474
2247
+ [#4634]: https://github.com/tokio-rs/tokio/pull/4634
2248
+ [#4548]: https://github.com/tokio-rs/tokio/pull/4548
2249
+ [#4630]: https://github.com/tokio-rs/tokio/pull/4630
2250
+ [#4530]: https://github.com/tokio-rs/tokio/pull/4530
2251
+ [#4640]: https://github.com/tokio-rs/tokio/pull/4640
2252
+ [#4531]: https://github.com/tokio-rs/tokio/pull/4531
2253
+ [#4545]: https://github.com/tokio-rs/tokio/pull/4545
2254
+ [#4507]: https://github.com/tokio-rs/tokio/pull/4507
2255
+
2256
+ # 1.17.0 (February 16, 2022)
2257
+
2258
+ This release updates the minimum supported Rust version (MSRV) to 1.49, the
2259
+ `mio` dependency to v0.8, and the (optional) `parking_lot` dependency to v0.12.
2260
+ Additionally, it contains several bug fixes, as well as internal refactoring and
2261
+ performance improvements.
2262
+
2263
+ ### Fixed
2264
+
2265
+ - time: prevent panicking in `sleep` with large durations ([#4495])
2266
+ - time: eliminate potential panics in `Instant` arithmetic on platforms where
2267
+ `Instant::now` is not monotonic ([#4461])
2268
+ - io: fix `DuplexStream` not participating in cooperative yielding ([#4478])
2269
+ - rt: fix potential double panic when dropping a `JoinHandle` ([#4430])
2270
+
2271
+ ### Changed
2272
+
2273
+ - update minimum supported Rust version to 1.49 ([#4457])
2274
+ - update `parking_lot` dependency to v0.12.0 ([#4459])
2275
+ - update `mio` dependency to v0.8 ([#4449])
2276
+ - rt: remove an unnecessary lock in the blocking pool ([#4436])
2277
+ - rt: remove an unnecessary enum in the basic scheduler ([#4462])
2278
+ - time: use bit manipulation instead of modulo to improve performance ([#4480])
2279
+ - net: use `std::future::Ready` instead of our own `Ready` future ([#4271])
2280
+ - replace deprecated `atomic::spin_loop_hint` with `hint::spin_loop` ([#4491])
2281
+ - fix miri failures in intrusive linked lists ([#4397])
2282
+
2283
+ ### Documented
2284
+
2285
+ - io: add an example for `tokio::process::ChildStdin` ([#4479])
2286
+
2287
+ ### Unstable
2288
+
2289
+ The following changes only apply when building with `--cfg tokio_unstable`:
2290
+
2291
+ - task: fix missing location information in `tracing` spans generated by
2292
+ `spawn_local` ([#4483])
2293
+ - task: add `JoinSet` for managing sets of tasks ([#4335])
2294
+ - metrics: fix compilation error on MIPS ([#4475])
2295
+ - metrics: fix compilation error on arm32v7 ([#4453])
2296
+
2297
+ [#4495]: https://github.com/tokio-rs/tokio/pull/4495
2298
+ [#4461]: https://github.com/tokio-rs/tokio/pull/4461
2299
+ [#4478]: https://github.com/tokio-rs/tokio/pull/4478
2300
+ [#4430]: https://github.com/tokio-rs/tokio/pull/4430
2301
+ [#4457]: https://github.com/tokio-rs/tokio/pull/4457
2302
+ [#4459]: https://github.com/tokio-rs/tokio/pull/4459
2303
+ [#4449]: https://github.com/tokio-rs/tokio/pull/4449
2304
+ [#4462]: https://github.com/tokio-rs/tokio/pull/4462
2305
+ [#4436]: https://github.com/tokio-rs/tokio/pull/4436
2306
+ [#4480]: https://github.com/tokio-rs/tokio/pull/4480
2307
+ [#4271]: https://github.com/tokio-rs/tokio/pull/4271
2308
+ [#4491]: https://github.com/tokio-rs/tokio/pull/4491
2309
+ [#4397]: https://github.com/tokio-rs/tokio/pull/4397
2310
+ [#4479]: https://github.com/tokio-rs/tokio/pull/4479
2311
+ [#4483]: https://github.com/tokio-rs/tokio/pull/4483
2312
+ [#4335]: https://github.com/tokio-rs/tokio/pull/4335
2313
+ [#4475]: https://github.com/tokio-rs/tokio/pull/4475
2314
+ [#4453]: https://github.com/tokio-rs/tokio/pull/4453
2315
+
2316
+ # 1.16.1 (January 28, 2022)
2317
+
2318
+ This release fixes a bug in [#4428] with the change [#4437].
2319
+
2320
+ [#4428]: https://github.com/tokio-rs/tokio/pull/4428
2321
+ [#4437]: https://github.com/tokio-rs/tokio/pull/4437
2322
+
2323
+ # 1.16.0 (January 27, 2022)
2324
+
2325
+ Fixes a soundness bug in `io::Take` ([#4428]). The unsoundness is exposed when
2326
+ leaking memory in the given `AsyncRead` implementation and then overwriting the
2327
+ supplied buffer:
2328
+
2329
+ ```rust
2330
+ impl AsyncRead for Buggy {
2331
+ fn poll_read(
2332
+ self: Pin<&mut Self>,
2333
+ cx: &mut Context<'_>,
2334
+ buf: &mut ReadBuf<'_>
2335
+ ) -> Poll<Result<()>> {
2336
+ let new_buf = vec![0; 5].leak();
2337
+ *buf = ReadBuf::new(new_buf);
2338
+ buf.put_slice(b"hello");
2339
+ Poll::Ready(Ok(()))
2340
+ }
2341
+ }
2342
+ ```
2343
+
2344
+ Also, this release includes improvements to the multi-threaded scheduler that
2345
+ can increase throughput by up to 20% in some cases ([#4383]).
2346
+
2347
+ ### Fixed
2348
+
2349
+ - io: **soundness** don't expose uninitialized memory when using `io::Take` in edge case ([#4428])
2350
+ - fs: ensure `File::write` results in a `write` syscall when the runtime shuts down ([#4316])
2351
+ - process: drop pipe after child exits in `wait_with_output` ([#4315])
2352
+ - rt: improve error message when spawning a thread fails ([#4398])
2353
+ - rt: reduce false-positive thread wakups in the multi-threaded scheduler ([#4383])
2354
+ - sync: don't inherit `Send` from `parking_lot::*Guard` ([#4359])
2355
+
2356
+ ### Added
2357
+
2358
+ - net: `TcpSocket::linger()` and `set_linger()` ([#4324])
2359
+ - net: impl `UnwindSafe` for socket types ([#4384])
2360
+ - rt: impl `UnwindSafe` for `JoinHandle` ([#4418])
2361
+ - sync: `watch::Receiver::has_changed()` ([#4342])
2362
+ - sync: `oneshot::Receiver::blocking_recv()` ([#4334])
2363
+ - sync: `RwLock` blocking operations ([#4425])
2364
+
2365
+ ### Unstable
2366
+
2367
+ The following changes only apply when building with `--cfg tokio_unstable`
2368
+
2369
+ - rt: **breaking change** overhaul runtime metrics API ([#4373])
2370
+
2371
+ [#4428]: https://github.com/tokio-rs/tokio/pull/4428
2372
+ [#4316]: https://github.com/tokio-rs/tokio/pull/4316
2373
+ [#4315]: https://github.com/tokio-rs/tokio/pull/4315
2374
+ [#4398]: https://github.com/tokio-rs/tokio/pull/4398
2375
+ [#4383]: https://github.com/tokio-rs/tokio/pull/4383
2376
+ [#4359]: https://github.com/tokio-rs/tokio/pull/4359
2377
+ [#4324]: https://github.com/tokio-rs/tokio/pull/4324
2378
+ [#4384]: https://github.com/tokio-rs/tokio/pull/4384
2379
+ [#4418]: https://github.com/tokio-rs/tokio/pull/4418
2380
+ [#4342]: https://github.com/tokio-rs/tokio/pull/4342
2381
+ [#4334]: https://github.com/tokio-rs/tokio/pull/4334
2382
+ [#4425]: https://github.com/tokio-rs/tokio/pull/4425
2383
+ [#4373]: https://github.com/tokio-rs/tokio/pull/4373
2384
+
2385
+ # 1.15.0 (December 15, 2021)
2386
+
2387
+ ### Fixed
2388
+
2389
+ - io: add cooperative yielding support to `io::empty()` ([#4300])
2390
+ - time: make timeout robust against budget-depleting tasks ([#4314])
2391
+
2392
+ ### Changed
2393
+
2394
+ - update minimum supported Rust version to 1.46.
2395
+
2396
+ ### Added
2397
+
2398
+ - time: add `Interval::reset()` ([#4248])
2399
+ - io: add explicit lifetimes to `AsyncFdReadyGuard` ([#4267])
2400
+ - process: add `Command::as_std()` ([#4295])
2401
+
2402
+ ### Added (unstable)
2403
+
2404
+ - tracing: instrument `tokio::sync` types ([#4302])
2405
+
2406
+ [#4302]: https://github.com/tokio-rs/tokio/pull/4302
2407
+ [#4300]: https://github.com/tokio-rs/tokio/pull/4300
2408
+ [#4295]: https://github.com/tokio-rs/tokio/pull/4295
2409
+ [#4267]: https://github.com/tokio-rs/tokio/pull/4267
2410
+ [#4248]: https://github.com/tokio-rs/tokio/pull/4248
2411
+ [#4314]: https://github.com/tokio-rs/tokio/pull/4314
2412
+
2413
+ # 1.14.0 (November 15, 2021)
2414
+
2415
+ ### Fixed
2416
+
2417
+ - macros: fix compiler errors when using `mut` patterns in `select!` ([#4211])
2418
+ - sync: fix a data race between `oneshot::Sender::send` and awaiting a
2419
+ `oneshot::Receiver` when the oneshot has been closed ([#4226])
2420
+ - sync: make `AtomicWaker` panic safe ([#3689])
2421
+ - runtime: fix basic scheduler dropping tasks outside a runtime context
2422
+ ([#4213])
2423
+
2424
+ ### Added
2425
+
2426
+ - stats: add `RuntimeStats::busy_duration_total` ([#4179], [#4223])
2427
+
2428
+ ### Changed
2429
+
2430
+ - io: updated `copy` buffer size to match `std::io::copy` ([#4209])
2431
+
2432
+ ### Documented
2433
+
2434
+ - io: rename buffer to file in doc-test ([#4230])
2435
+ - sync: fix Notify example ([#4212])
2436
+
2437
+ [#4211]: https://github.com/tokio-rs/tokio/pull/4211
2438
+ [#4226]: https://github.com/tokio-rs/tokio/pull/4226
2439
+ [#3689]: https://github.com/tokio-rs/tokio/pull/3689
2440
+ [#4213]: https://github.com/tokio-rs/tokio/pull/4213
2441
+ [#4179]: https://github.com/tokio-rs/tokio/pull/4179
2442
+ [#4223]: https://github.com/tokio-rs/tokio/pull/4223
2443
+ [#4209]: https://github.com/tokio-rs/tokio/pull/4209
2444
+ [#4230]: https://github.com/tokio-rs/tokio/pull/4230
2445
+ [#4212]: https://github.com/tokio-rs/tokio/pull/4212
2446
+
2447
+ # 1.13.1 (November 15, 2021)
2448
+
2449
+ ### Fixed
2450
+
2451
+ - sync: fix a data race between `oneshot::Sender::send` and awaiting a
2452
+ `oneshot::Receiver` when the oneshot has been closed ([#4226])
2453
+
2454
+ [#4226]: https://github.com/tokio-rs/tokio/pull/4226
2455
+
2456
+ # 1.13.0 (October 29, 2021)
2457
+
2458
+ ### Fixed
2459
+
2460
+ - sync: fix `Notify` to clone the waker before locking its waiter list ([#4129])
2461
+ - tokio: add riscv32 to non atomic64 architectures ([#4185])
2462
+
2463
+ ### Added
2464
+
2465
+ - net: add `poll_{recv,send}_ready` methods to `udp` and `uds_datagram` ([#4131])
2466
+ - net: add `try_*`, `readable`, `writable`, `ready`, and `peer_addr` methods to split halves ([#4120])
2467
+ - sync: add `blocking_lock` to `Mutex` ([#4130])
2468
+ - sync: add `watch::Sender::send_replace` ([#3962], [#4195])
2469
+ - sync: expand `Debug` for `Mutex<T>` impl to unsized `T` ([#4134])
2470
+ - tracing: instrument time::Sleep ([#4072])
2471
+ - tracing: use structured location fields for spawned tasks ([#4128])
2472
+
2473
+ ### Changed
2474
+
2475
+ - io: add assert in `copy_bidirectional` that `poll_write` is sensible ([#4125])
2476
+ - macros: use qualified syntax when polling in `select!` ([#4192])
2477
+ - runtime: handle `block_on` wakeups better ([#4157])
2478
+ - task: allocate callback on heap immediately in debug mode ([#4203])
2479
+ - tokio: assert platform-minimum requirements at build time ([#3797])
2480
+
2481
+ ### Documented
2482
+
2483
+ - docs: conversion of doc comments to indicative mood ([#4174])
2484
+ - docs: add returning on the first error example for `try_join!` ([#4133])
2485
+ - docs: fixing broken links in `tokio/src/lib.rs` ([#4132])
2486
+ - signal: add example with background listener ([#4171])
2487
+ - sync: add more oneshot examples ([#4153])
2488
+ - time: document `Interval::tick` cancel safety ([#4152])
2489
+
2490
+ [#3797]: https://github.com/tokio-rs/tokio/pull/3797
2491
+ [#3962]: https://github.com/tokio-rs/tokio/pull/3962
2492
+ [#4072]: https://github.com/tokio-rs/tokio/pull/4072
2493
+ [#4120]: https://github.com/tokio-rs/tokio/pull/4120
2494
+ [#4125]: https://github.com/tokio-rs/tokio/pull/4125
2495
+ [#4128]: https://github.com/tokio-rs/tokio/pull/4128
2496
+ [#4129]: https://github.com/tokio-rs/tokio/pull/4129
2497
+ [#4130]: https://github.com/tokio-rs/tokio/pull/4130
2498
+ [#4131]: https://github.com/tokio-rs/tokio/pull/4131
2499
+ [#4132]: https://github.com/tokio-rs/tokio/pull/4132
2500
+ [#4133]: https://github.com/tokio-rs/tokio/pull/4133
2501
+ [#4134]: https://github.com/tokio-rs/tokio/pull/4134
2502
+ [#4152]: https://github.com/tokio-rs/tokio/pull/4152
2503
+ [#4153]: https://github.com/tokio-rs/tokio/pull/4153
2504
+ [#4157]: https://github.com/tokio-rs/tokio/pull/4157
2505
+ [#4171]: https://github.com/tokio-rs/tokio/pull/4171
2506
+ [#4174]: https://github.com/tokio-rs/tokio/pull/4174
2507
+ [#4185]: https://github.com/tokio-rs/tokio/pull/4185
2508
+ [#4192]: https://github.com/tokio-rs/tokio/pull/4192
2509
+ [#4195]: https://github.com/tokio-rs/tokio/pull/4195
2510
+ [#4203]: https://github.com/tokio-rs/tokio/pull/4203
2511
+
2512
+ # 1.12.0 (September 21, 2021)
2513
+
2514
+ ### Fixed
2515
+
2516
+ - mpsc: ensure `try_reserve` error is consistent with `try_send` ([#4119])
2517
+ - mpsc: use `spin_loop_hint` instead of `yield_now` ([#4115])
2518
+ - sync: make `SendError` field public ([#4097])
2519
+
2520
+ ### Added
2521
+
2522
+ - io: add POSIX AIO on FreeBSD ([#4054])
2523
+ - io: add convenience method `AsyncSeekExt::rewind` ([#4107])
2524
+ - runtime: add tracing span for `block_on` futures ([#4094])
2525
+ - runtime: callback when a worker parks and unparks ([#4070])
2526
+ - sync: implement `try_recv` for mpsc channels ([#4113])
2527
+
2528
+ ### Documented
2529
+
2530
+ - docs: clarify CPU-bound tasks on Tokio ([#4105])
2531
+ - mpsc: document spurious failures on `poll_recv` ([#4117])
2532
+ - mpsc: document that `PollSender` impls `Sink` ([#4110])
2533
+ - task: document non-guarantees of `yield_now` ([#4091])
2534
+ - time: document paused time details better ([#4061], [#4103])
2535
+
2536
+ [#4027]: https://github.com/tokio-rs/tokio/pull/4027
2537
+ [#4054]: https://github.com/tokio-rs/tokio/pull/4054
2538
+ [#4061]: https://github.com/tokio-rs/tokio/pull/4061
2539
+ [#4070]: https://github.com/tokio-rs/tokio/pull/4070
2540
+ [#4091]: https://github.com/tokio-rs/tokio/pull/4091
2541
+ [#4094]: https://github.com/tokio-rs/tokio/pull/4094
2542
+ [#4097]: https://github.com/tokio-rs/tokio/pull/4097
2543
+ [#4103]: https://github.com/tokio-rs/tokio/pull/4103
2544
+ [#4105]: https://github.com/tokio-rs/tokio/pull/4105
2545
+ [#4107]: https://github.com/tokio-rs/tokio/pull/4107
2546
+ [#4110]: https://github.com/tokio-rs/tokio/pull/4110
2547
+ [#4113]: https://github.com/tokio-rs/tokio/pull/4113
2548
+ [#4115]: https://github.com/tokio-rs/tokio/pull/4115
2549
+ [#4117]: https://github.com/tokio-rs/tokio/pull/4117
2550
+ [#4119]: https://github.com/tokio-rs/tokio/pull/4119
2551
+
2552
+ # 1.11.0 (August 31, 2021)
2553
+
2554
+ ### Fixed
2555
+
2556
+ - time: don't panic when Instant is not monotonic ([#4044])
2557
+ - io: fix panic in `fill_buf` by not calling `poll_fill_buf` twice ([#4084])
2558
+
2559
+ ### Added
2560
+
2561
+ - watch: add `watch::Sender::subscribe` ([#3800])
2562
+ - process: add `from_std` to `ChildStd*` ([#4045])
2563
+ - stats: initial work on runtime stats ([#4043])
2564
+
2565
+ ### Changed
2566
+
2567
+ - tracing: change span naming to new console convention ([#4042])
2568
+ - io: speed-up waking by using uninitialized array ([#4055], [#4071], [#4075])
2569
+
2570
+ ### Documented
2571
+
2572
+ - time: make Sleep examples easier to find ([#4040])
2573
+
2574
+ [#3800]: https://github.com/tokio-rs/tokio/pull/3800
2575
+ [#4040]: https://github.com/tokio-rs/tokio/pull/4040
2576
+ [#4042]: https://github.com/tokio-rs/tokio/pull/4042
2577
+ [#4043]: https://github.com/tokio-rs/tokio/pull/4043
2578
+ [#4044]: https://github.com/tokio-rs/tokio/pull/4044
2579
+ [#4045]: https://github.com/tokio-rs/tokio/pull/4045
2580
+ [#4055]: https://github.com/tokio-rs/tokio/pull/4055
2581
+ [#4071]: https://github.com/tokio-rs/tokio/pull/4071
2582
+ [#4075]: https://github.com/tokio-rs/tokio/pull/4075
2583
+ [#4084]: https://github.com/tokio-rs/tokio/pull/4084
2584
+
2585
+ # 1.10.1 (August 24, 2021)
2586
+
2587
+ ### Fixed
2588
+
2589
+ - runtime: fix leak in UnownedTask ([#4063])
2590
+
2591
+ [#4063]: https://github.com/tokio-rs/tokio/pull/4063
2592
+
2593
+ # 1.10.0 (August 12, 2021)
2594
+
2595
+ ### Added
2596
+
2597
+ - io: add `(read|write)_f(32|64)[_le]` methods ([#4022])
2598
+ - io: add `fill_buf` and `consume` to `AsyncBufReadExt` ([#3991])
2599
+ - process: add `Child::raw_handle()` on windows ([#3998])
2600
+
2601
+ ### Fixed
2602
+
2603
+ - doc: fix non-doc builds with `--cfg docsrs` ([#4020])
2604
+ - io: flush eagerly in `io::copy` ([#4001])
2605
+ - runtime: a debug assert was sometimes triggered during shutdown ([#4005])
2606
+ - sync: use `spin_loop_hint` instead of `yield_now` in mpsc ([#4037])
2607
+ - tokio: the test-util feature depends on rt, sync, and time ([#4036])
2608
+
2609
+ ### Changes
2610
+
2611
+ - runtime: reorganize parts of the runtime ([#3979], [#4005])
2612
+ - signal: make windows docs for signal module show up on unix builds ([#3770])
2613
+ - task: quickly send task to heap on debug mode ([#4009])
2614
+
2615
+ ### Documented
2616
+
2617
+ - io: document cancellation safety of `AsyncBufReadExt` ([#3997])
2618
+ - sync: document when `watch::send` fails ([#4021])
2619
+
2620
+ [#3770]: https://github.com/tokio-rs/tokio/pull/3770
2621
+ [#3979]: https://github.com/tokio-rs/tokio/pull/3979
2622
+ [#3991]: https://github.com/tokio-rs/tokio/pull/3991
2623
+ [#3997]: https://github.com/tokio-rs/tokio/pull/3997
2624
+ [#3998]: https://github.com/tokio-rs/tokio/pull/3998
2625
+ [#4001]: https://github.com/tokio-rs/tokio/pull/4001
2626
+ [#4005]: https://github.com/tokio-rs/tokio/pull/4005
2627
+ [#4009]: https://github.com/tokio-rs/tokio/pull/4009
2628
+ [#4020]: https://github.com/tokio-rs/tokio/pull/4020
2629
+ [#4021]: https://github.com/tokio-rs/tokio/pull/4021
2630
+ [#4022]: https://github.com/tokio-rs/tokio/pull/4022
2631
+ [#4036]: https://github.com/tokio-rs/tokio/pull/4036
2632
+ [#4037]: https://github.com/tokio-rs/tokio/pull/4037
2633
+
2634
+ # 1.9.0 (July 22, 2021)
2635
+
2636
+ ### Added
2637
+
2638
+ - net: allow customized I/O operations for `TcpStream` ([#3888])
2639
+ - sync: add getter for the mutex from a guard ([#3928])
2640
+ - task: expose nameable future for `TaskLocal::scope` ([#3273])
2641
+
2642
+ ### Fixed
2643
+
2644
+ - Fix leak if output of future panics on drop ([#3967])
2645
+ - Fix leak in `LocalSet` ([#3978])
2646
+
2647
+ ### Changes
2648
+
2649
+ - runtime: reorganize parts of the runtime ([#3909], [#3939], [#3950], [#3955], [#3980])
2650
+ - sync: clean up `OnceCell` ([#3945])
2651
+ - task: remove mutex in `JoinError` ([#3959])
2652
+
2653
+ [#3273]: https://github.com/tokio-rs/tokio/pull/3273
2654
+ [#3888]: https://github.com/tokio-rs/tokio/pull/3888
2655
+ [#3909]: https://github.com/tokio-rs/tokio/pull/3909
2656
+ [#3928]: https://github.com/tokio-rs/tokio/pull/3928
2657
+ [#3934]: https://github.com/tokio-rs/tokio/pull/3934
2658
+ [#3939]: https://github.com/tokio-rs/tokio/pull/3939
2659
+ [#3945]: https://github.com/tokio-rs/tokio/pull/3945
2660
+ [#3950]: https://github.com/tokio-rs/tokio/pull/3950
2661
+ [#3955]: https://github.com/tokio-rs/tokio/pull/3955
2662
+ [#3959]: https://github.com/tokio-rs/tokio/pull/3959
2663
+ [#3967]: https://github.com/tokio-rs/tokio/pull/3967
2664
+ [#3978]: https://github.com/tokio-rs/tokio/pull/3978
2665
+ [#3980]: https://github.com/tokio-rs/tokio/pull/3980
2666
+
2667
+ # 1.8.3 (July 26, 2021)
2668
+
2669
+ This release backports two fixes from 1.9.0
2670
+
2671
+ ### Fixed
2672
+
2673
+ - Fix leak if output of future panics on drop ([#3967])
2674
+ - Fix leak in `LocalSet` ([#3978])
2675
+
2676
+ [#3967]: https://github.com/tokio-rs/tokio/pull/3967
2677
+ [#3978]: https://github.com/tokio-rs/tokio/pull/3978
2678
+
2679
+ # 1.8.2 (July 19, 2021)
2680
+
2681
+ Fixes a missed edge case from 1.8.1.
2682
+
2683
+ ### Fixed
2684
+
2685
+ - runtime: drop canceled future on next poll ([#3965])
2686
+
2687
+ [#3965]: https://github.com/tokio-rs/tokio/pull/3965
2688
+
2689
+ # 1.8.1 (July 6, 2021)
2690
+
2691
+ Forward ports 1.5.1 fixes.
2692
+
2693
+ ### Fixed
2694
+
2695
+ - runtime: remotely abort tasks on `JoinHandle::abort` ([#3934])
2696
+
2697
+ [#3934]: https://github.com/tokio-rs/tokio/pull/3934
2698
+
2699
+ # 1.8.0 (July 2, 2021)
2700
+
2701
+ ### Added
2702
+
2703
+ - io: add `get_{ref,mut}` methods to `AsyncFdReadyGuard` and `AsyncFdReadyMutGuard` ([#3807])
2704
+ - io: efficient implementation of vectored writes for `BufWriter` ([#3163])
2705
+ - net: add ready/try methods to `NamedPipe{Client,Server}` ([#3866], [#3899])
2706
+ - sync: add `watch::Receiver::borrow_and_update` ([#3813])
2707
+ - sync: implement `From<T>` for `OnceCell<T>` ([#3877])
2708
+ - time: allow users to specify Interval behavior when delayed ([#3721])
2709
+
2710
+ ### Added (unstable)
2711
+
2712
+ - rt: add `tokio::task::Builder` ([#3881])
2713
+
2714
+ ### Fixed
2715
+
2716
+ - net: handle HUP event with `UnixStream` ([#3898])
2717
+
2718
+ ### Documented
2719
+
2720
+ - doc: document cancellation safety ([#3900])
2721
+ - time: add wait alias to sleep ([#3897])
2722
+ - time: document auto-advancing behavior of runtime ([#3763])
2723
+
2724
+ [#3163]: https://github.com/tokio-rs/tokio/pull/3163
2725
+ [#3721]: https://github.com/tokio-rs/tokio/pull/3721
2726
+ [#3763]: https://github.com/tokio-rs/tokio/pull/3763
2727
+ [#3807]: https://github.com/tokio-rs/tokio/pull/3807
2728
+ [#3813]: https://github.com/tokio-rs/tokio/pull/3813
2729
+ [#3866]: https://github.com/tokio-rs/tokio/pull/3866
2730
+ [#3877]: https://github.com/tokio-rs/tokio/pull/3877
2731
+ [#3881]: https://github.com/tokio-rs/tokio/pull/3881
2732
+ [#3897]: https://github.com/tokio-rs/tokio/pull/3897
2733
+ [#3898]: https://github.com/tokio-rs/tokio/pull/3898
2734
+ [#3899]: https://github.com/tokio-rs/tokio/pull/3899
2735
+ [#3900]: https://github.com/tokio-rs/tokio/pull/3900
2736
+
2737
+ # 1.7.2 (July 6, 2021)
2738
+
2739
+ Forward ports 1.5.1 fixes.
2740
+
2741
+ ### Fixed
2742
+
2743
+ - runtime: remotely abort tasks on `JoinHandle::abort` ([#3934])
2744
+
2745
+ [#3934]: https://github.com/tokio-rs/tokio/pull/3934
2746
+
2747
+ # 1.7.1 (June 18, 2021)
2748
+
2749
+ ### Fixed
2750
+
2751
+ - runtime: fix early task shutdown during runtime shutdown ([#3870])
2752
+
2753
+ [#3870]: https://github.com/tokio-rs/tokio/pull/3870
2754
+
2755
+ # 1.7.0 (June 15, 2021)
2756
+
2757
+ ### Added
2758
+
2759
+ - net: add named pipes on windows ([#3760])
2760
+ - net: add `TcpSocket` from `std::net::TcpStream` conversion ([#3838])
2761
+ - sync: add `receiver_count` to `watch::Sender` ([#3729])
2762
+ - sync: export `sync::notify::Notified` future publicly ([#3840])
2763
+ - tracing: instrument task wakers ([#3836])
2764
+
2765
+ ### Fixed
2766
+
2767
+ - macros: suppress `clippy::default_numeric_fallback` lint in generated code ([#3831])
2768
+ - runtime: immediately drop new tasks when runtime is shut down ([#3752])
2769
+ - sync: deprecate unused `mpsc::RecvError` type ([#3833])
2770
+
2771
+ ### Documented
2772
+
2773
+ - io: clarify EOF condition for `AsyncReadExt::read_buf` ([#3850])
2774
+ - io: clarify limits on return values of `AsyncWrite::poll_write` ([#3820])
2775
+ - sync: add examples to Semaphore ([#3808])
2776
+
2777
+ [#3729]: https://github.com/tokio-rs/tokio/pull/3729
2778
+ [#3752]: https://github.com/tokio-rs/tokio/pull/3752
2779
+ [#3760]: https://github.com/tokio-rs/tokio/pull/3760
2780
+ [#3808]: https://github.com/tokio-rs/tokio/pull/3808
2781
+ [#3820]: https://github.com/tokio-rs/tokio/pull/3820
2782
+ [#3831]: https://github.com/tokio-rs/tokio/pull/3831
2783
+ [#3833]: https://github.com/tokio-rs/tokio/pull/3833
2784
+ [#3836]: https://github.com/tokio-rs/tokio/pull/3836
2785
+ [#3838]: https://github.com/tokio-rs/tokio/pull/3838
2786
+ [#3840]: https://github.com/tokio-rs/tokio/pull/3840
2787
+ [#3850]: https://github.com/tokio-rs/tokio/pull/3850
2788
+
2789
+ # 1.6.3 (July 6, 2021)
2790
+
2791
+ Forward ports 1.5.1 fixes.
2792
+
2793
+ ### Fixed
2794
+
2795
+ - runtime: remotely abort tasks on `JoinHandle::abort` ([#3934])
2796
+
2797
+ [#3934]: https://github.com/tokio-rs/tokio/pull/3934
2798
+
2799
+ # 1.6.2 (June 14, 2021)
2800
+
2801
+ ### Fixes
2802
+
2803
+ - test: sub-ms `time:advance` regression introduced in 1.6 ([#3852])
2804
+
2805
+ [#3852]: https://github.com/tokio-rs/tokio/pull/3852
2806
+
2807
+ # 1.6.1 (May 28, 2021)
2808
+
2809
+ This release reverts [#3518] because it doesn't work on some kernels due to
2810
+ a kernel bug. ([#3803])
2811
+
2812
+ [#3518]: https://github.com/tokio-rs/tokio/issues/3518
2813
+ [#3803]: https://github.com/tokio-rs/tokio/issues/3803
2814
+
2815
+ # 1.6.0 (May 14, 2021)
2816
+
2817
+ ### Added
2818
+
2819
+ - fs: try doing a non-blocking read before punting to the threadpool ([#3518])
2820
+ - io: add `write_all_buf` to `AsyncWriteExt` ([#3737])
2821
+ - io: implement `AsyncSeek` for `BufReader`, `BufWriter`, and `BufStream` ([#3491])
2822
+ - net: support non-blocking vectored I/O ([#3761])
2823
+ - sync: add `mpsc::Sender::{reserve_owned, try_reserve_owned}` ([#3704])
2824
+ - sync: add a `MutexGuard::map` method that returns a `MappedMutexGuard` ([#2472])
2825
+ - time: add getter for Interval's period ([#3705])
2826
+
2827
+ ### Fixed
2828
+
2829
+ - io: wake pending writers on `DuplexStream` close ([#3756])
2830
+ - process: avoid redundant effort to reap orphan processes ([#3743])
2831
+ - signal: use `std::os::raw::c_int` instead of `libc::c_int` on public API ([#3774])
2832
+ - sync: preserve permit state in `notify_waiters` ([#3660])
2833
+ - task: update `JoinHandle` panic message ([#3727])
2834
+ - time: prevent `time::advance` from going too far ([#3712])
2835
+
2836
+ ### Documented
2837
+
2838
+ - net: hide `net::unix::datagram` module from docs ([#3775])
2839
+ - process: updated example ([#3748])
2840
+ - sync: `Barrier` doc should use task, not thread ([#3780])
2841
+ - task: update documentation on `block_in_place` ([#3753])
2842
+
2843
+ [#2472]: https://github.com/tokio-rs/tokio/pull/2472
2844
+ [#3491]: https://github.com/tokio-rs/tokio/pull/3491
2845
+ [#3518]: https://github.com/tokio-rs/tokio/pull/3518
2846
+ [#3660]: https://github.com/tokio-rs/tokio/pull/3660
2847
+ [#3704]: https://github.com/tokio-rs/tokio/pull/3704
2848
+ [#3705]: https://github.com/tokio-rs/tokio/pull/3705
2849
+ [#3712]: https://github.com/tokio-rs/tokio/pull/3712
2850
+ [#3727]: https://github.com/tokio-rs/tokio/pull/3727
2851
+ [#3737]: https://github.com/tokio-rs/tokio/pull/3737
2852
+ [#3743]: https://github.com/tokio-rs/tokio/pull/3743
2853
+ [#3748]: https://github.com/tokio-rs/tokio/pull/3748
2854
+ [#3753]: https://github.com/tokio-rs/tokio/pull/3753
2855
+ [#3756]: https://github.com/tokio-rs/tokio/pull/3756
2856
+ [#3761]: https://github.com/tokio-rs/tokio/pull/3761
2857
+ [#3774]: https://github.com/tokio-rs/tokio/pull/3774
2858
+ [#3775]: https://github.com/tokio-rs/tokio/pull/3775
2859
+ [#3780]: https://github.com/tokio-rs/tokio/pull/3780
2860
+
2861
+ # 1.5.1 (July 6, 2021)
2862
+
2863
+ ### Fixed
2864
+
2865
+ - runtime: remotely abort tasks on `JoinHandle::abort` ([#3934])
2866
+
2867
+ [#3934]: https://github.com/tokio-rs/tokio/pull/3934
2868
+
2869
+ # 1.5.0 (April 12, 2021)
2870
+
2871
+ ### Added
2872
+
2873
+ - io: add `AsyncSeekExt::stream_position` ([#3650])
2874
+ - io: add `AsyncWriteExt::write_vectored` ([#3678])
2875
+ - io: add a `copy_bidirectional` utility ([#3572])
2876
+ - net: implement `IntoRawFd` for `TcpSocket` ([#3684])
2877
+ - sync: add `OnceCell` ([#3591])
2878
+ - sync: add `OwnedRwLockReadGuard` and `OwnedRwLockWriteGuard` ([#3340])
2879
+ - sync: add `Semaphore::is_closed` ([#3673])
2880
+ - sync: add `mpsc::Sender::capacity` ([#3690])
2881
+ - sync: allow configuring `RwLock` max reads ([#3644])
2882
+ - task: add `sync_scope` for `LocalKey` ([#3612])
2883
+
2884
+ ### Fixed
2885
+
2886
+ - chore: try to avoid `noalias` attributes on intrusive linked list ([#3654])
2887
+ - rt: fix panic in `JoinHandle::abort()` when called from other threads ([#3672])
2888
+ - sync: don't panic in `oneshot::try_recv` ([#3674])
2889
+ - sync: fix notifications getting dropped on receiver drop ([#3652])
2890
+ - sync: fix `Semaphore` permit overflow calculation ([#3644])
2891
+
2892
+ ### Documented
2893
+
2894
+ - io: clarify requirements of `AsyncFd` ([#3635])
2895
+ - runtime: fix unclear docs for `{Handle,Runtime}::block_on` ([#3628])
2896
+ - sync: document that `Semaphore` is fair ([#3693])
2897
+ - sync: improve doc on blocking mutex ([#3645])
2898
+
2899
+ [#3340]: https://github.com/tokio-rs/tokio/pull/3340
2900
+ [#3572]: https://github.com/tokio-rs/tokio/pull/3572
2901
+ [#3591]: https://github.com/tokio-rs/tokio/pull/3591
2902
+ [#3612]: https://github.com/tokio-rs/tokio/pull/3612
2903
+ [#3628]: https://github.com/tokio-rs/tokio/pull/3628
2904
+ [#3635]: https://github.com/tokio-rs/tokio/pull/3635
2905
+ [#3644]: https://github.com/tokio-rs/tokio/pull/3644
2906
+ [#3645]: https://github.com/tokio-rs/tokio/pull/3645
2907
+ [#3650]: https://github.com/tokio-rs/tokio/pull/3650
2908
+ [#3652]: https://github.com/tokio-rs/tokio/pull/3652
2909
+ [#3654]: https://github.com/tokio-rs/tokio/pull/3654
2910
+ [#3672]: https://github.com/tokio-rs/tokio/pull/3672
2911
+ [#3673]: https://github.com/tokio-rs/tokio/pull/3673
2912
+ [#3674]: https://github.com/tokio-rs/tokio/pull/3674
2913
+ [#3678]: https://github.com/tokio-rs/tokio/pull/3678
2914
+ [#3684]: https://github.com/tokio-rs/tokio/pull/3684
2915
+ [#3690]: https://github.com/tokio-rs/tokio/pull/3690
2916
+ [#3693]: https://github.com/tokio-rs/tokio/pull/3693
2917
+
2918
+ # 1.4.0 (March 20, 2021)
2919
+
2920
+ ### Added
2921
+
2922
+ - macros: introduce biased argument for `select!` ([#3603])
2923
+ - runtime: add `Handle::block_on` ([#3569])
2924
+
2925
+ ### Fixed
2926
+
2927
+ - runtime: avoid unnecessary polling of `block_on` future ([#3582])
2928
+ - runtime: fix memory leak/growth when creating many runtimes ([#3564])
2929
+ - runtime: mark `EnterGuard` with `must_use` ([#3609])
2930
+
2931
+ ### Documented
2932
+
2933
+ - chore: mention fix for building docs in contributing guide ([#3618])
2934
+ - doc: add link to `PollSender` ([#3613])
2935
+ - doc: alias sleep to delay ([#3604])
2936
+ - sync: improve `Mutex` FIFO explanation ([#3615])
2937
+ - timer: fix double newline in module docs ([#3617])
2938
+
2939
+ [#3564]: https://github.com/tokio-rs/tokio/pull/3564
2940
+ [#3613]: https://github.com/tokio-rs/tokio/pull/3613
2941
+ [#3618]: https://github.com/tokio-rs/tokio/pull/3618
2942
+ [#3617]: https://github.com/tokio-rs/tokio/pull/3617
2943
+ [#3582]: https://github.com/tokio-rs/tokio/pull/3582
2944
+ [#3615]: https://github.com/tokio-rs/tokio/pull/3615
2945
+ [#3603]: https://github.com/tokio-rs/tokio/pull/3603
2946
+ [#3609]: https://github.com/tokio-rs/tokio/pull/3609
2947
+ [#3604]: https://github.com/tokio-rs/tokio/pull/3604
2948
+ [#3569]: https://github.com/tokio-rs/tokio/pull/3569
2949
+
2950
+ # 1.3.0 (March 9, 2021)
2951
+
2952
+ ### Added
2953
+
2954
+ - coop: expose an `unconstrained()` opt-out ([#3547])
2955
+ - net: add `into_std` for net types without it ([#3509])
2956
+ - sync: add `same_channel` method to `mpsc::Sender` ([#3532])
2957
+ - sync: add `{try_,}acquire_many_owned` to `Semaphore` ([#3535])
2958
+ - sync: add back `RwLockWriteGuard::map` and `RwLockWriteGuard::try_map` ([#3348])
2959
+
2960
+ ### Fixed
2961
+
2962
+ - sync: allow `oneshot::Receiver::close` after successful `try_recv` ([#3552])
2963
+ - time: do not panic on `timeout(Duration::MAX)` ([#3551])
2964
+
2965
+ ### Documented
2966
+
2967
+ - doc: doc aliases for pre-1.0 function names ([#3523])
2968
+ - io: fix typos ([#3541])
2969
+ - io: note the EOF behavior of `read_until` ([#3536])
2970
+ - io: update `AsyncRead::poll_read` doc ([#3557])
2971
+ - net: update `UdpSocket` splitting doc ([#3517])
2972
+ - runtime: add link to `LocalSet` on `new_current_thread` ([#3508])
2973
+ - runtime: update documentation of thread limits ([#3527])
2974
+ - sync: do not recommend `join_all` for `Barrier` ([#3514])
2975
+ - sync: documentation for `oneshot` ([#3592])
2976
+ - sync: rename `notify` to `notify_one` ([#3526])
2977
+ - time: fix typo in `Sleep` doc ([#3515])
2978
+ - time: sync `interval.rs` and `time/mod.rs` docs ([#3533])
2979
+
2980
+ [#3348]: https://github.com/tokio-rs/tokio/pull/3348
2981
+ [#3508]: https://github.com/tokio-rs/tokio/pull/3508
2982
+ [#3509]: https://github.com/tokio-rs/tokio/pull/3509
2983
+ [#3514]: https://github.com/tokio-rs/tokio/pull/3514
2984
+ [#3515]: https://github.com/tokio-rs/tokio/pull/3515
2985
+ [#3517]: https://github.com/tokio-rs/tokio/pull/3517
2986
+ [#3523]: https://github.com/tokio-rs/tokio/pull/3523
2987
+ [#3526]: https://github.com/tokio-rs/tokio/pull/3526
2988
+ [#3527]: https://github.com/tokio-rs/tokio/pull/3527
2989
+ [#3532]: https://github.com/tokio-rs/tokio/pull/3532
2990
+ [#3533]: https://github.com/tokio-rs/tokio/pull/3533
2991
+ [#3535]: https://github.com/tokio-rs/tokio/pull/3535
2992
+ [#3536]: https://github.com/tokio-rs/tokio/pull/3536
2993
+ [#3541]: https://github.com/tokio-rs/tokio/pull/3541
2994
+ [#3547]: https://github.com/tokio-rs/tokio/pull/3547
2995
+ [#3551]: https://github.com/tokio-rs/tokio/pull/3551
2996
+ [#3552]: https://github.com/tokio-rs/tokio/pull/3552
2997
+ [#3557]: https://github.com/tokio-rs/tokio/pull/3557
2998
+ [#3592]: https://github.com/tokio-rs/tokio/pull/3592
2999
+
3000
+ # 1.2.0 (February 5, 2021)
3001
+
3002
+ ### Added
3003
+
3004
+ - signal: make `Signal::poll_recv` method public ([#3383])
3005
+
3006
+ ### Fixed
3007
+
3008
+ - time: make `test-util` paused time fully deterministic ([#3492])
3009
+
3010
+ ### Documented
3011
+
3012
+ - sync: link to new broadcast and watch wrappers ([#3504])
3013
+
3014
+ [#3383]: https://github.com/tokio-rs/tokio/pull/3383
3015
+ [#3492]: https://github.com/tokio-rs/tokio/pull/3492
3016
+ [#3504]: https://github.com/tokio-rs/tokio/pull/3504
3017
+
3018
+ # 1.1.1 (January 29, 2021)
3019
+
3020
+ Forward ports 1.0.3 fix.
3021
+
3022
+ ### Fixed
3023
+ - io: memory leak during shutdown ([#3477]).
3024
+
3025
+ # 1.1.0 (January 22, 2021)
3026
+
3027
+ ### Added
3028
+
3029
+ - net: add `try_read_buf` and `try_recv_buf` ([#3351])
3030
+ - mpsc: Add `Sender::try_reserve` function ([#3418])
3031
+ - sync: add `RwLock` `try_read` and `try_write` methods ([#3400])
3032
+ - io: add `ReadBuf::inner_mut` ([#3443])
3033
+
3034
+ ### Changed
3035
+
3036
+ - macros: improve `select!` error message ([#3352])
3037
+ - io: keep track of initialized bytes in `read_to_end` ([#3426])
3038
+ - runtime: consolidate errors for context missing ([#3441])
3039
+
3040
+ ### Fixed
3041
+
3042
+ - task: wake `LocalSet` on `spawn_local` ([#3369])
3043
+ - sync: fix panic in broadcast::Receiver drop ([#3434])
3044
+
3045
+ ### Documented
3046
+ - stream: link to new `Stream` wrappers in `tokio-stream` ([#3343])
3047
+ - docs: mention that `test-util` feature is not enabled with full ([#3397])
3048
+ - process: add documentation to process::Child fields ([#3437])
3049
+ - io: clarify `AsyncFd` docs about changes of the inner fd ([#3430])
3050
+ - net: update datagram docs on splitting ([#3448])
3051
+ - time: document that `Sleep` is not `Unpin` ([#3457])
3052
+ - sync: add link to `PollSemaphore` ([#3456])
3053
+ - task: add `LocalSet` example ([#3438])
3054
+ - sync: improve bounded `mpsc` documentation ([#3458])
3055
+
3056
+ [#3343]: https://github.com/tokio-rs/tokio/pull/3343
3057
+ [#3351]: https://github.com/tokio-rs/tokio/pull/3351
3058
+ [#3352]: https://github.com/tokio-rs/tokio/pull/3352
3059
+ [#3369]: https://github.com/tokio-rs/tokio/pull/3369
3060
+ [#3397]: https://github.com/tokio-rs/tokio/pull/3397
3061
+ [#3400]: https://github.com/tokio-rs/tokio/pull/3400
3062
+ [#3418]: https://github.com/tokio-rs/tokio/pull/3418
3063
+ [#3426]: https://github.com/tokio-rs/tokio/pull/3426
3064
+ [#3430]: https://github.com/tokio-rs/tokio/pull/3430
3065
+ [#3434]: https://github.com/tokio-rs/tokio/pull/3434
3066
+ [#3437]: https://github.com/tokio-rs/tokio/pull/3437
3067
+ [#3438]: https://github.com/tokio-rs/tokio/pull/3438
3068
+ [#3441]: https://github.com/tokio-rs/tokio/pull/3441
3069
+ [#3443]: https://github.com/tokio-rs/tokio/pull/3443
3070
+ [#3448]: https://github.com/tokio-rs/tokio/pull/3448
3071
+ [#3456]: https://github.com/tokio-rs/tokio/pull/3456
3072
+ [#3457]: https://github.com/tokio-rs/tokio/pull/3457
3073
+ [#3458]: https://github.com/tokio-rs/tokio/pull/3458
3074
+
3075
+ # 1.0.3 (January 28, 2021)
3076
+
3077
+ ### Fixed
3078
+ - io: memory leak during shutdown ([#3477]).
3079
+
3080
+ [#3477]: https://github.com/tokio-rs/tokio/pull/3477
3081
+
3082
+ # 1.0.2 (January 14, 2021)
3083
+
3084
+ ### Fixed
3085
+ - io: soundness in `read_to_end` ([#3428]).
3086
+
3087
+ [#3428]: https://github.com/tokio-rs/tokio/pull/3428
3088
+
3089
+ # 1.0.1 (December 25, 2020)
3090
+
3091
+ This release fixes a soundness hole caused by the combination of `RwLockWriteGuard::map`
3092
+ and `RwLockWriteGuard::downgrade` by removing the `map` function. This is a breaking
3093
+ change, but breaking changes are allowed under our semver policy when they are required
3094
+ to fix a soundness hole. (See [this RFC][semver] for more.)
3095
+
3096
+ Note that we have chosen not to do a deprecation cycle or similar because Tokio 1.0.0 was
3097
+ released two days ago, and therefore the impact should be minimal.
3098
+
3099
+ Due to the soundness hole, we have also yanked Tokio version 1.0.0.
3100
+
3101
+ ### Removed
3102
+
3103
+ - sync: remove `RwLockWriteGuard::map` and `RwLockWriteGuard::try_map` ([#3345])
3104
+
3105
+ ### Fixed
3106
+
3107
+ - docs: remove stream feature from docs ([#3335])
3108
+
3109
+ [semver]: https://github.com/rust-lang/rfcs/blob/master/text/1122-language-semver.md#soundness-changes
3110
+ [#3335]: https://github.com/tokio-rs/tokio/pull/3335
3111
+ [#3345]: https://github.com/tokio-rs/tokio/pull/3345
3112
+
3113
+ # 1.0.0 (December 23, 2020)
3114
+
3115
+ Commit to the API and long-term support.
3116
+
3117
+ ### Fixed
3118
+
3119
+ - sync: spurious wakeup in `watch` ([#3234]).
3120
+
3121
+ ### Changed
3122
+
3123
+ - io: rename `AsyncFd::with_io()` to `try_io()` ([#3306])
3124
+ - fs: avoid OS specific `*Ext` traits in favor of conditionally defining the fn ([#3264]).
3125
+ - fs: `Sleep` is `!Unpin` ([#3278]).
3126
+ - net: pass `SocketAddr` by value ([#3125]).
3127
+ - net: `TcpStream::poll_peek` takes `ReadBuf` ([#3259]).
3128
+ - rt: rename `runtime::Builder::max_threads()` to `max_blocking_threads()` ([#3287]).
3129
+ - time: require `current_thread` runtime when calling `time::pause()` ([#3289]).
3130
+
3131
+ ### Removed
3132
+
3133
+ - remove `tokio::prelude` ([#3299]).
3134
+ - io: remove `AsyncFd::with_poll()` ([#3306]).
3135
+ - net: remove `{Tcp,Unix}Stream::shutdown()` in favor of `AsyncWrite::shutdown()` ([#3298]).
3136
+ - stream: move all stream utilities to `tokio-stream` until `Stream` is added to
3137
+ `std` ([#3277]).
3138
+ - sync: mpsc `try_recv()` due to unexpected behavior ([#3263]).
3139
+ - tracing: make unstable as `tracing-core` is not 1.0 yet ([#3266]).
3140
+
3141
+ ### Added
3142
+
3143
+ - fs: `poll_*` fns to `DirEntry` ([#3308]).
3144
+ - io: `poll_*` fns to `io::Lines`, `io::Split` ([#3308]).
3145
+ - io: `_mut` method variants to `AsyncFd` ([#3304]).
3146
+ - net: `poll_*` fns to `UnixDatagram` ([#3223]).
3147
+ - net: `UnixStream` readiness and non-blocking ops ([#3246]).
3148
+ - sync: `UnboundedReceiver::blocking_recv()` ([#3262]).
3149
+ - sync: `watch::Sender::borrow()` ([#3269]).
3150
+ - sync: `Semaphore::close()` ([#3065]).
3151
+ - sync: `poll_recv` fns to `mpsc::Receiver`, `mpsc::UnboundedReceiver` ([#3308]).
3152
+ - time: `poll_tick` fn to `time::Interval` ([#3316]).
3153
+
3154
+ [#3065]: https://github.com/tokio-rs/tokio/pull/3065
3155
+ [#3125]: https://github.com/tokio-rs/tokio/pull/3125
3156
+ [#3223]: https://github.com/tokio-rs/tokio/pull/3223
3157
+ [#3234]: https://github.com/tokio-rs/tokio/pull/3234
3158
+ [#3246]: https://github.com/tokio-rs/tokio/pull/3246
3159
+ [#3259]: https://github.com/tokio-rs/tokio/pull/3259
3160
+ [#3262]: https://github.com/tokio-rs/tokio/pull/3262
3161
+ [#3263]: https://github.com/tokio-rs/tokio/pull/3263
3162
+ [#3264]: https://github.com/tokio-rs/tokio/pull/3264
3163
+ [#3266]: https://github.com/tokio-rs/tokio/pull/3266
3164
+ [#3269]: https://github.com/tokio-rs/tokio/pull/3269
3165
+ [#3277]: https://github.com/tokio-rs/tokio/pull/3277
3166
+ [#3278]: https://github.com/tokio-rs/tokio/pull/3278
3167
+ [#3287]: https://github.com/tokio-rs/tokio/pull/3287
3168
+ [#3289]: https://github.com/tokio-rs/tokio/pull/3289
3169
+ [#3298]: https://github.com/tokio-rs/tokio/pull/3298
3170
+ [#3299]: https://github.com/tokio-rs/tokio/pull/3299
3171
+ [#3304]: https://github.com/tokio-rs/tokio/pull/3304
3172
+ [#3306]: https://github.com/tokio-rs/tokio/pull/3306
3173
+ [#3308]: https://github.com/tokio-rs/tokio/pull/3308
3174
+ [#3316]: https://github.com/tokio-rs/tokio/pull/3316
3175
+
3176
+ # 0.3.6 (December 14, 2020)
3177
+
3178
+ ### Fixed
3179
+
3180
+ - rt: fix deadlock in shutdown ([#3228])
3181
+ - rt: fix panic in task abort when off rt ([#3159])
3182
+ - sync: make `add_permits` panic with usize::MAX >> 3 permits ([#3188])
3183
+ - time: Fix race condition in timer drop ([#3229])
3184
+ - watch: fix spurious wakeup ([#3244])
3185
+
3186
+ ### Added
3187
+
3188
+ - example: add back udp-codec example ([#3205])
3189
+ - net: add `TcpStream::into_std` ([#3189])
3190
+
3191
+ [#3159]: https://github.com/tokio-rs/tokio/pull/3159
3192
+ [#3188]: https://github.com/tokio-rs/tokio/pull/3188
3193
+ [#3189]: https://github.com/tokio-rs/tokio/pull/3189
3194
+ [#3205]: https://github.com/tokio-rs/tokio/pull/3205
3195
+ [#3228]: https://github.com/tokio-rs/tokio/pull/3228
3196
+ [#3229]: https://github.com/tokio-rs/tokio/pull/3229
3197
+ [#3244]: https://github.com/tokio-rs/tokio/pull/3244
3198
+
3199
+ # 0.3.5 (November 30, 2020)
3200
+
3201
+ ### Fixed
3202
+
3203
+ - rt: fix `shutdown_timeout(0)` ([#3196]).
3204
+ - time: fixed race condition with small sleeps ([#3069]).
3205
+
3206
+ ### Added
3207
+
3208
+ - io: `AsyncFd::with_interest()` ([#3167]).
3209
+ - signal: `CtrlC` stream on windows ([#3186]).
3210
+
3211
+ [#3069]: https://github.com/tokio-rs/tokio/pull/3069
3212
+ [#3167]: https://github.com/tokio-rs/tokio/pull/3167
3213
+ [#3186]: https://github.com/tokio-rs/tokio/pull/3186
3214
+ [#3196]: https://github.com/tokio-rs/tokio/pull/3196
3215
+
3216
+ # 0.3.4 (November 18, 2020)
3217
+
3218
+ ### Fixed
3219
+
3220
+ - stream: `StreamMap` `Default` impl bound ([#3093]).
3221
+ - io: `AsyncFd::into_inner()` should deregister the FD ([#3104]).
3222
+
3223
+ ### Changed
3224
+
3225
+ - meta: `parking_lot` feature enabled with `full` ([#3119]).
3226
+
3227
+ ### Added
3228
+
3229
+ - io: `AsyncWrite` vectored writes ([#3149]).
3230
+ - net: TCP/UDP readiness and non-blocking ops ([#3130], [#2743], [#3138]).
3231
+ - net: TCP socket option (linger, send/recv buf size) ([#3145], [#3143]).
3232
+ - net: PID field in `UCred` with solaris/illumos ([#3085]).
3233
+ - rt: `runtime::Handle` allows spawning onto a runtime ([#3079]).
3234
+ - sync: `Notify::notify_waiters()` ([#3098]).
3235
+ - sync: `acquire_many()`, `try_acquire_many()` to `Semaphore` ([#3067]).
3236
+
3237
+ [#2743]: https://github.com/tokio-rs/tokio/pull/2743
3238
+ [#3067]: https://github.com/tokio-rs/tokio/pull/3067
3239
+ [#3079]: https://github.com/tokio-rs/tokio/pull/3079
3240
+ [#3085]: https://github.com/tokio-rs/tokio/pull/3085
3241
+ [#3093]: https://github.com/tokio-rs/tokio/pull/3093
3242
+ [#3098]: https://github.com/tokio-rs/tokio/pull/3098
3243
+ [#3104]: https://github.com/tokio-rs/tokio/pull/3104
3244
+ [#3119]: https://github.com/tokio-rs/tokio/pull/3119
3245
+ [#3130]: https://github.com/tokio-rs/tokio/pull/3130
3246
+ [#3138]: https://github.com/tokio-rs/tokio/pull/3138
3247
+ [#3143]: https://github.com/tokio-rs/tokio/pull/3143
3248
+ [#3145]: https://github.com/tokio-rs/tokio/pull/3145
3249
+ [#3149]: https://github.com/tokio-rs/tokio/pull/3149
3250
+
3251
+ # 0.3.3 (November 2, 2020)
3252
+
3253
+ Fixes a soundness hole by adding a missing `Send` bound to
3254
+ `Runtime::spawn_blocking()`.
3255
+
3256
+ ### Fixed
3257
+
3258
+ - rt: include missing `Send`, fixing soundness hole ([#3089]).
3259
+ - tracing: avoid huge trace span names ([#3074]).
3260
+
3261
+ ### Added
3262
+
3263
+ - net: `TcpSocket::reuseport()`, `TcpSocket::set_reuseport()` ([#3083]).
3264
+ - net: `TcpSocket::reuseaddr()` ([#3093]).
3265
+ - net: `TcpSocket::local_addr()` ([#3093]).
3266
+ - net: add pid to `UCred` ([#2633]).
3267
+
3268
+ [#2633]: https://github.com/tokio-rs/tokio/pull/2633
3269
+ [#3074]: https://github.com/tokio-rs/tokio/pull/3074
3270
+ [#3083]: https://github.com/tokio-rs/tokio/pull/3083
3271
+ [#3089]: https://github.com/tokio-rs/tokio/pull/3089
3272
+ [#3093]: https://github.com/tokio-rs/tokio/pull/3093
3273
+
3274
+ # 0.3.2 (October 27, 2020)
3275
+
3276
+ Adds `AsyncFd` as a replacement for v0.2's `PollEvented`.
3277
+
3278
+ ### Fixed
3279
+
3280
+ - io: fix a potential deadlock when shutting down the I/O driver ([#2903]).
3281
+ - sync: `RwLockWriteGuard::downgrade()` bug ([#2957]).
3282
+
3283
+ ### Added
3284
+
3285
+ - io: `AsyncFd` for receiving readiness events on raw FDs ([#2903]).
3286
+ - net: `poll_*` function on `UdpSocket` ([#2981]).
3287
+ - net: `UdpSocket::take_error()` ([#3051]).
3288
+ - sync: `oneshot::Sender::poll_closed()` ([#3032]).
3289
+
3290
+ [#2903]: https://github.com/tokio-rs/tokio/pull/2903
3291
+ [#2957]: https://github.com/tokio-rs/tokio/pull/2957
3292
+ [#2981]: https://github.com/tokio-rs/tokio/pull/2981
3293
+ [#3032]: https://github.com/tokio-rs/tokio/pull/3032
3294
+ [#3051]: https://github.com/tokio-rs/tokio/pull/3051
3295
+
3296
+ # 0.3.1 (October 21, 2020)
3297
+
3298
+ This release fixes an use-after-free in the IO driver. Additionally, the `read_buf`
3299
+ and `write_buf` methods have been added back to the IO traits, as the bytes crate
3300
+ is now on track to reach version 1.0 together with Tokio.
3301
+
3302
+ ### Fixed
3303
+
3304
+ - net: fix use-after-free ([#3019]).
3305
+ - fs: ensure buffered data is written on shutdown ([#3009]).
3306
+
3307
+ ### Added
3308
+
3309
+ - io: `copy_buf()` ([#2884]).
3310
+ - io: `AsyncReadExt::read_buf()`, `AsyncReadExt::write_buf()` for working with
3311
+ `Buf`/`BufMut` ([#3003]).
3312
+ - rt: `Runtime::spawn_blocking()` ([#2980]).
3313
+ - sync: `watch::Sender::is_closed()` ([#2991]).
3314
+
3315
+ [#2884]: https://github.com/tokio-rs/tokio/pull/2884
3316
+ [#2980]: https://github.com/tokio-rs/tokio/pull/2980
3317
+ [#2991]: https://github.com/tokio-rs/tokio/pull/2991
3318
+ [#3003]: https://github.com/tokio-rs/tokio/pull/3003
3319
+ [#3009]: https://github.com/tokio-rs/tokio/pull/3009
3320
+ [#3019]: https://github.com/tokio-rs/tokio/pull/3019
3321
+
3322
+ # 0.3.0 (October 15, 2020)
3323
+
3324
+ This represents a 1.0 beta release. APIs are polished and future-proofed. APIs
3325
+ not included for 1.0 stabilization have been removed.
3326
+
3327
+ Biggest changes are:
3328
+
3329
+ - I/O driver internal rewrite. The windows implementation includes significant
3330
+ changes.
3331
+ - Runtime API is polished, especially with how it interacts with feature flag
3332
+ combinations.
3333
+ - Feature flags are simplified
3334
+ - `rt-core` and `rt-util` are combined to `rt`
3335
+ - `rt-threaded` is renamed to `rt-multi-thread` to match builder API
3336
+ - `tcp`, `udp`, `uds`, `dns` are combined to `net`.
3337
+ - `parking_lot` is included with `full`
3338
+
3339
+ ### Changes
3340
+
3341
+ - meta: Minimum supported Rust version is now 1.45.
3342
+ - io: `AsyncRead` trait now takes `ReadBuf` in order to safely handle reading
3343
+ into uninitialized memory ([#2758]).
3344
+ - io: Internal I/O driver storage is now able to compact ([#2757]).
3345
+ - rt: `Runtime::block_on` now takes `&self` ([#2782]).
3346
+ - sync: `watch` reworked to decouple receiving a change notification from
3347
+ receiving the value ([#2814], [#2806]).
3348
+ - sync: `Notify::notify` is renamed to `notify_one` ([#2822]).
3349
+ - process: `Child::kill` is now an `async fn` that cleans zombies ([#2823]).
3350
+ - sync: use `const fn` constructors as possible ([#2833], [#2790])
3351
+ - signal: reduce cross-thread notification ([#2835]).
3352
+ - net: tcp,udp,uds types support operations with `&self` ([#2828], [#2919], [#2934]).
3353
+ - sync: blocking `mpsc` channel supports `send` with `&self` ([#2861]).
3354
+ - time: rename `delay_for` and `delay_until` to `sleep` and `sleep_until` ([#2826]).
3355
+ - io: upgrade to `mio` 0.7 ([#2893]).
3356
+ - io: `AsyncSeek` trait is tweaked ([#2885]).
3357
+ - fs: `File` operations take `&self` ([#2930]).
3358
+ - rt: runtime API, and `#[tokio::main]` macro polish ([#2876])
3359
+ - rt: `Runtime::enter` uses an RAII guard instead of a closure ([#2954]).
3360
+ - net: the `from_std` function on all sockets no longer sets socket into non-blocking mode ([#2893])
3361
+
3362
+ ### Added
3363
+
3364
+ - sync: `map` function to lock guards ([#2445]).
3365
+ - sync: `blocking_recv` and `blocking_send` fns to `mpsc` for use outside of Tokio ([#2685]).
3366
+ - rt: `Builder::thread_name_fn` for configuring thread names ([#1921]).
3367
+ - fs: impl `FromRawFd` and `FromRawHandle` for `File` ([#2792]).
3368
+ - process: `Child::wait` and `Child::try_wait` ([#2796]).
3369
+ - rt: support configuring thread keep-alive duration ([#2809]).
3370
+ - rt: `task::JoinHandle::abort` forcibly cancels a spawned task ([#2474]).
3371
+ - sync: `RwLock` write guard to read guard downgrading ([#2733]).
3372
+ - net: add `poll_*` functions that take `&self` to all net types ([#2845])
3373
+ - sync: `get_mut()` for `Mutex`, `RwLock` ([#2856]).
3374
+ - sync: `mpsc::Sender::closed()` waits for `Receiver` half to close ([#2840]).
3375
+ - sync: `mpsc::Sender::is_closed()` returns true if `Receiver` half is closed ([#2726]).
3376
+ - stream: `iter` and `iter_mut` to `StreamMap` ([#2890]).
3377
+ - net: implement `AsRawSocket` on windows ([#2911]).
3378
+ - net: `TcpSocket` creates a socket without binding or listening ([#2920]).
3379
+
3380
+ ### Removed
3381
+
3382
+ - io: vectored ops are removed from `AsyncRead`, `AsyncWrite` traits ([#2882]).
3383
+ - io: `mio` is removed from the public API. `PollEvented` and` Registration` are
3384
+ removed ([#2893]).
3385
+ - io: remove `bytes` from public API. `Buf` and `BufMut` implementation are
3386
+ removed ([#2908]).
3387
+ - time: `DelayQueue` is moved to `tokio-util` ([#2897]).
3388
+
3389
+ ### Fixed
3390
+
3391
+ - io: `stdout` and `stderr` buffering on windows ([#2734]).
3392
+
3393
+ [#1921]: https://github.com/tokio-rs/tokio/pull/1921
3394
+ [#2445]: https://github.com/tokio-rs/tokio/pull/2445
3395
+ [#2474]: https://github.com/tokio-rs/tokio/pull/2474
3396
+ [#2685]: https://github.com/tokio-rs/tokio/pull/2685
3397
+ [#2726]: https://github.com/tokio-rs/tokio/pull/2726
3398
+ [#2733]: https://github.com/tokio-rs/tokio/pull/2733
3399
+ [#2734]: https://github.com/tokio-rs/tokio/pull/2734
3400
+ [#2757]: https://github.com/tokio-rs/tokio/pull/2757
3401
+ [#2758]: https://github.com/tokio-rs/tokio/pull/2758
3402
+ [#2782]: https://github.com/tokio-rs/tokio/pull/2782
3403
+ [#2790]: https://github.com/tokio-rs/tokio/pull/2790
3404
+ [#2792]: https://github.com/tokio-rs/tokio/pull/2792
3405
+ [#2796]: https://github.com/tokio-rs/tokio/pull/2796
3406
+ [#2806]: https://github.com/tokio-rs/tokio/pull/2806
3407
+ [#2809]: https://github.com/tokio-rs/tokio/pull/2809
3408
+ [#2814]: https://github.com/tokio-rs/tokio/pull/2814
3409
+ [#2822]: https://github.com/tokio-rs/tokio/pull/2822
3410
+ [#2823]: https://github.com/tokio-rs/tokio/pull/2823
3411
+ [#2826]: https://github.com/tokio-rs/tokio/pull/2826
3412
+ [#2828]: https://github.com/tokio-rs/tokio/pull/2828
3413
+ [#2833]: https://github.com/tokio-rs/tokio/pull/2833
3414
+ [#2835]: https://github.com/tokio-rs/tokio/pull/2835
3415
+ [#2840]: https://github.com/tokio-rs/tokio/pull/2840
3416
+ [#2845]: https://github.com/tokio-rs/tokio/pull/2845
3417
+ [#2856]: https://github.com/tokio-rs/tokio/pull/2856
3418
+ [#2861]: https://github.com/tokio-rs/tokio/pull/2861
3419
+ [#2876]: https://github.com/tokio-rs/tokio/pull/2876
3420
+ [#2882]: https://github.com/tokio-rs/tokio/pull/2882
3421
+ [#2885]: https://github.com/tokio-rs/tokio/pull/2885
3422
+ [#2890]: https://github.com/tokio-rs/tokio/pull/2890
3423
+ [#2893]: https://github.com/tokio-rs/tokio/pull/2893
3424
+ [#2897]: https://github.com/tokio-rs/tokio/pull/2897
3425
+ [#2908]: https://github.com/tokio-rs/tokio/pull/2908
3426
+ [#2911]: https://github.com/tokio-rs/tokio/pull/2911
3427
+ [#2919]: https://github.com/tokio-rs/tokio/pull/2919
3428
+ [#2920]: https://github.com/tokio-rs/tokio/pull/2920
3429
+ [#2930]: https://github.com/tokio-rs/tokio/pull/2930
3430
+ [#2934]: https://github.com/tokio-rs/tokio/pull/2934
3431
+ [#2954]: https://github.com/tokio-rs/tokio/pull/2954
3432
+
3433
+ # 0.2.22 (July 21, 2020)
3434
+
3435
+ ### Fixes
3436
+
3437
+ - docs: misc improvements ([#2572], [#2658], [#2663], [#2656], [#2647], [#2630], [#2487], [#2621],
3438
+ [#2624], [#2600], [#2623], [#2622], [#2577], [#2569], [#2589], [#2575], [#2540], [#2564], [#2567],
3439
+ [#2520], [#2521], [#2493])
3440
+ - rt: allow calls to `block_on` inside calls to `block_in_place` that are
3441
+ themselves inside `block_on` ([#2645])
3442
+ - net: fix non-portable behavior when dropping `TcpStream` `OwnedWriteHalf` ([#2597])
3443
+ - io: improve stack usage by allocating large buffers on directly on the heap
3444
+ ([#2634])
3445
+ - io: fix unsound pin projection in `AsyncReadExt::read_buf` and
3446
+ `AsyncWriteExt::write_buf` ([#2612])
3447
+ - io: fix unnecessary zeroing for `AsyncRead` implementors ([#2525])
3448
+ - io: Fix `BufReader` not correctly forwarding `poll_write_buf` ([#2654])
3449
+ - io: fix panic in `AsyncReadExt::read_line` ([#2541])
3450
+
3451
+ ### Changes
3452
+
3453
+ - coop: returning `Poll::Pending` no longer decrements the task budget ([#2549])
3454
+
3455
+ ### Added
3456
+
3457
+ - io: little-endian variants of `AsyncReadExt` and `AsyncWriteExt` methods
3458
+ ([#1915])
3459
+ - task: add [`tracing`] instrumentation to spawned tasks ([#2655])
3460
+ - sync: allow unsized types in `Mutex` and `RwLock` (via `default` constructors)
3461
+ ([#2615])
3462
+ - net: add `ToSocketAddrs` implementation for `&[SocketAddr]` ([#2604])
3463
+ - fs: add `OpenOptionsExt` for `OpenOptions` ([#2515])
3464
+ - fs: add `DirBuilder` ([#2524])
3465
+
3466
+ [`tracing`]: https://crates.io/crates/tracing
3467
+ [#1915]: https://github.com/tokio-rs/tokio/pull/1915
3468
+ [#2487]: https://github.com/tokio-rs/tokio/pull/2487
3469
+ [#2493]: https://github.com/tokio-rs/tokio/pull/2493
3470
+ [#2515]: https://github.com/tokio-rs/tokio/pull/2515
3471
+ [#2520]: https://github.com/tokio-rs/tokio/pull/2520
3472
+ [#2521]: https://github.com/tokio-rs/tokio/pull/2521
3473
+ [#2524]: https://github.com/tokio-rs/tokio/pull/2524
3474
+ [#2525]: https://github.com/tokio-rs/tokio/pull/2525
3475
+ [#2540]: https://github.com/tokio-rs/tokio/pull/2540
3476
+ [#2541]: https://github.com/tokio-rs/tokio/pull/2541
3477
+ [#2549]: https://github.com/tokio-rs/tokio/pull/2549
3478
+ [#2564]: https://github.com/tokio-rs/tokio/pull/2564
3479
+ [#2567]: https://github.com/tokio-rs/tokio/pull/2567
3480
+ [#2569]: https://github.com/tokio-rs/tokio/pull/2569
3481
+ [#2572]: https://github.com/tokio-rs/tokio/pull/2572
3482
+ [#2575]: https://github.com/tokio-rs/tokio/pull/2575
3483
+ [#2577]: https://github.com/tokio-rs/tokio/pull/2577
3484
+ [#2589]: https://github.com/tokio-rs/tokio/pull/2589
3485
+ [#2597]: https://github.com/tokio-rs/tokio/pull/2597
3486
+ [#2600]: https://github.com/tokio-rs/tokio/pull/2600
3487
+ [#2604]: https://github.com/tokio-rs/tokio/pull/2604
3488
+ [#2612]: https://github.com/tokio-rs/tokio/pull/2612
3489
+ [#2615]: https://github.com/tokio-rs/tokio/pull/2615
3490
+ [#2621]: https://github.com/tokio-rs/tokio/pull/2621
3491
+ [#2622]: https://github.com/tokio-rs/tokio/pull/2622
3492
+ [#2623]: https://github.com/tokio-rs/tokio/pull/2623
3493
+ [#2624]: https://github.com/tokio-rs/tokio/pull/2624
3494
+ [#2630]: https://github.com/tokio-rs/tokio/pull/2630
3495
+ [#2634]: https://github.com/tokio-rs/tokio/pull/2634
3496
+ [#2645]: https://github.com/tokio-rs/tokio/pull/2645
3497
+ [#2647]: https://github.com/tokio-rs/tokio/pull/2647
3498
+ [#2654]: https://github.com/tokio-rs/tokio/pull/2654
3499
+ [#2655]: https://github.com/tokio-rs/tokio/pull/2655
3500
+ [#2656]: https://github.com/tokio-rs/tokio/pull/2656
3501
+ [#2658]: https://github.com/tokio-rs/tokio/pull/2658
3502
+ [#2663]: https://github.com/tokio-rs/tokio/pull/2663
3503
+
3504
+ # 0.2.21 (May 13, 2020)
3505
+
3506
+ ### Fixes
3507
+
3508
+ - macros: disambiguate built-in `#[test]` attribute in macro expansion ([#2503])
3509
+ - rt: `LocalSet` and task budgeting ([#2462]).
3510
+ - rt: task budgeting with `block_in_place` ([#2502]).
3511
+ - sync: release `broadcast` channel memory without sending a value ([#2509]).
3512
+ - time: notify when resetting a `Delay` to a time in the past ([#2290])
3513
+
3514
+ ### Added
3515
+
3516
+ - io: `get_mut`, `get_ref`, and `into_inner` to `Lines` ([#2450]).
3517
+ - io: `mio::Ready` argument to `PollEvented` ([#2419]).
3518
+ - os: illumos support ([#2486]).
3519
+ - rt: `Handle::spawn_blocking` ([#2501]).
3520
+ - sync: `OwnedMutexGuard` for `Arc<Mutex<T>>` ([#2455]).
3521
+
3522
+ [#2290]: https://github.com/tokio-rs/tokio/pull/2290
3523
+ [#2419]: https://github.com/tokio-rs/tokio/pull/2419
3524
+ [#2450]: https://github.com/tokio-rs/tokio/pull/2450
3525
+ [#2455]: https://github.com/tokio-rs/tokio/pull/2455
3526
+ [#2462]: https://github.com/tokio-rs/tokio/pull/2462
3527
+ [#2486]: https://github.com/tokio-rs/tokio/pull/2486
3528
+ [#2501]: https://github.com/tokio-rs/tokio/pull/2501
3529
+ [#2502]: https://github.com/tokio-rs/tokio/pull/2502
3530
+ [#2503]: https://github.com/tokio-rs/tokio/pull/2503
3531
+ [#2509]: https://github.com/tokio-rs/tokio/pull/2509
3532
+
3533
+ # 0.2.20 (April 28, 2020)
3534
+
3535
+ ### Fixes
3536
+
3537
+ - sync: `broadcast` closing the channel no longer requires capacity ([#2448]).
3538
+ - rt: regression when configuring runtime with `max_threads` less than number of CPUs ([#2457]).
3539
+
3540
+ [#2448]: https://github.com/tokio-rs/tokio/pull/2448
3541
+ [#2457]: https://github.com/tokio-rs/tokio/pull/2457
3542
+
3543
+ # 0.2.19 (April 24, 2020)
3544
+
3545
+ ### Fixes
3546
+
3547
+ - docs: misc improvements ([#2400], [#2405], [#2414], [#2420], [#2423], [#2426], [#2427], [#2434], [#2436], [#2440]).
3548
+ - rt: support `block_in_place` in more contexts ([#2409], [#2410]).
3549
+ - stream: no panic in `merge()` and `chain()` when using `size_hint()` ([#2430]).
3550
+ - task: include visibility modifier when defining a task-local ([#2416]).
3551
+
3552
+ ### Added
3553
+
3554
+ - rt: `runtime::Handle::block_on` ([#2437]).
3555
+ - sync: owned `Semaphore` permit ([#2421]).
3556
+ - tcp: owned split ([#2270]).
3557
+
3558
+ [#2270]: https://github.com/tokio-rs/tokio/pull/2270
3559
+ [#2400]: https://github.com/tokio-rs/tokio/pull/2400
3560
+ [#2405]: https://github.com/tokio-rs/tokio/pull/2405
3561
+ [#2409]: https://github.com/tokio-rs/tokio/pull/2409
3562
+ [#2410]: https://github.com/tokio-rs/tokio/pull/2410
3563
+ [#2414]: https://github.com/tokio-rs/tokio/pull/2414
3564
+ [#2416]: https://github.com/tokio-rs/tokio/pull/2416
3565
+ [#2420]: https://github.com/tokio-rs/tokio/pull/2420
3566
+ [#2421]: https://github.com/tokio-rs/tokio/pull/2421
3567
+ [#2423]: https://github.com/tokio-rs/tokio/pull/2423
3568
+ [#2426]: https://github.com/tokio-rs/tokio/pull/2426
3569
+ [#2427]: https://github.com/tokio-rs/tokio/pull/2427
3570
+ [#2430]: https://github.com/tokio-rs/tokio/pull/2430
3571
+ [#2434]: https://github.com/tokio-rs/tokio/pull/2434
3572
+ [#2436]: https://github.com/tokio-rs/tokio/pull/2436
3573
+ [#2437]: https://github.com/tokio-rs/tokio/pull/2437
3574
+ [#2440]: https://github.com/tokio-rs/tokio/pull/2440
3575
+
3576
+ # 0.2.18 (April 12, 2020)
3577
+
3578
+ ### Fixes
3579
+
3580
+ - task: `LocalSet` was incorrectly marked as `Send` ([#2398])
3581
+ - io: correctly report `WriteZero` failure in `write_int` ([#2334])
3582
+
3583
+ [#2334]: https://github.com/tokio-rs/tokio/pull/2334
3584
+ [#2398]: https://github.com/tokio-rs/tokio/pull/2398
3585
+
3586
+ # 0.2.17 (April 9, 2020)
3587
+
3588
+ ### Fixes
3589
+
3590
+ - rt: bug in work-stealing queue ([#2387])
3591
+
3592
+ ### Changes
3593
+
3594
+ - rt: threadpool uses logical CPU count instead of physical by default ([#2391])
3595
+
3596
+ [#2387]: https://github.com/tokio-rs/tokio/pull/2387
3597
+ [#2391]: https://github.com/tokio-rs/tokio/pull/2391
3598
+
3599
+ # 0.2.16 (April 3, 2020)
3600
+
3601
+ ### Fixes
3602
+
3603
+ - sync: fix a regression where `Mutex`, `Semaphore`, and `RwLock` futures no
3604
+ longer implement `Sync` ([#2375])
3605
+ - fs: fix `fs::copy` not copying file permissions ([#2354])
3606
+
3607
+ ### Added
3608
+
3609
+ - time: added `deadline` method to `delay_queue::Expired` ([#2300])
3610
+ - io: added `StreamReader` ([#2052])
3611
+
3612
+ [#2052]: https://github.com/tokio-rs/tokio/pull/2052
3613
+ [#2300]: https://github.com/tokio-rs/tokio/pull/2300
3614
+ [#2354]: https://github.com/tokio-rs/tokio/pull/2354
3615
+ [#2375]: https://github.com/tokio-rs/tokio/pull/2375
3616
+
3617
+ # 0.2.15 (April 2, 2020)
3618
+
3619
+ ### Fixes
3620
+
3621
+ - rt: fix queue regression ([#2362]).
3622
+
3623
+ ### Added
3624
+
3625
+ - sync: Add disarm to `mpsc::Sender` ([#2358]).
3626
+
3627
+ [#2358]: https://github.com/tokio-rs/tokio/pull/2358
3628
+ [#2362]: https://github.com/tokio-rs/tokio/pull/2362
3629
+
3630
+ # 0.2.14 (April 1, 2020)
3631
+
3632
+ ### Fixes
3633
+
3634
+ - rt: concurrency bug in scheduler ([#2273]).
3635
+ - rt: concurrency bug with shell runtime ([#2333]).
3636
+ - test-util: correct pause/resume of time ([#2253]).
3637
+ - time: `DelayQueue` correct wakeup after `insert` ([#2285]).
3638
+
3639
+ ### Added
3640
+
3641
+ - io: impl `RawFd`, `AsRawHandle` for std io types ([#2335]).
3642
+ - rt: automatic cooperative task yielding ([#2160], [#2343], [#2349]).
3643
+ - sync: `RwLock::into_inner` ([#2321]).
3644
+
3645
+ ### Changed
3646
+
3647
+ - sync: semaphore, mutex internals rewritten to avoid allocations ([#2325]).
3648
+
3649
+ [#2160]: https://github.com/tokio-rs/tokio/pull/2160
3650
+ [#2253]: https://github.com/tokio-rs/tokio/pull/2253
3651
+ [#2273]: https://github.com/tokio-rs/tokio/pull/2273
3652
+ [#2285]: https://github.com/tokio-rs/tokio/pull/2285
3653
+ [#2321]: https://github.com/tokio-rs/tokio/pull/2321
3654
+ [#2325]: https://github.com/tokio-rs/tokio/pull/2325
3655
+ [#2333]: https://github.com/tokio-rs/tokio/pull/2333
3656
+ [#2335]: https://github.com/tokio-rs/tokio/pull/2335
3657
+ [#2343]: https://github.com/tokio-rs/tokio/pull/2343
3658
+ [#2349]: https://github.com/tokio-rs/tokio/pull/2349
3659
+
3660
+ # 0.2.13 (February 28, 2020)
3661
+
3662
+ ### Fixes
3663
+
3664
+ - macros: unresolved import in `pin!` ([#2281]).
3665
+
3666
+ [#2281]: https://github.com/tokio-rs/tokio/pull/2281
3667
+
3668
+ # 0.2.12 (February 27, 2020)
3669
+
3670
+ ### Fixes
3671
+
3672
+ - net: `UnixStream::poll_shutdown` should call `shutdown(Write)` ([#2245]).
3673
+ - process: Wake up read and write on `EPOLLERR` ([#2218]).
3674
+ - rt: potential deadlock when using `block_in_place` and shutting down the
3675
+ runtime ([#2119]).
3676
+ - rt: only detect number of CPUs if `core_threads` not specified ([#2238]).
3677
+ - sync: reduce `watch::Receiver` struct size ([#2191]).
3678
+ - time: succeed when setting delay of `$MAX-1` ([#2184]).
3679
+ - time: avoid having to poll `DelayQueue` after inserting new delay ([#2217]).
3680
+
3681
+ ### Added
3682
+
3683
+ - macros: `pin!` variant that assigns to identifier and pins ([#2274]).
3684
+ - net: impl `Stream` for `Listener` types ([#2275]).
3685
+ - rt: `Runtime::shutdown_timeout` waits for runtime to shutdown for specified
3686
+ duration ([#2186]).
3687
+ - stream: `StreamMap` merges streams and can insert / remove streams at
3688
+ runtime ([#2185]).
3689
+ - stream: `StreamExt::skip()` skips a fixed number of items ([#2204]).
3690
+ - stream: `StreamExt::skip_while()` skips items based on a predicate ([#2205]).
3691
+ - sync: `Notify` provides basic `async` / `await` task notification ([#2210]).
3692
+ - sync: `Mutex::into_inner` retrieves guarded data ([#2250]).
3693
+ - sync: `mpsc::Sender::send_timeout` sends, waiting for up to specified duration
3694
+ for channel capacity ([#2227]).
3695
+ - time: impl `Ord` and `Hash` for `Instant` ([#2239]).
3696
+
3697
+ [#2119]: https://github.com/tokio-rs/tokio/pull/2119
3698
+ [#2184]: https://github.com/tokio-rs/tokio/pull/2184
3699
+ [#2185]: https://github.com/tokio-rs/tokio/pull/2185
3700
+ [#2186]: https://github.com/tokio-rs/tokio/pull/2186
3701
+ [#2191]: https://github.com/tokio-rs/tokio/pull/2191
3702
+ [#2204]: https://github.com/tokio-rs/tokio/pull/2204
3703
+ [#2205]: https://github.com/tokio-rs/tokio/pull/2205
3704
+ [#2210]: https://github.com/tokio-rs/tokio/pull/2210
3705
+ [#2217]: https://github.com/tokio-rs/tokio/pull/2217
3706
+ [#2218]: https://github.com/tokio-rs/tokio/pull/2218
3707
+ [#2227]: https://github.com/tokio-rs/tokio/pull/2227
3708
+ [#2238]: https://github.com/tokio-rs/tokio/pull/2238
3709
+ [#2239]: https://github.com/tokio-rs/tokio/pull/2239
3710
+ [#2245]: https://github.com/tokio-rs/tokio/pull/2245
3711
+ [#2250]: https://github.com/tokio-rs/tokio/pull/2250
3712
+ [#2274]: https://github.com/tokio-rs/tokio/pull/2274
3713
+ [#2275]: https://github.com/tokio-rs/tokio/pull/2275
3714
+
3715
+ # 0.2.11 (January 27, 2020)
3716
+
3717
+ ### Fixes
3718
+
3719
+ - docs: misc fixes and tweaks ([#2155], [#2103], [#2027], [#2167], [#2175]).
3720
+ - macros: handle generics in `#[tokio::main]` method ([#2177]).
3721
+ - sync: `broadcast` potential lost notifications ([#2135]).
3722
+ - rt: improve "no runtime" panic messages ([#2145]).
3723
+
3724
+ ### Added
3725
+
3726
+ - optional support for using `parking_lot` internally ([#2164]).
3727
+ - fs: `fs::copy`, an async version of `std::fs::copy` ([#2079]).
3728
+ - macros: `select!` waits for the first branch to complete ([#2152]).
3729
+ - macros: `join!` waits for all branches to complete ([#2158]).
3730
+ - macros: `try_join!` waits for all branches to complete or the first error ([#2169]).
3731
+ - macros: `pin!` pins a value to the stack ([#2163]).
3732
+ - net: `ReadHalf::poll()` and `ReadHalf::poll_peak` ([#2151])
3733
+ - stream: `StreamExt::timeout()` sets a per-item max duration ([#2149]).
3734
+ - stream: `StreamExt::fold()` applies a function, producing a single value. ([#2122]).
3735
+ - sync: impl `Eq`, `PartialEq` for `oneshot::RecvError` ([#2168]).
3736
+ - task: methods for inspecting the `JoinError` cause ([#2051]).
3737
+
3738
+ [#2027]: https://github.com/tokio-rs/tokio/pull/2027
3739
+ [#2051]: https://github.com/tokio-rs/tokio/pull/2051
3740
+ [#2079]: https://github.com/tokio-rs/tokio/pull/2079
3741
+ [#2103]: https://github.com/tokio-rs/tokio/pull/2103
3742
+ [#2122]: https://github.com/tokio-rs/tokio/pull/2122
3743
+ [#2135]: https://github.com/tokio-rs/tokio/pull/2135
3744
+ [#2145]: https://github.com/tokio-rs/tokio/pull/2145
3745
+ [#2149]: https://github.com/tokio-rs/tokio/pull/2149
3746
+ [#2151]: https://github.com/tokio-rs/tokio/pull/2151
3747
+ [#2152]: https://github.com/tokio-rs/tokio/pull/2152
3748
+ [#2155]: https://github.com/tokio-rs/tokio/pull/2155
3749
+ [#2158]: https://github.com/tokio-rs/tokio/pull/2158
3750
+ [#2163]: https://github.com/tokio-rs/tokio/pull/2163
3751
+ [#2164]: https://github.com/tokio-rs/tokio/pull/2164
3752
+ [#2167]: https://github.com/tokio-rs/tokio/pull/2167
3753
+ [#2168]: https://github.com/tokio-rs/tokio/pull/2168
3754
+ [#2169]: https://github.com/tokio-rs/tokio/pull/2169
3755
+ [#2175]: https://github.com/tokio-rs/tokio/pull/2175
3756
+ [#2177]: https://github.com/tokio-rs/tokio/pull/2177
3757
+
3758
+ # 0.2.10 (January 21, 2020)
3759
+
3760
+ ### Fixes
3761
+
3762
+ - `#[tokio::main]` when `rt-core` feature flag is not enabled ([#2139]).
3763
+ - remove `AsyncBufRead` from `BufStream` impl block ([#2108]).
3764
+ - potential undefined behavior when implementing `AsyncRead` incorrectly ([#2030]).
3765
+
3766
+ ### Added
3767
+
3768
+ - `BufStream::with_capacity` ([#2125]).
3769
+ - impl `From` and `Default` for `RwLock` ([#2089]).
3770
+ - `io::ReadHalf::is_pair_of` checks if provided `WriteHalf` is for the same
3771
+ underlying object ([#1762], [#2144]).
3772
+ - `runtime::Handle::try_current()` returns a handle to the current runtime ([#2118]).
3773
+ - `stream::empty()` returns an immediately ready empty stream ([#2092]).
3774
+ - `stream::once(val)` returns a stream that yields a single value: `val` ([#2094]).
3775
+ - `stream::pending()` returns a stream that never becomes ready ([#2092]).
3776
+ - `StreamExt::chain()` sequences a second stream after the first completes ([#2093]).
3777
+ - `StreamExt::collect()` transform a stream into a collection ([#2109]).
3778
+ - `StreamExt::fuse` ends the stream after the first `None` ([#2085]).
3779
+ - `StreamExt::merge` combines two streams, yielding values as they become ready ([#2091]).
3780
+ - Task-local storage ([#2126]).
3781
+
3782
+ [#1762]: https://github.com/tokio-rs/tokio/pull/1762
3783
+ [#2030]: https://github.com/tokio-rs/tokio/pull/2030
3784
+ [#2085]: https://github.com/tokio-rs/tokio/pull/2085
3785
+ [#2089]: https://github.com/tokio-rs/tokio/pull/2089
3786
+ [#2091]: https://github.com/tokio-rs/tokio/pull/2091
3787
+ [#2092]: https://github.com/tokio-rs/tokio/pull/2092
3788
+ [#2093]: https://github.com/tokio-rs/tokio/pull/2093
3789
+ [#2094]: https://github.com/tokio-rs/tokio/pull/2094
3790
+ [#2108]: https://github.com/tokio-rs/tokio/pull/2108
3791
+ [#2109]: https://github.com/tokio-rs/tokio/pull/2109
3792
+ [#2118]: https://github.com/tokio-rs/tokio/pull/2118
3793
+ [#2125]: https://github.com/tokio-rs/tokio/pull/2125
3794
+ [#2126]: https://github.com/tokio-rs/tokio/pull/2126
3795
+ [#2139]: https://github.com/tokio-rs/tokio/pull/2139
3796
+ [#2144]: https://github.com/tokio-rs/tokio/pull/2144
3797
+
3798
+ # 0.2.9 (January 9, 2020)
3799
+
3800
+ ### Fixes
3801
+
3802
+ - `AsyncSeek` impl for `File` ([#1986]).
3803
+ - rt: shutdown deadlock in `threaded_scheduler` ([#2074], [#2082]).
3804
+ - rt: memory ordering when dropping `JoinHandle` ([#2044]).
3805
+ - docs: misc API documentation fixes and improvements.
3806
+
3807
+ [#1986]: https://github.com/tokio-rs/tokio/pull/1986
3808
+ [#2044]: https://github.com/tokio-rs/tokio/pull/2044
3809
+ [#2074]: https://github.com/tokio-rs/tokio/pull/2074
3810
+ [#2082]: https://github.com/tokio-rs/tokio/pull/2082
3811
+
3812
+ # 0.2.8 (January 7, 2020)
3813
+
3814
+ ### Fixes
3815
+
3816
+ - depend on new version of `tokio-macros`.
3817
+
3818
+ # 0.2.7 (January 7, 2020)
3819
+
3820
+ ### Fixes
3821
+
3822
+ - potential deadlock when dropping `basic_scheduler` Runtime.
3823
+ - calling `spawn_blocking` from within a `spawn_blocking` ([#2006]).
3824
+ - storing a `Runtime` instance in a thread-local ([#2011]).
3825
+ - miscellaneous documentation fixes.
3826
+ - rt: fix `Waker::will_wake` to return true when tasks match ([#2045]).
3827
+ - test-util: `time::advance` runs pending tasks before changing the time ([#2059]).
3828
+
3829
+ ### Added
3830
+
3831
+ - `net::lookup_host` maps a `T: ToSocketAddrs` to a stream of `SocketAddrs` ([#1870]).
3832
+ - `process::Child` fields are made public to match `std` ([#2014]).
3833
+ - impl `Stream` for `sync::broadcast::Receiver` ([#2012]).
3834
+ - `sync::RwLock` provides an asynchronous read-write lock ([#1699]).
3835
+ - `runtime::Handle::current` returns the handle for the current runtime ([#2040]).
3836
+ - `StreamExt::filter` filters stream values according to a predicate ([#2001]).
3837
+ - `StreamExt::filter_map` simultaneously filter and map stream values ([#2001]).
3838
+ - `StreamExt::try_next` convenience for streams of `Result<T, E>` ([#2005]).
3839
+ - `StreamExt::take` limits a stream to a specified number of values ([#2025]).
3840
+ - `StreamExt::take_while` limits a stream based on a predicate ([#2029]).
3841
+ - `StreamExt::all` tests if every element of the stream matches a predicate ([#2035]).
3842
+ - `StreamExt::any` tests if any element of the stream matches a predicate ([#2034]).
3843
+ - `task::LocalSet.await` runs spawned tasks until the set is idle ([#1971]).
3844
+ - `time::DelayQueue::len` returns the number entries in the queue ([#1755]).
3845
+ - expose runtime options from the `#[tokio::main]` and `#[tokio::test]` ([#2022]).
3846
+
3847
+ [#1699]: https://github.com/tokio-rs/tokio/pull/1699
3848
+ [#1755]: https://github.com/tokio-rs/tokio/pull/1755
3849
+ [#1870]: https://github.com/tokio-rs/tokio/pull/1870
3850
+ [#1971]: https://github.com/tokio-rs/tokio/pull/1971
3851
+ [#2001]: https://github.com/tokio-rs/tokio/pull/2001
3852
+ [#2005]: https://github.com/tokio-rs/tokio/pull/2005
3853
+ [#2006]: https://github.com/tokio-rs/tokio/pull/2006
3854
+ [#2011]: https://github.com/tokio-rs/tokio/pull/2011
3855
+ [#2012]: https://github.com/tokio-rs/tokio/pull/2012
3856
+ [#2014]: https://github.com/tokio-rs/tokio/pull/2014
3857
+ [#2022]: https://github.com/tokio-rs/tokio/pull/2022
3858
+ [#2025]: https://github.com/tokio-rs/tokio/pull/2025
3859
+ [#2029]: https://github.com/tokio-rs/tokio/pull/2029
3860
+ [#2034]: https://github.com/tokio-rs/tokio/pull/2034
3861
+ [#2035]: https://github.com/tokio-rs/tokio/pull/2035
3862
+ [#2040]: https://github.com/tokio-rs/tokio/pull/2040
3863
+ [#2045]: https://github.com/tokio-rs/tokio/pull/2045
3864
+ [#2059]: https://github.com/tokio-rs/tokio/pull/2059
3865
+
3866
+ # 0.2.6 (December 19, 2019)
3867
+
3868
+ ### Fixes
3869
+
3870
+ - `fs::File::seek` API regression ([#1991]).
3871
+
3872
+ [#1991]: https://github.com/tokio-rs/tokio/pull/1991
3873
+
3874
+ # 0.2.5 (December 18, 2019)
3875
+
3876
+ ### Added
3877
+
3878
+ - `io::AsyncSeek` trait ([#1924]).
3879
+ - `Mutex::try_lock` ([#1939])
3880
+ - `mpsc::Receiver::try_recv` and `mpsc::UnboundedReceiver::try_recv` ([#1939]).
3881
+ - `writev` support for `TcpStream` ([#1956]).
3882
+ - `time::throttle` for throttling streams ([#1949]).
3883
+ - implement `Stream` for `time::DelayQueue` ([#1975]).
3884
+ - `sync::broadcast` provides a fan-out channel ([#1943]).
3885
+ - `sync::Semaphore` provides an async semaphore ([#1973]).
3886
+ - `stream::StreamExt` provides stream utilities ([#1962]).
3887
+
3888
+ ### Fixes
3889
+
3890
+ - deadlock risk while shutting down the runtime ([#1972]).
3891
+ - panic while shutting down the runtime ([#1978]).
3892
+ - `sync::MutexGuard` debug output ([#1961]).
3893
+ - misc doc improvements ([#1933], [#1934], [#1940], [#1942]).
3894
+
3895
+ ### Changes
3896
+
3897
+ - runtime threads are configured with `runtime::Builder::core_threads` and
3898
+ `runtime::Builder::max_threads`. `runtime::Builder::num_threads` is
3899
+ deprecated ([#1977]).
3900
+
3901
+ [#1924]: https://github.com/tokio-rs/tokio/pull/1924
3902
+ [#1933]: https://github.com/tokio-rs/tokio/pull/1933
3903
+ [#1934]: https://github.com/tokio-rs/tokio/pull/1934
3904
+ [#1939]: https://github.com/tokio-rs/tokio/pull/1939
3905
+ [#1940]: https://github.com/tokio-rs/tokio/pull/1940
3906
+ [#1942]: https://github.com/tokio-rs/tokio/pull/1942
3907
+ [#1943]: https://github.com/tokio-rs/tokio/pull/1943
3908
+ [#1949]: https://github.com/tokio-rs/tokio/pull/1949
3909
+ [#1956]: https://github.com/tokio-rs/tokio/pull/1956
3910
+ [#1961]: https://github.com/tokio-rs/tokio/pull/1961
3911
+ [#1962]: https://github.com/tokio-rs/tokio/pull/1962
3912
+ [#1972]: https://github.com/tokio-rs/tokio/pull/1972
3913
+ [#1973]: https://github.com/tokio-rs/tokio/pull/1973
3914
+ [#1975]: https://github.com/tokio-rs/tokio/pull/1975
3915
+ [#1977]: https://github.com/tokio-rs/tokio/pull/1977
3916
+ [#1978]: https://github.com/tokio-rs/tokio/pull/1978
3917
+
3918
+ # 0.2.4 (December 6, 2019)
3919
+
3920
+ ### Fixes
3921
+
3922
+ - `sync::Mutex` deadlock when `lock()` future is dropped early ([#1898]).
3923
+
3924
+ [#1898]: https://github.com/tokio-rs/tokio/pull/1898
3925
+
3926
+ # 0.2.3 (December 6, 2019)
3927
+
3928
+ ### Added
3929
+
3930
+ - read / write integers using `AsyncReadExt` and `AsyncWriteExt` ([#1863]).
3931
+ - `read_buf` / `write_buf` for reading / writing `Buf` / `BufMut` ([#1881]).
3932
+ - `TcpStream::poll_peek` - pollable API for performing TCP peek ([#1864]).
3933
+ - `sync::oneshot::error::TryRecvError` provides variants to detect the error
3934
+ kind ([#1874]).
3935
+ - `LocalSet::block_on` accepts `!'static` task ([#1882]).
3936
+ - `task::JoinError` is now `Sync` ([#1888]).
3937
+ - impl conversions between `tokio::time::Instant` and
3938
+ `std::time::Instant` ([#1904]).
3939
+
3940
+ ### Fixes
3941
+
3942
+ - calling `spawn_blocking` after runtime shutdown ([#1875]).
3943
+ - `LocalSet` drop infinite loop ([#1892]).
3944
+ - `LocalSet` hang under load ([#1905]).
3945
+ - improved documentation ([#1865], [#1866], [#1868], [#1874], [#1876], [#1911]).
3946
+
3947
+ [#1863]: https://github.com/tokio-rs/tokio/pull/1863
3948
+ [#1864]: https://github.com/tokio-rs/tokio/pull/1864
3949
+ [#1865]: https://github.com/tokio-rs/tokio/pull/1865
3950
+ [#1866]: https://github.com/tokio-rs/tokio/pull/1866
3951
+ [#1868]: https://github.com/tokio-rs/tokio/pull/1868
3952
+ [#1874]: https://github.com/tokio-rs/tokio/pull/1874
3953
+ [#1875]: https://github.com/tokio-rs/tokio/pull/1875
3954
+ [#1876]: https://github.com/tokio-rs/tokio/pull/1876
3955
+ [#1881]: https://github.com/tokio-rs/tokio/pull/1881
3956
+ [#1882]: https://github.com/tokio-rs/tokio/pull/1882
3957
+ [#1888]: https://github.com/tokio-rs/tokio/pull/1888
3958
+ [#1892]: https://github.com/tokio-rs/tokio/pull/1892
3959
+ [#1904]: https://github.com/tokio-rs/tokio/pull/1904
3960
+ [#1905]: https://github.com/tokio-rs/tokio/pull/1905
3961
+ [#1911]: https://github.com/tokio-rs/tokio/pull/1911
3962
+
3963
+ # 0.2.2 (November 29, 2019)
3964
+
3965
+ ### Fixes
3966
+
3967
+ - scheduling with `basic_scheduler` ([#1861]).
3968
+ - update `spawn` panic message to specify that a task scheduler is required ([#1839]).
3969
+ - API docs example for `runtime::Builder` to include a task scheduler ([#1841]).
3970
+ - general documentation ([#1834]).
3971
+ - building on illumos/solaris ([#1772]).
3972
+ - panic when dropping `LocalSet` ([#1843]).
3973
+ - API docs mention the required Cargo features for `Builder::{basic, threaded}_scheduler` ([#1858]).
3974
+
3975
+ ### Added
3976
+
3977
+ - impl `Stream` for `signal::unix::Signal` ([#1849]).
3978
+ - API docs for platform specific behavior of `signal::ctrl_c` and `signal::unix::Signal` ([#1854]).
3979
+ - API docs for `signal::unix::Signal::{recv, poll_recv}` and `signal::windows::CtrlBreak::{recv, poll_recv}` ([#1854]).
3980
+ - `File::into_std` and `File::try_into_std` methods ([#1856]).
3981
+
3982
+ [#1772]: https://github.com/tokio-rs/tokio/pull/1772
3983
+ [#1834]: https://github.com/tokio-rs/tokio/pull/1834
3984
+ [#1839]: https://github.com/tokio-rs/tokio/pull/1839
3985
+ [#1841]: https://github.com/tokio-rs/tokio/pull/1841
3986
+ [#1843]: https://github.com/tokio-rs/tokio/pull/1843
3987
+ [#1849]: https://github.com/tokio-rs/tokio/pull/1849
3988
+ [#1854]: https://github.com/tokio-rs/tokio/pull/1854
3989
+ [#1856]: https://github.com/tokio-rs/tokio/pull/1856
3990
+ [#1858]: https://github.com/tokio-rs/tokio/pull/1858
3991
+ [#1861]: https://github.com/tokio-rs/tokio/pull/1861
3992
+
3993
+ # 0.2.1 (November 26, 2019)
3994
+
3995
+ ### Fixes
3996
+
3997
+ - API docs for `TcpListener::incoming`, `UnixListener::incoming` ([#1831]).
3998
+
3999
+ ### Added
4000
+
4001
+ - `tokio::task::LocalSet` provides a strategy for spawning `!Send` tasks ([#1733]).
4002
+ - export `tokio::time::Elapsed` ([#1826]).
4003
+ - impl `AsRawFd`, `AsRawHandle` for `tokio::fs::File` ([#1827]).
4004
+
4005
+ [#1733]: https://github.com/tokio-rs/tokio/pull/1733
4006
+ [#1826]: https://github.com/tokio-rs/tokio/pull/1826
4007
+ [#1827]: https://github.com/tokio-rs/tokio/pull/1827
4008
+ [#1831]: https://github.com/tokio-rs/tokio/pull/1831
4009
+
4010
+ # 0.2.0 (November 26, 2019)
4011
+
4012
+ A major breaking change. Most implementation and APIs have changed one way or
4013
+ another. This changelog entry contains a highlight
4014
+
4015
+ ### Changed
4016
+
4017
+ - APIs are updated to use `async / await`.
4018
+ - most `tokio-*` crates are collapsed into this crate.
4019
+ - Scheduler is rewritten.
4020
+ - `tokio::spawn` returns a `JoinHandle`.
4021
+ - A single I/O / timer is used per runtime.
4022
+ - I/O driver uses a concurrent slab for allocating state.
4023
+ - components are made available via feature flag.
4024
+ - Use `bytes` 0.5
4025
+ - `tokio::codec` is moved to `tokio-util`.
4026
+
4027
+ ### Removed
4028
+
4029
+ - Standalone `timer` and `net` drivers are removed, use `Runtime` instead
4030
+ - `current_thread` runtime is removed, use `tokio::runtime::Runtime` with
4031
+ `basic_scheduler` instead.
4032
+
4033
+ # 0.1.21 (May 30, 2019)
4034
+
4035
+ ### Changed
4036
+
4037
+ - Bump `tokio-trace-core` version to 0.2 ([#1111]).
4038
+
4039
+ [#1111]: https://github.com/tokio-rs/tokio/pull/1111
4040
+
4041
+ # 0.1.20 (May 14, 2019)
4042
+
4043
+ ### Added
4044
+
4045
+ - `tokio::runtime::Builder::panic_handler` allows configuring handling
4046
+ panics on the runtime ([#1055]).
4047
+
4048
+ [#1055]: https://github.com/tokio-rs/tokio/pull/1055
4049
+
4050
+ # 0.1.19 (April 22, 2019)
4051
+
4052
+ ### Added
4053
+
4054
+ - Re-export `tokio::sync::Mutex` primitive ([#964]).
4055
+
4056
+ [#964]: https://github.com/tokio-rs/tokio/pull/964
4057
+
4058
+ # 0.1.18 (March 22, 2019)
4059
+
4060
+ ### Added
4061
+
4062
+ - `TypedExecutor` re-export and implementations ([#993]).
4063
+
4064
+ [#993]: https://github.com/tokio-rs/tokio/pull/993
4065
+
4066
+ # 0.1.17 (March 13, 2019)
4067
+
4068
+ ### Added
4069
+
4070
+ - Propagate trace subscriber in the runtime ([#966]).
4071
+
4072
+ [#966]: https://github.com/tokio-rs/tokio/pull/966
4073
+
4074
+ # 0.1.16 (March 1, 2019)
4075
+
4076
+ ### Fixed
4077
+
4078
+ - async-await: track latest nightly changes ([#940]).
4079
+
4080
+ ### Added
4081
+
4082
+ - `sync::Watch`, a single value broadcast channel ([#922]).
4083
+ - Async equivalent of read / write file helpers being added to `std` ([#896]).
4084
+
4085
+ [#896]: https://github.com/tokio-rs/tokio/pull/896
4086
+ [#922]: https://github.com/tokio-rs/tokio/pull/922
4087
+ [#940]: https://github.com/tokio-rs/tokio/pull/940
4088
+
4089
+ # 0.1.15 (January 24, 2019)
4090
+
4091
+ ### Added
4092
+
4093
+ - Re-export tokio-sync APIs ([#839]).
4094
+ - Stream enumerate combinator ([#832]).
4095
+
4096
+ [#832]: https://github.com/tokio-rs/tokio/pull/832
4097
+ [#839]: https://github.com/tokio-rs/tokio/pull/839
4098
+
4099
+ # 0.1.14 (January 6, 2019)
4100
+
4101
+ - Use feature flags to break up the crate, allowing users to pick & choose
4102
+ components ([#808]).
4103
+ - Export `UnixDatagram` and `UnixDatagramFramed` ([#772]).
4104
+
4105
+ [#772]: https://github.com/tokio-rs/tokio/pull/772
4106
+ [#808]: https://github.com/tokio-rs/tokio/pull/808
4107
+
4108
+ # 0.1.13 (November 21, 2018)
4109
+
4110
+ - Fix `Runtime::reactor()` when no tasks are spawned ([#721]).
4111
+ - `runtime::Builder` no longer uses deprecated methods ([#749]).
4112
+ - Provide `after_start` and `before_stop` configuration settings for
4113
+ `Runtime` ([#756]).
4114
+ - Implement throttle stream combinator ([#736]).
4115
+
4116
+ [#721]: https://github.com/tokio-rs/tokio/pull/721
4117
+ [#736]: https://github.com/tokio-rs/tokio/pull/736
4118
+ [#749]: https://github.com/tokio-rs/tokio/pull/749
4119
+ [#756]: https://github.com/tokio-rs/tokio/pull/756
4120
+
4121
+ # 0.1.12 (October 23, 2018)
4122
+
4123
+ - runtime: expose `keep_alive` on runtime builder ([#676]).
4124
+ - runtime: create a reactor per worker thread ([#660]).
4125
+ - codec: fix panic in `LengthDelimitedCodec` ([#682]).
4126
+ - io: re-export `tokio_io::io::read` function ([#689]).
4127
+ - runtime: check for executor re-entry in more places ([#708]).
4128
+
4129
+ [#660]: https://github.com/tokio-rs/tokio/pull/660
4130
+ [#676]: https://github.com/tokio-rs/tokio/pull/676
4131
+ [#682]: https://github.com/tokio-rs/tokio/pull/682
4132
+ [#689]: https://github.com/tokio-rs/tokio/pull/689
4133
+ [#708]: https://github.com/tokio-rs/tokio/pull/708
4134
+
4135
+ # 0.1.11 (September 28, 2018)
4136
+
4137
+ - Fix `tokio-async-await` dependency ([#675]).
4138
+
4139
+ [#675]: https://github.com/tokio-rs/tokio/pull/675
4140
+
4141
+ # 0.1.10 (September 27, 2018)
4142
+
4143
+ - Fix minimal versions
4144
+
4145
+ # 0.1.9 (September 27, 2018)
4146
+
4147
+ - Experimental async/await improvements ([#661]).
4148
+ - Re-export `TaskExecutor` from `tokio-current-thread` ([#652]).
4149
+ - Improve `Runtime` builder API ([#645]).
4150
+ - `tokio::run` panics when called from the context of an executor
4151
+ ([#646]).
4152
+ - Introduce `StreamExt` with a `timeout` helper ([#573]).
4153
+ - Move `length_delimited` into `tokio` ([#575]).
4154
+ - Re-organize `tokio::net` module ([#548]).
4155
+ - Re-export `tokio-current-thread::spawn` in current_thread runtime
4156
+ ([#579]).
4157
+
4158
+ [#548]: https://github.com/tokio-rs/tokio/pull/548
4159
+ [#573]: https://github.com/tokio-rs/tokio/pull/573
4160
+ [#575]: https://github.com/tokio-rs/tokio/pull/575
4161
+ [#579]: https://github.com/tokio-rs/tokio/pull/579
4162
+ [#645]: https://github.com/tokio-rs/tokio/pull/645
4163
+ [#646]: https://github.com/tokio-rs/tokio/pull/646
4164
+ [#652]: https://github.com/tokio-rs/tokio/pull/652
4165
+ [#661]: https://github.com/tokio-rs/tokio/pull/661
4166
+
4167
+ # 0.1.8 (August 23, 2018)
4168
+
4169
+ - Extract tokio::executor::current_thread to a sub crate ([#370])
4170
+ - Add `Runtime::block_on` ([#398])
4171
+ - Add `runtime::current_thread::block_on_all` ([#477])
4172
+ - Misc documentation improvements ([#450])
4173
+ - Implement `std::error::Error` for error types ([#501])
4174
+
4175
+ [#370]: https://github.com/tokio-rs/tokio/pull/370
4176
+ [#398]: https://github.com/tokio-rs/tokio/pull/398
4177
+ [#450]: https://github.com/tokio-rs/tokio/pull/450
4178
+ [#477]: https://github.com/tokio-rs/tokio/pull/477
4179
+ [#501]: https://github.com/tokio-rs/tokio/pull/501
4180
+
4181
+ # 0.1.7 (June 6, 2018)
4182
+
4183
+ - Add `Runtime::block_on` for concurrent runtime ([#391]).
4184
+ - Provide handle to `current_thread::Runtime` that allows spawning tasks from
4185
+ other threads ([#340]).
4186
+ - Provide `clock::now()`, a configurable source of time ([#381]).
4187
+
4188
+ [#340]: https://github.com/tokio-rs/tokio/pull/340
4189
+ [#381]: https://github.com/tokio-rs/tokio/pull/381
4190
+ [#391]: https://github.com/tokio-rs/tokio/pull/391
4191
+
4192
+ # 0.1.6 (May 2, 2018)
4193
+
4194
+ - Add asynchronous filesystem APIs ([#323]).
4195
+ - Add "current thread" runtime variant ([#308]).
4196
+ - `CurrentThread`: Expose inner `Park` instance.
4197
+ - Improve fairness of `CurrentThread` executor ([#313]).
4198
+
4199
+ [#308]: https://github.com/tokio-rs/tokio/pull/308
4200
+ [#313]: https://github.com/tokio-rs/tokio/pull/313
4201
+ [#323]: https://github.com/tokio-rs/tokio/pull/323
4202
+
4203
+ # 0.1.5 (March 30, 2018)
4204
+
4205
+ - Provide timer API ([#266])
4206
+
4207
+ [#266]: https://github.com/tokio-rs/tokio/pull/266
4208
+
4209
+ # 0.1.4 (March 22, 2018)
4210
+
4211
+ - Fix build on FreeBSD ([#218])
4212
+ - Shutdown the Runtime when the handle is dropped ([#214])
4213
+ - Set Runtime thread name prefix for worker threads ([#232])
4214
+ - Add builder for Runtime ([#234])
4215
+ - Extract TCP and UDP types into separate crates ([#224])
4216
+ - Optionally support futures 0.2.
4217
+
4218
+ [#214]: https://github.com/tokio-rs/tokio/pull/214
4219
+ [#218]: https://github.com/tokio-rs/tokio/pull/218
4220
+ [#224]: https://github.com/tokio-rs/tokio/pull/224
4221
+ [#232]: https://github.com/tokio-rs/tokio/pull/232
4222
+ [#234]: https://github.com/tokio-rs/tokio/pull/234
4223
+
4224
+ # 0.1.3 (March 09, 2018)
4225
+
4226
+ - Fix `CurrentThread::turn` to block on idle ([#212]).
4227
+
4228
+ [#212]: https://github.com/tokio-rs/tokio/pull/212
4229
+
4230
+ # 0.1.2 (March 09, 2018)
4231
+
4232
+ - Introduce Tokio Runtime ([#141])
4233
+ - Provide `CurrentThread` for more flexible usage of current thread executor ([#141]).
4234
+ - Add Lio for platforms that support it ([#142]).
4235
+ - I/O resources now lazily bind to the reactor ([#160]).
4236
+ - Extract Reactor to dedicated crate ([#169])
4237
+ - Add facade to sub crates and add prelude ([#166]).
4238
+ - Switch TCP/UDP fns to poll\_ -> Poll<...> style ([#175])
4239
+
4240
+ [#141]: https://github.com/tokio-rs/tokio/pull/141
4241
+ [#142]: https://github.com/tokio-rs/tokio/pull/142
4242
+ [#160]: https://github.com/tokio-rs/tokio/pull/160
4243
+ [#166]: https://github.com/tokio-rs/tokio/pull/166
4244
+ [#169]: https://github.com/tokio-rs/tokio/pull/169
4245
+ [#175]: https://github.com/tokio-rs/tokio/pull/175
4246
+
4247
+ # 0.1.1 (February 09, 2018)
4248
+
4249
+ - Doc fixes
4250
+
4251
+ # 0.1.0 (February 07, 2018)
4252
+
4253
+ - Initial crate released based on [RFC](https://github.com/tokio-rs/tokio-rfcs/pull/3).