@ai-ecoverse/wasix-ruby 3.4.11-2 → 3.4.11-21

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 (235) hide show
  1. package/PRESTAGE.md +53 -16
  2. package/README.md +164 -0
  3. package/THIRD-PARTY-NOTICES.md +727 -0
  4. package/bin/bundle +1 -1
  5. package/bin/bundler +1 -1
  6. package/bin/erb +1 -1
  7. package/bin/gem +1 -1
  8. package/bin/irb +1 -1
  9. package/bin/rake +1 -1
  10. package/bin/{ruby.wasm → ruby} +0 -0
  11. package/lib/ruby/3.4.0/io/console/size.rb +23 -0
  12. package/lib/ruby/3.4.0/socket.rb +1790 -0
  13. package/lib/ruby/3.4.0/wasm32-wasi/rbconfig.rb +38 -34
  14. package/lib/ruby/gems/3.4.0/cache/abbrev-0.1.2.gem +0 -0
  15. package/lib/ruby/gems/3.4.0/cache/base64-0.2.0.gem +0 -0
  16. package/lib/ruby/gems/3.4.0/cache/bigdecimal-3.1.8.gem +0 -0
  17. package/lib/ruby/gems/3.4.0/cache/csv-3.3.2.gem +0 -0
  18. package/lib/ruby/gems/3.4.0/cache/debug-1.11.0.gem +0 -0
  19. package/lib/ruby/gems/3.4.0/cache/drb-2.2.1.gem +0 -0
  20. package/lib/ruby/gems/3.4.0/cache/getoptlong-0.2.1.gem +0 -0
  21. package/lib/ruby/gems/3.4.0/cache/matrix-0.4.2.gem +0 -0
  22. package/lib/ruby/gems/3.4.0/cache/minitest-5.25.4.gem +0 -0
  23. package/lib/ruby/gems/3.4.0/cache/mutex_m-0.3.0.gem +0 -0
  24. package/lib/ruby/gems/3.4.0/cache/net-ftp-0.3.8.gem +0 -0
  25. package/lib/ruby/gems/3.4.0/cache/net-imap-0.5.15.gem +0 -0
  26. package/lib/ruby/gems/3.4.0/cache/net-pop-0.1.2.gem +0 -0
  27. package/lib/ruby/gems/3.4.0/cache/net-smtp-0.5.1.gem +0 -0
  28. package/lib/ruby/gems/3.4.0/cache/nkf-0.2.0.gem +0 -0
  29. package/lib/ruby/gems/3.4.0/cache/observer-0.1.2.gem +0 -0
  30. package/lib/ruby/gems/3.4.0/cache/power_assert-2.0.5.gem +0 -0
  31. package/lib/ruby/gems/3.4.0/cache/prime-0.1.3.gem +0 -0
  32. package/lib/ruby/gems/3.4.0/cache/racc-1.8.1.gem +0 -0
  33. package/lib/ruby/gems/3.4.0/cache/rake-13.2.1.gem +0 -0
  34. package/lib/ruby/gems/3.4.0/cache/rbs-3.8.0.gem +0 -0
  35. package/lib/ruby/gems/3.4.0/cache/repl_type_completor-0.1.9.gem +0 -0
  36. package/lib/ruby/gems/3.4.0/cache/resolv-replace-0.1.1.gem +0 -0
  37. package/lib/ruby/gems/3.4.0/cache/rexml-3.4.4.gem +0 -0
  38. package/lib/ruby/gems/3.4.0/cache/rinda-0.2.0.gem +0 -0
  39. package/lib/ruby/gems/3.4.0/cache/rss-0.3.1.gem +0 -0
  40. package/lib/ruby/gems/3.4.0/cache/syslog-0.2.0.gem +0 -0
  41. package/lib/ruby/gems/3.4.0/cache/test-unit-3.6.7.gem +0 -0
  42. package/lib/ruby/gems/3.4.0/cache/typeprof-0.30.1.gem +0 -0
  43. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/bigdecimal-3.1.8/gem.build_complete +0 -0
  44. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/debug-1.11.0/gem.build_complete +0 -0
  45. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/nkf-0.2.0/gem.build_complete +0 -0
  46. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/racc-1.8.1/gem.build_complete +0 -0
  47. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/rbs-3.8.0/gem.build_complete +0 -0
  48. package/lib/ruby/gems/3.4.0/extensions/wasm32-wasi/3.4.0-static/syslog-0.2.0/gem.build_complete +0 -0
  49. package/lib/ruby/gems/3.4.0/gems/abbrev-0.1.2/bin/console +0 -0
  50. package/lib/ruby/gems/3.4.0/gems/abbrev-0.1.2/bin/setup +0 -0
  51. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/bigdecimal.c +7794 -0
  52. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/bigdecimal.h +313 -0
  53. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/bits.h +141 -0
  54. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/extconf.rb +62 -0
  55. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/feature.h +68 -0
  56. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/missing/dtoa.c +3462 -0
  57. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/missing.c +27 -0
  58. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/missing.h +196 -0
  59. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/ext/bigdecimal/static_assert.h +54 -0
  60. package/lib/ruby/gems/3.4.0/gems/bundler-2.6.9/exe/bundle +29 -0
  61. package/lib/ruby/gems/3.4.0/gems/bundler-2.6.9/exe/bundler +4 -0
  62. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/ext/debug/debug.c +228 -0
  63. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/ext/debug/extconf.rb +27 -0
  64. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/ext/debug/iseq_collector.c +93 -0
  65. package/lib/ruby/gems/3.4.0/gems/erb-4.0.4.1/libexec/erb +164 -0
  66. package/lib/ruby/gems/3.4.0/gems/getoptlong-0.2.1/bin/console +0 -0
  67. package/lib/ruby/gems/3.4.0/gems/getoptlong-0.2.1/bin/setup +0 -0
  68. package/lib/ruby/gems/3.4.0/gems/irb-1.14.3/exe/irb +9 -0
  69. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/bin/console +0 -0
  70. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/bin/setup +0 -0
  71. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/Command.java +58 -0
  72. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/CommandParser.java +70 -0
  73. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/NKFLibrary.java +13 -0
  74. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/Option.java +80 -0
  75. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/Options.java +109 -0
  76. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/java/org/jruby/ext/nkf/RubyNKF.java +601 -0
  77. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/extconf.rb +3 -0
  78. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/config.h +51 -0
  79. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/nkf.c +7205 -0
  80. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/nkf.h +189 -0
  81. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/utf8tbl.c +14638 -0
  82. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf-utf8/utf8tbl.h +72 -0
  83. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/ext/nkf/nkf.c +506 -0
  84. package/lib/ruby/gems/3.4.0/gems/observer-0.1.2/bin/console +0 -0
  85. package/lib/ruby/gems/3.4.0/gems/observer-0.1.2/bin/setup +0 -0
  86. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/ext/racc/cparse/cparse.c +840 -0
  87. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/ext/racc/cparse/extconf.rb +8 -0
  88. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/extconf.rb +14 -0
  89. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexer.c +2728 -0
  90. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexer.h +179 -0
  91. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexer.re +147 -0
  92. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/lexstate.c +175 -0
  93. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/location.c +303 -0
  94. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/location.h +84 -0
  95. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/main.c +12 -0
  96. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parser.c +2961 -0
  97. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parser.h +18 -0
  98. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parserstate.c +366 -0
  99. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/parserstate.h +161 -0
  100. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/rbs_extension.h +31 -0
  101. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/ext/rbs_extension/unescape.c +32 -0
  102. package/lib/ruby/gems/3.4.0/gems/rdoc-6.14.0/exe/rdoc +43 -0
  103. package/lib/ruby/gems/3.4.0/gems/rdoc-6.14.0/exe/ri +12 -0
  104. package/lib/ruby/gems/3.4.0/gems/resolv-replace-0.1.1/bin/console +0 -0
  105. package/lib/ruby/gems/3.4.0/gems/resolv-replace-0.1.1/bin/setup +0 -0
  106. package/lib/ruby/gems/3.4.0/gems/rinda-0.2.0/bin/console +0 -0
  107. package/lib/ruby/gems/3.4.0/gems/rinda-0.2.0/bin/setup +0 -0
  108. package/lib/ruby/gems/3.4.0/gems/syntax_suggest-2.0.3/exe/syntax_suggest +7 -0
  109. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/bin/console +0 -0
  110. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/bin/setup +0 -0
  111. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/ext/syslog/extconf.rb +26 -0
  112. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/ext/syslog/syslog.c +592 -0
  113. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/ext/syslog/syslog.txt +124 -0
  114. package/lib/ruby/gems/3.4.0/specifications/abbrev-0.1.2.gemspec +5 -4
  115. package/lib/ruby/gems/3.4.0/specifications/base64-0.2.0.gemspec +4 -3
  116. package/lib/ruby/gems/3.4.0/specifications/bigdecimal-3.1.8.gemspec +20 -45
  117. package/lib/ruby/gems/3.4.0/specifications/csv-3.3.2.gemspec +5 -3
  118. package/lib/ruby/gems/3.4.0/specifications/debug-1.11.0.gemspec +26 -27
  119. package/lib/ruby/gems/3.4.0/specifications/default/benchmark-0.4.0.gemspec +22 -0
  120. package/lib/ruby/gems/3.4.0/specifications/default/bundler-2.6.9.gemspec +23 -0
  121. package/lib/ruby/gems/3.4.0/specifications/default/cgi-0.4.2.gemspec +23 -0
  122. package/lib/ruby/gems/3.4.0/specifications/default/date-3.4.1.gemspec +23 -0
  123. package/lib/ruby/gems/3.4.0/specifications/default/delegate-0.4.0.gemspec +21 -0
  124. package/lib/ruby/gems/3.4.0/specifications/default/did_you_mean-2.0.0.gemspec +20 -0
  125. package/lib/ruby/gems/3.4.0/specifications/default/digest-3.2.0.gemspec +22 -0
  126. package/lib/ruby/gems/3.4.0/specifications/default/english-0.8.0.gemspec +21 -0
  127. package/lib/ruby/gems/3.4.0/specifications/default/erb-4.0.4.1.gemspec +29 -0
  128. package/lib/ruby/gems/3.4.0/specifications/default/error_highlight-0.7.0.gemspec +20 -0
  129. package/lib/ruby/gems/3.4.0/specifications/default/etc-1.4.6.gemspec +25 -0
  130. package/lib/ruby/gems/3.4.0/specifications/default/fcntl-1.2.0.gemspec +24 -0
  131. package/lib/ruby/gems/3.4.0/specifications/default/fileutils-1.7.3.gemspec +21 -0
  132. package/lib/ruby/gems/3.4.0/specifications/default/find-0.2.0.gemspec +21 -0
  133. package/lib/ruby/gems/3.4.0/specifications/default/forwardable-1.3.3.gemspec +21 -0
  134. package/lib/ruby/gems/3.4.0/specifications/default/io-console-0.8.1.gemspec +23 -0
  135. package/lib/ruby/gems/3.4.0/specifications/default/io-nonblock-0.3.2.gemspec +23 -0
  136. package/lib/ruby/gems/3.4.0/specifications/default/io-wait-0.3.2.gemspec +24 -0
  137. package/lib/ruby/gems/3.4.0/specifications/default/ipaddr-1.2.7.gemspec +20 -0
  138. package/lib/ruby/gems/3.4.0/specifications/default/irb-1.14.3.gemspec +28 -0
  139. package/lib/ruby/gems/3.4.0/specifications/default/json-2.9.1.gemspec +23 -0
  140. package/lib/ruby/gems/3.4.0/specifications/default/logger-1.6.4.gemspec +20 -0
  141. package/lib/ruby/gems/3.4.0/specifications/default/net-http-0.6.0.gemspec +26 -0
  142. package/lib/ruby/gems/3.4.0/specifications/default/net-protocol-0.2.2.gemspec +25 -0
  143. package/lib/ruby/gems/3.4.0/specifications/default/open-uri-0.5.0.gemspec +27 -0
  144. package/lib/ruby/gems/3.4.0/specifications/default/open3-0.2.1.gemspec +22 -0
  145. package/lib/ruby/gems/3.4.0/specifications/default/openssl-3.3.3.gemspec +24 -0
  146. package/lib/ruby/gems/3.4.0/specifications/default/optparse-0.6.0.gemspec +23 -0
  147. package/lib/ruby/gems/3.4.0/specifications/default/ostruct-0.6.1.gemspec +20 -0
  148. package/lib/ruby/gems/3.4.0/specifications/default/pathname-0.4.0.gemspec +24 -0
  149. package/lib/ruby/gems/3.4.0/specifications/default/pp-0.6.2.gemspec +26 -0
  150. package/lib/ruby/gems/3.4.0/specifications/default/prettyprint-0.2.0.gemspec +22 -0
  151. package/lib/ruby/gems/3.4.0/specifications/default/prism-1.5.3.gemspec +22 -0
  152. package/lib/ruby/gems/3.4.0/specifications/default/pstore-0.2.1.gemspec +21 -0
  153. package/lib/ruby/gems/3.4.0/specifications/default/psych-5.2.2.gemspec +30 -0
  154. package/lib/ruby/gems/3.4.0/specifications/default/rdoc-6.14.0.gemspec +30 -0
  155. package/lib/ruby/gems/3.4.0/specifications/default/readline-0.0.4.gemspec +23 -0
  156. package/lib/ruby/gems/3.4.0/specifications/default/reline-0.6.0.gemspec +25 -0
  157. package/lib/ruby/gems/3.4.0/specifications/default/resolv-0.7.2.gemspec +24 -0
  158. package/lib/ruby/gems/3.4.0/specifications/default/ruby2_keywords-0.0.5.gemspec +20 -0
  159. package/lib/ruby/gems/3.4.0/specifications/default/securerandom-0.4.1.gemspec +22 -0
  160. package/lib/ruby/gems/3.4.0/specifications/default/set-1.1.1.gemspec +21 -0
  161. package/lib/ruby/gems/3.4.0/specifications/default/shellwords-0.2.2.gemspec +22 -0
  162. package/lib/ruby/gems/3.4.0/specifications/default/singleton-0.3.0.gemspec +21 -0
  163. package/lib/ruby/gems/3.4.0/specifications/default/stringio-3.1.2.gemspec +23 -0
  164. package/lib/ruby/gems/3.4.0/specifications/default/strscan-3.1.2.gemspec +24 -0
  165. package/lib/ruby/gems/3.4.0/specifications/default/syntax_suggest-2.0.3.gemspec +23 -0
  166. package/lib/ruby/gems/3.4.0/specifications/default/tempfile-0.3.1.gemspec +21 -0
  167. package/lib/ruby/gems/3.4.0/specifications/default/time-0.4.1.gemspec +26 -0
  168. package/lib/ruby/gems/3.4.0/specifications/default/timeout-0.4.3.gemspec +21 -0
  169. package/lib/ruby/gems/3.4.0/specifications/default/tmpdir-0.3.1.gemspec +26 -0
  170. package/lib/ruby/gems/3.4.0/specifications/default/tsort-0.2.0.gemspec +22 -0
  171. package/lib/ruby/gems/3.4.0/specifications/default/un-0.3.0.gemspec +22 -0
  172. package/lib/ruby/gems/3.4.0/specifications/default/uri-1.0.4.gemspec +22 -0
  173. package/lib/ruby/gems/3.4.0/specifications/default/weakref-0.1.3.gemspec +25 -0
  174. package/lib/ruby/gems/3.4.0/specifications/default/yaml-0.4.0.gemspec +21 -0
  175. package/lib/ruby/gems/3.4.0/specifications/default/zlib-3.2.3.gemspec +23 -0
  176. package/lib/ruby/gems/3.4.0/specifications/drb-2.2.1.gemspec +5 -4
  177. package/lib/ruby/gems/3.4.0/specifications/getoptlong-0.2.1.gemspec +5 -4
  178. package/lib/ruby/gems/3.4.0/specifications/matrix-0.4.2.gemspec +5 -4
  179. package/lib/ruby/gems/3.4.0/specifications/minitest-5.25.4.gemspec +7 -5
  180. package/lib/ruby/gems/3.4.0/specifications/mutex_m-0.3.0.gemspec +4 -3
  181. package/lib/ruby/gems/3.4.0/specifications/net-ftp-0.3.8.gemspec +10 -4
  182. package/lib/ruby/gems/3.4.0/specifications/net-imap-0.5.15.gemspec +7 -5
  183. package/lib/ruby/gems/3.4.0/specifications/net-pop-0.1.2.gemspec +9 -4
  184. package/lib/ruby/gems/3.4.0/specifications/net-smtp-0.5.1.gemspec +9 -4
  185. package/lib/ruby/gems/3.4.0/specifications/nkf-0.2.0.gemspec +22 -39
  186. package/lib/ruby/gems/3.4.0/specifications/observer-0.1.2.gemspec +5 -4
  187. package/lib/ruby/gems/3.4.0/specifications/power_assert-2.0.5.gemspec +6 -4
  188. package/lib/ruby/gems/3.4.0/specifications/prime-0.1.3.gemspec +10 -4
  189. package/lib/ruby/gems/3.4.0/specifications/racc-1.8.1.gemspec +5 -3
  190. package/lib/ruby/gems/3.4.0/specifications/rake-13.2.1.gemspec +6 -4
  191. package/lib/ruby/gems/3.4.0/specifications/rbs-3.8.0.gemspec +25 -43
  192. package/lib/ruby/gems/3.4.0/specifications/repl_type_completor-0.1.9.gemspec +6 -5
  193. package/lib/ruby/gems/3.4.0/specifications/resolv-replace-0.1.1.gemspec +6 -5
  194. package/lib/ruby/gems/3.4.0/specifications/rexml-3.4.4.gemspec +5 -3
  195. package/lib/ruby/gems/3.4.0/specifications/rinda-0.2.0.gemspec +8 -5
  196. package/lib/ruby/gems/3.4.0/specifications/rss-0.3.1.gemspec +5 -4
  197. package/lib/ruby/gems/3.4.0/specifications/syslog-0.2.0.gemspec +21 -22
  198. package/lib/ruby/gems/3.4.0/specifications/test-unit-3.6.7.gemspec +5 -4
  199. package/lib/ruby/gems/3.4.0/specifications/typeprof-0.30.1.gemspec +7 -5
  200. package/package.json +64 -25
  201. package/lib/ruby/3.4.0/expect.rb +0 -71
  202. package/lib/ruby/gems/3.4.0/gems/abbrev-0.1.2/abbrev.gemspec +0 -29
  203. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/.bundled.bigdecimal-3.1.8.gemspec +0 -23
  204. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/bigdecimal-3.1.8.gemspec +0 -23
  205. package/lib/ruby/gems/3.4.0/gems/bigdecimal-3.1.8/bigdecimal.gemspec +0 -50
  206. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/.bundled.debug-1.11.0.gemspec +0 -25
  207. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/debug-1.11.0.gemspec +0 -30
  208. package/lib/ruby/gems/3.4.0/gems/debug-1.11.0/debug.gemspec +0 -33
  209. package/lib/ruby/gems/3.4.0/gems/drb-2.2.1/drb.gemspec +0 -41
  210. package/lib/ruby/gems/3.4.0/gems/getoptlong-0.2.1/getoptlong.gemspec +0 -30
  211. package/lib/ruby/gems/3.4.0/gems/matrix-0.4.2/matrix.gemspec +0 -26
  212. package/lib/ruby/gems/3.4.0/gems/minitest-5.25.4/.autotest +0 -34
  213. package/lib/ruby/gems/3.4.0/gems/net-ftp-0.3.8/net-ftp.gemspec +0 -34
  214. package/lib/ruby/gems/3.4.0/gems/net-imap-0.5.15/net-imap.gemspec +0 -38
  215. package/lib/ruby/gems/3.4.0/gems/net-pop-0.1.2/net-pop.gemspec +0 -32
  216. package/lib/ruby/gems/3.4.0/gems/net-smtp-0.5.1/net-smtp.gemspec +0 -31
  217. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/.bundled.nkf-0.2.0.gemspec +0 -24
  218. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/nkf-0.2.0.gemspec +0 -24
  219. package/lib/ruby/gems/3.4.0/gems/nkf-0.2.0/nkf.gemspec +0 -43
  220. package/lib/ruby/gems/3.4.0/gems/observer-0.1.2/observer.gemspec +0 -32
  221. package/lib/ruby/gems/3.4.0/gems/power_assert-2.0.5/power_assert.gemspec +0 -24
  222. package/lib/ruby/gems/3.4.0/gems/prime-0.1.3/prime.gemspec +0 -28
  223. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/.bundled.racc-1.8.1.gemspec +0 -26
  224. package/lib/ruby/gems/3.4.0/gems/racc-1.8.1/racc-1.8.1.gemspec +0 -26
  225. package/lib/ruby/gems/3.4.0/gems/rake-13.2.1/rake.gemspec +0 -101
  226. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/.bundled.rbs-3.8.0.gemspec +0 -25
  227. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/.rubocop.yml +0 -53
  228. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/rbs-3.8.0.gemspec +0 -29
  229. package/lib/ruby/gems/3.4.0/gems/rbs-3.8.0/rbs.gemspec +0 -49
  230. package/lib/ruby/gems/3.4.0/gems/resolv-replace-0.1.1/resolv-replace.gemspec +0 -22
  231. package/lib/ruby/gems/3.4.0/gems/rinda-0.2.0/rinda.gemspec +0 -35
  232. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/.bundled.syslog-0.2.0.gemspec +0 -23
  233. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/syslog-0.2.0.gemspec +0 -23
  234. package/lib/ruby/gems/3.4.0/gems/syslog-0.2.0/syslog.gemspec +0 -26
  235. package/lib/ruby/gems/3.4.0/gems/typeprof-0.30.1/typeprof.gemspec +0 -32
package/PRESTAGE.md CHANGED
@@ -1,32 +1,69 @@
1
- # wasix-ruby 3.4.11-2
1
+ # wasix-ruby 3.4.11-21
2
2
 
3
- Built against wasix-sysroot **2025.9.30-14**. **No epoll**: SLICC returns ENOSYS (52)
3
+ Built against wasix-sysroot **2025.9.30-39**. **No epoll**: SLICC returns ENOSYS (52)
4
4
  for `epoll_create`; MRI is compiled with `USE_MN_THREADS=0` and
5
5
  `HAVE_SYS_EPOLL_H=0` (also kqueue/eventfd/timerfd off) so it uses poll()/timer-thread.
6
6
 
7
- Wasmer implements epoll, so a wasmer PRESTAGE of `ruby -v` is **not** sufficient.
8
- Host gate: `ruby.wasm` must **not** contain the `epoll_create (errno:%d)` rb_bug string.
7
+ Configure `--prefix=/nonexistent-ruby-prefix` so baked-in `$LOAD_PATH` never matches a real
8
+ VFS path. The manifest's `WASIX_RUBY_PREFIX=${package}` puts the package's stdlib on the initial load path.
9
+
10
+ ## Asyncify (buffer sizing — priority over process/fork)
11
+
12
+ - **POSTLINK** (from configure `wasi*`): `$(WASMOPT) --asyncify $(wasmoptflags)`
13
+ — **no** `asyncify-ignore-imports`, **no** restricted import list.
14
+ - Spill buffers `WASM_{SETJMP,FIBER,SCAN}_STACK_BUFFER_SIZE=65536`.
9
15
 
10
16
  ## OpenSSL
11
- linked against /tmp/wasix-openssl-prefix (OpenSSL 3.x; honours SSL_CERT_FILE). Socket C ext omitted this cut (WASIX lacks CMSG_*); net/http HTTPS and remote gem install need Socket — local .gem files only until then.
17
+ linked against @ai-ecoverse/wasix-openssl 3.5.9-4 (OpenSSL 3.5.9; honours SSL_CERT_FILE). Socket C ext built with HAVE_STRUCT_MSGHDR_MSG_CONTROL / CMSG_* forced off (WASIX ancillary data incomplete).
18
+
19
+ ## Relocation / WASIX_RUBY_PREFIX
20
+ - Stdlib under `lib/ruby/<API>` (e.g. **3.4.0**), arch `…/wasm32-wasi/rbconfig.rb`.
21
+ - The initial load path is `$WASIX_RUBY_PREFIX/lib/ruby/<API>` and its `/wasm32-wasi`, with no
22
+ site or vendor directory (homescoop#597); the manifest sets no `RUBYLIB`, so a caller's goes first.
23
+ - **Certify only** at `/shared/lib/node_modules/@ai-ecoverse/wasix-ruby` with
24
+ manifest env. Never at `/ruby` (hides a missing load path — -3 false pass).
25
+
26
+ ## Gems / flock / uid (-5)
27
+ - `GEM_HOME=${HOME}/.local/share/gem/ruby/3.4.0` (writable under SLICC HOME).
28
+ - `GEM_PATH=${HOME}/.local/share/gem/ruby/3.4.0:${package}/lib/ruby/gems/3.4.0`.
29
+ - `File#flock`: libc's flock(2) through slicc.flock, per open file description (since 3.4.11-18,
30
+ wasix-sysroot -34; -17 whole-file fcntl record locks, homescoop#578; up to -16 a no-op success).
31
+ - `Process.uid`/`euid`/`gid`/`groups`, `Etc.getpwuid` and `Dir.home` come from
32
+ slicc-kernel's process credentials (wasix-sysroot -20, slicc-kernel >= 1.44.0):
33
+ root is uid 0 with home /root; a `kernel.users.add` user gets its own ids.
34
+
35
+ ## Gems / PATH / SLICC #3735
36
+ - `PATH=${package}/bin:${PATH}`.
37
+ - `gem`/`bundle`/`rake` `args: ["${package}/bin/…"]` need **SLICC PR #3735**.
38
+ Until merged, those commands only work in harnesses that have it.
12
39
 
13
40
  ## PRESTAGE (host)
14
- - `ruby.wasm` lacks `epoll_create (errno:` (this build fails otherwise)
15
- - `date_core` + `openssl` linked (Init_* strings present)
16
- - F_SETFD: `fcntl(1,F_SETFD,0)` then `F_GETFD==0` against the same sysroot
41
+ - no `epoll_create (errno:` in wasm; date_core linked; `nt_start_wasm_trampoline`
42
+ - package.json `WASIX_RUBY_PREFIX` is `${package}`, and it sets no `RUBYLIB`
43
+ - package.json `GEM_HOME` is under `${HOME}/.local/share/gem`, not `${package}`
17
44
 
18
- ## PRESTAGE (SLICC — run this; wasmer hides the epoll bug)
45
+ ## PRESTAGE (SLICC — real install path)
19
46
  ```ruby
20
47
  RUBY_VERSION
21
48
  system("echo", "x")
22
- `echo x`
23
- IO.popen("echo x", &:read)
49
+ IO.popen(["echo", "x"], &:read)
24
50
  Process.spawn("echo", "x").then { Process.wait _1 }
25
51
  require "json"; JSON.parse('{"a":1}')
26
- require "zlib"
27
- require "yaml"
28
- require "date"; Date.today
52
+ require "zlib"; require "yaml"; require "date"; Date.today
29
53
  Fiber.new { :ok }.resume
30
- File.write("/tmp/r.txt", "ok"); File.read("/tmp/r.txt")
54
+ $stdout.sync = true
55
+ t = Thread.new { puts "CHILD"; 42 }; puts t.value
56
+ require "openssl"; OpenSSL::OPENSSL_VERSION
57
+ require "socket"
58
+ Process.uid # => 0 (root, the kernel's default user)
59
+ f = File.open("flock-test", "w"); f.flock(File::LOCK_EX); f.close # no Errno::EINVAL; a second process gets false for LOCK_EX|LOCK_NB
31
60
  ```
32
- Plus: `ruby -v`, `gem --version`, `bundle --version`, `bundle exec rake` on a tiny Rakefile.
61
+ Plus Queue/CV/Mutex; `bundle exec rake` when #3735 is available.
62
+
63
+ ## Install acceptance (-5) — certify at real VFS path only
64
+ At `/shared/lib/node_modules/@ai-ecoverse/wasix-ruby` with manifest env:
65
+ 1. `gem env home` → `…/.local/share/gem/ruby/3.4.0` (not under package).
66
+ 2. `bundle install --local` creates lockfile without `Errno::EINVAL @ rb_file_flock`.
67
+ 3. `gem install --local --force` from packaged `rake-13.2.1.gem`; spec under
68
+ `HOME/.local/share/gem/ruby/3.4.0`.
69
+ Hold npm publish until those three pass.
package/README.md CHANGED
@@ -1,3 +1,167 @@
1
1
  # `@ai-ecoverse/wasix-ruby`
2
2
 
3
3
  MRI Ruby for slicc WASIX. No epoll (poll fallback). See PRESTAGE.md.
4
+
5
+ Built on wasix-sysroot 2025.9.30-39 (the WASIX libc and headers; see
6
+ PRESTAGE.md).
7
+
8
+ ## The interpreter path (3.4.11-12)
9
+
10
+ `Gem.ruby` and `RbConfig.ruby` are the first `ruby` on PATH outside the
11
+ package, which is slicc-kernel's `/usr/bin/ruby` command. Run through it,
12
+ ruby gets the command's `RUBYLIB`, `GEM_HOME` and `GEM_PATH` defaults, so
13
+ `system(Gem.ruby, "-e", "exit 3")` exits 3 from any process, and RubyGems
14
+ writes `#!/usr/bin/ruby` into the gem executables it installs. Without a
15
+ `ruby` on PATH they fall back to the package's `bin/ruby`.
16
+
17
+ `bin/ruby` (`RbConfig::CONFIG["bindir"]`) is the wasm module itself, so the
18
+ kernel can exec it by path and use it in a shebang. It doesn't get the
19
+ command's environment: started from ruby (which passes its own `RUBYLIB` and
20
+ `GEM_*` on) it works fully, but started from a shell without them ruby can't
21
+ find RubyGems (`RubyGems were not loaded`). Use `ruby` or `/usr/bin/ruby` from a
22
+ shell. The package's `gem`, `bundle`, `rake`, `irb` and `erb` scripts start
23
+ with `#!/usr/bin/env ruby`, so they also run by path.
24
+
25
+ Up to 3.4.11-11 `bin/ruby` was a 7-byte `#!wasm` marker that the kernel
26
+ can't exec: `system(Gem.ruby, …)` gave 127, and the executables RubyGems
27
+ installed (shebang `#!…/wasix-ruby/bin/ruby`) gave "bad interpreter". Those
28
+ executables now run when started from ruby; to make them run from a shell
29
+ too, rewrite their shebangs with `gem pristine --only-executables <gem>…`
30
+ for the gems you installed (`--all` would also rewrite the package's own
31
+ gems).
32
+
33
+ Since 3.4.11-8, single-fd waits (`IO#wait_readable`, blocking `TCPSocket.new`,
34
+ `Net::HTTP`, blocking `SSLSocket#connect`/`#accept`) use poll(): WASIX's select()
35
+ rejects an exception set with ENOSYS, so `IO.select` with a third array still
36
+ fails. `io/console` is built, so `irb` and reline work.
37
+
38
+ `TZ` is ignored: wasix-libc's localtime is UTC only (homescoop#193).
39
+
40
+ ## 3.4.11-21: bundled gems with C extensions, interruptible locks, a clean load path
41
+
42
+ - **Bundled gems with a C extension** (homescoop#596): bigdecimal, racc (`racc/cparse`), nkf, syslog, debug and rbs (the versions in `gems/bundled_gems`) are installed, and their extensions are linked into `ruby`. `require "bigdecimal"` works, and so do activesupport and anything else that needs it. `gem list` shows them, and Bundler takes them from the package. A newer version of one of them can't be installed with `gem install`, because that needs a compiler. Up to 3.4.11-20 they were left out and `require "bigdecimal"` was a LoadError.
43
+ - **Interruptible locks** (homescoop#869): `Timeout.timeout`, `Thread#raise` and `Thread#kill` interrupt a blocking `File#flock` or `IO#fcntl(F_SETLKW)`. On slicc the wait is a loop of non-blocking tries with a 20 ms sleep in between, so a lock can come free up to 20 ms before ruby takes it. Up to 3.4.11-20 the interrupt waited until the holder let go.
44
+ - **Load path** (homescoop#597): `$LOAD_PATH` holds only directories that exist. The package's stdlib comes from `WASIX_RUBY_PREFIX` (the command sets it to the package), so the command no longer sets `RUBYLIB`. Yours comes first, and there's no site or vendor directory. Up to 3.4.11-20, eight missing `/nonexistent-ruby-prefix` directories were probed on every require that missed the stdlib.
45
+ - **RbConfig** (homescoop#1114): `RbConfig::CONFIG` names the build tree `/nonexistent-ruby-build` instead of the CI runner's checkout, so the bytes don't depend on where it was built.
46
+ - **Sysroot:** wasix-sysroot 2025.9.30-39, whose `malloc` refreshes a thread's view of grown shared memory (homescoop#1287).
47
+
48
+ ## 3.4.11-20: inputs recorded by version
49
+
50
+ `package.json`'s `homescoop.openssl` names the wasix-openssl package
51
+ version and the OpenSSL version it links, as THIRD-PARTY-NOTICES.md does;
52
+ up to 3.4.11-19 it was the CI runner's build path (homescoop#637). Same
53
+ sources and inputs as 3.4.11-19.
54
+
55
+ ## 3.4.11-18: real File#flock (wasix-sysroot -34; slicc-kernel ≥ 1.120.0)
56
+
57
+ - **What changed:** `File#flock` is libc's `flock(2)`, through slicc-kernel's `slicc.flock`.
58
+ - **Semantics, as on Linux:**
59
+ - a lock belongs to the open file description, on any IO: a file, a pipe, a terminal, a socket or a directory;
60
+ - a second `File.open` of the same file, or a pipe's other end, conflicts;
61
+ - a `dup` and a spawned child's inherited descriptor share the lock;
62
+ - `LOCK_EX` on a read-only file excludes.
63
+ - **Before:** -17 used whole-file fcntl record locks, which belonged to the process, covered regular files only, and on a read-only handle took a read lock instead of `LOCK_EX`.
64
+ - **Kernel:** this needs slicc-kernel ≥ 1.120.0 (engines).
65
+
66
+ ## 3.4.11-17: File#flock excludes other processes (up to -17)
67
+
68
+ `File#flock` takes whole-file `fcntl` record locks (`LOCK_SH` → read lock,
69
+ `LOCK_EX` → write lock, `LOCK_UN` → unlock; `LOCK_NB` doesn't wait), which
70
+ slicc-kernel (≥ 1.100.0) enforces between processes (homescoop#578). Up to
71
+ -16 every `flock` returned 0 and excluded nobody, so two `bundle install` or
72
+ `gem install` runs on one bundle path or gem directory didn't wait for each
73
+ other. Now a second process's `flock(File::LOCK_EX | File::LOCK_NB)` is
74
+ `false` while another holds the lock, and a blocking one waits.
75
+
76
+ These are `fcntl` semantics, as wasix-perl's `flock` has them since
77
+ 5.42.0-15: a lock belongs to the process, so a second handle on the same
78
+ file in the same process isn't refused, and closing any handle on the file
79
+ drops the process's lock on it. `fcntl` wants a writable handle for a write
80
+ lock, so `LOCK_EX` on a read-only handle takes a read lock: it keeps writers
81
+ out, but two read-only `LOCK_EX` holders are both granted; open a lock file
82
+ for writing to exclude (homescoop#758). `flock` on something that isn't a
83
+ regular file (a pipe, STDOUT, `/dev/null`, a directory) succeeds and excludes
84
+ nobody, since slicc-kernel keeps record locks on regular files only
85
+ (ai-ecoverse/slicc-kernel#757).
86
+
87
+ A real rebuild, on wasix-sysroot 2025.9.30-32.
88
+
89
+ ## 3.4.11-16: the engines floor, and bundle exec
90
+
91
+ The `engines` floor (slicc-kernel ≥ 1.100.0, below) is enforced from
92
+ slicc-kernel 1.106.2 on: its command catalog refuses a package whose
93
+ `engines.slicc-kernel` the running kernel doesn't meet
94
+ (ai-ecoverse/slicc-kernel#797). Older kernels install the package without a
95
+ warning, and there `fcntl` record locks aren't real: use slicc-kernel ≥
96
+ 1.100.0 (homescoop#651).
97
+
98
+ From slicc-kernel 1.106.2 the commands' `/usr/bin` entries are real files
99
+ (slicc-kernel#762), so `bundle exec ruby …` no longer warns
100
+ `/usr/bin/ruby is empty` (homescoop#379). Older kernels print that warning,
101
+ and the command still runs.
102
+
103
+ ## 3.4.11-15: needs slicc-kernel ≥ 1.100.0
104
+
105
+ A packaging-only release of 3.4.11-14 (the same files): `engines` now asks
106
+ for slicc-kernel ≥ 1.100.0, the first kernel with `slicc.fcntl_lock`. On an
107
+ older kernel the libc grants every `IO#fcntl` record lock locally, so two
108
+ processes could both hold a write lock on the same bytes and lose data;
109
+ refusing to install there is the honest answer (homescoop#552). Up to -14
110
+ `engines` said ≥ 1.44.0.
111
+
112
+ ## 3.4.11-14: wasix-sysroot 2025.9.30-30
113
+
114
+ - POSIX record locks: `require "fcntl"` now defines `Fcntl::F_GETLK`,
115
+ `F_SETLK`, `F_SETLKW` and `F_RDLCK`/`F_WRLCK`/`F_UNLCK` (up to 3.4.11-13
116
+ they were missing: `NameError`), and `IO#fcntl` passes them to slicc-kernel
117
+ (≥ 1.100.0), which keeps the locks per process, as Linux does. A
118
+ `Process.spawn`ed ruby asking for a write lock on a range another process
119
+ holds gets `Errno::EAGAIN`, `F_SETLKW` waits for the unlock, and `F_GETLK`
120
+ names the holder. On an older kernel every lock is granted locally and
121
+ `F_GETLK` answers `F_UNLCK` (hence -15's `engines` floor). The struct is `[type, whence, start, len,
122
+ pid].pack("s s x4 q q l x4")` (32 bytes). `File#flock` was unchanged: an
123
+ advisory no-op that succeeded (real locks since 3.4.11-17).
124
+ - `RUBYLIB` names only the package's library directories that exist,
125
+ `lib/ruby/3.4.0` and its `wasm32-wasi`. Up to 3.4.11-13 it also named
126
+ `site_ruby` and `vendor_ruby` (and their `wasm32-wasi`), which npm never
127
+ packs because they are empty, so every require of the standard library
128
+ first probed four missing directories. `ruby -rirb -e 1` makes about 16%
129
+ fewer file-system calls (slicc-kernel#774).
130
+ - wasix-sysroot -29 and -30 also bring `poll` with `events` 0 and named
131
+ semaphores (no Ruby API uses them).
132
+
133
+ ## 3.4.11-13: wasix-sysroot 2025.9.30-28
134
+
135
+ A rebuild on wasix-sysroot -28, whose libc keeps real signal masks through
136
+ slicc-kernel (≥ 1.88.0), so MRI's own `pthread_sigmask`/`sigprocmask` calls
137
+ now take effect. Ruby has no API of its own for masks, so
138
+ nothing changes at the Ruby level: `Signal.trap` handlers still run when
139
+ other threads are busy.
140
+
141
+ ## 3.4.11-11: wasix-sysroot 2025.9.30-27
142
+
143
+ - `File.utime(nil, nil, f)` and `FileUtils.touch(f)` set the times to now;
144
+ up to 3.4.11-10 they set them to 0 (1970), from wasix-sysroot's broken
145
+ `utimensat(NULL)` (homescoop#294).
146
+ - `Process.times` reports the process CPU time slicc-kernel keeps; system and
147
+ children's times are 0.
148
+ - An empty path is ENOENT (`File.exist?("")` is false), as on Linux.
149
+ - Files have owners on slicc-kernel ≥ 1.59.0 with users on: `File.chown`,
150
+ `File::Stat#uid`/`#gid` and `File.owned?` are the kernel's, and
151
+ `File.readable?`/`writable?`/`executable?` ask it (slicc-kernel ≥ 1.63.0).
152
+
153
+ ## Gem executables on PATH
154
+
155
+ Command env puts user gem bins ahead of the package:
156
+
157
+ ```text
158
+ ${HOME}/.local/share/gem/ruby/3.4.0/bin:${package}/bin:${PATH}
159
+ ```
160
+
161
+ Those are defaults: a `PATH` the caller already has wins, as it does when you
162
+ start `ruby` from bash. To run gem executables **by name**, add the user gem
163
+ bin directory to your PATH, e.g. in `~/.bashrc`:
164
+
165
+ ```bash
166
+ export PATH="$HOME/.local/share/gem/ruby/3.4.0/bin:$PATH"
167
+ ```