@ai-ecoverse/wasix-ruby 3.4.11-3 → 3.4.11-5

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 (1126) hide show
  1. package/PRESTAGE.md +40 -38
  2. package/bin/bundle +1 -1
  3. package/bin/bundler +1 -1
  4. package/bin/erb +1 -1
  5. package/bin/gem +1 -1
  6. package/bin/irb +1 -1
  7. package/bin/rake +1 -1
  8. package/bin/ruby.wasm +0 -0
  9. package/lib/ruby/3.4.0/wasm32-wasi/rbconfig.rb +3 -3
  10. package/package.json +16 -14
  11. package/lib/ruby/3.4.11/English.gemspec +0 -22
  12. package/lib/ruby/3.4.11/English.rb +0 -164
  13. package/lib/ruby/3.4.11/benchmark.gemspec +0 -32
  14. package/lib/ruby/3.4.11/benchmark.rb +0 -594
  15. package/lib/ruby/3.4.11/bundled_gems.rb +0 -248
  16. package/lib/ruby/3.4.11/bundler/.document +0 -1
  17. package/lib/ruby/3.4.11/bundler/build_metadata.rb +0 -43
  18. package/lib/ruby/3.4.11/bundler/bundler.gemspec +0 -45
  19. package/lib/ruby/3.4.11/bundler/capistrano.rb +0 -22
  20. package/lib/ruby/3.4.11/bundler/checksum.rb +0 -264
  21. package/lib/ruby/3.4.11/bundler/ci_detector.rb +0 -75
  22. package/lib/ruby/3.4.11/bundler/cli/add.rb +0 -49
  23. package/lib/ruby/3.4.11/bundler/cli/binstubs.rb +0 -57
  24. package/lib/ruby/3.4.11/bundler/cli/cache.rb +0 -43
  25. package/lib/ruby/3.4.11/bundler/cli/check.rb +0 -40
  26. package/lib/ruby/3.4.11/bundler/cli/clean.rb +0 -25
  27. package/lib/ruby/3.4.11/bundler/cli/common.rb +0 -138
  28. package/lib/ruby/3.4.11/bundler/cli/config.rb +0 -204
  29. package/lib/ruby/3.4.11/bundler/cli/console.rb +0 -42
  30. package/lib/ruby/3.4.11/bundler/cli/doctor/diagnose.rb +0 -167
  31. package/lib/ruby/3.4.11/bundler/cli/doctor/ssl.rb +0 -249
  32. package/lib/ruby/3.4.11/bundler/cli/doctor.rb +0 -33
  33. package/lib/ruby/3.4.11/bundler/cli/exec.rb +0 -89
  34. package/lib/ruby/3.4.11/bundler/cli/fund.rb +0 -36
  35. package/lib/ruby/3.4.11/bundler/cli/gem.rb +0 -467
  36. package/lib/ruby/3.4.11/bundler/cli/info.rb +0 -83
  37. package/lib/ruby/3.4.11/bundler/cli/init.rb +0 -51
  38. package/lib/ruby/3.4.11/bundler/cli/inject.rb +0 -60
  39. package/lib/ruby/3.4.11/bundler/cli/install.rb +0 -199
  40. package/lib/ruby/3.4.11/bundler/cli/issue.rb +0 -41
  41. package/lib/ruby/3.4.11/bundler/cli/list.rb +0 -66
  42. package/lib/ruby/3.4.11/bundler/cli/lock.rb +0 -94
  43. package/lib/ruby/3.4.11/bundler/cli/open.rb +0 -29
  44. package/lib/ruby/3.4.11/bundler/cli/outdated.rb +0 -297
  45. package/lib/ruby/3.4.11/bundler/cli/platform.rb +0 -48
  46. package/lib/ruby/3.4.11/bundler/cli/plugin.rb +0 -35
  47. package/lib/ruby/3.4.11/bundler/cli/pristine.rb +0 -60
  48. package/lib/ruby/3.4.11/bundler/cli/remove.rb +0 -17
  49. package/lib/ruby/3.4.11/bundler/cli/show.rb +0 -75
  50. package/lib/ruby/3.4.11/bundler/cli/update.rb +0 -123
  51. package/lib/ruby/3.4.11/bundler/cli/viz.rb +0 -31
  52. package/lib/ruby/3.4.11/bundler/cli.rb +0 -790
  53. package/lib/ruby/3.4.11/bundler/compact_index_client/cache.rb +0 -96
  54. package/lib/ruby/3.4.11/bundler/compact_index_client/cache_file.rb +0 -148
  55. package/lib/ruby/3.4.11/bundler/compact_index_client/parser.rb +0 -84
  56. package/lib/ruby/3.4.11/bundler/compact_index_client/updater.rb +0 -105
  57. package/lib/ruby/3.4.11/bundler/compact_index_client.rb +0 -97
  58. package/lib/ruby/3.4.11/bundler/constants.rb +0 -14
  59. package/lib/ruby/3.4.11/bundler/current_ruby.rb +0 -82
  60. package/lib/ruby/3.4.11/bundler/definition.rb +0 -1187
  61. package/lib/ruby/3.4.11/bundler/dependency.rb +0 -151
  62. package/lib/ruby/3.4.11/bundler/deployment.rb +0 -69
  63. package/lib/ruby/3.4.11/bundler/deprecate.rb +0 -44
  64. package/lib/ruby/3.4.11/bundler/digest.rb +0 -71
  65. package/lib/ruby/3.4.11/bundler/dsl.rb +0 -638
  66. package/lib/ruby/3.4.11/bundler/endpoint_specification.rb +0 -174
  67. package/lib/ruby/3.4.11/bundler/env.rb +0 -148
  68. package/lib/ruby/3.4.11/bundler/environment_preserver.rb +0 -68
  69. package/lib/ruby/3.4.11/bundler/errors.rb +0 -281
  70. package/lib/ruby/3.4.11/bundler/feature_flag.rb +0 -50
  71. package/lib/ruby/3.4.11/bundler/fetcher/base.rb +0 -52
  72. package/lib/ruby/3.4.11/bundler/fetcher/compact_index.rb +0 -120
  73. package/lib/ruby/3.4.11/bundler/fetcher/dependency.rb +0 -78
  74. package/lib/ruby/3.4.11/bundler/fetcher/downloader.rb +0 -91
  75. package/lib/ruby/3.4.11/bundler/fetcher/gem_remote_fetcher.rb +0 -16
  76. package/lib/ruby/3.4.11/bundler/fetcher/index.rb +0 -25
  77. package/lib/ruby/3.4.11/bundler/fetcher.rb +0 -331
  78. package/lib/ruby/3.4.11/bundler/force_platform.rb +0 -16
  79. package/lib/ruby/3.4.11/bundler/friendly_errors.rb +0 -126
  80. package/lib/ruby/3.4.11/bundler/gem_helper.rb +0 -237
  81. package/lib/ruby/3.4.11/bundler/gem_helpers.rb +0 -144
  82. package/lib/ruby/3.4.11/bundler/gem_tasks.rb +0 -7
  83. package/lib/ruby/3.4.11/bundler/gem_version_promoter.rb +0 -147
  84. package/lib/ruby/3.4.11/bundler/graph.rb +0 -152
  85. package/lib/ruby/3.4.11/bundler/index.rb +0 -205
  86. package/lib/ruby/3.4.11/bundler/injector.rb +0 -285
  87. package/lib/ruby/3.4.11/bundler/inline.rb +0 -98
  88. package/lib/ruby/3.4.11/bundler/installer/gem_installer.rb +0 -85
  89. package/lib/ruby/3.4.11/bundler/installer/parallel_installer.rb +0 -203
  90. package/lib/ruby/3.4.11/bundler/installer/standalone.rb +0 -113
  91. package/lib/ruby/3.4.11/bundler/installer.rb +0 -243
  92. package/lib/ruby/3.4.11/bundler/lazy_specification.rb +0 -243
  93. package/lib/ruby/3.4.11/bundler/lockfile_generator.rb +0 -104
  94. package/lib/ruby/3.4.11/bundler/lockfile_parser.rb +0 -300
  95. package/lib/ruby/3.4.11/bundler/man/.document +0 -1
  96. package/lib/ruby/3.4.11/bundler/man/bundle-add.1 +0 -76
  97. package/lib/ruby/3.4.11/bundler/man/bundle-add.1.ronn +0 -87
  98. package/lib/ruby/3.4.11/bundler/man/bundle-binstubs.1 +0 -33
  99. package/lib/ruby/3.4.11/bundler/man/bundle-binstubs.1.ronn +0 -44
  100. package/lib/ruby/3.4.11/bundler/man/bundle-cache.1 +0 -68
  101. package/lib/ruby/3.4.11/bundler/man/bundle-cache.1.ronn +0 -108
  102. package/lib/ruby/3.4.11/bundler/man/bundle-check.1 +0 -24
  103. package/lib/ruby/3.4.11/bundler/man/bundle-check.1.ronn +0 -31
  104. package/lib/ruby/3.4.11/bundler/man/bundle-clean.1 +0 -17
  105. package/lib/ruby/3.4.11/bundler/man/bundle-clean.1.ronn +0 -18
  106. package/lib/ruby/3.4.11/bundler/man/bundle-config.1 +0 -317
  107. package/lib/ruby/3.4.11/bundler/man/bundle-config.1.ronn +0 -408
  108. package/lib/ruby/3.4.11/bundler/man/bundle-console.1 +0 -33
  109. package/lib/ruby/3.4.11/bundler/man/bundle-console.1.ronn +0 -39
  110. package/lib/ruby/3.4.11/bundler/man/bundle-doctor.1 +0 -30
  111. package/lib/ruby/3.4.11/bundler/man/bundle-doctor.1.ronn +0 -33
  112. package/lib/ruby/3.4.11/bundler/man/bundle-env.1 +0 -9
  113. package/lib/ruby/3.4.11/bundler/man/bundle-env.1.ronn +0 -10
  114. package/lib/ruby/3.4.11/bundler/man/bundle-exec.1 +0 -107
  115. package/lib/ruby/3.4.11/bundler/man/bundle-exec.1.ronn +0 -154
  116. package/lib/ruby/3.4.11/bundler/man/bundle-fund.1 +0 -22
  117. package/lib/ruby/3.4.11/bundler/man/bundle-fund.1.ronn +0 -25
  118. package/lib/ruby/3.4.11/bundler/man/bundle-gem.1 +0 -87
  119. package/lib/ruby/3.4.11/bundler/man/bundle-gem.1.ronn +0 -149
  120. package/lib/ruby/3.4.11/bundler/man/bundle-help.1 +0 -9
  121. package/lib/ruby/3.4.11/bundler/man/bundle-help.1.ronn +0 -12
  122. package/lib/ruby/3.4.11/bundler/man/bundle-info.1 +0 -17
  123. package/lib/ruby/3.4.11/bundler/man/bundle-info.1.ronn +0 -21
  124. package/lib/ruby/3.4.11/bundler/man/bundle-init.1 +0 -20
  125. package/lib/ruby/3.4.11/bundler/man/bundle-init.1.ronn +0 -32
  126. package/lib/ruby/3.4.11/bundler/man/bundle-inject.1 +0 -31
  127. package/lib/ruby/3.4.11/bundler/man/bundle-inject.1.ronn +0 -32
  128. package/lib/ruby/3.4.11/bundler/man/bundle-install.1 +0 -218
  129. package/lib/ruby/3.4.11/bundler/man/bundle-install.1.ronn +0 -387
  130. package/lib/ruby/3.4.11/bundler/man/bundle-issue.1 +0 -45
  131. package/lib/ruby/3.4.11/bundler/man/bundle-issue.1.ronn +0 -37
  132. package/lib/ruby/3.4.11/bundler/man/bundle-licenses.1 +0 -9
  133. package/lib/ruby/3.4.11/bundler/man/bundle-licenses.1.ronn +0 -10
  134. package/lib/ruby/3.4.11/bundler/man/bundle-list.1 +0 -35
  135. package/lib/ruby/3.4.11/bundler/man/bundle-list.1.ronn +0 -36
  136. package/lib/ruby/3.4.11/bundler/man/bundle-lock.1 +0 -75
  137. package/lib/ruby/3.4.11/bundler/man/bundle-lock.1.ronn +0 -115
  138. package/lib/ruby/3.4.11/bundler/man/bundle-open.1 +0 -32
  139. package/lib/ruby/3.4.11/bundler/man/bundle-open.1.ronn +0 -28
  140. package/lib/ruby/3.4.11/bundler/man/bundle-outdated.1 +0 -103
  141. package/lib/ruby/3.4.11/bundler/man/bundle-outdated.1.ronn +0 -110
  142. package/lib/ruby/3.4.11/bundler/man/bundle-platform.1 +0 -49
  143. package/lib/ruby/3.4.11/bundler/man/bundle-platform.1.ronn +0 -49
  144. package/lib/ruby/3.4.11/bundler/man/bundle-plugin.1 +0 -58
  145. package/lib/ruby/3.4.11/bundler/man/bundle-plugin.1.ronn +0 -63
  146. package/lib/ruby/3.4.11/bundler/man/bundle-pristine.1 +0 -23
  147. package/lib/ruby/3.4.11/bundler/man/bundle-pristine.1.ronn +0 -34
  148. package/lib/ruby/3.4.11/bundler/man/bundle-remove.1 +0 -21
  149. package/lib/ruby/3.4.11/bundler/man/bundle-remove.1.ronn +0 -23
  150. package/lib/ruby/3.4.11/bundler/man/bundle-show.1 +0 -19
  151. package/lib/ruby/3.4.11/bundler/man/bundle-show.1.ronn +0 -25
  152. package/lib/ruby/3.4.11/bundler/man/bundle-update.1 +0 -281
  153. package/lib/ruby/3.4.11/bundler/man/bundle-update.1.ronn +0 -359
  154. package/lib/ruby/3.4.11/bundler/man/bundle-version.1 +0 -22
  155. package/lib/ruby/3.4.11/bundler/man/bundle-version.1.ronn +0 -24
  156. package/lib/ruby/3.4.11/bundler/man/bundle-viz.1 +0 -30
  157. package/lib/ruby/3.4.11/bundler/man/bundle-viz.1.ronn +0 -36
  158. package/lib/ruby/3.4.11/bundler/man/bundle.1 +0 -102
  159. package/lib/ruby/3.4.11/bundler/man/bundle.1.ronn +0 -116
  160. package/lib/ruby/3.4.11/bundler/man/gemfile.5 +0 -472
  161. package/lib/ruby/3.4.11/bundler/man/gemfile.5.ronn +0 -558
  162. package/lib/ruby/3.4.11/bundler/man/index.txt +0 -33
  163. package/lib/ruby/3.4.11/bundler/match_metadata.rb +0 -30
  164. package/lib/ruby/3.4.11/bundler/match_platform.rb +0 -23
  165. package/lib/ruby/3.4.11/bundler/match_remote_metadata.rb +0 -29
  166. package/lib/ruby/3.4.11/bundler/materialization.rb +0 -59
  167. package/lib/ruby/3.4.11/bundler/mirror.rb +0 -221
  168. package/lib/ruby/3.4.11/bundler/plugin/api/source.rb +0 -322
  169. package/lib/ruby/3.4.11/bundler/plugin/api.rb +0 -81
  170. package/lib/ruby/3.4.11/bundler/plugin/dsl.rb +0 -53
  171. package/lib/ruby/3.4.11/bundler/plugin/events.rb +0 -85
  172. package/lib/ruby/3.4.11/bundler/plugin/index.rb +0 -197
  173. package/lib/ruby/3.4.11/bundler/plugin/installer/git.rb +0 -34
  174. package/lib/ruby/3.4.11/bundler/plugin/installer/path.rb +0 -26
  175. package/lib/ruby/3.4.11/bundler/plugin/installer/rubygems.rb +0 -19
  176. package/lib/ruby/3.4.11/bundler/plugin/installer.rb +0 -132
  177. package/lib/ruby/3.4.11/bundler/plugin/source_list.rb +0 -31
  178. package/lib/ruby/3.4.11/bundler/plugin.rb +0 -378
  179. package/lib/ruby/3.4.11/bundler/process_lock.rb +0 -20
  180. package/lib/ruby/3.4.11/bundler/remote_specification.rb +0 -126
  181. package/lib/ruby/3.4.11/bundler/resolver/base.rb +0 -118
  182. package/lib/ruby/3.4.11/bundler/resolver/candidate.rb +0 -85
  183. package/lib/ruby/3.4.11/bundler/resolver/incompatibility.rb +0 -15
  184. package/lib/ruby/3.4.11/bundler/resolver/package.rb +0 -94
  185. package/lib/ruby/3.4.11/bundler/resolver/root.rb +0 -25
  186. package/lib/ruby/3.4.11/bundler/resolver/spec_group.rb +0 -74
  187. package/lib/ruby/3.4.11/bundler/resolver/strategy.rb +0 -40
  188. package/lib/ruby/3.4.11/bundler/resolver.rb +0 -526
  189. package/lib/ruby/3.4.11/bundler/retry.rb +0 -66
  190. package/lib/ruby/3.4.11/bundler/ruby_dsl.rb +0 -62
  191. package/lib/ruby/3.4.11/bundler/ruby_version.rb +0 -137
  192. package/lib/ruby/3.4.11/bundler/rubygems_ext.rb +0 -485
  193. package/lib/ruby/3.4.11/bundler/rubygems_gem_installer.rb +0 -172
  194. package/lib/ruby/3.4.11/bundler/rubygems_integration.rb +0 -455
  195. package/lib/ruby/3.4.11/bundler/runtime.rb +0 -320
  196. package/lib/ruby/3.4.11/bundler/safe_marshal.rb +0 -31
  197. package/lib/ruby/3.4.11/bundler/self_manager.rb +0 -206
  198. package/lib/ruby/3.4.11/bundler/settings/validator.rb +0 -102
  199. package/lib/ruby/3.4.11/bundler/settings.rb +0 -599
  200. package/lib/ruby/3.4.11/bundler/setup.rb +0 -39
  201. package/lib/ruby/3.4.11/bundler/shared_helpers.rb +0 -398
  202. package/lib/ruby/3.4.11/bundler/similarity_detector.rb +0 -63
  203. package/lib/ruby/3.4.11/bundler/source/gemspec.rb +0 -15
  204. package/lib/ruby/3.4.11/bundler/source/git/git_proxy.rb +0 -472
  205. package/lib/ruby/3.4.11/bundler/source/git.rb +0 -452
  206. package/lib/ruby/3.4.11/bundler/source/metadata.rb +0 -63
  207. package/lib/ruby/3.4.11/bundler/source/path/installer.rb +0 -53
  208. package/lib/ruby/3.4.11/bundler/source/path.rb +0 -250
  209. package/lib/ruby/3.4.11/bundler/source/rubygems/remote.rb +0 -76
  210. package/lib/ruby/3.4.11/bundler/source/rubygems.rb +0 -522
  211. package/lib/ruby/3.4.11/bundler/source/rubygems_aggregate.rb +0 -68
  212. package/lib/ruby/3.4.11/bundler/source.rb +0 -118
  213. package/lib/ruby/3.4.11/bundler/source_list.rb +0 -273
  214. package/lib/ruby/3.4.11/bundler/source_map.rb +0 -71
  215. package/lib/ruby/3.4.11/bundler/spec_set.rb +0 -395
  216. package/lib/ruby/3.4.11/bundler/stub_specification.rb +0 -146
  217. package/lib/ruby/3.4.11/bundler/templates/.document +0 -1
  218. package/lib/ruby/3.4.11/bundler/templates/Executable +0 -27
  219. package/lib/ruby/3.4.11/bundler/templates/Executable.bundler +0 -109
  220. package/lib/ruby/3.4.11/bundler/templates/Executable.standalone +0 -14
  221. package/lib/ruby/3.4.11/bundler/templates/Gemfile +0 -5
  222. package/lib/ruby/3.4.11/bundler/templates/newgem/CHANGELOG.md.tt +0 -5
  223. package/lib/ruby/3.4.11/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +0 -132
  224. package/lib/ruby/3.4.11/bundler/templates/newgem/Cargo.toml.tt +0 -7
  225. package/lib/ruby/3.4.11/bundler/templates/newgem/Gemfile.tt +0 -24
  226. package/lib/ruby/3.4.11/bundler/templates/newgem/LICENSE.txt.tt +0 -21
  227. package/lib/ruby/3.4.11/bundler/templates/newgem/README.md.tt +0 -49
  228. package/lib/ruby/3.4.11/bundler/templates/newgem/Rakefile.tt +0 -67
  229. package/lib/ruby/3.4.11/bundler/templates/newgem/bin/console.tt +0 -11
  230. package/lib/ruby/3.4.11/bundler/templates/newgem/bin/setup.tt +0 -8
  231. package/lib/ruby/3.4.11/bundler/templates/newgem/circleci/config.yml.tt +0 -25
  232. package/lib/ruby/3.4.11/bundler/templates/newgem/exe/newgem.tt +0 -3
  233. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +0 -15
  234. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt +0 -10
  235. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +0 -6
  236. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/newgem.c.tt +0 -9
  237. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/newgem.h.tt +0 -6
  238. package/lib/ruby/3.4.11/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +0 -12
  239. package/lib/ruby/3.4.11/bundler/templates/newgem/github/workflows/main.yml.tt +0 -37
  240. package/lib/ruby/3.4.11/bundler/templates/newgem/gitignore.tt +0 -23
  241. package/lib/ruby/3.4.11/bundler/templates/newgem/gitlab-ci.yml.tt +0 -18
  242. package/lib/ruby/3.4.11/bundler/templates/newgem/lib/newgem/version.rb.tt +0 -9
  243. package/lib/ruby/3.4.11/bundler/templates/newgem/lib/newgem.rb.tt +0 -15
  244. package/lib/ruby/3.4.11/bundler/templates/newgem/newgem.gemspec.tt +0 -52
  245. package/lib/ruby/3.4.11/bundler/templates/newgem/rspec.tt +0 -3
  246. package/lib/ruby/3.4.11/bundler/templates/newgem/rubocop.yml.tt +0 -8
  247. package/lib/ruby/3.4.11/bundler/templates/newgem/sig/newgem.rbs.tt +0 -8
  248. package/lib/ruby/3.4.11/bundler/templates/newgem/spec/newgem_spec.rb.tt +0 -11
  249. package/lib/ruby/3.4.11/bundler/templates/newgem/spec/spec_helper.rb.tt +0 -15
  250. package/lib/ruby/3.4.11/bundler/templates/newgem/standard.yml.tt +0 -3
  251. package/lib/ruby/3.4.11/bundler/templates/newgem/test/minitest/test_helper.rb.tt +0 -6
  252. package/lib/ruby/3.4.11/bundler/templates/newgem/test/minitest/test_newgem.rb.tt +0 -13
  253. package/lib/ruby/3.4.11/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +0 -15
  254. package/lib/ruby/3.4.11/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +0 -6
  255. package/lib/ruby/3.4.11/bundler/ui/rg_proxy.rb +0 -19
  256. package/lib/ruby/3.4.11/bundler/ui/shell.rb +0 -187
  257. package/lib/ruby/3.4.11/bundler/ui/silent.rb +0 -96
  258. package/lib/ruby/3.4.11/bundler/ui.rb +0 -9
  259. package/lib/ruby/3.4.11/bundler/uri_credentials_filter.rb +0 -43
  260. package/lib/ruby/3.4.11/bundler/uri_normalizer.rb +0 -23
  261. package/lib/ruby/3.4.11/bundler/vendor/.document +0 -1
  262. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/.document +0 -1
  263. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +0 -224
  264. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool/version.rb +0 -3
  265. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +0 -56
  266. package/lib/ruby/3.4.11/bundler/vendor/connection_pool/lib/connection_pool.rb +0 -186
  267. package/lib/ruby/3.4.11/bundler/vendor/fileutils/.document +0 -1
  268. package/lib/ruby/3.4.11/bundler/vendor/fileutils/lib/fileutils.rb +0 -2696
  269. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/.document +0 -1
  270. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +0 -41
  271. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +0 -65
  272. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +0 -79
  273. package/lib/ruby/3.4.11/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +0 -1111
  274. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/.document +0 -1
  275. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +0 -20
  276. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +0 -169
  277. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +0 -182
  278. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +0 -150
  279. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/package.rb +0 -43
  280. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +0 -121
  281. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +0 -45
  282. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +0 -19
  283. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +0 -61
  284. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/strategy.rb +0 -42
  285. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/term.rb +0 -105
  286. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version.rb +0 -3
  287. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +0 -129
  288. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +0 -423
  289. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +0 -236
  290. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +0 -178
  291. package/lib/ruby/3.4.11/bundler/vendor/pub_grub/lib/pub_grub.rb +0 -31
  292. package/lib/ruby/3.4.11/bundler/vendor/securerandom/.document +0 -1
  293. package/lib/ruby/3.4.11/bundler/vendor/securerandom/lib/securerandom.rb +0 -102
  294. package/lib/ruby/3.4.11/bundler/vendor/thor/.document +0 -1
  295. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/create_file.rb +0 -105
  296. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/create_link.rb +0 -61
  297. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/directory.rb +0 -108
  298. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/empty_directory.rb +0 -143
  299. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +0 -371
  300. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +0 -130
  301. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/actions.rb +0 -340
  302. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/base.rb +0 -825
  303. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/command.rb +0 -151
  304. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +0 -107
  305. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/error.rb +0 -106
  306. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/group.rb +0 -292
  307. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/invocation.rb +0 -178
  308. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/line_editor/basic.rb +0 -37
  309. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/line_editor/readline.rb +0 -88
  310. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/line_editor.rb +0 -17
  311. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/nested_context.rb +0 -29
  312. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/argument.rb +0 -86
  313. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/arguments.rb +0 -195
  314. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/option.rb +0 -178
  315. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser/options.rb +0 -294
  316. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/parser.rb +0 -4
  317. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/rake_compat.rb +0 -72
  318. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/runner.rb +0 -335
  319. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/basic.rb +0 -388
  320. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/color.rb +0 -112
  321. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/column_printer.rb +0 -29
  322. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/html.rb +0 -81
  323. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/table_printer.rb +0 -118
  324. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/terminal.rb +0 -42
  325. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell/wrapped_printer.rb +0 -38
  326. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/shell.rb +0 -81
  327. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/util.rb +0 -285
  328. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor/version.rb +0 -3
  329. package/lib/ruby/3.4.11/bundler/vendor/thor/lib/thor.rb +0 -674
  330. package/lib/ruby/3.4.11/bundler/vendor/tsort/.document +0 -1
  331. package/lib/ruby/3.4.11/bundler/vendor/tsort/lib/tsort.rb +0 -455
  332. package/lib/ruby/3.4.11/bundler/vendor/uri/.document +0 -1
  333. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/common.rb +0 -880
  334. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/file.rb +0 -100
  335. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ftp.rb +0 -267
  336. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/generic.rb +0 -1592
  337. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/http.rb +0 -125
  338. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/https.rb +0 -23
  339. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ldap.rb +0 -261
  340. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ldaps.rb +0 -22
  341. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/mailto.rb +0 -293
  342. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +0 -546
  343. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +0 -206
  344. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/version.rb +0 -6
  345. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/ws.rb +0 -83
  346. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri/wss.rb +0 -23
  347. package/lib/ruby/3.4.11/bundler/vendor/uri/lib/uri.rb +0 -104
  348. package/lib/ruby/3.4.11/bundler/vendored_fileutils.rb +0 -4
  349. package/lib/ruby/3.4.11/bundler/vendored_net_http.rb +0 -23
  350. package/lib/ruby/3.4.11/bundler/vendored_persistent.rb +0 -11
  351. package/lib/ruby/3.4.11/bundler/vendored_pub_grub.rb +0 -4
  352. package/lib/ruby/3.4.11/bundler/vendored_securerandom.rb +0 -12
  353. package/lib/ruby/3.4.11/bundler/vendored_thor.rb +0 -8
  354. package/lib/ruby/3.4.11/bundler/vendored_timeout.rb +0 -12
  355. package/lib/ruby/3.4.11/bundler/vendored_tsort.rb +0 -4
  356. package/lib/ruby/3.4.11/bundler/vendored_uri.rb +0 -21
  357. package/lib/ruby/3.4.11/bundler/version.rb +0 -13
  358. package/lib/ruby/3.4.11/bundler/vlad.rb +0 -17
  359. package/lib/ruby/3.4.11/bundler/worker.rb +0 -117
  360. package/lib/ruby/3.4.11/bundler/yaml_serializer.rb +0 -98
  361. package/lib/ruby/3.4.11/bundler.rb +0 -701
  362. package/lib/ruby/3.4.11/cgi/cgi.gemspec +0 -43
  363. package/lib/ruby/3.4.11/cgi/cookie.rb +0 -210
  364. package/lib/ruby/3.4.11/cgi/core.rb +0 -900
  365. package/lib/ruby/3.4.11/cgi/html.rb +0 -1035
  366. package/lib/ruby/3.4.11/cgi/session/pstore.rb +0 -91
  367. package/lib/ruby/3.4.11/cgi/session.rb +0 -562
  368. package/lib/ruby/3.4.11/cgi/util.rb +0 -258
  369. package/lib/ruby/3.4.11/cgi.rb +0 -297
  370. package/lib/ruby/3.4.11/delegate.gemspec +0 -29
  371. package/lib/ruby/3.4.11/delegate.rb +0 -444
  372. package/lib/ruby/3.4.11/did_you_mean/core_ext/name_error.rb +0 -57
  373. package/lib/ruby/3.4.11/did_you_mean/did_you_mean.gemspec +0 -25
  374. package/lib/ruby/3.4.11/did_you_mean/experimental.rb +0 -2
  375. package/lib/ruby/3.4.11/did_you_mean/formatter.rb +0 -44
  376. package/lib/ruby/3.4.11/did_you_mean/formatters/plain_formatter.rb +0 -4
  377. package/lib/ruby/3.4.11/did_you_mean/formatters/verbose_formatter.rb +0 -10
  378. package/lib/ruby/3.4.11/did_you_mean/jaro_winkler.rb +0 -84
  379. package/lib/ruby/3.4.11/did_you_mean/levenshtein.rb +0 -57
  380. package/lib/ruby/3.4.11/did_you_mean/spell_checker.rb +0 -46
  381. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/key_error_checker.rb +0 -28
  382. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/method_name_checker.rb +0 -79
  383. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb +0 -49
  384. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb +0 -85
  385. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/name_error_checkers.rb +0 -20
  386. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/null_checker.rb +0 -6
  387. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/pattern_key_name_checker.rb +0 -28
  388. package/lib/ruby/3.4.11/did_you_mean/spell_checkers/require_path_checker.rb +0 -39
  389. package/lib/ruby/3.4.11/did_you_mean/tree_spell_checker.rb +0 -109
  390. package/lib/ruby/3.4.11/did_you_mean/verbose.rb +0 -2
  391. package/lib/ruby/3.4.11/did_you_mean/version.rb +0 -3
  392. package/lib/ruby/3.4.11/did_you_mean.rb +0 -131
  393. package/lib/ruby/3.4.11/erb/compiler.rb +0 -472
  394. package/lib/ruby/3.4.11/erb/def_method.rb +0 -47
  395. package/lib/ruby/3.4.11/erb/util.rb +0 -63
  396. package/lib/ruby/3.4.11/erb/version.rb +0 -5
  397. package/lib/ruby/3.4.11/erb.gemspec +0 -38
  398. package/lib/ruby/3.4.11/erb.rb +0 -509
  399. package/lib/ruby/3.4.11/error_highlight/base.rb +0 -830
  400. package/lib/ruby/3.4.11/error_highlight/core_ext.rb +0 -47
  401. package/lib/ruby/3.4.11/error_highlight/error_highlight.gemspec +0 -27
  402. package/lib/ruby/3.4.11/error_highlight/formatter.rb +0 -74
  403. package/lib/ruby/3.4.11/error_highlight/version.rb +0 -3
  404. package/lib/ruby/3.4.11/error_highlight.rb +0 -2
  405. package/lib/ruby/3.4.11/fileutils.gemspec +0 -31
  406. package/lib/ruby/3.4.11/fileutils.rb +0 -2696
  407. package/lib/ruby/3.4.11/find.gemspec +0 -29
  408. package/lib/ruby/3.4.11/find.rb +0 -90
  409. package/lib/ruby/3.4.11/forwardable/forwardable.gemspec +0 -26
  410. package/lib/ruby/3.4.11/forwardable/impl.rb +0 -17
  411. package/lib/ruby/3.4.11/forwardable.rb +0 -321
  412. package/lib/ruby/3.4.11/ipaddr.gemspec +0 -36
  413. package/lib/ruby/3.4.11/ipaddr.rb +0 -841
  414. package/lib/ruby/3.4.11/irb/cmd/nop.rb +0 -4
  415. package/lib/ruby/3.4.11/irb/color.rb +0 -262
  416. package/lib/ruby/3.4.11/irb/color_printer.rb +0 -55
  417. package/lib/ruby/3.4.11/irb/command/backtrace.rb +0 -17
  418. package/lib/ruby/3.4.11/irb/command/base.rb +0 -60
  419. package/lib/ruby/3.4.11/irb/command/break.rb +0 -17
  420. package/lib/ruby/3.4.11/irb/command/catch.rb +0 -17
  421. package/lib/ruby/3.4.11/irb/command/cd.rb +0 -51
  422. package/lib/ruby/3.4.11/irb/command/chws.rb +0 -40
  423. package/lib/ruby/3.4.11/irb/command/context.rb +0 -16
  424. package/lib/ruby/3.4.11/irb/command/continue.rb +0 -17
  425. package/lib/ruby/3.4.11/irb/command/debug.rb +0 -73
  426. package/lib/ruby/3.4.11/irb/command/delete.rb +0 -17
  427. package/lib/ruby/3.4.11/irb/command/disable_irb.rb +0 -19
  428. package/lib/ruby/3.4.11/irb/command/edit.rb +0 -63
  429. package/lib/ruby/3.4.11/irb/command/exit.rb +0 -18
  430. package/lib/ruby/3.4.11/irb/command/finish.rb +0 -17
  431. package/lib/ruby/3.4.11/irb/command/force_exit.rb +0 -18
  432. package/lib/ruby/3.4.11/irb/command/help.rb +0 -83
  433. package/lib/ruby/3.4.11/irb/command/history.rb +0 -45
  434. package/lib/ruby/3.4.11/irb/command/info.rb +0 -17
  435. package/lib/ruby/3.4.11/irb/command/internal_helpers.rb +0 -27
  436. package/lib/ruby/3.4.11/irb/command/irb_info.rb +0 -33
  437. package/lib/ruby/3.4.11/irb/command/load.rb +0 -91
  438. package/lib/ruby/3.4.11/irb/command/ls.rb +0 -167
  439. package/lib/ruby/3.4.11/irb/command/measure.rb +0 -49
  440. package/lib/ruby/3.4.11/irb/command/next.rb +0 -17
  441. package/lib/ruby/3.4.11/irb/command/pushws.rb +0 -65
  442. package/lib/ruby/3.4.11/irb/command/show_doc.rb +0 -51
  443. package/lib/ruby/3.4.11/irb/command/show_source.rb +0 -74
  444. package/lib/ruby/3.4.11/irb/command/step.rb +0 -17
  445. package/lib/ruby/3.4.11/irb/command/subirb.rb +0 -123
  446. package/lib/ruby/3.4.11/irb/command/whereami.rb +0 -23
  447. package/lib/ruby/3.4.11/irb/command.rb +0 -23
  448. package/lib/ruby/3.4.11/irb/completion.rb +0 -504
  449. package/lib/ruby/3.4.11/irb/context.rb +0 -716
  450. package/lib/ruby/3.4.11/irb/debug/ui.rb +0 -101
  451. package/lib/ruby/3.4.11/irb/debug.rb +0 -127
  452. package/lib/ruby/3.4.11/irb/default_commands.rb +0 -276
  453. package/lib/ruby/3.4.11/irb/easter-egg.rb +0 -152
  454. package/lib/ruby/3.4.11/irb/ext/change-ws.rb +0 -37
  455. package/lib/ruby/3.4.11/irb/ext/eval_history.rb +0 -149
  456. package/lib/ruby/3.4.11/irb/ext/loader.rb +0 -127
  457. package/lib/ruby/3.4.11/irb/ext/multi-irb.rb +0 -258
  458. package/lib/ruby/3.4.11/irb/ext/tracer.rb +0 -39
  459. package/lib/ruby/3.4.11/irb/ext/use-loader.rb +0 -67
  460. package/lib/ruby/3.4.11/irb/ext/workspaces.rb +0 -36
  461. package/lib/ruby/3.4.11/irb/frame.rb +0 -80
  462. package/lib/ruby/3.4.11/irb/help.rb +0 -28
  463. package/lib/ruby/3.4.11/irb/helper_method/base.rb +0 -16
  464. package/lib/ruby/3.4.11/irb/helper_method/conf.rb +0 -11
  465. package/lib/ruby/3.4.11/irb/helper_method.rb +0 -29
  466. package/lib/ruby/3.4.11/irb/history.rb +0 -112
  467. package/lib/ruby/3.4.11/irb/init.rb +0 -538
  468. package/lib/ruby/3.4.11/irb/input-method.rb +0 -515
  469. package/lib/ruby/3.4.11/irb/inspector.rb +0 -131
  470. package/lib/ruby/3.4.11/irb/irb.gemspec +0 -46
  471. package/lib/ruby/3.4.11/irb/lc/error.rb +0 -52
  472. package/lib/ruby/3.4.11/irb/lc/help-message +0 -55
  473. package/lib/ruby/3.4.11/irb/lc/ja/error.rb +0 -53
  474. package/lib/ruby/3.4.11/irb/lc/ja/help-message +0 -58
  475. package/lib/ruby/3.4.11/irb/locale.rb +0 -153
  476. package/lib/ruby/3.4.11/irb/nesting_parser.rb +0 -239
  477. package/lib/ruby/3.4.11/irb/notifier.rb +0 -230
  478. package/lib/ruby/3.4.11/irb/output-method.rb +0 -80
  479. package/lib/ruby/3.4.11/irb/pager.rb +0 -100
  480. package/lib/ruby/3.4.11/irb/ruby-lex.rb +0 -476
  481. package/lib/ruby/3.4.11/irb/ruby_logo.aa +0 -118
  482. package/lib/ruby/3.4.11/irb/source_finder.rb +0 -138
  483. package/lib/ruby/3.4.11/irb/statement.rb +0 -80
  484. package/lib/ruby/3.4.11/irb/version.rb +0 -11
  485. package/lib/ruby/3.4.11/irb/workspace.rb +0 -171
  486. package/lib/ruby/3.4.11/irb/ws-for-case-2.rb +0 -9
  487. package/lib/ruby/3.4.11/irb/xmp.rb +0 -164
  488. package/lib/ruby/3.4.11/irb.rb +0 -1593
  489. package/lib/ruby/3.4.11/logger/errors.rb +0 -9
  490. package/lib/ruby/3.4.11/logger/formatter.rb +0 -36
  491. package/lib/ruby/3.4.11/logger/log_device.rb +0 -236
  492. package/lib/ruby/3.4.11/logger/logger.gemspec +0 -22
  493. package/lib/ruby/3.4.11/logger/period.rb +0 -47
  494. package/lib/ruby/3.4.11/logger/severity.rb +0 -38
  495. package/lib/ruby/3.4.11/logger/version.rb +0 -5
  496. package/lib/ruby/3.4.11/logger.rb +0 -761
  497. package/lib/ruby/3.4.11/mkmf.rb +0 -3045
  498. package/lib/ruby/3.4.11/net/http/exceptions.rb +0 -34
  499. package/lib/ruby/3.4.11/net/http/generic_request.rb +0 -414
  500. package/lib/ruby/3.4.11/net/http/header.rb +0 -981
  501. package/lib/ruby/3.4.11/net/http/net-http.gemspec +0 -39
  502. package/lib/ruby/3.4.11/net/http/proxy_delta.rb +0 -17
  503. package/lib/ruby/3.4.11/net/http/request.rb +0 -88
  504. package/lib/ruby/3.4.11/net/http/requests.rb +0 -430
  505. package/lib/ruby/3.4.11/net/http/response.rb +0 -738
  506. package/lib/ruby/3.4.11/net/http/responses.rb +0 -1174
  507. package/lib/ruby/3.4.11/net/http/status.rb +0 -84
  508. package/lib/ruby/3.4.11/net/http.rb +0 -2574
  509. package/lib/ruby/3.4.11/net/https.rb +0 -23
  510. package/lib/ruby/3.4.11/net/net-protocol.gemspec +0 -34
  511. package/lib/ruby/3.4.11/net/protocol.rb +0 -544
  512. package/lib/ruby/3.4.11/open-uri.gemspec +0 -32
  513. package/lib/ruby/3.4.11/open-uri.rb +0 -895
  514. package/lib/ruby/3.4.11/open3/open3.gemspec +0 -33
  515. package/lib/ruby/3.4.11/open3/version.rb +0 -3
  516. package/lib/ruby/3.4.11/open3.rb +0 -1410
  517. package/lib/ruby/3.4.11/optionparser.rb +0 -2
  518. package/lib/ruby/3.4.11/optparse/ac.rb +0 -70
  519. package/lib/ruby/3.4.11/optparse/date.rb +0 -18
  520. package/lib/ruby/3.4.11/optparse/kwargs.rb +0 -27
  521. package/lib/ruby/3.4.11/optparse/optparse.gemspec +0 -31
  522. package/lib/ruby/3.4.11/optparse/shellwords.rb +0 -7
  523. package/lib/ruby/3.4.11/optparse/time.rb +0 -11
  524. package/lib/ruby/3.4.11/optparse/uri.rb +0 -7
  525. package/lib/ruby/3.4.11/optparse/version.rb +0 -80
  526. package/lib/ruby/3.4.11/optparse.rb +0 -2429
  527. package/lib/ruby/3.4.11/ostruct.gemspec +0 -24
  528. package/lib/ruby/3.4.11/ostruct.rb +0 -489
  529. package/lib/ruby/3.4.11/pp.gemspec +0 -35
  530. package/lib/ruby/3.4.11/pp.rb +0 -699
  531. package/lib/ruby/3.4.11/prettyprint.gemspec +0 -29
  532. package/lib/ruby/3.4.11/prettyprint.rb +0 -558
  533. package/lib/ruby/3.4.11/prism/compiler.rb +0 -801
  534. package/lib/ruby/3.4.11/prism/desugar_compiler.rb +0 -392
  535. package/lib/ruby/3.4.11/prism/dispatcher.rb +0 -2210
  536. package/lib/ruby/3.4.11/prism/dsl.rb +0 -1003
  537. package/lib/ruby/3.4.11/prism/ffi.rb +0 -570
  538. package/lib/ruby/3.4.11/prism/inspect_visitor.rb +0 -2392
  539. package/lib/ruby/3.4.11/prism/lex_compat.rb +0 -928
  540. package/lib/ruby/3.4.11/prism/mutation_compiler.rb +0 -772
  541. package/lib/ruby/3.4.11/prism/node.rb +0 -18816
  542. package/lib/ruby/3.4.11/prism/node_ext.rb +0 -511
  543. package/lib/ruby/3.4.11/prism/pack.rb +0 -230
  544. package/lib/ruby/3.4.11/prism/parse_result/comments.rb +0 -188
  545. package/lib/ruby/3.4.11/prism/parse_result/errors.rb +0 -66
  546. package/lib/ruby/3.4.11/prism/parse_result/newlines.rb +0 -155
  547. package/lib/ruby/3.4.11/prism/parse_result.rb +0 -911
  548. package/lib/ruby/3.4.11/prism/pattern.rb +0 -269
  549. package/lib/ruby/3.4.11/prism/polyfill/append_as_bytes.rb +0 -15
  550. package/lib/ruby/3.4.11/prism/polyfill/byteindex.rb +0 -13
  551. package/lib/ruby/3.4.11/prism/polyfill/scan_byte.rb +0 -14
  552. package/lib/ruby/3.4.11/prism/polyfill/unpack1.rb +0 -14
  553. package/lib/ruby/3.4.11/prism/polyfill/warn.rb +0 -36
  554. package/lib/ruby/3.4.11/prism/prism.gemspec +0 -174
  555. package/lib/ruby/3.4.11/prism/reflection.rb +0 -416
  556. package/lib/ruby/3.4.11/prism/relocation.rb +0 -505
  557. package/lib/ruby/3.4.11/prism/serialize.rb +0 -2400
  558. package/lib/ruby/3.4.11/prism/string_query.rb +0 -31
  559. package/lib/ruby/3.4.11/prism/translation/parser/builder.rb +0 -62
  560. package/lib/ruby/3.4.11/prism/translation/parser/compiler.rb +0 -2234
  561. package/lib/ruby/3.4.11/prism/translation/parser/lexer.rb +0 -820
  562. package/lib/ruby/3.4.11/prism/translation/parser.rb +0 -374
  563. package/lib/ruby/3.4.11/prism/translation/parser33.rb +0 -13
  564. package/lib/ruby/3.4.11/prism/translation/parser34.rb +0 -13
  565. package/lib/ruby/3.4.11/prism/translation/parser35.rb +0 -13
  566. package/lib/ruby/3.4.11/prism/translation/parser_current.rb +0 -24
  567. package/lib/ruby/3.4.11/prism/translation/ripper/sexp.rb +0 -126
  568. package/lib/ruby/3.4.11/prism/translation/ripper/shim.rb +0 -5
  569. package/lib/ruby/3.4.11/prism/translation/ripper.rb +0 -3474
  570. package/lib/ruby/3.4.11/prism/translation/ruby_parser.rb +0 -1929
  571. package/lib/ruby/3.4.11/prism/translation.rb +0 -16
  572. package/lib/ruby/3.4.11/prism/visitor.rb +0 -813
  573. package/lib/ruby/3.4.11/prism.rb +0 -91
  574. package/lib/ruby/3.4.11/pstore.gemspec +0 -32
  575. package/lib/ruby/3.4.11/pstore.rb +0 -736
  576. package/lib/ruby/3.4.11/random/formatter.rb +0 -372
  577. package/lib/ruby/3.4.11/rdoc/.document +0 -2
  578. package/lib/ruby/3.4.11/rdoc/code_object/alias.rb +0 -104
  579. package/lib/ruby/3.4.11/rdoc/code_object/anon_class.rb +0 -10
  580. package/lib/ruby/3.4.11/rdoc/code_object/any_method.rb +0 -374
  581. package/lib/ruby/3.4.11/rdoc/code_object/attr.rb +0 -172
  582. package/lib/ruby/3.4.11/rdoc/code_object/class_module.rb +0 -888
  583. package/lib/ruby/3.4.11/rdoc/code_object/constant.rb +0 -186
  584. package/lib/ruby/3.4.11/rdoc/code_object/context/section.rb +0 -175
  585. package/lib/ruby/3.4.11/rdoc/code_object/context.rb +0 -1222
  586. package/lib/ruby/3.4.11/rdoc/code_object/extend.rb +0 -9
  587. package/lib/ruby/3.4.11/rdoc/code_object/ghost_method.rb +0 -6
  588. package/lib/ruby/3.4.11/rdoc/code_object/include.rb +0 -9
  589. package/lib/ruby/3.4.11/rdoc/code_object/meta_method.rb +0 -6
  590. package/lib/ruby/3.4.11/rdoc/code_object/method_attr.rb +0 -410
  591. package/lib/ruby/3.4.11/rdoc/code_object/mixin.rb +0 -120
  592. package/lib/ruby/3.4.11/rdoc/code_object/normal_class.rb +0 -92
  593. package/lib/ruby/3.4.11/rdoc/code_object/normal_module.rb +0 -73
  594. package/lib/ruby/3.4.11/rdoc/code_object/require.rb +0 -51
  595. package/lib/ruby/3.4.11/rdoc/code_object/single_class.rb +0 -30
  596. package/lib/ruby/3.4.11/rdoc/code_object/top_level.rb +0 -273
  597. package/lib/ruby/3.4.11/rdoc/code_object.rb +0 -395
  598. package/lib/ruby/3.4.11/rdoc/code_objects.rb +0 -5
  599. package/lib/ruby/3.4.11/rdoc/comment.rb +0 -236
  600. package/lib/ruby/3.4.11/rdoc/cross_reference.rb +0 -228
  601. package/lib/ruby/3.4.11/rdoc/encoding.rb +0 -120
  602. package/lib/ruby/3.4.11/rdoc/erb_partial.rb +0 -18
  603. package/lib/ruby/3.4.11/rdoc/erbio.rb +0 -37
  604. package/lib/ruby/3.4.11/rdoc/generator/darkfish.rb +0 -812
  605. package/lib/ruby/3.4.11/rdoc/generator/json_index.rb +0 -284
  606. package/lib/ruby/3.4.11/rdoc/generator/markup.rb +0 -171
  607. package/lib/ruby/3.4.11/rdoc/generator/pot/message_extractor.rb +0 -68
  608. package/lib/ruby/3.4.11/rdoc/generator/pot/po.rb +0 -84
  609. package/lib/ruby/3.4.11/rdoc/generator/pot/po_entry.rb +0 -141
  610. package/lib/ruby/3.4.11/rdoc/generator/pot.rb +0 -94
  611. package/lib/ruby/3.4.11/rdoc/generator/ri.rb +0 -30
  612. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/.document +0 -0
  613. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_footer.rhtml +0 -5
  614. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_head.rhtml +0 -48
  615. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_classes.rhtml +0 -5
  616. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +0 -15
  617. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +0 -15
  618. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +0 -15
  619. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_methods.rhtml +0 -21
  620. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_navigation.rhtml +0 -11
  621. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +0 -32
  622. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_parent.rhtml +0 -6
  623. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_search.rhtml +0 -14
  624. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +0 -11
  625. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +0 -39
  626. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/_sidebar_toggle.rhtml +0 -3
  627. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/class.rhtml +0 -221
  628. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/css/fonts.css +0 -167
  629. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/css/rdoc.css +0 -683
  630. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-Light.ttf +0 -0
  631. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-LightItalic.ttf +0 -0
  632. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-Regular.ttf +0 -0
  633. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/Lato-RegularItalic.ttf +0 -0
  634. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/SourceCodePro-Bold.ttf +0 -0
  635. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/fonts/SourceCodePro-Regular.ttf +0 -0
  636. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/add.png +0 -0
  637. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/arrow_up.png +0 -0
  638. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/brick.png +0 -0
  639. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/brick_link.png +0 -0
  640. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bug.png +0 -0
  641. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bullet_black.png +0 -0
  642. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bullet_toggle_minus.png +0 -0
  643. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/bullet_toggle_plus.png +0 -0
  644. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/date.png +0 -0
  645. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/delete.png +0 -0
  646. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/find.png +0 -0
  647. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/loadingAnimation.gif +0 -0
  648. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/macFFBgHack.png +0 -0
  649. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/package.png +0 -0
  650. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/page_green.png +0 -0
  651. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/page_white_text.png +0 -0
  652. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/page_white_width.png +0 -0
  653. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/plugin.png +0 -0
  654. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/ruby.png +0 -0
  655. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/tag_blue.png +0 -0
  656. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/tag_green.png +0 -0
  657. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/transparent.png +0 -0
  658. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/wrench.png +0 -0
  659. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/wrench_orange.png +0 -0
  660. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/images/zoom.png +0 -0
  661. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/index.rhtml +0 -23
  662. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/js/darkfish.js +0 -120
  663. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/js/search.js +0 -110
  664. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/page.rhtml +0 -18
  665. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/servlet_not_found.rhtml +0 -20
  666. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/servlet_root.rhtml +0 -65
  667. package/lib/ruby/3.4.11/rdoc/generator/template/darkfish/table_of_contents.rhtml +0 -70
  668. package/lib/ruby/3.4.11/rdoc/generator/template/json_index/.document +0 -1
  669. package/lib/ruby/3.4.11/rdoc/generator/template/json_index/js/navigation.js +0 -105
  670. package/lib/ruby/3.4.11/rdoc/generator/template/json_index/js/searcher.js +0 -229
  671. package/lib/ruby/3.4.11/rdoc/generator.rb +0 -51
  672. package/lib/ruby/3.4.11/rdoc/i18n/locale.rb +0 -102
  673. package/lib/ruby/3.4.11/rdoc/i18n/text.rb +0 -126
  674. package/lib/ruby/3.4.11/rdoc/i18n.rb +0 -10
  675. package/lib/ruby/3.4.11/rdoc/known_classes.rb +0 -74
  676. package/lib/ruby/3.4.11/rdoc/markdown/.document +0 -1
  677. package/lib/ruby/3.4.11/rdoc/markdown/entities.rb +0 -2131
  678. package/lib/ruby/3.4.11/rdoc/markdown/literals.rb +0 -454
  679. package/lib/ruby/3.4.11/rdoc/markdown.rb +0 -16806
  680. package/lib/ruby/3.4.11/rdoc/markup/attr_changer.rb +0 -22
  681. package/lib/ruby/3.4.11/rdoc/markup/attr_span.rb +0 -35
  682. package/lib/ruby/3.4.11/rdoc/markup/attribute_manager.rb +0 -405
  683. package/lib/ruby/3.4.11/rdoc/markup/attributes.rb +0 -70
  684. package/lib/ruby/3.4.11/rdoc/markup/blank_line.rb +0 -27
  685. package/lib/ruby/3.4.11/rdoc/markup/block_quote.rb +0 -14
  686. package/lib/ruby/3.4.11/rdoc/markup/document.rb +0 -164
  687. package/lib/ruby/3.4.11/rdoc/markup/formatter.rb +0 -272
  688. package/lib/ruby/3.4.11/rdoc/markup/hard_break.rb +0 -31
  689. package/lib/ruby/3.4.11/rdoc/markup/heading.rb +0 -84
  690. package/lib/ruby/3.4.11/rdoc/markup/include.rb +0 -42
  691. package/lib/ruby/3.4.11/rdoc/markup/indented_paragraph.rb +0 -47
  692. package/lib/ruby/3.4.11/rdoc/markup/list.rb +0 -101
  693. package/lib/ruby/3.4.11/rdoc/markup/list_item.rb +0 -99
  694. package/lib/ruby/3.4.11/rdoc/markup/paragraph.rb +0 -28
  695. package/lib/ruby/3.4.11/rdoc/markup/parser.rb +0 -585
  696. package/lib/ruby/3.4.11/rdoc/markup/pre_process.rb +0 -318
  697. package/lib/ruby/3.4.11/rdoc/markup/raw.rb +0 -69
  698. package/lib/ruby/3.4.11/rdoc/markup/regexp_handling.rb +0 -40
  699. package/lib/ruby/3.4.11/rdoc/markup/rule.rb +0 -20
  700. package/lib/ruby/3.4.11/rdoc/markup/table.rb +0 -56
  701. package/lib/ruby/3.4.11/rdoc/markup/to_ansi.rb +0 -93
  702. package/lib/ruby/3.4.11/rdoc/markup/to_bs.rb +0 -102
  703. package/lib/ruby/3.4.11/rdoc/markup/to_html.rb +0 -462
  704. package/lib/ruby/3.4.11/rdoc/markup/to_html_crossref.rb +0 -226
  705. package/lib/ruby/3.4.11/rdoc/markup/to_html_snippet.rb +0 -287
  706. package/lib/ruby/3.4.11/rdoc/markup/to_joined_paragraph.rb +0 -46
  707. package/lib/ruby/3.4.11/rdoc/markup/to_label.rb +0 -74
  708. package/lib/ruby/3.4.11/rdoc/markup/to_markdown.rb +0 -191
  709. package/lib/ruby/3.4.11/rdoc/markup/to_rdoc.rb +0 -353
  710. package/lib/ruby/3.4.11/rdoc/markup/to_table_of_contents.rb +0 -88
  711. package/lib/ruby/3.4.11/rdoc/markup/to_test.rb +0 -69
  712. package/lib/ruby/3.4.11/rdoc/markup/to_tt_only.rb +0 -120
  713. package/lib/ruby/3.4.11/rdoc/markup/verbatim.rb +0 -83
  714. package/lib/ruby/3.4.11/rdoc/markup.rb +0 -240
  715. package/lib/ruby/3.4.11/rdoc/options.rb +0 -1416
  716. package/lib/ruby/3.4.11/rdoc/parser/c.rb +0 -1257
  717. package/lib/ruby/3.4.11/rdoc/parser/changelog.rb +0 -350
  718. package/lib/ruby/3.4.11/rdoc/parser/markdown.rb +0 -22
  719. package/lib/ruby/3.4.11/rdoc/parser/prism_ruby.rb +0 -1092
  720. package/lib/ruby/3.4.11/rdoc/parser/rd.rb +0 -22
  721. package/lib/ruby/3.4.11/rdoc/parser/ripper_state_lex.rb +0 -302
  722. package/lib/ruby/3.4.11/rdoc/parser/ruby.rb +0 -2378
  723. package/lib/ruby/3.4.11/rdoc/parser/ruby_tools.rb +0 -165
  724. package/lib/ruby/3.4.11/rdoc/parser/simple.rb +0 -61
  725. package/lib/ruby/3.4.11/rdoc/parser/text.rb +0 -11
  726. package/lib/ruby/3.4.11/rdoc/parser.rb +0 -297
  727. package/lib/ruby/3.4.11/rdoc/rd/.document +0 -1
  728. package/lib/ruby/3.4.11/rdoc/rd/block_parser.rb +0 -1706
  729. package/lib/ruby/3.4.11/rdoc/rd/inline.rb +0 -71
  730. package/lib/ruby/3.4.11/rdoc/rd/inline_parser.rb +0 -1854
  731. package/lib/ruby/3.4.11/rdoc/rd.rb +0 -99
  732. package/lib/ruby/3.4.11/rdoc/rdoc.gemspec +0 -68
  733. package/lib/ruby/3.4.11/rdoc/rdoc.rb +0 -551
  734. package/lib/ruby/3.4.11/rdoc/ri/driver.rb +0 -1566
  735. package/lib/ruby/3.4.11/rdoc/ri/formatter.rb +0 -6
  736. package/lib/ruby/3.4.11/rdoc/ri/paths.rb +0 -171
  737. package/lib/ruby/3.4.11/rdoc/ri/store.rb +0 -6
  738. package/lib/ruby/3.4.11/rdoc/ri/task.rb +0 -71
  739. package/lib/ruby/3.4.11/rdoc/ri.rb +0 -20
  740. package/lib/ruby/3.4.11/rdoc/rubygems_hook.rb +0 -327
  741. package/lib/ruby/3.4.11/rdoc/servlet.rb +0 -452
  742. package/lib/ruby/3.4.11/rdoc/stats/normal.rb +0 -58
  743. package/lib/ruby/3.4.11/rdoc/stats/quiet.rb +0 -59
  744. package/lib/ruby/3.4.11/rdoc/stats/verbose.rb +0 -44
  745. package/lib/ruby/3.4.11/rdoc/stats.rb +0 -461
  746. package/lib/ruby/3.4.11/rdoc/store.rb +0 -997
  747. package/lib/ruby/3.4.11/rdoc/task.rb +0 -354
  748. package/lib/ruby/3.4.11/rdoc/text.rb +0 -322
  749. package/lib/ruby/3.4.11/rdoc/token_stream.rb +0 -118
  750. package/lib/ruby/3.4.11/rdoc/tom_doc.rb +0 -257
  751. package/lib/ruby/3.4.11/rdoc/version.rb +0 -10
  752. package/lib/ruby/3.4.11/rdoc.rb +0 -211
  753. package/lib/ruby/3.4.11/readline.gemspec +0 -33
  754. package/lib/ruby/3.4.11/readline.rb +0 -7
  755. package/lib/ruby/3.4.11/reline/config.rb +0 -373
  756. package/lib/ruby/3.4.11/reline/face.rb +0 -199
  757. package/lib/ruby/3.4.11/reline/history.rb +0 -76
  758. package/lib/ruby/3.4.11/reline/io/ansi.rb +0 -325
  759. package/lib/ruby/3.4.11/reline/io/dumb.rb +0 -120
  760. package/lib/ruby/3.4.11/reline/io/windows.rb +0 -530
  761. package/lib/ruby/3.4.11/reline/io.rb +0 -55
  762. package/lib/ruby/3.4.11/reline/key_actor/base.rb +0 -37
  763. package/lib/ruby/3.4.11/reline/key_actor/composite.rb +0 -17
  764. package/lib/ruby/3.4.11/reline/key_actor/emacs.rb +0 -517
  765. package/lib/ruby/3.4.11/reline/key_actor/vi_command.rb +0 -518
  766. package/lib/ruby/3.4.11/reline/key_actor/vi_insert.rb +0 -517
  767. package/lib/ruby/3.4.11/reline/key_actor.rb +0 -8
  768. package/lib/ruby/3.4.11/reline/key_stroke.rb +0 -119
  769. package/lib/ruby/3.4.11/reline/kill_ring.rb +0 -125
  770. package/lib/ruby/3.4.11/reline/line_editor.rb +0 -2382
  771. package/lib/ruby/3.4.11/reline/reline.gemspec +0 -30
  772. package/lib/ruby/3.4.11/reline/unicode/east_asian_width.rb +0 -1267
  773. package/lib/ruby/3.4.11/reline/unicode.rb +0 -415
  774. package/lib/ruby/3.4.11/reline/version.rb +0 -3
  775. package/lib/ruby/3.4.11/reline.rb +0 -519
  776. package/lib/ruby/3.4.11/resolv.gemspec +0 -30
  777. package/lib/ruby/3.4.11/resolv.rb +0 -3587
  778. package/lib/ruby/3.4.11/ruby2_keywords.gemspec +0 -23
  779. package/lib/ruby/3.4.11/ruby_vm/rjit/.document +0 -1
  780. package/lib/ruby/3.4.11/ruby_vm/rjit/assembler.rb +0 -1160
  781. package/lib/ruby/3.4.11/ruby_vm/rjit/block.rb +0 -11
  782. package/lib/ruby/3.4.11/ruby_vm/rjit/branch_stub.rb +0 -24
  783. package/lib/ruby/3.4.11/ruby_vm/rjit/c_pointer.rb +0 -394
  784. package/lib/ruby/3.4.11/ruby_vm/rjit/c_type.rb +0 -99
  785. package/lib/ruby/3.4.11/ruby_vm/rjit/code_block.rb +0 -91
  786. package/lib/ruby/3.4.11/ruby_vm/rjit/compiler.rb +0 -518
  787. package/lib/ruby/3.4.11/ruby_vm/rjit/context.rb +0 -377
  788. package/lib/ruby/3.4.11/ruby_vm/rjit/entry_stub.rb +0 -7
  789. package/lib/ruby/3.4.11/ruby_vm/rjit/exit_compiler.rb +0 -164
  790. package/lib/ruby/3.4.11/ruby_vm/rjit/hooks.rb +0 -36
  791. package/lib/ruby/3.4.11/ruby_vm/rjit/insn_compiler.rb +0 -6046
  792. package/lib/ruby/3.4.11/ruby_vm/rjit/instruction.rb +0 -1326
  793. package/lib/ruby/3.4.11/ruby_vm/rjit/invariants.rb +0 -155
  794. package/lib/ruby/3.4.11/ruby_vm/rjit/jit_state.rb +0 -65
  795. package/lib/ruby/3.4.11/ruby_vm/rjit/stats.rb +0 -191
  796. package/lib/ruby/3.4.11/ruby_vm/rjit/type.rb +0 -221
  797. package/lib/ruby/3.4.11/rubygems/available_set.rb +0 -165
  798. package/lib/ruby/3.4.11/rubygems/basic_specification.rb +0 -383
  799. package/lib/ruby/3.4.11/rubygems/bundler_version_finder.rb +0 -77
  800. package/lib/ruby/3.4.11/rubygems/ci_detector.rb +0 -75
  801. package/lib/ruby/3.4.11/rubygems/command.rb +0 -664
  802. package/lib/ruby/3.4.11/rubygems/command_manager.rb +0 -255
  803. package/lib/ruby/3.4.11/rubygems/commands/build_command.rb +0 -127
  804. package/lib/ruby/3.4.11/rubygems/commands/cert_command.rb +0 -325
  805. package/lib/ruby/3.4.11/rubygems/commands/check_command.rb +0 -97
  806. package/lib/ruby/3.4.11/rubygems/commands/cleanup_command.rb +0 -178
  807. package/lib/ruby/3.4.11/rubygems/commands/contents_command.rb +0 -196
  808. package/lib/ruby/3.4.11/rubygems/commands/dependency_command.rb +0 -206
  809. package/lib/ruby/3.4.11/rubygems/commands/environment_command.rb +0 -181
  810. package/lib/ruby/3.4.11/rubygems/commands/exec_command.rb +0 -256
  811. package/lib/ruby/3.4.11/rubygems/commands/fetch_command.rb +0 -109
  812. package/lib/ruby/3.4.11/rubygems/commands/generate_index_command.rb +0 -51
  813. package/lib/ruby/3.4.11/rubygems/commands/help_command.rb +0 -375
  814. package/lib/ruby/3.4.11/rubygems/commands/info_command.rb +0 -38
  815. package/lib/ruby/3.4.11/rubygems/commands/install_command.rb +0 -269
  816. package/lib/ruby/3.4.11/rubygems/commands/list_command.rb +0 -42
  817. package/lib/ruby/3.4.11/rubygems/commands/lock_command.rb +0 -109
  818. package/lib/ruby/3.4.11/rubygems/commands/mirror_command.rb +0 -26
  819. package/lib/ruby/3.4.11/rubygems/commands/open_command.rb +0 -83
  820. package/lib/ruby/3.4.11/rubygems/commands/outdated_command.rb +0 -33
  821. package/lib/ruby/3.4.11/rubygems/commands/owner_command.rb +0 -124
  822. package/lib/ruby/3.4.11/rubygems/commands/pristine_command.rb +0 -217
  823. package/lib/ruby/3.4.11/rubygems/commands/push_command.rb +0 -135
  824. package/lib/ruby/3.4.11/rubygems/commands/query_command.rb +0 -43
  825. package/lib/ruby/3.4.11/rubygems/commands/rdoc_command.rb +0 -90
  826. package/lib/ruby/3.4.11/rubygems/commands/rebuild_command.rb +0 -262
  827. package/lib/ruby/3.4.11/rubygems/commands/search_command.rb +0 -41
  828. package/lib/ruby/3.4.11/rubygems/commands/server_command.rb +0 -26
  829. package/lib/ruby/3.4.11/rubygems/commands/setup_command.rb +0 -663
  830. package/lib/ruby/3.4.11/rubygems/commands/signin_command.rb +0 -34
  831. package/lib/ruby/3.4.11/rubygems/commands/signout_command.rb +0 -32
  832. package/lib/ruby/3.4.11/rubygems/commands/sources_command.rb +0 -227
  833. package/lib/ruby/3.4.11/rubygems/commands/specification_command.rb +0 -156
  834. package/lib/ruby/3.4.11/rubygems/commands/stale_command.rb +0 -40
  835. package/lib/ruby/3.4.11/rubygems/commands/uninstall_command.rb +0 -204
  836. package/lib/ruby/3.4.11/rubygems/commands/unpack_command.rb +0 -168
  837. package/lib/ruby/3.4.11/rubygems/commands/update_command.rb +0 -326
  838. package/lib/ruby/3.4.11/rubygems/commands/which_command.rb +0 -88
  839. package/lib/ruby/3.4.11/rubygems/commands/yank_command.rb +0 -99
  840. package/lib/ruby/3.4.11/rubygems/compatibility.rb +0 -41
  841. package/lib/ruby/3.4.11/rubygems/config_file.rb +0 -618
  842. package/lib/ruby/3.4.11/rubygems/core_ext/kernel_gem.rb +0 -68
  843. package/lib/ruby/3.4.11/rubygems/core_ext/kernel_require.rb +0 -149
  844. package/lib/ruby/3.4.11/rubygems/core_ext/kernel_warn.rb +0 -45
  845. package/lib/ruby/3.4.11/rubygems/core_ext/tcpsocket_init.rb +0 -54
  846. package/lib/ruby/3.4.11/rubygems/defaults.rb +0 -308
  847. package/lib/ruby/3.4.11/rubygems/dependency.rb +0 -348
  848. package/lib/ruby/3.4.11/rubygems/dependency_installer.rb +0 -335
  849. package/lib/ruby/3.4.11/rubygems/dependency_list.rb +0 -243
  850. package/lib/ruby/3.4.11/rubygems/deprecate.rb +0 -169
  851. package/lib/ruby/3.4.11/rubygems/doctor.rb +0 -132
  852. package/lib/ruby/3.4.11/rubygems/errors.rb +0 -177
  853. package/lib/ruby/3.4.11/rubygems/exceptions.rb +0 -293
  854. package/lib/ruby/3.4.11/rubygems/ext/build_error.rb +0 -9
  855. package/lib/ruby/3.4.11/rubygems/ext/builder.rb +0 -260
  856. package/lib/ruby/3.4.11/rubygems/ext/cargo_builder/link_flag_converter.rb +0 -27
  857. package/lib/ruby/3.4.11/rubygems/ext/cargo_builder.rb +0 -346
  858. package/lib/ruby/3.4.11/rubygems/ext/cmake_builder.rb +0 -21
  859. package/lib/ruby/3.4.11/rubygems/ext/configure_builder.rb +0 -26
  860. package/lib/ruby/3.4.11/rubygems/ext/ext_conf_builder.rb +0 -77
  861. package/lib/ruby/3.4.11/rubygems/ext/rake_builder.rb +0 -37
  862. package/lib/ruby/3.4.11/rubygems/ext.rb +0 -20
  863. package/lib/ruby/3.4.11/rubygems/gem_runner.rb +0 -89
  864. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities/webauthn_listener/response.rb +0 -163
  865. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities/webauthn_listener.rb +0 -105
  866. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities/webauthn_poller.rb +0 -80
  867. package/lib/ruby/3.4.11/rubygems/gemcutter_utilities.rb +0 -397
  868. package/lib/ruby/3.4.11/rubygems/gemspec_helpers.rb +0 -19
  869. package/lib/ruby/3.4.11/rubygems/install_default_message.rb +0 -13
  870. package/lib/ruby/3.4.11/rubygems/install_message.rb +0 -13
  871. package/lib/ruby/3.4.11/rubygems/install_update_options.rb +0 -204
  872. package/lib/ruby/3.4.11/rubygems/installer.rb +0 -1031
  873. package/lib/ruby/3.4.11/rubygems/installer_uninstaller_utils.rb +0 -27
  874. package/lib/ruby/3.4.11/rubygems/local_remote_options.rb +0 -146
  875. package/lib/ruby/3.4.11/rubygems/name_tuple.rb +0 -119
  876. package/lib/ruby/3.4.11/rubygems/openssl.rb +0 -7
  877. package/lib/ruby/3.4.11/rubygems/package/digest_io.rb +0 -63
  878. package/lib/ruby/3.4.11/rubygems/package/file_source.rb +0 -32
  879. package/lib/ruby/3.4.11/rubygems/package/io_source.rb +0 -48
  880. package/lib/ruby/3.4.11/rubygems/package/old.rb +0 -169
  881. package/lib/ruby/3.4.11/rubygems/package/source.rb +0 -4
  882. package/lib/ruby/3.4.11/rubygems/package/tar_header.rb +0 -277
  883. package/lib/ruby/3.4.11/rubygems/package/tar_reader/entry.rb +0 -244
  884. package/lib/ruby/3.4.11/rubygems/package/tar_reader.rb +0 -101
  885. package/lib/ruby/3.4.11/rubygems/package/tar_writer.rb +0 -332
  886. package/lib/ruby/3.4.11/rubygems/package.rb +0 -742
  887. package/lib/ruby/3.4.11/rubygems/package_task.rb +0 -123
  888. package/lib/ruby/3.4.11/rubygems/path_support.rb +0 -85
  889. package/lib/ruby/3.4.11/rubygems/platform.rb +0 -269
  890. package/lib/ruby/3.4.11/rubygems/psych_tree.rb +0 -37
  891. package/lib/ruby/3.4.11/rubygems/query_utils.rb +0 -349
  892. package/lib/ruby/3.4.11/rubygems/rdoc.rb +0 -26
  893. package/lib/ruby/3.4.11/rubygems/remote_fetcher.rb +0 -341
  894. package/lib/ruby/3.4.11/rubygems/request/connection_pools.rb +0 -95
  895. package/lib/ruby/3.4.11/rubygems/request/http_pool.rb +0 -47
  896. package/lib/ruby/3.4.11/rubygems/request/https_pool.rb +0 -10
  897. package/lib/ruby/3.4.11/rubygems/request.rb +0 -298
  898. package/lib/ruby/3.4.11/rubygems/request_set/gem_dependency_api.rb +0 -841
  899. package/lib/ruby/3.4.11/rubygems/request_set/lockfile/parser.rb +0 -344
  900. package/lib/ruby/3.4.11/rubygems/request_set/lockfile/tokenizer.rb +0 -122
  901. package/lib/ruby/3.4.11/rubygems/request_set/lockfile.rb +0 -235
  902. package/lib/ruby/3.4.11/rubygems/request_set.rb +0 -468
  903. package/lib/ruby/3.4.11/rubygems/requirement.rb +0 -298
  904. package/lib/ruby/3.4.11/rubygems/resolver/activation_request.rb +0 -159
  905. package/lib/ruby/3.4.11/rubygems/resolver/api_set/gem_parser.rb +0 -21
  906. package/lib/ruby/3.4.11/rubygems/resolver/api_set.rb +0 -139
  907. package/lib/ruby/3.4.11/rubygems/resolver/api_specification.rb +0 -105
  908. package/lib/ruby/3.4.11/rubygems/resolver/best_set.rb +0 -49
  909. package/lib/ruby/3.4.11/rubygems/resolver/composed_set.rb +0 -65
  910. package/lib/ruby/3.4.11/rubygems/resolver/conflict.rb +0 -146
  911. package/lib/ruby/3.4.11/rubygems/resolver/current_set.rb +0 -12
  912. package/lib/ruby/3.4.11/rubygems/resolver/dependency_request.rb +0 -119
  913. package/lib/ruby/3.4.11/rubygems/resolver/git_set.rb +0 -120
  914. package/lib/ruby/3.4.11/rubygems/resolver/git_specification.rb +0 -57
  915. package/lib/ruby/3.4.11/rubygems/resolver/index_set.rb +0 -79
  916. package/lib/ruby/3.4.11/rubygems/resolver/index_specification.rb +0 -101
  917. package/lib/ruby/3.4.11/rubygems/resolver/installed_specification.rb +0 -57
  918. package/lib/ruby/3.4.11/rubygems/resolver/installer_set.rb +0 -271
  919. package/lib/ruby/3.4.11/rubygems/resolver/local_specification.rb +0 -40
  920. package/lib/ruby/3.4.11/rubygems/resolver/lock_set.rb +0 -81
  921. package/lib/ruby/3.4.11/rubygems/resolver/lock_specification.rb +0 -86
  922. package/lib/ruby/3.4.11/rubygems/resolver/requirement_list.rb +0 -82
  923. package/lib/ruby/3.4.11/rubygems/resolver/set.rb +0 -55
  924. package/lib/ruby/3.4.11/rubygems/resolver/source_set.rb +0 -47
  925. package/lib/ruby/3.4.11/rubygems/resolver/spec_specification.rb +0 -76
  926. package/lib/ruby/3.4.11/rubygems/resolver/specification.rb +0 -126
  927. package/lib/ruby/3.4.11/rubygems/resolver/stats.rb +0 -46
  928. package/lib/ruby/3.4.11/rubygems/resolver/vendor_set.rb +0 -86
  929. package/lib/ruby/3.4.11/rubygems/resolver/vendor_specification.rb +0 -23
  930. package/lib/ruby/3.4.11/rubygems/resolver.rb +0 -341
  931. package/lib/ruby/3.4.11/rubygems/s3_uri_signer.rb +0 -177
  932. package/lib/ruby/3.4.11/rubygems/safe_marshal/elements.rb +0 -146
  933. package/lib/ruby/3.4.11/rubygems/safe_marshal/reader.rb +0 -325
  934. package/lib/ruby/3.4.11/rubygems/safe_marshal/visitors/stream_printer.rb +0 -31
  935. package/lib/ruby/3.4.11/rubygems/safe_marshal/visitors/to_ruby.rb +0 -428
  936. package/lib/ruby/3.4.11/rubygems/safe_marshal/visitors/visitor.rb +0 -74
  937. package/lib/ruby/3.4.11/rubygems/safe_marshal.rb +0 -74
  938. package/lib/ruby/3.4.11/rubygems/safe_yaml.rb +0 -45
  939. package/lib/ruby/3.4.11/rubygems/security/policies.rb +0 -114
  940. package/lib/ruby/3.4.11/rubygems/security/policy.rb +0 -288
  941. package/lib/ruby/3.4.11/rubygems/security/signer.rb +0 -212
  942. package/lib/ruby/3.4.11/rubygems/security/trust_dir.rb +0 -117
  943. package/lib/ruby/3.4.11/rubygems/security.rb +0 -615
  944. package/lib/ruby/3.4.11/rubygems/security_option.rb +0 -43
  945. package/lib/ruby/3.4.11/rubygems/source/git.rb +0 -244
  946. package/lib/ruby/3.4.11/rubygems/source/installed.rb +0 -39
  947. package/lib/ruby/3.4.11/rubygems/source/local.rb +0 -131
  948. package/lib/ruby/3.4.11/rubygems/source/lock.rb +0 -49
  949. package/lib/ruby/3.4.11/rubygems/source/specific_file.rb +0 -73
  950. package/lib/ruby/3.4.11/rubygems/source/vendor.rb +0 -24
  951. package/lib/ruby/3.4.11/rubygems/source.rb +0 -247
  952. package/lib/ruby/3.4.11/rubygems/source_list.rb +0 -146
  953. package/lib/ruby/3.4.11/rubygems/spec_fetcher.rb +0 -290
  954. package/lib/ruby/3.4.11/rubygems/specification.rb +0 -2666
  955. package/lib/ruby/3.4.11/rubygems/specification_policy.rb +0 -558
  956. package/lib/ruby/3.4.11/rubygems/specification_record.rb +0 -212
  957. package/lib/ruby/3.4.11/rubygems/ssl_certs/.document +0 -1
  958. package/lib/ruby/3.4.11/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem +0 -21
  959. package/lib/ruby/3.4.11/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +0 -21
  960. package/lib/ruby/3.4.11/rubygems/stub_specification.rb +0 -235
  961. package/lib/ruby/3.4.11/rubygems/target_rbconfig.rb +0 -50
  962. package/lib/ruby/3.4.11/rubygems/text.rb +0 -85
  963. package/lib/ruby/3.4.11/rubygems/uninstaller.rb +0 -429
  964. package/lib/ruby/3.4.11/rubygems/unknown_command_spell_checker.rb +0 -21
  965. package/lib/ruby/3.4.11/rubygems/update_suggestion.rb +0 -56
  966. package/lib/ruby/3.4.11/rubygems/uri.rb +0 -126
  967. package/lib/ruby/3.4.11/rubygems/uri_formatter.rb +0 -47
  968. package/lib/ruby/3.4.11/rubygems/user_interaction.rb +0 -650
  969. package/lib/ruby/3.4.11/rubygems/util/licenses.rb +0 -834
  970. package/lib/ruby/3.4.11/rubygems/util/list.rb +0 -40
  971. package/lib/ruby/3.4.11/rubygems/util.rb +0 -118
  972. package/lib/ruby/3.4.11/rubygems/validator.rb +0 -144
  973. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/.document +0 -1
  974. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
  975. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -88
  976. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
  977. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
  978. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
  979. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
  980. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
  981. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
  982. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
  983. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
  984. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -164
  985. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -255
  986. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/errors.rb +0 -149
  987. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
  988. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -112
  989. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
  990. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/resolution.rb +0 -839
  991. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
  992. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo/state.rb +0 -58
  993. package/lib/ruby/3.4.11/rubygems/vendor/molinillo/lib/molinillo.rb +0 -11
  994. package/lib/ruby/3.4.11/rubygems/vendor/net-http/.document +0 -1
  995. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/exceptions.rb +0 -34
  996. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/generic_request.rb +0 -414
  997. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/header.rb +0 -981
  998. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/proxy_delta.rb +0 -17
  999. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/request.rb +0 -88
  1000. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/requests.rb +0 -430
  1001. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/response.rb +0 -738
  1002. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/responses.rb +0 -1174
  1003. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http/status.rb +0 -84
  1004. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/http.rb +0 -2580
  1005. package/lib/ruby/3.4.11/rubygems/vendor/net-http/lib/net/https.rb +0 -23
  1006. package/lib/ruby/3.4.11/rubygems/vendor/net-protocol/.document +0 -1
  1007. package/lib/ruby/3.4.11/rubygems/vendor/net-protocol/lib/net/protocol.rb +0 -544
  1008. package/lib/ruby/3.4.11/rubygems/vendor/optparse/.document +0 -1
  1009. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optionparser.rb +0 -2
  1010. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/ac.rb +0 -70
  1011. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/date.rb +0 -18
  1012. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/kwargs.rb +0 -27
  1013. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/shellwords.rb +0 -7
  1014. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/time.rb +0 -11
  1015. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/uri.rb +0 -7
  1016. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse/version.rb +0 -80
  1017. package/lib/ruby/3.4.11/rubygems/vendor/optparse/lib/optparse.rb +0 -2426
  1018. package/lib/ruby/3.4.11/rubygems/vendor/resolv/.document +0 -1
  1019. package/lib/ruby/3.4.11/rubygems/vendor/resolv/lib/resolv.rb +0 -3455
  1020. package/lib/ruby/3.4.11/rubygems/vendor/securerandom/.document +0 -1
  1021. package/lib/ruby/3.4.11/rubygems/vendor/securerandom/lib/securerandom.rb +0 -102
  1022. package/lib/ruby/3.4.11/rubygems/vendor/timeout/.document +0 -1
  1023. package/lib/ruby/3.4.11/rubygems/vendor/timeout/lib/timeout.rb +0 -198
  1024. package/lib/ruby/3.4.11/rubygems/vendor/tsort/.document +0 -1
  1025. package/lib/ruby/3.4.11/rubygems/vendor/tsort/lib/tsort.rb +0 -455
  1026. package/lib/ruby/3.4.11/rubygems/vendor/uri/.document +0 -1
  1027. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/common.rb +0 -880
  1028. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/file.rb +0 -100
  1029. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ftp.rb +0 -267
  1030. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/generic.rb +0 -1592
  1031. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/http.rb +0 -125
  1032. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/https.rb +0 -23
  1033. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ldap.rb +0 -261
  1034. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ldaps.rb +0 -22
  1035. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/mailto.rb +0 -293
  1036. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/rfc2396_parser.rb +0 -546
  1037. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/rfc3986_parser.rb +0 -206
  1038. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/version.rb +0 -6
  1039. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/ws.rb +0 -83
  1040. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri/wss.rb +0 -23
  1041. package/lib/ruby/3.4.11/rubygems/vendor/uri/lib/uri.rb +0 -104
  1042. package/lib/ruby/3.4.11/rubygems/vendored_molinillo.rb +0 -3
  1043. package/lib/ruby/3.4.11/rubygems/vendored_net_http.rb +0 -5
  1044. package/lib/ruby/3.4.11/rubygems/vendored_optparse.rb +0 -3
  1045. package/lib/ruby/3.4.11/rubygems/vendored_securerandom.rb +0 -3
  1046. package/lib/ruby/3.4.11/rubygems/vendored_timeout.rb +0 -5
  1047. package/lib/ruby/3.4.11/rubygems/vendored_tsort.rb +0 -3
  1048. package/lib/ruby/3.4.11/rubygems/version.rb +0 -441
  1049. package/lib/ruby/3.4.11/rubygems/version_option.rb +0 -80
  1050. package/lib/ruby/3.4.11/rubygems/yaml_serializer.rb +0 -98
  1051. package/lib/ruby/3.4.11/rubygems.rb +0 -1417
  1052. package/lib/ruby/3.4.11/securerandom.gemspec +0 -34
  1053. package/lib/ruby/3.4.11/securerandom.rb +0 -102
  1054. package/lib/ruby/3.4.11/set/set.gemspec +0 -30
  1055. package/lib/ruby/3.4.11/set/sorted_set.rb +0 -6
  1056. package/lib/ruby/3.4.11/set.rb +0 -855
  1057. package/lib/ruby/3.4.11/shellwords.gemspec +0 -31
  1058. package/lib/ruby/3.4.11/shellwords.rb +0 -254
  1059. package/lib/ruby/3.4.11/singleton.gemspec +0 -30
  1060. package/lib/ruby/3.4.11/singleton.rb +0 -239
  1061. package/lib/ruby/3.4.11/syntax_suggest/api.rb +0 -233
  1062. package/lib/ruby/3.4.11/syntax_suggest/around_block_scan.rb +0 -232
  1063. package/lib/ruby/3.4.11/syntax_suggest/block_expand.rb +0 -165
  1064. package/lib/ruby/3.4.11/syntax_suggest/capture/before_after_keyword_ends.rb +0 -85
  1065. package/lib/ruby/3.4.11/syntax_suggest/capture/falling_indent_lines.rb +0 -71
  1066. package/lib/ruby/3.4.11/syntax_suggest/capture_code_context.rb +0 -245
  1067. package/lib/ruby/3.4.11/syntax_suggest/clean_document.rb +0 -306
  1068. package/lib/ruby/3.4.11/syntax_suggest/cli.rb +0 -130
  1069. package/lib/ruby/3.4.11/syntax_suggest/code_block.rb +0 -100
  1070. package/lib/ruby/3.4.11/syntax_suggest/code_frontier.rb +0 -178
  1071. package/lib/ruby/3.4.11/syntax_suggest/code_line.rb +0 -243
  1072. package/lib/ruby/3.4.11/syntax_suggest/code_search.rb +0 -139
  1073. package/lib/ruby/3.4.11/syntax_suggest/core_ext.rb +0 -96
  1074. package/lib/ruby/3.4.11/syntax_suggest/display_code_with_line_numbers.rb +0 -70
  1075. package/lib/ruby/3.4.11/syntax_suggest/display_invalid_blocks.rb +0 -83
  1076. package/lib/ruby/3.4.11/syntax_suggest/explain_syntax.rb +0 -117
  1077. package/lib/ruby/3.4.11/syntax_suggest/left_right_lex_count.rb +0 -168
  1078. package/lib/ruby/3.4.11/syntax_suggest/lex_all.rb +0 -74
  1079. package/lib/ruby/3.4.11/syntax_suggest/lex_value.rb +0 -70
  1080. package/lib/ruby/3.4.11/syntax_suggest/mini_stringio.rb +0 -30
  1081. package/lib/ruby/3.4.11/syntax_suggest/parse_blocks_from_indent_line.rb +0 -60
  1082. package/lib/ruby/3.4.11/syntax_suggest/pathname_from_message.rb +0 -59
  1083. package/lib/ruby/3.4.11/syntax_suggest/priority_engulf_queue.rb +0 -63
  1084. package/lib/ruby/3.4.11/syntax_suggest/priority_queue.rb +0 -105
  1085. package/lib/ruby/3.4.11/syntax_suggest/ripper_errors.rb +0 -39
  1086. package/lib/ruby/3.4.11/syntax_suggest/scan_history.rb +0 -134
  1087. package/lib/ruby/3.4.11/syntax_suggest/syntax_suggest.gemspec +0 -32
  1088. package/lib/ruby/3.4.11/syntax_suggest/unvisited_lines.rb +0 -36
  1089. package/lib/ruby/3.4.11/syntax_suggest/version.rb +0 -5
  1090. package/lib/ruby/3.4.11/syntax_suggest.rb +0 -3
  1091. package/lib/ruby/3.4.11/tempfile.gemspec +0 -33
  1092. package/lib/ruby/3.4.11/tempfile.rb +0 -640
  1093. package/lib/ruby/3.4.11/time.gemspec +0 -35
  1094. package/lib/ruby/3.4.11/time.rb +0 -731
  1095. package/lib/ruby/3.4.11/timeout.gemspec +0 -33
  1096. package/lib/ruby/3.4.11/timeout.rb +0 -200
  1097. package/lib/ruby/3.4.11/tmpdir.gemspec +0 -30
  1098. package/lib/ruby/3.4.11/tmpdir.rb +0 -189
  1099. package/lib/ruby/3.4.11/tsort.gemspec +0 -29
  1100. package/lib/ruby/3.4.11/tsort.rb +0 -455
  1101. package/lib/ruby/3.4.11/un.gemspec +0 -31
  1102. package/lib/ruby/3.4.11/un.rb +0 -441
  1103. package/lib/ruby/3.4.11/unicode_normalize/normalize.rb +0 -181
  1104. package/lib/ruby/3.4.11/unicode_normalize/tables.rb +0 -9259
  1105. package/lib/ruby/3.4.11/uri/common.rb +0 -880
  1106. package/lib/ruby/3.4.11/uri/file.rb +0 -100
  1107. package/lib/ruby/3.4.11/uri/ftp.rb +0 -267
  1108. package/lib/ruby/3.4.11/uri/generic.rb +0 -1592
  1109. package/lib/ruby/3.4.11/uri/http.rb +0 -125
  1110. package/lib/ruby/3.4.11/uri/https.rb +0 -23
  1111. package/lib/ruby/3.4.11/uri/ldap.rb +0 -261
  1112. package/lib/ruby/3.4.11/uri/ldaps.rb +0 -22
  1113. package/lib/ruby/3.4.11/uri/mailto.rb +0 -293
  1114. package/lib/ruby/3.4.11/uri/rfc2396_parser.rb +0 -546
  1115. package/lib/ruby/3.4.11/uri/rfc3986_parser.rb +0 -206
  1116. package/lib/ruby/3.4.11/uri/uri.gemspec +0 -42
  1117. package/lib/ruby/3.4.11/uri/version.rb +0 -6
  1118. package/lib/ruby/3.4.11/uri/ws.rb +0 -83
  1119. package/lib/ruby/3.4.11/uri/wss.rb +0 -23
  1120. package/lib/ruby/3.4.11/uri.rb +0 -104
  1121. package/lib/ruby/3.4.11/weakref.gemspec +0 -34
  1122. package/lib/ruby/3.4.11/weakref.rb +0 -58
  1123. package/lib/ruby/3.4.11/yaml/dbm.rb +0 -295
  1124. package/lib/ruby/3.4.11/yaml/store.rb +0 -98
  1125. package/lib/ruby/3.4.11/yaml/yaml.gemspec +0 -30
  1126. package/lib/ruby/3.4.11/yaml.rb +0 -70
@@ -1,1410 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- #
4
- # = open3.rb: Popen, but with stderr, too
5
- #
6
- # Author:: Yukihiro Matsumoto
7
- # Documentation:: Konrad Meyer
8
- #
9
- # Open3 gives you access to stdin, stdout, and stderr when running other
10
- # programs.
11
- #
12
-
13
- #
14
- # Open3 grants you access to stdin, stdout, stderr and a thread to wait for the
15
- # child process when running another program.
16
- # You can specify various attributes, redirections, current directory, etc., of
17
- # the program in the same way as for Process.spawn.
18
- #
19
- # - Open3.popen3 : pipes for stdin, stdout, stderr
20
- # - Open3.popen2 : pipes for stdin, stdout
21
- # - Open3.popen2e : pipes for stdin, merged stdout and stderr
22
- # - Open3.capture3 : give a string for stdin; get strings for stdout, stderr
23
- # - Open3.capture2 : give a string for stdin; get a string for stdout
24
- # - Open3.capture2e : give a string for stdin; get a string for merged stdout and stderr
25
- # - Open3.pipeline_rw : pipes for first stdin and last stdout of a pipeline
26
- # - Open3.pipeline_r : pipe for last stdout of a pipeline
27
- # - Open3.pipeline_w : pipe for first stdin of a pipeline
28
- # - Open3.pipeline_start : run a pipeline without waiting
29
- # - Open3.pipeline : run a pipeline and wait for its completion
30
- #
31
-
32
- require 'open3/version'
33
-
34
- # \Module \Open3 supports creating child processes
35
- # with access to their $stdin, $stdout, and $stderr streams.
36
- #
37
- # == What's Here
38
- #
39
- # Each of these methods executes a given command in a new process or subshell,
40
- # or multiple commands in new processes and/or subshells:
41
- #
42
- # - Each of these methods executes a single command in a process or subshell,
43
- # accepts a string for input to $stdin,
44
- # and returns string output from $stdout, $stderr, or both:
45
- #
46
- # - Open3.capture2: Executes the command;
47
- # returns the string from $stdout.
48
- # - Open3.capture2e: Executes the command;
49
- # returns the string from merged $stdout and $stderr.
50
- # - Open3.capture3: Executes the command;
51
- # returns strings from $stdout and $stderr.
52
- #
53
- # - Each of these methods executes a single command in a process or subshell,
54
- # and returns pipes for $stdin, $stdout, and/or $stderr:
55
- #
56
- # - Open3.popen2: Executes the command;
57
- # returns pipes for $stdin and $stdout.
58
- # - Open3.popen2e: Executes the command;
59
- # returns pipes for $stdin and merged $stdout and $stderr.
60
- # - Open3.popen3: Executes the command;
61
- # returns pipes for $stdin, $stdout, and $stderr.
62
- #
63
- # - Each of these methods executes one or more commands in processes and/or subshells,
64
- # returns pipes for the first $stdin, the last $stdout, or both:
65
- #
66
- # - Open3.pipeline_r: Returns a pipe for the last $stdout.
67
- # - Open3.pipeline_rw: Returns pipes for the first $stdin and the last $stdout.
68
- # - Open3.pipeline_w: Returns a pipe for the first $stdin.
69
- # - Open3.pipeline_start: Does not wait for processes to complete.
70
- # - Open3.pipeline: Waits for processes to complete.
71
- #
72
- # Each of the methods above accepts:
73
- #
74
- # - An optional hash of environment variable names and values;
75
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
76
- # - A required string argument that is a +command_line+ or +exe_path+;
77
- # see {Argument command_line or exe_path}[rdoc-ref:Process@Argument+command_line+or+exe_path].
78
- # - An optional hash of execution options;
79
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
80
- #
81
- module Open3
82
-
83
- # :call-seq:
84
- # Open3.popen3([env, ] command_line, options = {}) -> [stdin, stdout, stderr, wait_thread]
85
- # Open3.popen3([env, ] exe_path, *args, options = {}) -> [stdin, stdout, stderr, wait_thread]
86
- # Open3.popen3([env, ] command_line, options = {}) {|stdin, stdout, stderr, wait_thread| ... } -> object
87
- # Open3.popen3([env, ] exe_path, *args, options = {}) {|stdin, stdout, stderr, wait_thread| ... } -> object
88
- #
89
- # Basically a wrapper for
90
- # {Process.spawn}[rdoc-ref:Process.spawn]
91
- # that:
92
- #
93
- # - Creates a child process, by calling Process.spawn with the given arguments.
94
- # - Creates streams +stdin+, +stdout+, and +stderr+,
95
- # which are the standard input, standard output, and standard error streams
96
- # in the child process.
97
- # - Creates thread +wait_thread+ that waits for the child process to exit;
98
- # the thread has method +pid+, which returns the process ID
99
- # of the child process.
100
- #
101
- # With no block given, returns the array
102
- # <tt>[stdin, stdout, stderr, wait_thread]</tt>.
103
- # The caller should close each of the three returned streams.
104
- #
105
- # stdin, stdout, stderr, wait_thread = Open3.popen3('echo')
106
- # # => [#<IO:fd 8>, #<IO:fd 10>, #<IO:fd 12>, #<Process::Waiter:0x00007f58d5428f58 run>]
107
- # stdin.close
108
- # stdout.close
109
- # stderr.close
110
- # wait_thread.pid # => 2210481
111
- # wait_thread.value # => #<Process::Status: pid 2210481 exit 0>
112
- #
113
- # With a block given, calls the block with the four variables
114
- # (three streams and the wait thread)
115
- # and returns the block's return value.
116
- # The caller need not close the streams:
117
- #
118
- # Open3.popen3('echo') do |stdin, stdout, stderr, wait_thread|
119
- # p stdin
120
- # p stdout
121
- # p stderr
122
- # p wait_thread
123
- # p wait_thread.pid
124
- # p wait_thread.value
125
- # end
126
- #
127
- # Output:
128
- #
129
- # #<IO:fd 6>
130
- # #<IO:fd 7>
131
- # #<IO:fd 9>
132
- # #<Process::Waiter:0x00007f58d53606e8 sleep>
133
- # 2211047
134
- # #<Process::Status: pid 2211047 exit 0>
135
- #
136
- # Like Process.spawn, this method has potential security vulnerabilities
137
- # if called with untrusted input;
138
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
139
- #
140
- # Unlike Process.spawn, this method waits for the child process to exit
141
- # before returning, so the caller need not do so.
142
- #
143
- # If the first argument is a hash, it becomes leading argument +env+
144
- # in the call to Process.spawn;
145
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
146
- #
147
- # If the last argument is a hash, it becomes trailing argument +options+
148
- # in the call to Process.spawn;
149
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
150
- #
151
- # The single required argument is one of the following:
152
- #
153
- # - +command_line+ if it is a string,
154
- # and if it begins with a shell reserved word or special built-in,
155
- # or if it contains one or more metacharacters.
156
- # - +exe_path+ otherwise.
157
- #
158
- # <b>Argument +command_line+</b>
159
- #
160
- # \String argument +command_line+ is a command line to be passed to a shell;
161
- # it must begin with a shell reserved word, begin with a special built-in,
162
- # or contain meta characters:
163
- #
164
- # Open3.popen3('if true; then echo "Foo"; fi') {|*args| p args } # Shell reserved word.
165
- # Open3.popen3('echo') {|*args| p args } # Built-in.
166
- # Open3.popen3('date > date.tmp') {|*args| p args } # Contains meta character.
167
- #
168
- # Output (similar for each call above):
169
- #
170
- # [#<IO:(closed)>, #<IO:(closed)>, #<IO:(closed)>, #<Process::Waiter:0x00007f58d52f28c8 dead>]
171
- #
172
- # The command line may also contain arguments and options for the command:
173
- #
174
- # Open3.popen3('echo "Foo"') { |i, o, e, t| o.gets }
175
- # "Foo\n"
176
- #
177
- # <b>Argument +exe_path+</b>
178
- #
179
- # Argument +exe_path+ is one of the following:
180
- #
181
- # - The string path to an executable to be called.
182
- # - A 2-element array containing the path to an executable
183
- # and the string to be used as the name of the executing process.
184
- #
185
- # Example:
186
- #
187
- # Open3.popen3('/usr/bin/date') { |i, o, e, t| o.gets }
188
- # # => "Wed Sep 27 02:56:44 PM CDT 2023\n"
189
- #
190
- # Ruby invokes the executable directly, with no shell and no shell expansion:
191
- #
192
- # Open3.popen3('doesnt_exist') { |i, o, e, t| o.gets } # Raises Errno::ENOENT
193
- #
194
- # If one or more +args+ is given, each is an argument or option
195
- # to be passed to the executable:
196
- #
197
- # Open3.popen3('echo', 'C #') { |i, o, e, t| o.gets }
198
- # # => "C #\n"
199
- # Open3.popen3('echo', 'hello', 'world') { |i, o, e, t| o.gets }
200
- # # => "hello world\n"
201
- #
202
- # Take care to avoid deadlocks.
203
- # Output streams +stdout+ and +stderr+ have fixed-size buffers,
204
- # so reading extensively from one but not the other can cause a deadlock
205
- # when the unread buffer fills.
206
- # To avoid that, +stdout+ and +stderr+ should be read simultaneously
207
- # (using threads or IO.select).
208
- #
209
- # Related:
210
- #
211
- # - Open3.popen2: Makes the standard input and standard output streams
212
- # of the child process available as separate streams,
213
- # with no access to the standard error stream.
214
- # - Open3.popen2e: Makes the standard input and the merge
215
- # of the standard output and standard error streams
216
- # of the child process available as separate streams.
217
- #
218
- def popen3(*cmd, &block)
219
- if Hash === cmd.last
220
- opts = cmd.pop.dup
221
- else
222
- opts = {}
223
- end
224
-
225
- in_r, in_w = IO.pipe
226
- opts[:in] = in_r
227
- in_w.sync = true
228
-
229
- out_r, out_w = IO.pipe
230
- opts[:out] = out_w
231
-
232
- err_r, err_w = IO.pipe
233
- opts[:err] = err_w
234
-
235
- popen_run(cmd, opts, [in_r, out_w, err_w], [in_w, out_r, err_r], &block)
236
- end
237
- module_function :popen3
238
-
239
- # :call-seq:
240
- # Open3.popen2([env, ] command_line, options = {}) -> [stdin, stdout, wait_thread]
241
- # Open3.popen2([env, ] exe_path, *args, options = {}) -> [stdin, stdout, wait_thread]
242
- # Open3.popen2([env, ] command_line, options = {}) {|stdin, stdout, wait_thread| ... } -> object
243
- # Open3.popen2([env, ] exe_path, *args, options = {}) {|stdin, stdout, wait_thread| ... } -> object
244
- #
245
- # Basically a wrapper for
246
- # {Process.spawn}[rdoc-ref:Process.spawn]
247
- # that:
248
- #
249
- # - Creates a child process, by calling Process.spawn with the given arguments.
250
- # - Creates streams +stdin+ and +stdout+,
251
- # which are the standard input and standard output streams
252
- # in the child process.
253
- # - Creates thread +wait_thread+ that waits for the child process to exit;
254
- # the thread has method +pid+, which returns the process ID
255
- # of the child process.
256
- #
257
- # With no block given, returns the array
258
- # <tt>[stdin, stdout, wait_thread]</tt>.
259
- # The caller should close each of the two returned streams.
260
- #
261
- # stdin, stdout, wait_thread = Open3.popen2('echo')
262
- # # => [#<IO:fd 6>, #<IO:fd 7>, #<Process::Waiter:0x00007f58d52dbe98 run>]
263
- # stdin.close
264
- # stdout.close
265
- # wait_thread.pid # => 2263572
266
- # wait_thread.value # => #<Process::Status: pid 2263572 exit 0>
267
- #
268
- # With a block given, calls the block with the three variables
269
- # (two streams and the wait thread)
270
- # and returns the block's return value.
271
- # The caller need not close the streams:
272
- #
273
- # Open3.popen2('echo') do |stdin, stdout, wait_thread|
274
- # p stdin
275
- # p stdout
276
- # p wait_thread
277
- # p wait_thread.pid
278
- # p wait_thread.value
279
- # end
280
- #
281
- # Output:
282
- #
283
- # #<IO:fd 6>
284
- # #<IO:fd 7>
285
- # #<Process::Waiter:0x00007f58d59a34b0 sleep>
286
- # 2263636
287
- # #<Process::Status: pid 2263636 exit 0>
288
- #
289
- # Like Process.spawn, this method has potential security vulnerabilities
290
- # if called with untrusted input;
291
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
292
- #
293
- # Unlike Process.spawn, this method waits for the child process to exit
294
- # before returning, so the caller need not do so.
295
- #
296
- # If the first argument is a hash, it becomes leading argument +env+
297
- # in the call to Process.spawn;
298
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
299
- #
300
- # If the last argument is a hash, it becomes trailing argument +options+
301
- # in the call to Process.spawn;
302
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
303
- #
304
- # The single required argument is one of the following:
305
- #
306
- # - +command_line+ if it is a string,
307
- # and if it begins with a shell reserved word or special built-in,
308
- # or if it contains one or more metacharacters.
309
- # - +exe_path+ otherwise.
310
- #
311
- # <b>Argument +command_line+</b>
312
- #
313
- # \String argument +command_line+ is a command line to be passed to a shell;
314
- # it must begin with a shell reserved word, begin with a special built-in,
315
- # or contain meta characters:
316
- #
317
- # Open3.popen2('if true; then echo "Foo"; fi') {|*args| p args } # Shell reserved word.
318
- # Open3.popen2('echo') {|*args| p args } # Built-in.
319
- # Open3.popen2('date > date.tmp') {|*args| p args } # Contains meta character.
320
- #
321
- # Output (similar for each call above):
322
- #
323
- # # => [#<IO:(closed)>, #<IO:(closed)>, #<Process::Waiter:0x00007f7577dfe410 dead>]
324
- #
325
- # The command line may also contain arguments and options for the command:
326
- #
327
- # Open3.popen2('echo "Foo"') { |i, o, t| o.gets }
328
- # "Foo\n"
329
- #
330
- # <b>Argument +exe_path+</b>
331
- #
332
- # Argument +exe_path+ is one of the following:
333
- #
334
- # - The string path to an executable to be called.
335
- # - A 2-element array containing the path to an executable
336
- # and the string to be used as the name of the executing process.
337
- #
338
- # Example:
339
- #
340
- # Open3.popen2('/usr/bin/date') { |i, o, t| o.gets }
341
- # # => "Thu Sep 28 09:41:06 AM CDT 2023\n"
342
- #
343
- # Ruby invokes the executable directly, with no shell and no shell expansion:
344
- #
345
- # Open3.popen2('doesnt_exist') { |i, o, t| o.gets } # Raises Errno::ENOENT
346
- #
347
- # If one or more +args+ is given, each is an argument or option
348
- # to be passed to the executable:
349
- #
350
- # Open3.popen2('echo', 'C #') { |i, o, t| o.gets }
351
- # # => "C #\n"
352
- # Open3.popen2('echo', 'hello', 'world') { |i, o, t| o.gets }
353
- # # => "hello world\n"
354
- #
355
- #
356
- # Related:
357
- #
358
- # - Open3.popen2e: Makes the standard input and the merge
359
- # of the standard output and standard error streams
360
- # of the child process available as separate streams.
361
- # - Open3.popen3: Makes the standard input, standard output,
362
- # and standard error streams
363
- # of the child process available as separate streams.
364
- #
365
- def popen2(*cmd, &block)
366
- if Hash === cmd.last
367
- opts = cmd.pop.dup
368
- else
369
- opts = {}
370
- end
371
-
372
- in_r, in_w = IO.pipe
373
- opts[:in] = in_r
374
- in_w.sync = true
375
-
376
- out_r, out_w = IO.pipe
377
- opts[:out] = out_w
378
-
379
- popen_run(cmd, opts, [in_r, out_w], [in_w, out_r], &block)
380
- end
381
- module_function :popen2
382
-
383
- # :call-seq:
384
- # Open3.popen2e([env, ] command_line, options = {}) -> [stdin, stdout_and_stderr, wait_thread]
385
- # Open3.popen2e([env, ] exe_path, *args, options = {}) -> [stdin, stdout_and_stderr, wait_thread]
386
- # Open3.popen2e([env, ] command_line, options = {}) {|stdin, stdout_and_stderr, wait_thread| ... } -> object
387
- # Open3.popen2e([env, ] exe_path, *args, options = {}) {|stdin, stdout_and_stderr, wait_thread| ... } -> object
388
- #
389
- # Basically a wrapper for
390
- # {Process.spawn}[rdoc-ref:Process.spawn]
391
- # that:
392
- #
393
- # - Creates a child process, by calling Process.spawn with the given arguments.
394
- # - Creates streams +stdin+, +stdout_and_stderr+,
395
- # which are the standard input and the merge of the standard output
396
- # and standard error streams in the child process.
397
- # - Creates thread +wait_thread+ that waits for the child process to exit;
398
- # the thread has method +pid+, which returns the process ID
399
- # of the child process.
400
- #
401
- # With no block given, returns the array
402
- # <tt>[stdin, stdout_and_stderr, wait_thread]</tt>.
403
- # The caller should close each of the two returned streams.
404
- #
405
- # stdin, stdout_and_stderr, wait_thread = Open3.popen2e('echo')
406
- # # => [#<IO:fd 6>, #<IO:fd 7>, #<Process::Waiter:0x00007f7577da4398 run>]
407
- # stdin.close
408
- # stdout_and_stderr.close
409
- # wait_thread.pid # => 2274600
410
- # wait_thread.value # => #<Process::Status: pid 2274600 exit 0>
411
- #
412
- # With a block given, calls the block with the three variables
413
- # (two streams and the wait thread)
414
- # and returns the block's return value.
415
- # The caller need not close the streams:
416
- #
417
- # Open3.popen2e('echo') do |stdin, stdout_and_stderr, wait_thread|
418
- # p stdin
419
- # p stdout_and_stderr
420
- # p wait_thread
421
- # p wait_thread.pid
422
- # p wait_thread.value
423
- # end
424
- #
425
- # Output:
426
- #
427
- # #<IO:fd 6>
428
- # #<IO:fd 7>
429
- # #<Process::Waiter:0x00007f75777578c8 sleep>
430
- # 2274763
431
- # #<Process::Status: pid 2274763 exit 0>
432
- #
433
- # Like Process.spawn, this method has potential security vulnerabilities
434
- # if called with untrusted input;
435
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
436
- #
437
- # Unlike Process.spawn, this method waits for the child process to exit
438
- # before returning, so the caller need not do so.
439
- #
440
- # If the first argument is a hash, it becomes leading argument +env+
441
- # in the call to Process.spawn;
442
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
443
- #
444
- # If the last argument is a hash, it becomes trailing argument +options+
445
- # in the call to Process.spawn;
446
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
447
- #
448
- # The single required argument is one of the following:
449
- #
450
- # - +command_line+ if it is a string,
451
- # and if it begins with a shell reserved word or special built-in,
452
- # or if it contains one or more metacharacters.
453
- # - +exe_path+ otherwise.
454
- #
455
- # <b>Argument +command_line+</b>
456
- #
457
- # \String argument +command_line+ is a command line to be passed to a shell;
458
- # it must begin with a shell reserved word, begin with a special built-in,
459
- # or contain meta characters:
460
- #
461
- # Open3.popen2e('if true; then echo "Foo"; fi') {|*args| p args } # Shell reserved word.
462
- # Open3.popen2e('echo') {|*args| p args } # Built-in.
463
- # Open3.popen2e('date > date.tmp') {|*args| p args } # Contains meta character.
464
- #
465
- # Output (similar for each call above):
466
- #
467
- # # => [#<IO:(closed)>, #<IO:(closed)>, #<Process::Waiter:0x00007f7577d8a1f0 dead>]
468
- #
469
- # The command line may also contain arguments and options for the command:
470
- #
471
- # Open3.popen2e('echo "Foo"') { |i, o_and_e, t| o_and_e.gets }
472
- # "Foo\n"
473
- #
474
- # <b>Argument +exe_path+</b>
475
- #
476
- # Argument +exe_path+ is one of the following:
477
- #
478
- # - The string path to an executable to be called.
479
- # - A 2-element array containing the path to an executable
480
- # and the string to be used as the name of the executing process.
481
- #
482
- # Example:
483
- #
484
- # Open3.popen2e('/usr/bin/date') { |i, o_and_e, t| o_and_e.gets }
485
- # # => "Thu Sep 28 01:58:45 PM CDT 2023\n"
486
- #
487
- # Ruby invokes the executable directly, with no shell and no shell expansion:
488
- #
489
- # Open3.popen2e('doesnt_exist') { |i, o_and_e, t| o_and_e.gets } # Raises Errno::ENOENT
490
- #
491
- # If one or more +args+ is given, each is an argument or option
492
- # to be passed to the executable:
493
- #
494
- # Open3.popen2e('echo', 'C #') { |i, o_and_e, t| o_and_e.gets }
495
- # # => "C #\n"
496
- # Open3.popen2e('echo', 'hello', 'world') { |i, o_and_e, t| o_and_e.gets }
497
- # # => "hello world\n"
498
- #
499
- # Related:
500
- #
501
- # - Open3.popen2: Makes the standard input and standard output streams
502
- # of the child process available as separate streams,
503
- # with no access to the standard error stream.
504
- # - Open3.popen3: Makes the standard input, standard output,
505
- # and standard error streams
506
- # of the child process available as separate streams.
507
- #
508
- def popen2e(*cmd, &block)
509
- if Hash === cmd.last
510
- opts = cmd.pop.dup
511
- else
512
- opts = {}
513
- end
514
-
515
- in_r, in_w = IO.pipe
516
- opts[:in] = in_r
517
- in_w.sync = true
518
-
519
- out_r, out_w = IO.pipe
520
- opts[[:out, :err]] = out_w
521
-
522
- popen_run(cmd, opts, [in_r, out_w], [in_w, out_r], &block)
523
- ensure
524
- if block
525
- in_r.close
526
- in_w.close
527
- out_r.close
528
- out_w.close
529
- end
530
- end
531
- module_function :popen2e
532
-
533
- def popen_run(cmd, opts, child_io, parent_io) # :nodoc:
534
- pid = spawn(*cmd, opts)
535
- wait_thr = Process.detach(pid)
536
- child_io.each(&:close)
537
- result = [*parent_io, wait_thr]
538
- if defined? yield
539
- begin
540
- return yield(*result)
541
- ensure
542
- parent_io.each(&:close)
543
- wait_thr.join
544
- end
545
- end
546
- result
547
- end
548
- module_function :popen_run
549
- class << self
550
- private :popen_run
551
- end
552
-
553
- # :call-seq:
554
- # Open3.capture3([env, ] command_line, options = {}) -> [stdout_s, stderr_s, status]
555
- # Open3.capture3([env, ] exe_path, *args, options = {}) -> [stdout_s, stderr_s, status]
556
- #
557
- # Basically a wrapper for Open3.popen3 that:
558
- #
559
- # - Creates a child process, by calling Open3.popen3 with the given arguments
560
- # (except for certain entries in hash +options+; see below).
561
- # - Returns as strings +stdout_s+ and +stderr_s+ the standard output
562
- # and standard error of the child process.
563
- # - Returns as +status+ a <tt>Process::Status</tt> object
564
- # that represents the exit status of the child process.
565
- #
566
- # Returns the array <tt>[stdout_s, stderr_s, status]</tt>:
567
- #
568
- # stdout_s, stderr_s, status = Open3.capture3('echo "Foo"')
569
- # # => ["Foo\n", "", #<Process::Status: pid 2281954 exit 0>]
570
- #
571
- # Like Process.spawn, this method has potential security vulnerabilities
572
- # if called with untrusted input;
573
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
574
- #
575
- # Unlike Process.spawn, this method waits for the child process to exit
576
- # before returning, so the caller need not do so.
577
- #
578
- # If the first argument is a hash, it becomes leading argument +env+
579
- # in the call to Open3.popen3;
580
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
581
- #
582
- # If the last argument is a hash, it becomes trailing argument +options+
583
- # in the call to Open3.popen3;
584
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
585
- #
586
- # The hash +options+ is given;
587
- # two options have local effect in method Open3.capture3:
588
- #
589
- # - If entry <tt>options[:stdin_data]</tt> exists, the entry is removed
590
- # and its string value is sent to the command's standard input:
591
- #
592
- # Open3.capture3('tee', stdin_data: 'Foo')
593
- # # => ["Foo", "", #<Process::Status: pid 2319575 exit 0>]
594
- #
595
- # - If entry <tt>options[:binmode]</tt> exists, the entry is removed and
596
- # the internal streams are set to binary mode.
597
- #
598
- # The single required argument is one of the following:
599
- #
600
- # - +command_line+ if it is a string,
601
- # and if it begins with a shell reserved word or special built-in,
602
- # or if it contains one or more metacharacters.
603
- # - +exe_path+ otherwise.
604
- #
605
- # <b>Argument +command_line+</b>
606
- #
607
- # \String argument +command_line+ is a command line to be passed to a shell;
608
- # it must begin with a shell reserved word, begin with a special built-in,
609
- # or contain meta characters:
610
- #
611
- # Open3.capture3('if true; then echo "Foo"; fi') # Shell reserved word.
612
- # # => ["Foo\n", "", #<Process::Status: pid 2282025 exit 0>]
613
- # Open3.capture3('echo') # Built-in.
614
- # # => ["\n", "", #<Process::Status: pid 2282092 exit 0>]
615
- # Open3.capture3('date > date.tmp') # Contains meta character.
616
- # # => ["", "", #<Process::Status: pid 2282110 exit 0>]
617
- #
618
- # The command line may also contain arguments and options for the command:
619
- #
620
- # Open3.capture3('echo "Foo"')
621
- # # => ["Foo\n", "", #<Process::Status: pid 2282092 exit 0>]
622
- #
623
- # <b>Argument +exe_path+</b>
624
- #
625
- # Argument +exe_path+ is one of the following:
626
- #
627
- # - The string path to an executable to be called.
628
- # - A 2-element array containing the path to an executable
629
- # and the string to be used as the name of the executing process.
630
- #
631
- # Example:
632
- #
633
- # Open3.capture3('/usr/bin/date')
634
- # # => ["Thu Sep 28 05:03:51 PM CDT 2023\n", "", #<Process::Status: pid 2282300 exit 0>]
635
- #
636
- # Ruby invokes the executable directly, with no shell and no shell expansion:
637
- #
638
- # Open3.capture3('doesnt_exist') # Raises Errno::ENOENT
639
- #
640
- # If one or more +args+ is given, each is an argument or option
641
- # to be passed to the executable:
642
- #
643
- # Open3.capture3('echo', 'C #')
644
- # # => ["C #\n", "", #<Process::Status: pid 2282368 exit 0>]
645
- # Open3.capture3('echo', 'hello', 'world')
646
- # # => ["hello world\n", "", #<Process::Status: pid 2282372 exit 0>]
647
- #
648
- def capture3(*cmd)
649
- if Hash === cmd.last
650
- opts = cmd.pop.dup
651
- else
652
- opts = {}
653
- end
654
-
655
- stdin_data = opts.delete(:stdin_data) || ''
656
- binmode = opts.delete(:binmode)
657
-
658
- popen3(*cmd, opts) {|i, o, e, t|
659
- if binmode
660
- i.binmode
661
- o.binmode
662
- e.binmode
663
- end
664
- out_reader = Thread.new { o.read }
665
- err_reader = Thread.new { e.read }
666
- begin
667
- if stdin_data.respond_to? :readpartial
668
- IO.copy_stream(stdin_data, i)
669
- else
670
- i.write stdin_data
671
- end
672
- rescue Errno::EPIPE
673
- end
674
- i.close
675
- [out_reader.value, err_reader.value, t.value]
676
- }
677
- end
678
- module_function :capture3
679
-
680
- # :call-seq:
681
- # Open3.capture2([env, ] command_line, options = {}) -> [stdout_s, status]
682
- # Open3.capture2([env, ] exe_path, *args, options = {}) -> [stdout_s, status]
683
- #
684
- # Basically a wrapper for Open3.popen3 that:
685
- #
686
- # - Creates a child process, by calling Open3.popen3 with the given arguments
687
- # (except for certain entries in hash +options+; see below).
688
- # - Returns as string +stdout_s+ the standard output of the child process.
689
- # - Returns as +status+ a <tt>Process::Status</tt> object
690
- # that represents the exit status of the child process.
691
- #
692
- # Returns the array <tt>[stdout_s, status]</tt>:
693
- #
694
- # stdout_s, status = Open3.capture2('echo "Foo"')
695
- # # => ["Foo\n", #<Process::Status: pid 2326047 exit 0>]
696
- #
697
- # Like Process.spawn, this method has potential security vulnerabilities
698
- # if called with untrusted input;
699
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
700
- #
701
- # Unlike Process.spawn, this method waits for the child process to exit
702
- # before returning, so the caller need not do so.
703
- #
704
- # If the first argument is a hash, it becomes leading argument +env+
705
- # in the call to Open3.popen3;
706
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
707
- #
708
- # If the last argument is a hash, it becomes trailing argument +options+
709
- # in the call to Open3.popen3;
710
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
711
- #
712
- # The hash +options+ is given;
713
- # two options have local effect in method Open3.capture2:
714
- #
715
- # - If entry <tt>options[:stdin_data]</tt> exists, the entry is removed
716
- # and its string value is sent to the command's standard input:
717
- #
718
- # Open3.capture2('tee', stdin_data: 'Foo')
719
- #
720
- # # => ["Foo", #<Process::Status: pid 2326087 exit 0>]
721
- #
722
- # - If entry <tt>options[:binmode]</tt> exists, the entry is removed and
723
- # the internal streams are set to binary mode.
724
- #
725
- # The single required argument is one of the following:
726
- #
727
- # - +command_line+ if it is a string,
728
- # and if it begins with a shell reserved word or special built-in,
729
- # or if it contains one or more metacharacters.
730
- # - +exe_path+ otherwise.
731
- #
732
- # <b>Argument +command_line+</b>
733
- #
734
- # \String argument +command_line+ is a command line to be passed to a shell;
735
- # it must begin with a shell reserved word, begin with a special built-in,
736
- # or contain meta characters:
737
- #
738
- # Open3.capture2('if true; then echo "Foo"; fi') # Shell reserved word.
739
- # # => ["Foo\n", #<Process::Status: pid 2326131 exit 0>]
740
- # Open3.capture2('echo') # Built-in.
741
- # # => ["\n", #<Process::Status: pid 2326139 exit 0>]
742
- # Open3.capture2('date > date.tmp') # Contains meta character.
743
- # # => ["", #<Process::Status: pid 2326174 exit 0>]
744
- #
745
- # The command line may also contain arguments and options for the command:
746
- #
747
- # Open3.capture2('echo "Foo"')
748
- # # => ["Foo\n", #<Process::Status: pid 2326183 exit 0>]
749
- #
750
- # <b>Argument +exe_path+</b>
751
- #
752
- # Argument +exe_path+ is one of the following:
753
- #
754
- # - The string path to an executable to be called.
755
- # - A 2-element array containing the path to an executable
756
- # and the string to be used as the name of the executing process.
757
- #
758
- # Example:
759
- #
760
- # Open3.capture2('/usr/bin/date')
761
- # # => ["Fri Sep 29 01:00:39 PM CDT 2023\n", #<Process::Status: pid 2326222 exit 0>]
762
- #
763
- # Ruby invokes the executable directly, with no shell and no shell expansion:
764
- #
765
- # Open3.capture2('doesnt_exist') # Raises Errno::ENOENT
766
- #
767
- # If one or more +args+ is given, each is an argument or option
768
- # to be passed to the executable:
769
- #
770
- # Open3.capture2('echo', 'C #')
771
- # # => ["C #\n", #<Process::Status: pid 2326267 exit 0>]
772
- # Open3.capture2('echo', 'hello', 'world')
773
- # # => ["hello world\n", #<Process::Status: pid 2326299 exit 0>]
774
- #
775
- def capture2(*cmd)
776
- if Hash === cmd.last
777
- opts = cmd.pop.dup
778
- else
779
- opts = {}
780
- end
781
-
782
- stdin_data = opts.delete(:stdin_data)
783
- binmode = opts.delete(:binmode)
784
-
785
- popen2(*cmd, opts) {|i, o, t|
786
- if binmode
787
- i.binmode
788
- o.binmode
789
- end
790
- out_reader = Thread.new { o.read }
791
- if stdin_data
792
- begin
793
- if stdin_data.respond_to? :readpartial
794
- IO.copy_stream(stdin_data, i)
795
- else
796
- i.write stdin_data
797
- end
798
- rescue Errno::EPIPE
799
- end
800
- end
801
- i.close
802
- [out_reader.value, t.value]
803
- }
804
- end
805
- module_function :capture2
806
-
807
- # :call-seq:
808
- # Open3.capture2e([env, ] command_line, options = {}) -> [stdout_and_stderr_s, status]
809
- # Open3.capture2e([env, ] exe_path, *args, options = {}) -> [stdout_and_stderr_s, status]
810
- #
811
- # Basically a wrapper for Open3.popen3 that:
812
- #
813
- # - Creates a child process, by calling Open3.popen3 with the given arguments
814
- # (except for certain entries in hash +options+; see below).
815
- # - Returns as string +stdout_and_stderr_s+ the merged standard output
816
- # and standard error of the child process.
817
- # - Returns as +status+ a <tt>Process::Status</tt> object
818
- # that represents the exit status of the child process.
819
- #
820
- # Returns the array <tt>[stdout_and_stderr_s, status]</tt>:
821
- #
822
- # stdout_and_stderr_s, status = Open3.capture2e('echo "Foo"')
823
- # # => ["Foo\n", #<Process::Status: pid 2371692 exit 0>]
824
- #
825
- # Like Process.spawn, this method has potential security vulnerabilities
826
- # if called with untrusted input;
827
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
828
- #
829
- # Unlike Process.spawn, this method waits for the child process to exit
830
- # before returning, so the caller need not do so.
831
- #
832
- # If the first argument is a hash, it becomes leading argument +env+
833
- # in the call to Open3.popen3;
834
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
835
- #
836
- # If the last argument is a hash, it becomes trailing argument +options+
837
- # in the call to Open3.popen3;
838
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
839
- #
840
- # The hash +options+ is given;
841
- # two options have local effect in method Open3.capture2e:
842
- #
843
- # - If entry <tt>options[:stdin_data]</tt> exists, the entry is removed
844
- # and its string value is sent to the command's standard input:
845
- #
846
- # Open3.capture2e('tee', stdin_data: 'Foo')
847
- # # => ["Foo", #<Process::Status: pid 2371732 exit 0>]
848
- #
849
- # - If entry <tt>options[:binmode]</tt> exists, the entry is removed and
850
- # the internal streams are set to binary mode.
851
- #
852
- # The single required argument is one of the following:
853
- #
854
- # - +command_line+ if it is a string,
855
- # and if it begins with a shell reserved word or special built-in,
856
- # or if it contains one or more metacharacters.
857
- # - +exe_path+ otherwise.
858
- #
859
- # <b>Argument +command_line+</b>
860
- #
861
- # \String argument +command_line+ is a command line to be passed to a shell;
862
- # it must begin with a shell reserved word, begin with a special built-in,
863
- # or contain meta characters:
864
- #
865
- # Open3.capture2e('if true; then echo "Foo"; fi') # Shell reserved word.
866
- # # => ["Foo\n", #<Process::Status: pid 2371740 exit 0>]
867
- # Open3.capture2e('echo') # Built-in.
868
- # # => ["\n", #<Process::Status: pid 2371774 exit 0>]
869
- # Open3.capture2e('date > date.tmp') # Contains meta character.
870
- # # => ["", #<Process::Status: pid 2371812 exit 0>]
871
- #
872
- # The command line may also contain arguments and options for the command:
873
- #
874
- # Open3.capture2e('echo "Foo"')
875
- # # => ["Foo\n", #<Process::Status: pid 2326183 exit 0>]
876
- #
877
- # <b>Argument +exe_path+</b>
878
- #
879
- # Argument +exe_path+ is one of the following:
880
- #
881
- # - The string path to an executable to be called.
882
- # - A 2-element array containing the path to an executable
883
- # and the string to be used as the name of the executing process.
884
- #
885
- # Example:
886
- #
887
- # Open3.capture2e('/usr/bin/date')
888
- # # => ["Sat Sep 30 09:01:46 AM CDT 2023\n", #<Process::Status: pid 2371820 exit 0>]
889
- #
890
- # Ruby invokes the executable directly, with no shell and no shell expansion:
891
- #
892
- # Open3.capture2e('doesnt_exist') # Raises Errno::ENOENT
893
- #
894
- # If one or more +args+ is given, each is an argument or option
895
- # to be passed to the executable:
896
- #
897
- # Open3.capture2e('echo', 'C #')
898
- # # => ["C #\n", #<Process::Status: pid 2371856 exit 0>]
899
- # Open3.capture2e('echo', 'hello', 'world')
900
- # # => ["hello world\n", #<Process::Status: pid 2371894 exit 0>]
901
- #
902
- def capture2e(*cmd)
903
- if Hash === cmd.last
904
- opts = cmd.pop.dup
905
- else
906
- opts = {}
907
- end
908
-
909
- stdin_data = opts.delete(:stdin_data)
910
- binmode = opts.delete(:binmode)
911
-
912
- popen2e(*cmd, opts) {|i, oe, t|
913
- if binmode
914
- i.binmode
915
- oe.binmode
916
- end
917
- outerr_reader = Thread.new { oe.read }
918
- if stdin_data
919
- begin
920
- if stdin_data.respond_to? :readpartial
921
- IO.copy_stream(stdin_data, i)
922
- else
923
- i.write stdin_data
924
- end
925
- rescue Errno::EPIPE
926
- end
927
- end
928
- i.close
929
- [outerr_reader.value, t.value]
930
- }
931
- end
932
- module_function :capture2e
933
-
934
- # :call-seq:
935
- # Open3.pipeline_rw([env, ] *cmds, options = {}) -> [first_stdin, last_stdout, wait_threads]
936
- #
937
- # Basically a wrapper for
938
- # {Process.spawn}[rdoc-ref:Process.spawn]
939
- # that:
940
- #
941
- # - Creates a child process for each of the given +cmds+
942
- # by calling Process.spawn.
943
- # - Pipes the +stdout+ from each child to the +stdin+ of the next child,
944
- # or, for the first child, from the caller's +stdin+,
945
- # or, for the last child, to the caller's +stdout+.
946
- #
947
- # The method does not wait for child processes to exit,
948
- # so the caller must do so.
949
- #
950
- # With no block given, returns a 3-element array containing:
951
- #
952
- # - The +stdin+ stream of the first child process.
953
- # - The +stdout+ stream of the last child process.
954
- # - An array of the wait threads for all of the child processes.
955
- #
956
- # Example:
957
- #
958
- # first_stdin, last_stdout, wait_threads = Open3.pipeline_rw('sort', 'cat -n')
959
- # # => [#<IO:fd 20>, #<IO:fd 21>, [#<Process::Waiter:0x000055e8de29ab40 sleep>, #<Process::Waiter:0x000055e8de29a690 sleep>]]
960
- # first_stdin.puts("foo\nbar\nbaz")
961
- # first_stdin.close # Send EOF to sort.
962
- # puts last_stdout.read
963
- # wait_threads.each do |wait_thread|
964
- # wait_thread.join
965
- # end
966
- #
967
- # Output:
968
- #
969
- # 1 bar
970
- # 2 baz
971
- # 3 foo
972
- #
973
- # With a block given, calls the block with the +stdin+ stream of the first child,
974
- # the +stdout+ stream of the last child,
975
- # and an array of the wait processes:
976
- #
977
- # Open3.pipeline_rw('sort', 'cat -n') do |first_stdin, last_stdout, wait_threads|
978
- # first_stdin.puts "foo\nbar\nbaz"
979
- # first_stdin.close # send EOF to sort.
980
- # puts last_stdout.read
981
- # wait_threads.each do |wait_thread|
982
- # wait_thread.join
983
- # end
984
- # end
985
- #
986
- # Output:
987
- #
988
- # 1 bar
989
- # 2 baz
990
- # 3 foo
991
- #
992
- # Like Process.spawn, this method has potential security vulnerabilities
993
- # if called with untrusted input;
994
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
995
- #
996
- # If the first argument is a hash, it becomes leading argument +env+
997
- # in each call to Process.spawn;
998
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
999
- #
1000
- # If the last argument is a hash, it becomes trailing argument +options+
1001
- # in each call to Process.spawn;
1002
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
1003
- #
1004
- # Each remaining argument in +cmds+ is one of:
1005
- #
1006
- # - A +command_line+: a string that begins with a shell reserved word
1007
- # or special built-in, or contains one or more metacharacters.
1008
- # - An +exe_path+: the string path to an executable to be called.
1009
- # - An array containing a +command_line+ or an +exe_path+,
1010
- # along with zero or more string arguments for the command.
1011
- #
1012
- # See {Argument command_line or exe_path}[rdoc-ref:Process@Argument+command_line+or+exe_path].
1013
- #
1014
- def pipeline_rw(*cmds, &block)
1015
- if Hash === cmds.last
1016
- opts = cmds.pop.dup
1017
- else
1018
- opts = {}
1019
- end
1020
-
1021
- in_r, in_w = IO.pipe
1022
- opts[:in] = in_r
1023
- in_w.sync = true
1024
-
1025
- out_r, out_w = IO.pipe
1026
- opts[:out] = out_w
1027
-
1028
- pipeline_run(cmds, opts, [in_r, out_w], [in_w, out_r], &block)
1029
- end
1030
- module_function :pipeline_rw
1031
-
1032
- # :call-seq:
1033
- # Open3.pipeline_r([env, ] *cmds, options = {}) -> [last_stdout, wait_threads]
1034
- #
1035
- # Basically a wrapper for
1036
- # {Process.spawn}[rdoc-ref:Process.spawn]
1037
- # that:
1038
- #
1039
- # - Creates a child process for each of the given +cmds+
1040
- # by calling Process.spawn.
1041
- # - Pipes the +stdout+ from each child to the +stdin+ of the next child,
1042
- # or, for the last child, to the caller's +stdout+.
1043
- #
1044
- # The method does not wait for child processes to exit,
1045
- # so the caller must do so.
1046
- #
1047
- # With no block given, returns a 2-element array containing:
1048
- #
1049
- # - The +stdout+ stream of the last child process.
1050
- # - An array of the wait threads for all of the child processes.
1051
- #
1052
- # Example:
1053
- #
1054
- # last_stdout, wait_threads = Open3.pipeline_r('ls', 'grep R')
1055
- # # => [#<IO:fd 5>, [#<Process::Waiter:0x000055e8de2f9898 dead>, #<Process::Waiter:0x000055e8de2f94b0 sleep>]]
1056
- # puts last_stdout.read
1057
- # wait_threads.each do |wait_thread|
1058
- # wait_thread.join
1059
- # end
1060
- #
1061
- # Output:
1062
- #
1063
- # Rakefile
1064
- # README.md
1065
- #
1066
- # With a block given, calls the block with the +stdout+ stream
1067
- # of the last child process,
1068
- # and an array of the wait processes:
1069
- #
1070
- # Open3.pipeline_r('ls', 'grep R') do |last_stdout, wait_threads|
1071
- # puts last_stdout.read
1072
- # wait_threads.each do |wait_thread|
1073
- # wait_thread.join
1074
- # end
1075
- # end
1076
- #
1077
- # Output:
1078
- #
1079
- # Rakefile
1080
- # README.md
1081
- #
1082
- # Like Process.spawn, this method has potential security vulnerabilities
1083
- # if called with untrusted input;
1084
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
1085
- #
1086
- # If the first argument is a hash, it becomes leading argument +env+
1087
- # in each call to Process.spawn;
1088
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
1089
- #
1090
- # If the last argument is a hash, it becomes trailing argument +options+
1091
- # in each call to Process.spawn;
1092
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
1093
- #
1094
- # Each remaining argument in +cmds+ is one of:
1095
- #
1096
- # - A +command_line+: a string that begins with a shell reserved word
1097
- # or special built-in, or contains one or more metacharacters.
1098
- # - An +exe_path+: the string path to an executable to be called.
1099
- # - An array containing a +command_line+ or an +exe_path+,
1100
- # along with zero or more string arguments for the command.
1101
- #
1102
- # See {Argument command_line or exe_path}[rdoc-ref:Process@Argument+command_line+or+exe_path].
1103
- #
1104
- def pipeline_r(*cmds, &block)
1105
- if Hash === cmds.last
1106
- opts = cmds.pop.dup
1107
- else
1108
- opts = {}
1109
- end
1110
-
1111
- out_r, out_w = IO.pipe
1112
- opts[:out] = out_w
1113
-
1114
- pipeline_run(cmds, opts, [out_w], [out_r], &block)
1115
- end
1116
- module_function :pipeline_r
1117
-
1118
-
1119
- # :call-seq:
1120
- # Open3.pipeline_w([env, ] *cmds, options = {}) -> [first_stdin, wait_threads]
1121
- #
1122
- # Basically a wrapper for
1123
- # {Process.spawn}[rdoc-ref:Process.spawn]
1124
- # that:
1125
- #
1126
- # - Creates a child process for each of the given +cmds+
1127
- # by calling Process.spawn.
1128
- # - Pipes the +stdout+ from each child to the +stdin+ of the next child,
1129
- # or, for the first child, pipes the caller's +stdout+ to the child's +stdin+.
1130
- #
1131
- # The method does not wait for child processes to exit,
1132
- # so the caller must do so.
1133
- #
1134
- # With no block given, returns a 2-element array containing:
1135
- #
1136
- # - The +stdin+ stream of the first child process.
1137
- # - An array of the wait threads for all of the child processes.
1138
- #
1139
- # Example:
1140
- #
1141
- # first_stdin, wait_threads = Open3.pipeline_w('sort', 'cat -n')
1142
- # # => [#<IO:fd 7>, [#<Process::Waiter:0x000055e8de928278 run>, #<Process::Waiter:0x000055e8de923e80 run>]]
1143
- # first_stdin.puts("foo\nbar\nbaz")
1144
- # first_stdin.close # Send EOF to sort.
1145
- # wait_threads.each do |wait_thread|
1146
- # wait_thread.join
1147
- # end
1148
- #
1149
- # Output:
1150
- #
1151
- # 1 bar
1152
- # 2 baz
1153
- # 3 foo
1154
- #
1155
- # With a block given, calls the block with the +stdin+ stream
1156
- # of the first child process,
1157
- # and an array of the wait processes:
1158
- #
1159
- # Open3.pipeline_w('sort', 'cat -n') do |first_stdin, wait_threads|
1160
- # first_stdin.puts("foo\nbar\nbaz")
1161
- # first_stdin.close # Send EOF to sort.
1162
- # wait_threads.each do |wait_thread|
1163
- # wait_thread.join
1164
- # end
1165
- # end
1166
- #
1167
- # Output:
1168
- #
1169
- # 1 bar
1170
- # 2 baz
1171
- # 3 foo
1172
- #
1173
- # Like Process.spawn, this method has potential security vulnerabilities
1174
- # if called with untrusted input;
1175
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
1176
- #
1177
- # If the first argument is a hash, it becomes leading argument +env+
1178
- # in each call to Process.spawn;
1179
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
1180
- #
1181
- # If the last argument is a hash, it becomes trailing argument +options+
1182
- # in each call to Process.spawn;
1183
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
1184
- #
1185
- # Each remaining argument in +cmds+ is one of:
1186
- #
1187
- # - A +command_line+: a string that begins with a shell reserved word
1188
- # or special built-in, or contains one or more metacharacters.
1189
- # - An +exe_path+: the string path to an executable to be called.
1190
- # - An array containing a +command_line+ or an +exe_path+,
1191
- # along with zero or more string arguments for the command.
1192
- #
1193
- # See {Argument command_line or exe_path}[rdoc-ref:Process@Argument+command_line+or+exe_path].
1194
- #
1195
- def pipeline_w(*cmds, &block)
1196
- if Hash === cmds.last
1197
- opts = cmds.pop.dup
1198
- else
1199
- opts = {}
1200
- end
1201
-
1202
- in_r, in_w = IO.pipe
1203
- opts[:in] = in_r
1204
- in_w.sync = true
1205
-
1206
- pipeline_run(cmds, opts, [in_r], [in_w], &block)
1207
- end
1208
- module_function :pipeline_w
1209
-
1210
- # :call-seq:
1211
- # Open3.pipeline_start([env, ] *cmds, options = {}) -> [wait_threads]
1212
- #
1213
- # Basically a wrapper for
1214
- # {Process.spawn}[rdoc-ref:Process.spawn]
1215
- # that:
1216
- #
1217
- # - Creates a child process for each of the given +cmds+
1218
- # by calling Process.spawn.
1219
- # - Does not wait for child processes to exit.
1220
- #
1221
- # With no block given, returns an array of the wait threads
1222
- # for all of the child processes.
1223
- #
1224
- # Example:
1225
- #
1226
- # wait_threads = Open3.pipeline_start('ls', 'grep R')
1227
- # # => [#<Process::Waiter:0x000055e8de9d2bb0 run>, #<Process::Waiter:0x000055e8de9d2890 run>]
1228
- # wait_threads.each do |wait_thread|
1229
- # wait_thread.join
1230
- # end
1231
- #
1232
- # Output:
1233
- #
1234
- # Rakefile
1235
- # README.md
1236
- #
1237
- # With a block given, calls the block with an array of the wait processes:
1238
- #
1239
- # Open3.pipeline_start('ls', 'grep R') do |wait_threads|
1240
- # wait_threads.each do |wait_thread|
1241
- # wait_thread.join
1242
- # end
1243
- # end
1244
- #
1245
- # Output:
1246
- #
1247
- # Rakefile
1248
- # README.md
1249
- #
1250
- # Like Process.spawn, this method has potential security vulnerabilities
1251
- # if called with untrusted input;
1252
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
1253
- #
1254
- # If the first argument is a hash, it becomes leading argument +env+
1255
- # in each call to Process.spawn;
1256
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
1257
- #
1258
- # If the last argument is a hash, it becomes trailing argument +options+
1259
- # in each call to Process.spawn;
1260
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
1261
- #
1262
- # Each remaining argument in +cmds+ is one of:
1263
- #
1264
- # - A +command_line+: a string that begins with a shell reserved word
1265
- # or special built-in, or contains one or more metacharacters.
1266
- # - An +exe_path+: the string path to an executable to be called.
1267
- # - An array containing a +command_line+ or an +exe_path+,
1268
- # along with zero or more string arguments for the command.
1269
- #
1270
- # See {Argument command_line or exe_path}[rdoc-ref:Process@Argument+command_line+or+exe_path].
1271
- #
1272
- def pipeline_start(*cmds, &block)
1273
- if Hash === cmds.last
1274
- opts = cmds.pop.dup
1275
- else
1276
- opts = {}
1277
- end
1278
-
1279
- if block
1280
- pipeline_run(cmds, opts, [], [], &block)
1281
- else
1282
- ts, = pipeline_run(cmds, opts, [], [])
1283
- ts
1284
- end
1285
- end
1286
- module_function :pipeline_start
1287
-
1288
- # :call-seq:
1289
- # Open3.pipeline([env, ] *cmds, options = {}) -> array_of_statuses
1290
- #
1291
- # Basically a wrapper for
1292
- # {Process.spawn}[rdoc-ref:Process.spawn]
1293
- # that:
1294
- #
1295
- # - Creates a child process for each of the given +cmds+
1296
- # by calling Process.spawn.
1297
- # - Pipes the +stdout+ from each child to the +stdin+ of the next child,
1298
- # or, for the last child, to the caller's +stdout+.
1299
- # - Waits for the child processes to exit.
1300
- # - Returns an array of Process::Status objects (one for each child).
1301
- #
1302
- # Example:
1303
- #
1304
- # wait_threads = Open3.pipeline('ls', 'grep R')
1305
- # # => [#<Process::Status: pid 2139200 exit 0>, #<Process::Status: pid 2139202 exit 0>]
1306
- #
1307
- # Output:
1308
- #
1309
- # Rakefile
1310
- # README.md
1311
- #
1312
- # Like Process.spawn, this method has potential security vulnerabilities
1313
- # if called with untrusted input;
1314
- # see {Command Injection}[rdoc-ref:command_injection.rdoc@Command+Injection].
1315
- #
1316
- # If the first argument is a hash, it becomes leading argument +env+
1317
- # in each call to Process.spawn;
1318
- # see {Execution Environment}[rdoc-ref:Process@Execution+Environment].
1319
- #
1320
- # If the last argument is a hash, it becomes trailing argument +options+
1321
- # in each call to Process.spawn'
1322
- # see {Execution Options}[rdoc-ref:Process@Execution+Options].
1323
- #
1324
- # Each remaining argument in +cmds+ is one of:
1325
- #
1326
- # - A +command_line+: a string that begins with a shell reserved word
1327
- # or special built-in, or contains one or more metacharacters.
1328
- # - An +exe_path+: the string path to an executable to be called.
1329
- # - An array containing a +command_line+ or an +exe_path+,
1330
- # along with zero or more string arguments for the command.
1331
- #
1332
- # See {Argument command_line or exe_path}[rdoc-ref:Process@Argument+command_line+or+exe_path].
1333
- #
1334
- def pipeline(*cmds)
1335
- if Hash === cmds.last
1336
- opts = cmds.pop.dup
1337
- else
1338
- opts = {}
1339
- end
1340
-
1341
- pipeline_run(cmds, opts, [], []) {|ts|
1342
- ts.map(&:value)
1343
- }
1344
- end
1345
- module_function :pipeline
1346
-
1347
- def pipeline_run(cmds, pipeline_opts, child_io, parent_io) # :nodoc:
1348
- if cmds.empty?
1349
- raise ArgumentError, "no commands"
1350
- end
1351
-
1352
- opts_base = pipeline_opts.dup
1353
- opts_base.delete :in
1354
- opts_base.delete :out
1355
-
1356
- wait_thrs = []
1357
- r = nil
1358
- cmds.each_with_index {|cmd, i|
1359
- cmd_opts = opts_base.dup
1360
- if String === cmd
1361
- cmd = [cmd]
1362
- else
1363
- cmd_opts.update cmd.pop if Hash === cmd.last
1364
- end
1365
- if i == 0
1366
- if !cmd_opts.include?(:in)
1367
- if pipeline_opts.include?(:in)
1368
- cmd_opts[:in] = pipeline_opts[:in]
1369
- end
1370
- end
1371
- else
1372
- cmd_opts[:in] = r
1373
- end
1374
- if i != cmds.length - 1
1375
- r2, w2 = IO.pipe
1376
- cmd_opts[:out] = w2
1377
- else
1378
- if !cmd_opts.include?(:out)
1379
- if pipeline_opts.include?(:out)
1380
- cmd_opts[:out] = pipeline_opts[:out]
1381
- end
1382
- end
1383
- end
1384
- pid = spawn(*cmd, cmd_opts)
1385
- wait_thrs << Process.detach(pid)
1386
- r&.close
1387
- w2&.close
1388
- r = r2
1389
- }
1390
- result = parent_io + [wait_thrs]
1391
- child_io.each(&:close)
1392
- if defined? yield
1393
- begin
1394
- return yield(*result)
1395
- ensure
1396
- parent_io.each(&:close)
1397
- wait_thrs.each(&:join)
1398
- end
1399
- end
1400
- result
1401
- end
1402
- module_function :pipeline_run
1403
- class << self
1404
- private :pipeline_run
1405
- end
1406
-
1407
- end
1408
-
1409
- # JRuby uses different popen logic on Windows, require it here to reuse wrapper methods above.
1410
- require 'open3/jruby_windows' if RUBY_ENGINE == 'jruby' && JRuby::Util::ON_WINDOWS